13 Commits

Author SHA1 Message Date
github-actions[bot]
7d6b29c30b flake.lock: Update
Flake lock file updates:

• Updated input 'darwin':
    'github:lnl7/nix-darwin/e95de00a471d07435e0527ff4db092c84998698e' (2025-11-26)
  → 'github:lnl7/nix-darwin/7e22bf538aa3e0937effcb1cee73d5f1bcc26f79' (2025-12-06)
• Updated input 'disko':
    'github:nix-community/disko/5a88a6eceb8fd732b983e72b732f6f4b8269bef3' (2025-12-01)
  → 'github:nix-community/disko/d64e5cdca35b5fad7c504f615357a7afe6d9c49e' (2025-12-10)
• Updated input 'home-manager':
    'github:nix-community/home-manager/ccd22c13b2200263fb59342a34bf7119a31aa363' (2025-12-06)
  → 'github:nix-community/home-manager/39cb677ed9e908e90478aa9fe5f3383dfc1a63f3' (2025-12-11)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/418468ac9527e799809c900eda37cbff999199b6' (2025-12-02)
  → 'github:nixos/nixpkgs/addf7cf5f383a3101ecfba091b98d0a1263dc9b8' (2025-12-08)
• Updated input 'nixpkgs-stable':
    'github:nixos/nixpkgs/ff06bd3398fb1bea6c937039ece7e7c8aa396ebf' (2025-12-04)
  → 'github:nixos/nixpkgs/d2b1213bf5ec5e62d96b003ab4b5cbc42abfc0d0' (2025-12-10)
• Updated input 'nur':
    'github:nix-community/nur/cfab17b2d4bf4e9fa3aa48d6b9cb36c749e096e9' (2025-12-06)
  → 'github:nix-community/nur/da24c00523a3125a97b24783e2b59b5b98ac5da7' (2025-12-13)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/086fd19a68e80fcc8a298e9df4674982e4c498a6' (2025-12-06)
  → 'github:oxalica/rust-overlay/348b94ed9ddffccdf1a65582a2dcff0a4a3eeeb4' (2025-12-13)
• Updated input 'wsl':
    'github:nix-community/NixOS-WSL/10124c58674360765adcb38c9a8b081fb72904e4' (2025-12-03)
  → 'github:nix-community/NixOS-WSL/0c040f28b44b18e0d4240e027096078e34dbb029' (2025-12-11)
• Updated input 'wsl/flake-compat':
    'github:edolstra/flake-compat/f387cd2afec9419c8ee37694406ca490c3f34ee5' (2025-10-27)
  → 'github:edolstra/flake-compat/65f23138d8d09a92e30f1e5c87611b23ef451bf3' (2025-12-07)
• Updated input 'zenyd-mpv-scripts':
    'github:zenyd/mpv-scripts/d20a64a008fc6fb03f026c379313111291bdd49f' (2025-12-02)
  → 'github:zenyd/mpv-scripts/62f4bb313c6cb6366672e78dea940e9da8fec84a' (2025-12-06)
2025-12-13 04:04:17 +00:00
github-actions[bot]
fd589b66ef flake.lock: Update
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/2055a08fd0e2fd41318279a5355eb8a161accf26' (2025-11-28)
  → 'github:nix-community/disko/5a88a6eceb8fd732b983e72b732f6f4b8269bef3' (2025-12-01)
• Updated input 'home-manager':
    'github:nix-community/home-manager/780be8ef503a28939cf9dc7996b48ffb1a3e04c6' (2025-11-28)
  → 'github:nix-community/home-manager/ccd22c13b2200263fb59342a34bf7119a31aa363' (2025-12-06)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/2fad6eac6077f03fe109c4d4eb171cf96791faa4' (2025-11-27)
  → 'github:nixos/nixpkgs/418468ac9527e799809c900eda37cbff999199b6' (2025-12-02)
• Updated input 'nixpkgs-stable':
    'github:nixos/nixpkgs/9a7b80b6f82a71ea04270d7ba11b48855681c4b0' (2025-11-28)
  → 'github:nixos/nixpkgs/ff06bd3398fb1bea6c937039ece7e7c8aa396ebf' (2025-12-04)
• Updated input 'nur':
    'github:nix-community/nur/c23e05e2d8e852c9c128b624cfc19ea8674ad793' (2025-11-29)
  → 'github:nix-community/nur/cfab17b2d4bf4e9fa3aa48d6b9cb36c749e096e9' (2025-12-06)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/4f5a90bf043a57add9b3288bbd25ed534bfaffb5' (2025-11-29)
  → 'github:oxalica/rust-overlay/086fd19a68e80fcc8a298e9df4674982e4c498a6' (2025-12-06)
• Updated input 'wsl':
    'github:nix-community/NixOS-WSL/c7832dd786175e20f2697179e0e03efadffe4201' (2025-11-25)
  → 'github:nix-community/NixOS-WSL/10124c58674360765adcb38c9a8b081fb72904e4' (2025-12-03)
• Updated input 'zenyd-mpv-scripts':
    'github:zenyd/mpv-scripts/8309b669f060f95fbb2abf9e6882c3ae4ec1ff2d' (2025-11-27)
  → 'github:zenyd/mpv-scripts/d20a64a008fc6fb03f026c379313111291bdd49f' (2025-12-02)
2025-12-06 03:58:44 +00:00
github-actions[bot]
853aa644fa flake.lock: Update
Flake lock file updates:

• Updated input 'darwin':
    'github:lnl7/nix-darwin/3bda9f6b14161becbd07b3c56411f1670e19b9b5' (2025-11-18)
  → 'github:lnl7/nix-darwin/e95de00a471d07435e0527ff4db092c84998698e' (2025-11-26)
• Updated input 'disko':
    'github:nix-community/disko/e86a89079587497174ccab6d0d142a65811a4fd9' (2025-11-20)
  → 'github:nix-community/disko/2055a08fd0e2fd41318279a5355eb8a161accf26' (2025-11-28)
• Updated input 'home-manager':
    'github:nix-community/home-manager/d10a9b16b2a3ee28433f3d1c603f4e9f1fecb8e1' (2025-11-21)
  → 'github:nix-community/home-manager/780be8ef503a28939cf9dc7996b48ffb1a3e04c6' (2025-11-28)
• Updated input 'nixos-generators':
    'github:nix-community/nixos-generators/032decf9db65efed428afd2fa39d80f7089085eb' (2025-07-07)
  → 'github:nix-community/nixos-generators/032a1878682fafe829edfcf5fdfad635a2efe748' (2025-11-27)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/89c2b2330e733d6cdb5eae7b899326930c2c0648' (2025-11-17)
  → 'github:nixos/nixpkgs/2fad6eac6077f03fe109c4d4eb171cf96791faa4' (2025-11-27)
• Updated input 'nixpkgs-stable':
    'github:nixos/nixpkgs/c58bc7f5459328e4afac201c5c4feb7c818d604b' (2025-11-20)
  → 'github:nixos/nixpkgs/9a7b80b6f82a71ea04270d7ba11b48855681c4b0' (2025-11-28)
• Updated input 'nur':
    'github:nix-community/nur/77b49ed77583b3e3fee9c8962bcd7c7992ab7e72' (2025-11-22)
  → 'github:nix-community/nur/c23e05e2d8e852c9c128b624cfc19ea8674ad793' (2025-11-29)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/7f3aa46dfa230ec2a4ca9281186a24771650ccd1' (2025-11-22)
  → 'github:oxalica/rust-overlay/4f5a90bf043a57add9b3288bbd25ed534bfaffb5' (2025-11-29)
• Updated input 'wsl':
    'github:nix-community/NixOS-WSL/3bcc267c4e0efa023b98b9c5cfbe11b88ec2dc8f' (2025-11-21)
  → 'github:nix-community/NixOS-WSL/c7832dd786175e20f2697179e0e03efadffe4201' (2025-11-25)
• Updated input 'zenyd-mpv-scripts':
    'github:zenyd/mpv-scripts/8bc3d8fd7660aaf08737eca4fb65f7193507b661' (2025-11-21)
  → 'github:zenyd/mpv-scripts/8309b669f060f95fbb2abf9e6882c3ae4ec1ff2d' (2025-11-27)
2025-11-29 03:59:46 +00:00
Noah Masur
b6e7221cc6 fix: zellij switch command on darwin 2025-11-26 13:20:22 -07:00
Noah Masur
235901b3b0 fix jjui on darwin 2025-11-26 09:00:19 -07:00
github-actions[bot]
7cd74986df flake.lock: Update
Flake lock file updates:

• Updated input 'home-manager':
    'github:nix-community/home-manager/ea164b7c9ccdc2321379c2ff78fd4317b4c41312' (2025-11-17)
  → 'github:nix-community/home-manager/d10a9b16b2a3ee28433f3d1c603f4e9f1fecb8e1' (2025-11-21)
• Updated input 'nur':
    'github:nix-community/nur/9cfdb9c199ebf780c36a9998d27547563c7b2aaf' (2025-11-21)
  → 'github:nix-community/nur/77b49ed77583b3e3fee9c8962bcd7c7992ab7e72' (2025-11-22)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/6fbf5d328dce1828d887b8ee7d44a785196a34e7' (2025-11-21)
  → 'github:oxalica/rust-overlay/7f3aa46dfa230ec2a4ca9281186a24771650ccd1' (2025-11-22)
• Updated input 'zenyd-mpv-scripts':
    'github:zenyd/mpv-scripts/a1470f01cae24f06365fbe05e5295d906d7438fe' (2025-11-21)
  → 'github:zenyd/mpv-scripts/8bc3d8fd7660aaf08737eca4fb65f7193507b661' (2025-11-21)
2025-11-22 03:55:41 +00:00
Noah Masur
a6e15b71cd update packages and fix helix language 2025-11-21 10:32:55 -07:00
Noah Masur
2e4467b6ea try to make builds work 2025-11-21 10:32:55 -07:00
Noah Masur
431ebd732c use alacritty for i3 terminal on macos 2025-11-21 10:32:55 -07:00
Noah Masur
2d576bd25d improve helix language server selection 2025-11-21 10:32:55 -07:00
Noah Masur
a1615eda67 try improvements to helix git blame and bring yazi to zellij 2025-11-21 10:32:55 -07:00
Noah Masur
444582a5a5 try adding jiratui to homebrew 2025-11-21 10:32:55 -07:00
Noah Masur
fbabdadb32 add bash to aws-ec2 launch script 2025-11-21 10:32:55 -07:00
13 changed files with 167 additions and 93 deletions

92
flake.lock generated
View File

@@ -22,11 +22,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763136804, "lastModified": 1765065051,
"narHash": "sha256-6p2ljK42s0S8zS0UU59EsEqupz0GVCaBYRylpUadeBM=", "narHash": "sha256-b7W9WsvyMOkUScNxbzS45KEJp0iiqRPyJ1I3JBE+oEE=",
"owner": "lnl7", "owner": "lnl7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "973db96394513fd90270ea5a1211a82a4a0ba47f", "rev": "7e22bf538aa3e0937effcb1cee73d5f1bcc26f79",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -43,11 +43,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762276996, "lastModified": 1765326679,
"narHash": "sha256-TtcPgPmp2f0FAnc+DMEw4ardEgv1SGNR3/WFGH0N19M=", "narHash": "sha256-fTLX9kDwLr9Y0rH/nG+h1XG5UU+jBcy0PFYn5eneRX8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "af087d076d3860760b3323f6b583f4d828c1ac17", "rev": "d64e5cdca35b5fad7c504f615357a7afe6d9c49e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -76,11 +76,11 @@
"flake-compat_2": { "flake-compat_2": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1761588595, "lastModified": 1765121682,
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=", "narHash": "sha256-4VBOP18BFeiPkyhy9o4ssBNQEvfvv1kXkasAYd0+rrA=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5", "rev": "65f23138d8d09a92e30f1e5c87611b23ef451bf3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -148,29 +148,6 @@
"type": "github" "type": "github"
} }
}, },
"helix": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"rust-overlay": [
"rust-overlay"
]
},
"locked": {
"lastModified": 1762973522,
"narHash": "sha256-CFyvvZvKDkTFF7niIQp5hhks5OR1u10H3e89chURCkg=",
"owner": "helix-editor",
"repo": "helix",
"rev": "948ac05aa0db64e0e5d00710db36eb244076e988",
"type": "github"
},
"original": {
"owner": "helix-editor",
"repo": "helix",
"type": "github"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -178,11 +155,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762964643, "lastModified": 1765480374,
"narHash": "sha256-RYHN8O/Aja59XDji6WSJZPkJpYVUfpSkyH+PEupBJqM=", "narHash": "sha256-HlbvQAqLx7WqZFFQZ8nu5UUJAVlXiV/kqKbyueA8srw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "827f2a23373a774a8805f84ca5344654c31f354b", "rev": "39cb677ed9e908e90478aa9fe5f3383dfc1a63f3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -261,11 +238,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1751903740, "lastModified": 1764234087,
"narHash": "sha256-PeSkNMvkpEvts+9DjFiop1iT2JuBpyknmBUs0Un0a4I=", "narHash": "sha256-NHF7QWa0ZPT8hsJrvijREW3+nifmF2rTXgS2v0tpcEA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixos-generators", "repo": "nixos-generators",
"rev": "032decf9db65efed428afd2fa39d80f7089085eb", "rev": "032a1878682fafe829edfcf5fdfad635a2efe748",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -292,27 +269,27 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1735563628, "lastModified": 1765363881,
"narHash": "sha256-OnSAY7XDSx7CtDoqNh8jwVwh4xNL/2HaJxGjryLWzX8=", "narHash": "sha256-3C3xWn8/2Zzr7sxVBmpc1H1QfxjNfta5IMFe3O9ZEPw=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b134951a4c9f3c995fd7be05f3243f8ecd65d798", "rev": "d2b1213bf5ec5e62d96b003ab4b5cbc42abfc0d0",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-24.05", "ref": "nixos-25.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1762977756, "lastModified": 1765186076,
"narHash": "sha256-4PqRErxfe+2toFJFgcRKZ0UI9NSIOJa+7RXVtBhy4KE=", "narHash": "sha256-hM20uyap1a0M9d344I692r+ik4gTMyj60cQWO+hAYP8=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c5ae371f1a6a7fd27823bc500d9390b38c05fa55", "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -346,11 +323,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763178083, "lastModified": 1765598217,
"narHash": "sha256-J2anD4lJGnsnbZeSVRjY8b9UdQueQnbrjEuHoUtwb40=", "narHash": "sha256-yJhIuiP6znKni5djRu+84X2ye4yyqqwz+Ob07gcgDbs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nur", "repo": "nur",
"rev": "cb44dde82a279a626f8b3283fdcf52849d3ab3d4", "rev": "da24c00523a3125a97b24783e2b59b5b98ac5da7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -363,7 +340,6 @@
"inputs": { "inputs": {
"darwin": "darwin", "darwin": "darwin",
"disko": "disko", "disko": "disko",
"helix": "helix",
"home-manager": "home-manager", "home-manager": "home-manager",
"mac-app-util": "mac-app-util", "mac-app-util": "mac-app-util",
"nix2vim": "nix2vim", "nix2vim": "nix2vim",
@@ -382,11 +358,11 @@
"nixpkgs": "nixpkgs_3" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1763174172, "lastModified": 1765593578,
"narHash": "sha256-u6dcvXk2K6eYVYhmfiN3xmhIf3yUo5KPwm79UOD37Jo=", "narHash": "sha256-qbl874bCIy9+OLImdfBfZ9ITUDDjjTAB04Dk4PlZFV0=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "89af6762b01409edbb595888a69311e8e5954110", "rev": "348b94ed9ddffccdf1a65582a2dcff0a4a3eeeb4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -466,11 +442,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762908663, "lastModified": 1765483419,
"narHash": "sha256-HqdYfzBaidYX+EYAcXDFCggXJPZBv2fusMwhc7/4+cI=", "narHash": "sha256-w6wznH1lBzlSH3+pWDkE+L6xA0F02drFAzu2E7PD/Jo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "debc562c48c445f9f08778ecb9fc6b35197623ad", "rev": "0c040f28b44b18e0d4240e027096078e34dbb029",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -506,11 +482,11 @@
"zenyd-mpv-scripts": { "zenyd-mpv-scripts": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1707704915, "lastModified": 1765050776,
"narHash": "sha256-9P/8q/OZXfaJMS08acQP4h3/zUA5mKRQee0JmkXcz1w=", "narHash": "sha256-9gO+GkNoGsxAbMRrBWu0FfXEQtyTmHivlaxlYLpV2YM=",
"owner": "zenyd", "owner": "zenyd",
"repo": "mpv-scripts", "repo": "mpv-scripts",
"rev": "9bdce0050144cb24f92475f7bdd77180e0e4c26b", "rev": "62f4bb313c6cb6366672e78dea940e9da8fec84a",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -8,7 +8,7 @@
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
# Used for specific stable packages # Used for specific stable packages
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.05"; nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-25.05";
# Used for MacOS system config # Used for MacOS system config
darwin = { darwin = {
@@ -75,12 +75,12 @@
inputs.rust-overlay.follows = "rust-overlay"; inputs.rust-overlay.follows = "rust-overlay";
}; };
# Text editor # # Text editor
helix = { # helix = {
url = "github:helix-editor/helix"; # url = "github:helix-editor/helix";
inputs.nixpkgs.follows = "nixpkgs"; # inputs.nixpkgs.follows = "nixpkgs";
inputs.rust-overlay.follows = "rust-overlay"; # inputs.rust-overlay.follows = "rust-overlay";
}; # };
# # Nextcloud Apps # # Nextcloud Apps
# nextcloud-news = { # nextcloud-news = {

View File

@@ -67,7 +67,7 @@ lib
inputs.nur.overlays.default inputs.nur.overlays.default
inputs.nix2vim.overlay inputs.nix2vim.overlay
inputs.zellij-switch.overlays.default inputs.zellij-switch.overlays.default
inputs.helix.overlays.default # inputs.helix.overlays.default
] ]
++ (importOverlays ../overlays); ++ (importOverlays ../overlays);

View File

@@ -38,6 +38,7 @@
}; };
brews = [ brews = [
"trash" # Delete files and folders to trash instead of rm "trash" # Delete files and folders to trash instead of rm
"jiratui" # Terminal program to manage Jira
]; ];
casks = [ casks = [
"1password" # 1Password will not launch from Nix on macOS "1password" # 1Password will not launch from Nix on macOS

View File

@@ -2,6 +2,12 @@ inputs: _final: prev: {
awscli2 = prev.awscli2.overrideAttrs ( awscli2 = prev.awscli2.overrideAttrs (
finalAttrs: previousAttrs: { finalAttrs: previousAttrs: {
src = prev.fetchFromGitHub {
owner = "aws";
repo = "aws-cli";
rev = "2.31.27";
hash = "sha256-NnAEdbIZVri9Bi0KBlcZIVox+LbuD0/hBdtYB/UFHeo=";
};
disabledTestPaths = previousAttrs.disabledTestPaths ++ [ disabledTestPaths = previousAttrs.disabledTestPaths ++ [
"tests/unit/customizations" "tests/unit/customizations"
]; ];

View File

@@ -6,17 +6,17 @@
# Specify AWS_PROFILE and AWS_REGION before running this script # Specify AWS_PROFILE and AWS_REGION before running this script
aws ec2 describe-instances \ aws ec2 describe-instances \
--filters "Name=instance-state-name,Values=running" | --filters "Name=instance-state-name,Values=running" |
jq -r \ jq -r \
'.Reservations[] '.Reservations[]
| .Instances[] | .Instances[]
| .InstanceId + " - " + | .InstanceId + " - " +
(.PrivateIpAddress // "n/a") + " - " + (.PrivateIpAddress // "n/a") + " - " +
(.PublicIpAddress // "n/a") + " - " + (.PublicIpAddress // "n/a") + " - " +
(.Tags // [] | from_entries | .Name // "n/a")' | (.Tags // [] | from_entries | .Name // "n/a")' |
fzf \ fzf \
--height 100% \ --height 100% \
--layout reverse \ --layout reverse \
--header $'Press Enter to start SSM session\nInstance ID - Private IP - Public IP - Name' \ --header $'Press Enter to start SSM session\nInstance ID - Private IP - Public IP - Name' \
--preview "aws ec2 describe-instances --instance-ids \"\$(echo {} | cut -d' ' -f1)\" | jq -r '.Reservations[].Instances[0]'" \ --preview "aws ec2 describe-instances --instance-ids \"\$(echo {} | cut -d' ' -f1)\" | jq -r '.Reservations[].Instances[0]'" \
--bind "enter:become(aws ssm start-session --target \$(echo {} | cut -d' ' -f1))" --bind "enter:become(aws ssm start-session --document-name 'AWS-StartInteractiveCommand' --parameters '{\"command\": [\"bash\"]}' --target \$(echo {} | cut -d' ' -f1))"

View File

@@ -16,7 +16,8 @@ in
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
# Set the i3 terminal # Set the i3 terminal
nmasur.presets.services.i3.terminal = config.programs.ghostty.package; nmasur.presets.services.i3.terminal =
if pkgs.stdenv.isDarwin then pkgs.alacritty else config.programs.ghostty.package;
programs.ghostty = { programs.ghostty = {
enable = true; enable = true;

View File

@@ -7,6 +7,62 @@
let let
cfg = config.nmasur.presets.programs.helix; cfg = config.nmasur.presets.programs.helix;
blame_file_pretty = pkgs.writeShellScriptBin "blame_file_pretty" ''
# Source: https://gist.github.com/gloaysa/828707f067e3bb20da18d72fa5d4963a
# Utility for Helix: open the patch for the commit that last touched the current line.
# If the line isnt committed yet, it shows the working-tree diff for THIS file only.
# The script writes the diff to /tmp and prints the absolute path to stdout
# Adjust `context` to see more/fewer unchanged lines around the change (default: 3).
#
# usage: git-file_pretty.sh <file> <line> [context_lines]
# Helix mapping example:
# B = ':open %sh{ ~/.config/helix/utils/git-blame-commit.sh "%{buffer_name}" %{cursor_line} 3 }'
file="$1"
line="$2"
ctx="''${3:-3}"
# blame the exact line
porc="$(git blame -L "$line",+1 --porcelain -- "$file")" || exit 1
sha="$(printf '%s\n' "$porc" | awk 'NR==1{print $1}')"
commit_path="$(printf '%s\n' "$porc" | awk '/^filename /{print substr($0,10); exit}')"
out="/tmp/hx-blame_$(basename "$file")_''${sha:-wt}.diff"
if [ -z "$sha" ] || [ "$sha" = 0000000000000000000000000000000000000000 ] || [ "$sha" = "^" ]; then
# uncommitted line working tree diff for this file
git --no-pager diff --no-color -U"$ctx" -- "$file" > "$out"
else
# committed line only this files patch in that commit
git --no-pager show --no-color -M -C -U"$ctx" "$sha" -- "''${commit_path:-$file}" > "$out"
fi
# "return" the path for :open %sh{}
printf '%s' "$out"
'';
blame_line_pretty = pkgs.writeShellScriptBin "blame_line_pretty" ''
# Source: https://gist.github.com/gloaysa/828707f067e3bb20da18d72fa5d4963a
# Utility for Helix: pretty-print blame info for the line under the cursor.
# Quite basic.
#
# usage: blame_line_pretty <file> <line>
# Helix mapping example:
# b = ":run-shell-command ~/.config/helix/utils/blame_line_pretty.sh %{buffer_name} %{cursor_line}"
file="$1"; line="$2"
out="$(git blame -L "$line",+1 --porcelain -- "$file")" || return 1
sha="$(printf '%s\n' "$out" | awk 'NR==1{print $1}')"
author="$(printf '%s\n' "$out" | awk -F'author ' '/^author /{print $2; exit}')"
epoch="$(printf '%s\n' "$out" | awk '/^author-time /{print $2; exit}')"
# dd-mm-yyyy (macOS `date -r`; fallback to gdate if present)
date="$( (date -r "$epoch" +%d-%m-%Y\ %H:%M 2>/dev/null) || (gdate -d "@$epoch" +%d-%m-%Y\ %H:%M 2>/dev/null) || printf '%s' "$epoch")"
summary="$(printf '%s\n' "$out" | awk -F'summary ' '/^summary /{print $2; exit}')"
change="$(printf '%s\n' "$out" | tail -n 1)"
printf "%s\n%s\n%s\n%s\n%s\n" "$sha" "$author" "$date" "$summary" "$change"
'';
in in
{ {
@@ -62,6 +118,11 @@ in
command = lib.getExe pkgs.marksman; command = lib.getExe pkgs.marksman;
}; };
language-server.rumdl = {
command = lib.getExe pkgs.rumdl;
args = [ "server" ];
};
language-server.terraform-ls = { language-server.terraform-ls = {
command = "${lib.getExe pkgs.terraform-ls}"; command = "${lib.getExe pkgs.terraform-ls}";
args = [ "serve" ]; args = [ "serve" ];
@@ -87,10 +148,16 @@ in
{ {
name = "markdown"; name = "markdown";
auto-format = false; auto-format = false;
language-servers = [ "marksman" ]; language-servers = [
"marksman"
"rumdl"
];
formatter = { formatter = {
command = lib.getExe pkgs.mdformat; command = lib.getExe pkgs.rumdl;
args = [ "-" ]; args = [
"fmt"
"-"
];
}; };
# Allows return key to continue the token on the next line # Allows return key to continue the token on the next line
comment-tokens = [ comment-tokens = [
@@ -102,9 +169,14 @@ in
]; ];
} }
{ {
name = "tfvars"; name = "terraform";
scope = "source.tf";
auto-format = true; auto-format = true;
language-servers = [ "terraform-ls" ]; language-servers = [ "terraform-ls" ];
file-types = [
"tf"
"tfvars"
];
formatter = { formatter = {
command = lib.getExe pkgs.terraform; command = lib.getExe pkgs.terraform;
args = [ args = [
@@ -116,9 +188,9 @@ in
{ {
name = "hcl"; name = "hcl";
auto-format = true; auto-format = true;
language-servers = [ "terraform-ls" ]; file-types = [ "hcl" ];
formatter = { formatter = {
command = lib.getExe pkgs.terraform; command = "${pkgs.packer}/bin/packer";
args = [ args = [
"fmt" "fmt"
"-" "-"
@@ -179,7 +251,9 @@ in
]; ];
# Commandline git blame # Commandline git blame
space.B = ":echo %sh{git log -n1 --date=short --pretty=format:'%%h %%ad %%s' $(git blame -L %{cursor_line},+1 \"%{buffer_name}\" | cut -d' ' -f1)}"; # space.B = ":echo %sh{git log -n1 --date=short --pretty=format:'%%h %%ad %%s' $(git blame -L %{cursor_line},+1 \"%{buffer_name}\" | cut -d' ' -f1)}";
space.B = '':open %sh{ ${blame_line_pretty}/bin/blame_line_pretty "%{buffer_name}" %{cursor_line} 3 }'';
space.i = '':open %sh{ ${blame_file_pretty}/bin/blame_file_pretty "%{buffer_name}" %{cursor_line} 3 }'';
# Extend selection above # Extend selection above
X = "select_line_above"; X = "select_line_above";
@@ -247,7 +321,7 @@ in
completion-replace = true; # Replace whole word with completion completion-replace = true; # Replace whole word with completion
trim-trailing-whitespace = true; trim-trailing-whitespace = true;
rainbow-brackets = true; # Make it easier to match parentheses # rainbow-brackets = true; # Make it easier to match parentheses
# Show whitespace visible to the user # Show whitespace visible to the user
# Waiting for trailing whitespace option ideally # Waiting for trailing whitespace option ideally

View File

@@ -34,6 +34,9 @@ in
home.packages = [ home.packages = [
# Required for the fsmonitor to auto-snapshot # Required for the fsmonitor to auto-snapshot
pkgs.watchman pkgs.watchman
# Required to be on path to work in Zellij
pkgs.jjui
]; ];
}; };

View File

@@ -123,9 +123,15 @@ in
shared = { shared = {
"bind \"Alt Shift s\"" = { "bind \"Alt Shift s\"" = {
Run = { Run = {
_args = [ _args =
(lib.getExe zellij-switch-to-last) if pkgs.stdenv.isDarwin then
]; [
"env"
"PATH=${config.home.homeDirectory}/.nix-profile/bin:/usr/bin:/bin"
(lib.getExe zellij-switch-to-last)
]
else
[ (lib.getExe zellij-switch-to-last) ];
close_on_exit = true; close_on_exit = true;
}; };
}; };
@@ -189,9 +195,15 @@ in
}; };
"bind \"Alt Shift j\"" = { "bind \"Alt Shift j\"" = {
Run = { Run = {
_args = [ _args =
(lib.getExe pkgs.jjui) if pkgs.stdenv.isDarwin then
]; [
"env"
"PATH=${config.home.homeDirectory}/.nix-profile/bin:/usr/bin"
(lib.getExe pkgs.jjui)
]
else
[ (lib.getExe pkgs.jjui) ];
close_on_exit = true; close_on_exit = true;
floating = true; floating = true;
x = "1%"; x = "1%";

View File

@@ -29,6 +29,7 @@ in
pkgs.pop # Send emails from a TUI pkgs.pop # Send emails from a TUI
pkgs.crush # AI LLM Agent pkgs.crush # AI LLM Agent
pkgs.gemini-cli # AI LLM Agent
]; ];

View File

@@ -34,7 +34,7 @@ in
pkgs.pandoc # Convert text documents pkgs.pandoc # Convert text documents
pkgs.qrencode # Generate qr codes pkgs.qrencode # Generate qr codes
pkgs.spacer # Output lines in terminal pkgs.spacer # Output lines in terminal
pkgs.tealdeer # Cheatsheets pkgs.stable.tealdeer # Cheatsheets
pkgs.tree # Print tree in terminal pkgs.tree # Print tree in terminal
pkgs.vimv-rs # Batch rename files pkgs.vimv-rs # Batch rename files
pkgs.yazi # TUI file explorer pkgs.yazi # TUI file explorer
@@ -66,7 +66,7 @@ in
helix.enable = lib.mkDefault true; helix.enable = lib.mkDefault true;
jujutsu.enable = lib.mkDefault true; jujutsu.enable = lib.mkDefault true;
lazygit.enable = lib.mkDefault true; lazygit.enable = lib.mkDefault true;
neovim.enable = lib.mkDefault true; # neovim.enable = lib.mkDefault true;
nix-index.enable = lib.mkDefault true; nix-index.enable = lib.mkDefault true;
nixpkgs.enable = lib.mkDefault true; nixpkgs.enable = lib.mkDefault true;
notes.enable = lib.mkDefault true; notes.enable = lib.mkDefault true;

View File

@@ -21,7 +21,7 @@ in
]; ];
home.packages = [ home.packages = [
pkgs.visidata # CSV inspector pkgs.stable.visidata # CSV inspector
pkgs.dos2unix # Convert Windows text files pkgs.dos2unix # Convert Windows text files
pkgs.inetutils # Includes telnet pkgs.inetutils # Includes telnet
pkgs.gnupg # Encryption pkgs.gnupg # Encryption