Compare commits

..

46 Commits

Author SHA1 Message Date
kiri 9aa6d64771 updates 2026-08-12 11:47:07 +02:00
kiri 710c36a126 updates 2026-08-05 17:06:25 +02:00
kiri 99c605c09d updates 2026-08-05 17:05:44 +02:00
kiri 79a3fe3fc5 feat: helix updates 2026-07-29 19:37:29 +02:00
kiri 627d5c5952 feat: helix updates 2026-07-27 16:50:11 +02:00
kiri b061203715 feat: add tailwindcss and fix oxfmt 2026-07-26 21:06:04 +02:00
kiri 9ab0525b5e feat: small changes 2026-07-26 12:03:53 +02:00
kiri 8e2bfc551e chore: remove old inputs 2026-07-26 11:28:44 +02:00
kiri 66d0a1fddd feat: optimise store async instead 2026-07-26 11:24:13 +02:00
kiri e6ae751ff2 feat: add helix master cache 2026-07-26 11:22:45 +02:00
kiri cc6dc0d872 fix: forgot to remove devenv hook 2026-07-26 11:18:50 +02:00
kiri ed6af93008 feat: set helix as default editor 2026-07-26 11:17:46 +02:00
kiri 16f465a6e8 feat: swap devenv for direnv 2026-07-26 11:17:34 +02:00
kiri 11b1256771 feat: fix printing 2026-07-26 11:12:37 +02:00
kiri 57389d9109 feat: helix updates 2026-07-26 09:40:20 +02:00
kiri 067d1bbf12 feat: editor updates 2026-07-25 22:16:38 +02:00
kiri 91f7290955 feat: helix changes 2026-07-25 19:05:54 +02:00
kiri bcb3f65595 feat: update helix config 2026-07-25 18:16:29 +02:00
kiri c835106100 chore: update inputs 2026-07-25 13:23:48 +02:00
kiri 00c223fe65 feat: add npm globally 2026-07-23 16:32:24 +02:00
kiri 7306acca10 chore: update inputs 2026-07-23 16:31:48 +02:00
kiri 398988c314 fix: @attach keyword properly highlighted for svelte 2026-07-23 11:52:46 +02:00
kiri 2af142ffa7 feat: add helix editor 2026-07-22 22:13:38 +02:00
kiri 5abd1c4eda feat: add zed editor 2026-07-22 22:13:34 +02:00
kiri 01eb2a192c feat: add scc 2026-07-22 12:36:56 +02:00
kiri 4f8af808b1 feat: improve vim formatting 2026-07-22 12:35:27 +02:00
kiri a06b592031 feat: add openvpn 2026-07-22 12:35:27 +02:00
kiri d29b058532 feat: add some ai tools 2026-07-21 22:12:34 +02:00
kiri a1ef905922 feat: use oxfmt lsp for formatting 2026-07-21 11:39:11 +02:00
kiri 01872e352c feat: have vtsls use workspace local sdk when available 2026-07-21 11:06:48 +02:00
kiri fb1b81dc3f feat: change mouse accel on zenith 2026-07-20 14:28:40 +02:00
kiri 53e6eb4c0d feat: better local dev support 2026-07-18 13:11:15 +02:00
kiri 8969f4ca25 feat: add mongodb compass 2026-07-18 12:32:46 +02:00
kiri 3a90904a86 feat: speed up walker startup 2026-07-18 12:05:39 +02:00
kiri 660a8d3741 feat: add bruno files to syncthing 2026-07-18 12:04:47 +02:00
kiri 65af53c78a fix: explicitly enable pointer cursor after nixpkgs update 2026-07-18 10:36:15 +02:00
kiri dfc3244e75 chore: add polaris root cert 2026-07-18 10:26:40 +02:00
kiri d90e394f33 feat: add self-signed cert support and local dev hosts 2026-07-18 10:23:26 +02:00
kiri ceeb9669f1 feat: add svelte support and switch to oxfmt 2026-07-14 17:53:25 +02:00
kiri b8c72b20bd feat: add k9s 2026-07-11 22:15:30 +02:00
kiri 39c5328f18 feat: update neovim webdev, update deps and install ctx7 2026-07-10 20:52:19 +02:00
kiri e4616b6a3a feat: install garden and kubectl (sort of) 2026-07-10 20:50:36 +02:00
kiri d40d3c9ef4 feat: add neovim webdev support 2026-07-08 15:04:16 +02:00
kiri 187adea90e chore: update inputs 2026-07-08 14:54:37 +02:00
kiri 7db7a46d44 feat: set mouse accel based on machine type 2026-07-08 09:45:06 +02:00
kiri e9641eed18 feat: remove neovim bufferline 2026-07-08 09:41:05 +02:00
28 changed files with 619 additions and 510 deletions
Generated
+105 -420
View File
@@ -1,30 +1,5 @@
{ {
"nodes": { "nodes": {
"blueprint": {
"inputs": {
"nixpkgs": [
"llm-agents",
"nixpkgs"
],
"systems": [
"llm-agents",
"systems"
]
},
"locked": {
"lastModified": 1776249299,
"narHash": "sha256-Dt9t1TGRmJFc0xVYhttNBD6QsAgHOHCArqGa0AyjrJY=",
"owner": "numtide",
"repo": "blueprint",
"rev": "56131e8628f173d24a27f6d27c0215eff57e40dd",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "blueprint",
"type": "github"
}
},
"bun2nix": { "bun2nix": {
"inputs": { "inputs": {
"flake-parts": [ "flake-parts": [
@@ -45,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1778446047, "lastModified": 1784665499,
"narHash": "sha256-oQvcadh2BCkrog+SGrG6YffKJrveYpjj3TdQJWaKhaM=", "narHash": "sha256-9BMxlTxCCDAeoNLtb1a/st7udtTIJep+wpUzquA29VU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "bun2nix", "repo": "bun2nix",
"rev": "f2bc12af1a6369648aac41041ceeaa0b866599c6", "rev": "0f2a1f0b6f42cebe3b149bf62d38754c5e0e9729",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -58,83 +33,6 @@
"type": "github" "type": "github"
} }
}, },
"cachix": {
"inputs": {
"devenv": [
"devenv"
],
"flake-compat": [
"devenv",
"flake-compat"
],
"git-hooks": [
"devenv",
"git-hooks"
],
"nixpkgs": [
"devenv",
"nixpkgs"
]
},
"locked": {
"lastModified": 1777487137,
"narHash": "sha256-TuvKVBX60mqyMT6OB5JqVEh1YIWtFMR/igLCaCdC9tw=",
"owner": "cachix",
"repo": "cachix",
"rev": "a66a440c321d35f7193472c317f42a55ccd1cb93",
"type": "github"
},
"original": {
"owner": "cachix",
"ref": "latest",
"repo": "cachix",
"type": "github"
}
},
"crate2nix": {
"flake": false,
"locked": {
"lastModified": 1772186516,
"narHash": "sha256-8s28pzmQ6TOIUzznwFibtW1CMieMUl1rYJIxoQYor58=",
"owner": "rossng",
"repo": "crate2nix",
"rev": "ba5dd398e31ee422fbe021767eb83b0650303a6e",
"type": "github"
},
"original": {
"owner": "rossng",
"repo": "crate2nix",
"rev": "ba5dd398e31ee422fbe021767eb83b0650303a6e",
"type": "github"
}
},
"devenv": {
"inputs": {
"cachix": "cachix",
"crate2nix": "crate2nix",
"flake-compat": "flake-compat",
"flake-parts": "flake-parts",
"ghostty": "ghostty",
"git-hooks": "git-hooks",
"nix": "nix",
"nixd": "nixd",
"nixpkgs": "nixpkgs",
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1782492839,
"narHash": "sha256-j9wrcB4al5QhMelEghJ0Qs+RQPT+wyCcI4070NEgPLQ=",
"owner": "cachix",
"repo": "devenv",
"rev": "3d39d0817d62069f7b18821c34a617b5141cb278",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "devenv",
"type": "github"
}
},
"disko": { "disko": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -163,11 +61,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1781164160, "lastModified": 1784365424,
"narHash": "sha256-dxo3aPnfaQJt9K/3NhgKfu2Q9B42z4d4Or9Izoug+68=", "narHash": "sha256-kJO1Tww/GkvLq5amrV4BKidYGr5YumM+cH/xYALAiw4=",
"owner": "abenz1267", "owner": "abenz1267",
"repo": "elephant", "repo": "elephant",
"rev": "3296842820d04d5ec774afc7528492fcbb3c01f2", "rev": "23f37238367355cf46843015ad5e94706200176a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -176,35 +74,16 @@
"type": "github" "type": "github"
} }
}, },
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1767039857,
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-parts": { "flake-parts": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": "nixpkgs-lib"
"devenv",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1778716662, "lastModified": 1782949081,
"narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=", "narHash": "sha256-vp6Y/Grm98ESt6ceOkWiHWyZRDV3J1RID4w+6NWK9yA=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb", "rev": "17c9d6cdfc60c64f4ee8d306f9bc0b4ccb51481e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -221,11 +100,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1778716662, "lastModified": 1782949081,
"narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=", "narHash": "sha256-vp6Y/Grm98ESt6ceOkWiHWyZRDV3J1RID4w+6NWK9yA=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb", "rev": "17c9d6cdfc60c64f4ee8d306f9bc0b4ccb51481e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -234,85 +113,22 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_3": { "helix": {
"inputs": { "inputs": {
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs": "nixpkgs",
"rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1769996383, "lastModified": 1784822617,
"narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=", "narHash": "sha256-IYDL6Vnf13Sa+wbeXZTAxvdLA4h8Ew5ha0spcJy/Yk0=",
"owner": "hercules-ci", "owner": "helix-editor",
"repo": "flake-parts", "repo": "helix",
"rev": "57928607ea566b5db3ad13af0e57e921e6b12381", "rev": "079a789e8cb08ead67f19e1971a1b7438b37354b",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "hercules-ci", "owner": "helix-editor",
"repo": "flake-parts", "repo": "helix",
"type": "github"
}
},
"ghostty": {
"flake": false,
"locked": {
"lastModified": 1779069789,
"narHash": "sha256-ojo+gso45/6CVSuqfSVnlWpQ4d0QeLgwok+v/g3yu0E=",
"owner": "ghostty-org",
"repo": "ghostty",
"rev": "4b7bf0b20e3baf9c1ba10c63f2ad1fd853faea8f",
"type": "github"
},
"original": {
"owner": "ghostty-org",
"repo": "ghostty",
"type": "github"
}
},
"git-hooks": {
"inputs": {
"flake-compat": [
"devenv",
"flake-compat"
],
"gitignore": "gitignore",
"nixpkgs": [
"devenv",
"nixpkgs"
]
},
"locked": {
"lastModified": 1778507602,
"narHash": "sha256-kTwur1wV+01SdqskVMSo6JMEpg71ps3HpbFY2GsflKs=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "61ab0e80d9c7ab14c256b5b453d8b3fb0189ba0a",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
"devenv",
"git-hooks",
"nixpkgs"
]
},
"locked": {
"lastModified": 1709087332,
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github" "type": "github"
} }
}, },
@@ -323,11 +139,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1782702263, "lastModified": 1784913159,
"narHash": "sha256-8/MG4Su7PhnynrmsVO61IeAfrK7GuUEu+E+gwbhy1QQ=", "narHash": "sha256-JWq0BfjO4ktpH5USfQNQzdvHpIDT8fSKD5K7LvdMRFs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "789a35fbdeb3c46b260096daa0b321c11be527ea", "rev": "079a3b5d1aa6a719920a51316253b7d6dd22738d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -338,11 +154,11 @@
}, },
"import-tree": { "import-tree": {
"locked": { "locked": {
"lastModified": 1778781969, "lastModified": 1784254960,
"narHash": "sha256-Jjuz5CmSkur8KvLDoGa+vylEp+RkQtv4mt/qcMznpH0=", "narHash": "sha256-iI88R3wHz8wTKQb5orvpc51L/Xr64AJyxid/0MKa/b8=",
"owner": "vic", "owner": "vic",
"repo": "import-tree", "repo": "import-tree",
"rev": "d321337efd0f23a9eb14a42adb7b2c29313ab274", "rev": "4ebb10ae17d5f1ad366e7aef5b92cb8eecf24f69",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -353,21 +169,20 @@
}, },
"llm-agents": { "llm-agents": {
"inputs": { "inputs": {
"blueprint": "blueprint",
"bun2nix": "bun2nix", "bun2nix": "bun2nix",
"flake-parts": "flake-parts_2", "flake-parts": "flake-parts_2",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"systems": "systems_2", "systems": "systems_2",
"treefmt-nix": "treefmt-nix_2" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1782714906, "lastModified": 1784961014,
"narHash": "sha256-3pX8mc2rLL0UMHN1SILROVUxXFmYPvK+xQcHEZgoXwo=", "narHash": "sha256-Ot9VI5fn7odhq1Him2pRjdFkLAm9CUTUqUz///pTFF8=",
"owner": "numtide", "owner": "numtide",
"repo": "llm-agents.nix", "repo": "llm-agents.nix",
"rev": "70e4e3d55e2ffcdfbd9c89241efcb79a84ca6cb1", "rev": "d8b00961d99eb93ec852f29ed8be290573cc88e8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -376,40 +191,21 @@
"type": "github" "type": "github"
} }
}, },
"lux-pkgs": {
"inputs": {
"flake-parts": "flake-parts_3",
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1772315038,
"narHash": "sha256-YL6NQd97AiZGe/Q4ZWxZaguKVHL0pfNvP/Cqgl/oh4g=",
"ref": "refs/heads/main",
"rev": "d7660146e70475c096bed703e4dad687a58e13dc",
"revCount": 1,
"type": "git",
"url": "ssh://gitea@orion/kiri/lux-pkgs"
},
"original": {
"type": "git",
"url": "ssh://gitea@orion/kiri/lux-pkgs"
}
},
"niri": { "niri": {
"inputs": { "inputs": {
"niri-stable": "niri-stable", "niri-stable": "niri-stable",
"niri-unstable": "niri-unstable", "niri-unstable": "niri-unstable",
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs_2",
"nixpkgs-stable": "nixpkgs-stable", "nixpkgs-stable": "nixpkgs-stable",
"xwayland-satellite-stable": "xwayland-satellite-stable", "xwayland-satellite-stable": "xwayland-satellite-stable",
"xwayland-satellite-unstable": "xwayland-satellite-unstable" "xwayland-satellite-unstable": "xwayland-satellite-unstable"
}, },
"locked": { "locked": {
"lastModified": 1782592242, "lastModified": 1784874881,
"narHash": "sha256-kgINba6Ilpj3rdTi2BeKlQBs6ZxTdu3Gb49U5gDUVhg=", "narHash": "sha256-u4jhSIf/Un0qZB+Cn3hTTaHSI20XeAxYbA5o4faqdJs=",
"owner": "sodiboo", "owner": "sodiboo",
"repo": "niri-flake", "repo": "niri-flake",
"rev": "9e26dfe0fb8d61475b6f9e8d63477fe92509f1db", "rev": "ef7a2a3d719af46b906c22a3ebfb7d65627b2cd2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -438,11 +234,11 @@
"niri-unstable": { "niri-unstable": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1781781064, "lastModified": 1784570726,
"narHash": "sha256-Ii/koEm/sRyg65qbAQWqEgboSEIhdH0EL4KglAc14p0=", "narHash": "sha256-9EMn69JBcFWFgUM7f0VBAX+jBby5b9H3M59U75+5yI4=",
"owner": "YaLTeR", "owner": "YaLTeR",
"repo": "niri", "repo": "niri",
"rev": "49fc6117fd6c043adaa2ead316b82db5ed735d36", "rev": "7f26c3ee804fb6ed458ef7fb0e3c794f14e0b3bc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -451,46 +247,6 @@
"type": "github" "type": "github"
} }
}, },
"nix": {
"inputs": {
"flake-compat": [
"devenv",
"flake-compat"
],
"flake-parts": [
"devenv",
"flake-parts"
],
"git-hooks-nix": [
"devenv",
"git-hooks"
],
"nixpkgs": [
"devenv",
"nixpkgs"
],
"nixpkgs-23-11": [
"devenv"
],
"nixpkgs-regression": [
"devenv"
]
},
"locked": {
"lastModified": 1779748925,
"narHash": "sha256-meIhqGC04O5VXbKSFXSQoOKp+XCq5RMnwAk1Guo0VQo=",
"owner": "cachix",
"repo": "nix",
"rev": "0bc443c8ff235c3547d09327b48aaa2ab98b15f2",
"type": "github"
},
"original": {
"owner": "cachix",
"ref": "devenv-2.34",
"repo": "nix",
"type": "github"
}
},
"nix-index-database": { "nix-index-database": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -498,11 +254,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1782636943, "lastModified": 1784440659,
"narHash": "sha256-ripjZa7BBLwL1uS5VJF3s/VpZpWt5ZIQEvkJ/FJNpQw=", "narHash": "sha256-Q5kNLlWngt7TaIIZoxDKWMHjiSaNRVqr70FqWCRRfr4=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "058b1f9381fa79fcda49982370a750ff92dbba43", "rev": "4f8d52a3598b0dc7db7a5e7b419e3edd9d1ecfdb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -531,42 +287,16 @@
"type": "github" "type": "github"
} }
}, },
"nixd": {
"inputs": {
"flake-parts": [
"devenv",
"flake-parts"
],
"nixpkgs": [
"devenv",
"nixpkgs"
],
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1778381404,
"narHash": "sha256-FqhdOTA8vyoIpkHhbs2cCT7h6EWM7nsLeOYJc1ifQLE=",
"owner": "nix-community",
"repo": "nixd",
"rev": "e3e45eb76663f522e196b7f0cf34cab201db7779",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixd",
"type": "github"
}
},
"nixos-hardware": { "nixos-hardware": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1782562157, "lastModified": 1784723954,
"narHash": "sha256-a7+T6QSeowynwZ1ZJJbP8T8ntAytvrui8kFGJmIZt2c=", "narHash": "sha256-1CfD8ZUjCkTgjsneLZ/lxCHhgDfqxxE7/GX0MmsgiqA=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "a9cf7546a938c737b079e738de73934a13de9784", "rev": "a017f5b72210026af5b3ac5949f08d94380a6fbd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -577,31 +307,28 @@
} }
}, },
"nixpkgs": { "nixpkgs": {
"inputs": {
"nixpkgs-src": "nixpkgs-src"
},
"locked": { "locked": {
"lastModified": 1778507786, "lastModified": 1784796856,
"narHash": "sha256-HzSQCKMsMr8r55LwM1JuzIOB+8bzk0FEv6sItKvsfoY=", "narHash": "sha256-wWFrV5/Qbm+lyt5x20E/bSbfJiGKMo4RCxZV8cl/WZI=",
"owner": "cachix", "owner": "nixos",
"repo": "devenv-nixpkgs", "repo": "nixpkgs",
"rev": "8f24a228a782e24576b155d1e39f0d914b380691", "rev": "e2587caef70cea85dd97d7daab492899902dbf5d",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "cachix", "owner": "nixos",
"ref": "rolling", "ref": "nixos-unstable",
"repo": "devenv-nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"lastModified": 1769909678, "lastModified": 1782614948,
"narHash": "sha256-cBEymOf4/o3FD5AZnzC3J9hLbiZ+QDT/KDuyHXVJOpM=", "narHash": "sha256-ePjCwr1sNm9NYUqywL7QfK3JnlS015msC+eBu2zKlp8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixpkgs.lib", "repo": "nixpkgs.lib",
"rev": "72716169fe93074c333e8d0173151350670b824c", "rev": "db3f255737b94216eb71cce308e2912cf6bc2d7c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -610,30 +337,13 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-src": {
"flake": false,
"locked": {
"lastModified": 1778274207,
"narHash": "sha256-I4puXmX1iovcCHZlRmztO3vW0mAbbRvq4F8wgIMQ1MM=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b3da656039dc7a6240f27b2ef8cc6a3ef3bccae7",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1782498288, "lastModified": 1782847189,
"narHash": "sha256-8/X3yyTXiE82b38n32ItbOqfWOVBl+gKa8fILyZfR4Q=", "narHash": "sha256-twXPFqFsrrY5r28Zh7Homgcp2gUMBgQ6WDS98Q/3xFI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "3cac626ec5e3703e835f227687e88aa9e2f25701", "rev": "b6018f87da91d19d0ab4cf979885689b469cdd41",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -643,29 +353,29 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": { "nixpkgs-stable_2": {
"locked": { "locked": {
"lastModified": 1772173633, "lastModified": 1784856561,
"narHash": "sha256-MOH58F4AIbCkh6qlQcwMycyk5SWvsqnS/TCfnqDlpj4=", "narHash": "sha256-J+Bx1Z6Oeoj2FgnBhRMKyUhhtDoOpTgXYaVLZpDjW4A=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c0f3d81a7ddbc2b1332be0d8481a672b4f6004d6", "rev": "597283ad8aa0b331c788e97c4c262d58877074ef",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixpkgs-unstable", "ref": "nixos-26.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_3": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1782467914, "lastModified": 1784796856,
"narHash": "sha256-pGvFkM8N0xEkIIXDe5YYfbEAvHrk4IxBrjB/x8OomhE=", "narHash": "sha256-wWFrV5/Qbm+lyt5x20E/bSbfJiGKMo4RCxZV8cl/WZI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e73de5be04e0eff4190a1432b946d469c794e7b4", "rev": "e2587caef70cea85dd97d7daab492899902dbf5d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -675,7 +385,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_4": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1767892417, "lastModified": 1767892417,
"narHash": "sha256-8bW3q88CEg2u4hSP66Vf4lpbLonHz7hqDNBMcCY7E9U=", "narHash": "sha256-8bW3q88CEg2u4hSP66Vf4lpbLonHz7hqDNBMcCY7E9U=",
@@ -688,26 +398,26 @@
"url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz" "url": "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"
} }
}, },
"nixpkgs_5": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1782636521, "lastModified": 1784812282,
"narHash": "sha256-Yf2TcFLw0r574fP/5eUN6N8el70HbYNdbDeeHpnK2eQ=", "narHash": "sha256-kj0RWcISiimYMfvVVXk4O9z73XHY/tPSVYZ24imKdP8=",
"rev": "e1c1b84752fb0897897380a3cae9dc7fcab91ca3", "rev": "6d12004108e0e4a5cfa4bd83b14477f040b15773",
"type": "tarball", "type": "tarball",
"url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.11pre1023798.e1c1b84752fb/nixexprs.tar.xz" "url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.11pre1040448.6d12004108e0/nixexprs.tar.xz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
"url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz" "url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"
} }
}, },
"nixpkgs_6": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1782467914, "lastModified": 1784356753,
"narHash": "sha256-inDx/w70OSJoJPqtKh0BrzAsbZZhpya7YgS43jHnhwg=", "narHash": "sha256-zupdTm41be2fY8cexroEOGjopl3F2Gqs3gk7ieqaM3s=",
"rev": "e73de5be04e0eff4190a1432b946d469c794e7b4", "rev": "61b7c44c4073f0b827768aff0049561b5110ea5a",
"type": "tarball", "type": "tarball",
"url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1022855.e73de5be04e0/nixexprs.tar.xz" "url": "https://releases.nixos.org/nixos/unstable/nixos-26.11pre1036777.61b7c44c4073/nixexprs.tar.xz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@@ -716,14 +426,14 @@
}, },
"noctalia": { "noctalia": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_6" "nixpkgs": "nixpkgs_5"
}, },
"locked": { "locked": {
"lastModified": 1782707326, "lastModified": 1784944609,
"narHash": "sha256-9nEW0HmJhBnx18relGPey+5mAOP43AoJ1O9ybUJFhrA=", "narHash": "sha256-+TlclUP7Q2ylQ8Uh9M35U1ftuGdp++/QfnX9I3V3VeI=",
"owner": "noctalia-dev", "owner": "noctalia-dev",
"repo": "noctalia", "repo": "noctalia",
"rev": "8c70e95e0af0f359878529631d75fc1ab0d3bd6d", "rev": "8fc7fac1fd637f0027ce1b3cc9544d053cfd8f2c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -734,22 +444,19 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"devenv": "devenv",
"disko": "disko", "disko": "disko",
"elephant": "elephant", "elephant": "elephant",
"flake-parts": [ "flake-parts": "flake-parts",
"lux-pkgs", "helix": "helix",
"flake-parts"
],
"home-manager": "home-manager", "home-manager": "home-manager",
"import-tree": "import-tree", "import-tree": "import-tree",
"llm-agents": "llm-agents", "llm-agents": "llm-agents",
"lux-pkgs": "lux-pkgs",
"niri": "niri", "niri": "niri",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nix-wrapper-modules": "nix-wrapper-modules", "nix-wrapper-modules": "nix-wrapper-modules",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_5", "nixpkgs": "nixpkgs_4",
"nixpkgs-stable": "nixpkgs-stable_2",
"noctalia": "noctalia", "noctalia": "noctalia",
"sops-nix": "sops-nix", "sops-nix": "sops-nix",
"walker": "walker" "walker": "walker"
@@ -758,16 +465,16 @@
"rust-overlay": { "rust-overlay": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"devenv", "helix",
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1779074409, "lastModified": 1775358767,
"narHash": "sha256-6aXy8Ga41iLVM8ibddFU1O5+wYWcBGNEfZzZuL91eIc=", "narHash": "sha256-f2eC+WIfhjevCPQILuV08i/kmKZzYZpUvkom/33VxCA=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "2a77b5b1dc952f214e8102acdef1622b68515560", "rev": "20fd44bc663daa53a2575e01293e24e681d62244",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -783,11 +490,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1782165805, "lastModified": 1783174389,
"narHash": "sha256-478kKQBvK6SYTOdN2h9jhKJv94nbXRbFMfuL1WshErg=", "narHash": "sha256-aCWC8ngycU7OdJrU2+Je3qf+1a2ykuBvpPhZT/9tXMc=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "56b24064fdcaedca53553b1a6d607fd23b613a24", "rev": "f1406619a3884cd5c47992a70b8b35c9c0fcb4c9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -842,28 +549,6 @@
} }
}, },
"treefmt-nix": { "treefmt-nix": {
"inputs": {
"nixpkgs": [
"devenv",
"nixd",
"nixpkgs"
]
},
"locked": {
"lastModified": 1775636079,
"narHash": "sha256-pc20NRoMdiar8oPQceQT47UUZMBTiMdUuWrYu2obUP0=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "790751ff7fd3801feeaf96d7dc416a8d581265ba",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"treefmt-nix_2": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"llm-agents", "llm-agents",
@@ -871,11 +556,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1780220602, "lastModified": 1784369104,
"narHash": "sha256-eynAfOmbmxJnkp7YewvCEbShNnnYJ9gLLqkzsYtBPeM=", "narHash": "sha256-47cxbcZODibHv3rELFQ9vZly0vUNkND/atn/U7HLeb0=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "db947814a175b7ca6ded66e21383d938df01c227", "rev": "df3c0640565d04a0261253cdd89fce78ec50168a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -895,11 +580,11 @@
"systems": "systems_3" "systems": "systems_3"
}, },
"locked": { "locked": {
"lastModified": 1781164128, "lastModified": 1784217994,
"narHash": "sha256-xPcYrHdDXWykIi5/XXkLvliBArRnfzvs+atB9El1qhI=", "narHash": "sha256-gxHJsrJZo2qbKK47Kf/9ho3i/HhRwkL8XvPnczGPd9E=",
"owner": "abenz1267", "owner": "abenz1267",
"repo": "walker", "repo": "walker",
"rev": "aa1e4b7d59237e8c43dde58636bae476f23d9bfb", "rev": "42b3ed88abf50bc52638fb2835b7f17e3ea3ac4c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -928,11 +613,11 @@
"xwayland-satellite-unstable": { "xwayland-satellite-unstable": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1781226823, "lastModified": 1784679892,
"narHash": "sha256-28696iIw8uE0ZUyFTtzhEM8xMh85clCYypMxkvUi+sc=", "narHash": "sha256-Mb7jpqnrcYCfNSItIkkHpuR3YxWFxPuIBfcwNKlRBkk=",
"owner": "Supreeeme", "owner": "Supreeeme",
"repo": "xwayland-satellite", "repo": "xwayland-satellite",
"rev": "8575d0ef55d70f9b4c46b6bffb3accf912217e1e", "rev": "8d135d3b2854b30fd01ea6cd6c27e523dd50a839",
"type": "github" "type": "github"
}, },
"original": { "original": {
+3 -4
View File
@@ -6,8 +6,8 @@
url = "github:nix-community/disko"; url = "github:nix-community/disko";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
devenv.url = "github:cachix/devenv"; flake-parts.url = "github:hercules-ci/flake-parts";
flake-parts.follows = "lux-pkgs/flake-parts"; helix.url = "github:helix-editor/helix";
home-manager = { home-manager = {
url = "github:nix-community/home-manager"; url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@@ -24,6 +24,7 @@
}; };
nixos-hardware.url = "github:NixOS/nixos-hardware/master"; nixos-hardware.url = "github:NixOS/nixos-hardware/master";
nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz";
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-26.05";
noctalia.url = "github:noctalia-dev/noctalia"; noctalia.url = "github:noctalia-dev/noctalia";
sops-nix = { sops-nix = {
url = "github:Mic92/sops-nix"; url = "github:Mic92/sops-nix";
@@ -43,8 +44,6 @@
inputs.elephant.follows = "elephant"; inputs.elephant.follows = "elephant";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
lux-pkgs.url = "git+ssh://gitea@orion/kiri/lux-pkgs";
}; };
outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } (inputs.import-tree ./modules); outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } (inputs.import-tree ./modules);
+35 -2
View File
@@ -3,10 +3,12 @@ let
hmModules = config.flake.modules.homeManager; hmModules = config.flake.modules.homeManager;
in in
{ {
flake.modules.nixos.ai = { flake.modules.nixos.ai =
{ pkgs, ... }:
{
home-manager.sharedModules = [ hmModules.ai ]; home-manager.sharedModules = [ hmModules.ai ];
nixpkgs.overlays = [ inputs.llm-agents.overlays.default ]; nixpkgs.overlays = [ inputs.llm-agents.overlays.shared-nixpkgs ];
nix.settings = { nix.settings = {
extra-substituters = [ "https://cache.numtide.com" ]; extra-substituters = [ "https://cache.numtide.com" ];
@@ -14,11 +16,41 @@ in
"niks3.numtide.com-1:DTx8wZduET09hRmMtKdQDxNNthLQETkc/yaX7M4qK0g=" "niks3.numtide.com-1:DTx8wZduET09hRmMtKdQDxNNthLQETkc/yaX7M4qK0g="
]; ];
}; };
services.ollama = {
enable = true;
package = pkgs.ollama-vulkan;
loadModels = [ "nomic-embed-text" ];
};
}; };
flake.modules.homeManager.ai = flake.modules.homeManager.ai =
{ pkgs, ... }: { pkgs, ... }:
{ {
services.podman = {
volumes = {
grounded-docs-config = { };
grounded-docs-data = { };
};
containers.grounded-docs = {
image = "ghcr.io/arabold/docs-mcp-server:2.4.0";
network = "host";
volumes = [
"grounded-docs-config.volume:/config"
"grounded-docs-data.volume:/data"
];
environment = {
DOCS_MCP_APP_TELEMETRY_ENABLED = "false";
DOCS_MCP_EMBEDDING_MODEL = "openai:nomic-embed-text";
DOCS_MCP_EMBEDDINGS_VECTOR_DIMENSION = "768";
OPENAI_API_BASE = "http://127.0.0.1:11434/v1";
OPENAI_API_KEY = "ollama";
};
exec = "--protocol http --host 127.0.0.1 --port 6280";
};
};
programs.mcp = { programs.mcp = {
enable = true; enable = true;
servers.nixos = { servers.nixos = {
@@ -29,6 +61,7 @@ in
home.packages = [ home.packages = [
pkgs.llm-agents.codex pkgs.llm-agents.codex
pkgs.ctx7
]; ];
}; };
} }
+28 -5
View File
@@ -2,6 +2,14 @@
{ {
flake.modules.homeManager.dev-tools = flake.modules.homeManager.dev-tools =
{ config, pkgs, ... }: { config, pkgs, ... }:
let
stablePkgs = import inputs.nixpkgs-stable {
inherit (pkgs.stdenv.hostPlatform) system;
config = {
inherit (pkgs.config) allowUnfree;
};
};
in
{ {
home.sessionVariables.CARGO_HOME = "${config.xdg.dataHome}/cargo"; home.sessionVariables.CARGO_HOME = "${config.xdg.dataHome}/cargo";
home.packages = with pkgs; [ home.packages = with pkgs; [
@@ -10,13 +18,13 @@
usql usql
posting posting
resterm resterm
inputs.devenv.packages.${pkgs.stdenv.hostPlatform.system}.default kubectl
stablePkgs.mongodb-compass
scc
nodejs
mariadb
]; ];
programs.zsh.initContent = ''
eval "$(devenv hook zsh)"
'';
programs.lazygit = { programs.lazygit = {
enable = true; enable = true;
enableZshIntegration = true; enableZshIntegration = true;
@@ -26,5 +34,20 @@
programs.jq.enable = true; programs.jq.enable = true;
programs.bun.enable = true; programs.bun.enable = true;
programs.ripgrep.enable = true; programs.ripgrep.enable = true;
programs.k9s.enable = true;
programs.direnv = {
enable = true;
nix-direnv.enable = true;
config.global = {
hide_env_diff = true;
log_format = " %s";
};
};
};
flake.modules.nixos.openvpn = {
programs.openvpn3.enable = true;
services.resolved.enable = true;
}; };
} }
+215
View File
@@ -0,0 +1,215 @@
{ inputs, ... }:
{
flake.modules.nixos.helix = {
nix.settings = {
extra-substituters = [ "https://helix.cachix.org" ];
extra-trusted-public-keys = [
"helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs="
];
};
};
flake.modules.homeManager.helix =
{ pkgs, ... }:
let
svelteLanguageServer = pkgs.svelte-language-server.overrideAttrs (
finalAttrs: previousAttrs: {
version = "0.18.3";
pnpmWorkspaces = [
"svelte-language-server..."
"typescript-svelte-plugin..."
];
src = pkgs.fetchFromGitHub {
owner = "sveltejs";
repo = "language-tools";
tag = "svelte-language-server@${finalAttrs.version}";
hash = "sha256-FTOkJPXbsG6R53yr4n0/IR2lzFCovrdV0+epOi07lBQ=";
};
pnpmDeps = pkgs.fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
pnpmWorkspaces
;
pnpm = pkgs.pnpm_10;
fetcherVersion = 3;
hash = "sha256-fY3hrCkr/soJk1gp39/jec8lT2ZJI27xRBCZi006oWA=";
};
buildPhase = builtins.replaceStrings
[ "pnpm run --filter=svelte-language-server... build" ]
[ ''
pnpm run --filter=svelte-language-server... build
pnpm --filter=typescript-svelte-plugin exec tsc \
-p ./ \
--pretty false \
--types node \
--typeRoots ../../node_modules/.pnpm/node_modules/@types
'' ]
previousAttrs.buildPhase;
installPhase = builtins.replaceStrings
[ "pnpm install --filter=svelte-language-server..." ]
[ "pnpm install --filter=svelte-language-server... --filter=typescript-svelte-plugin..." ]
previousAttrs.installPhase;
postInstall = (previousAttrs.postInstall or "") + ''
substituteInPlace \
"$out/lib/node_modules/svelte-language-server/packages/language-server/node_modules/@vscode/emmet-helper/lib/cjs/emmetHelper.js" \
--replace-fail \
"'jsx.enabled': syntax === 'jsx'," \
"'jsx.enabled': syntax === 'jsx' || syntax === 'html',"
ln -s ../packages/typescript-plugin \
"$out/lib/node_modules/svelte-language-server/node_modules/typescript-svelte-plugin"
ln -s ../packages/language-server/node_modules/svelte \
"$out/lib/node_modules/svelte-language-server/node_modules/svelte"
'';
}
);
in
{
programs.helix = {
enable = true;
defaultEditor = true;
package = inputs.helix.packages.${pkgs.stdenv.hostPlatform.system}.default;
extraPackages = with pkgs; [
vtsls
svelteLanguageServer
tailwindcss-language-server
nixd
nixfmt
oxfmt
simple-completion-language-server
odin
ols
rust-analyzer
rustfmt
cargo
];
settings = {
theme = "kanagawa-custom";
editor = {
soft-wrap.enable = true;
lsp = {
auto-document-highlight = true;
display-inlay-hints = false;
};
rainbow-brackets = true;
line-number = "relative";
cursorline = true;
gutters = [
"code-action-hint"
"diagnostics"
"spacer"
"line-numbers"
"spacer"
"diff"
];
color-modes = true;
cursor-shape = {
insert = "bar";
normal = "block";
select = "underline";
};
};
};
themes.kanagawa-custom = {
inherits = "kanagawa";
"ui.highlight".underline = {
color = "dragonBlue";
style = "line";
};
};
languages = {
language-server.scls = {
command = "simple-completion-language-server";
environment.SNIPPETS_PATH = "${pkgs.vimPlugins.friendly-snippets}/snippets";
};
language-server.vtsls.config.vtsls = {
autoUseWorkspaceTsdk = true;
tsserver.globalPlugins = [
{
name = "typescript-svelte-plugin";
location = "${svelteLanguageServer}/lib/node_modules/svelte-language-server";
enableForWorkspaceTypeScriptVersions = true;
}
];
};
language = [
{
name = "javascript";
language-servers = [
"vtsls"
"scls"
];
auto-format = true;
}
{
name = "jsx";
language-servers = [
"vtsls"
"scls"
];
auto-format = true;
}
{
name = "typescript";
language-servers = [
"vtsls"
"scls"
];
auto-format = true;
}
{
name = "tsx";
language-servers = [
"vtsls"
"scls"
];
auto-format = true;
}
{
name = "svelte";
formatter = {
command = "${pkgs.coreutils}/bin/env";
args = [
"NODE_PATH=%{workspace_directory}/node_modules"
"oxfmt"
"--stdin-filepath=%{buffer_name}"
];
};
auto-format = true;
language-servers = [
"scls"
"svelteserver"
"tailwindcss-ls"
];
}
{
name = "nix";
auto-format = true;
}
{
name = "rust";
auto-format = true;
}
];
};
};
};
}
+5
View File
@@ -0,0 +1,5 @@
{
flake.modules.homeManager.keyring = {
services.gnome-keyring.enable = true;
};
}
@@ -48,14 +48,6 @@
NormalFloat = { fg = theme.ui.float.fg, bg = theme.ui.float.bg }, NormalFloat = { fg = theme.ui.float.fg, bg = theme.ui.float.bg },
WinBar = { fg = theme.ui.fg_dim, bg = "NONE" }, WinBar = { fg = theme.ui.fg_dim, bg = "NONE" },
WinBarNC = { fg = theme.ui.nontext, bg = theme.ui.bg_dim }, WinBarNC = { fg = theme.ui.nontext, bg = theme.ui.bg_dim },
BufferLineFill = { bg = theme.ui.bg_m3 },
BufferLineBackground = { fg = theme.ui.fg_dim, bg = theme.ui.bg_m3 },
BufferLineBufferSelected = { fg = theme.ui.fg, bg = theme.ui.bg, bold = true },
BufferLineModified = { fg = theme.vcs.changed, bg = theme.ui.bg_m3 },
BufferLineModifiedSelected = { fg = theme.vcs.changed, bg = theme.ui.bg },
BufferLineDiagnostic = { fg = theme.ui.nontext, bg = theme.ui.bg_m3 },
BufferLineDiagnosticSelected = { fg = theme.ui.fg_dim, bg = theme.ui.bg },
} }
end, end,
}) })
+52 -8
View File
@@ -18,6 +18,48 @@ in
osConfig, osConfig,
... ...
}: }:
let
nvimTreesitter = pkgs.vimPlugins.nvim-treesitter;
svelteLanguageServer = pkgs.svelte-language-server.overrideAttrs (
finalAttrs: _: {
version = "0.18.3";
src = pkgs.fetchFromGitHub {
owner = "sveltejs";
repo = "language-tools";
tag = "svelte-language-server@${finalAttrs.version}";
hash = "sha256-FTOkJPXbsG6R53yr4n0/IR2lzFCovrdV0+epOi07lBQ=";
};
pnpmDeps = pkgs.fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
pnpmWorkspaces
;
pnpm = pkgs.pnpm_10;
fetcherVersion = 3;
hash = "sha256-fY3hrCkr/soJk1gp39/jec8lT2ZJI27xRBCZi006oWA=";
};
}
);
svelteGrammar = nvimTreesitter.builtGrammars.svelte.overrideAttrs (_: {
version = "0.0.0+rev=c2457b9";
src = pkgs.fetchFromGitHub {
owner = "m4rch3n1ng";
repo = "tree-sitter-svelte";
rev = "c2457b99a5b8ee38e14928dceeb246a61c097b77";
hash = "sha256-RIAe30TTzZhHuXxC2VRVk/X73Qm1u2LWOW3AsnUfRzI=";
};
});
nvimTreesitterWithAllGrammars = nvimTreesitter.withPlugins (
_:
map (
grammar: if grammar == nvimTreesitter.builtGrammars.svelte then svelteGrammar else grammar
) nvimTreesitter.allGrammars
);
in
{ {
home.sessionVariables = { home.sessionVariables = {
EDITOR = "nvim"; EDITOR = "nvim";
@@ -37,22 +79,18 @@ in
settings.config_directory = ./lua-config; settings.config_directory = ./lua-config;
runtimePkgs = with pkgs; [ runtimePkgs = with pkgs; [
universal-ctags
ripgrep ripgrep
fd fd
tree-sitter
wl-clipboard wl-clipboard
stylua stylua
taplo taplo
yamlfmt yamlfmt
lua-language-server lua-language-server
nixd nixd
nix-doc
nixfmt nixfmt
dafny dafny
typescript vscode-langservers-extracted
typescript-language-server tailwindcss-language-server
rustc
rust-analyzer rust-analyzer
rustfmt rustfmt
astro-language-server astro-language-server
@@ -61,6 +99,12 @@ in
websocat websocat
ty ty
ruff ruff
vtsls
oxlint
oxfmt
emmet-language-server
svelteLanguageServer
]; ];
specs = { specs = {
@@ -72,7 +116,7 @@ in
data = with pkgs.vimPlugins; [ data = with pkgs.vimPlugins; [
plenary-nvim plenary-nvim
kanagawa-nvim kanagawa-nvim
nvim-treesitter.withAllGrammars nvimTreesitterWithAllGrammars
nvim-treesitter-textobjects nvim-treesitter-textobjects
rainbow-delimiters-nvim rainbow-delimiters-nvim
]; ];
@@ -93,6 +137,7 @@ in
data = with pkgs.vimPlugins; [ data = with pkgs.vimPlugins; [
nvim-lspconfig nvim-lspconfig
lazydev-nvim lazydev-nvim
nvim-navic
trouble-nvim trouble-nvim
typst-preview-nvim typst-preview-nvim
]; ];
@@ -118,7 +163,6 @@ in
lazy = true; lazy = true;
data = with pkgs.vimPlugins; [ data = with pkgs.vimPlugins; [
lualine-nvim lualine-nvim
bufferline-nvim
gitsigns-nvim gitsigns-nvim
zen-mode-nvim zen-mode-nvim
which-key-nvim which-key-nvim
@@ -12,6 +12,7 @@ vim.o.number = true
vim.o.mouse = "a" vim.o.mouse = "a"
vim.o.showmode = false vim.o.showmode = false
vim.o.showtabline = 0
vim.opt.shortmess:append("Wc") vim.opt.shortmess:append("Wc")
@@ -49,6 +50,7 @@ vim.o.confirm = true
vim.keymap.set("n", "<Esc>", "<cmd>nohlsearch<CR>") vim.keymap.set("n", "<Esc>", "<cmd>nohlsearch<CR>")
vim.keymap.set("n", "<leader>q", vim.diagnostic.setloclist, { desc = "Open diagnostic [Q]uickfix list" }) vim.keymap.set("n", "<leader>q", vim.diagnostic.setloclist, { desc = "Open diagnostic [Q]uickfix list" })
vim.keymap.set("n", "<leader>bd", "<cmd>bdelete<CR>", { desc = "[B]uffer [D]elete" })
vim.keymap.set("t", "<Esc><Esc>", "<C-\\><C-n>", { desc = "Exit terminal mode" }) vim.keymap.set("t", "<Esc><Esc>", "<C-\\><C-n>", { desc = "Exit terminal mode" })
@@ -1,3 +1,16 @@
local function format_options(bufnr)
local oxfmt = vim.lsp.get_clients({
bufnr = bufnr,
name = "oxfmt",
method = "textDocument/formatting",
})[1]
return {
lsp_format = "fallback",
name = oxfmt and "oxfmt" or nil,
}
end
require("lz.n").load({ require("lz.n").load({
{ {
"conform.nvim", "conform.nvim",
@@ -7,7 +20,9 @@ require("lz.n").load({
{ {
"<leader>f", "<leader>f",
function() function()
require("conform").format({ async = true, lsp_format = "fallback" }) local options = format_options(vim.api.nvim_get_current_buf())
options.async = true
require("conform").format(options)
end, end,
mode = "", mode = "",
desc = "[F]ormat buffer", desc = "[F]ormat buffer",
@@ -21,10 +36,9 @@ require("lz.n").load({
if disable_filetypes[vim.bo[bufnr].filetype] then if disable_filetypes[vim.bo[bufnr].filetype] then
return nil return nil
else else
return { local options = format_options(bufnr)
timeout_ms = 500, options.timeout_ms = 500
lsp_format = "fallback", return options
}
end end
end, end,
formatters_by_ft = { formatters_by_ft = {
@@ -216,11 +216,33 @@ require("lz.n").load({
vim.lsp.enable("nixd") vim.lsp.enable("nixd")
vim.lsp.enable("dafny") vim.lsp.enable("dafny")
vim.lsp.enable("ts_ls") vim.lsp.enable("jsonls")
vim.lsp.config("vtsls", {
settings = {
vtsls = {
autoUseWorkspaceTsdk = true,
},
},
})
vim.lsp.enable("vtsls")
vim.lsp.enable("cssls")
vim.lsp.enable("html")
vim.lsp.enable("emmet_language_server")
vim.lsp.enable("oxlint")
vim.lsp.config("oxfmt", {
filetypes = vim.list_extend({ "svelte" }, vim.lsp.config.oxfmt.filetypes),
})
vim.lsp.enable("oxfmt")
vim.lsp.enable("tailwindcss")
vim.lsp.enable("rust_analyzer") vim.lsp.enable("rust_analyzer")
vim.lsp.enable("ty") vim.lsp.enable("ty")
vim.lsp.enable("ruff") vim.lsp.enable("ruff")
vim.lsp.enable("astro") vim.lsp.enable("astro")
vim.lsp.enable("svelte")
vim.lsp.config("tinymist", { vim.lsp.config("tinymist", {
settings = { settings = {
@@ -65,43 +65,6 @@ require("lz.n").load({
}) })
end, end,
}, },
{
"bufferline.nvim",
event = "VimEnter",
before = function()
require("lz.n").trigger_load("mini.nvim")
end,
after = function()
require("bufferline").setup({
options = {
mode = "buffers",
numbers = "none",
diagnostics = "nvim_lsp",
diagnostics_indicator = function(count, level)
local icon = level:match("error") and "" or level:match("warning") and "" or ""
return " " .. icon .. count
end,
always_show_bufferline = true,
show_buffer_close_icons = false,
show_close_icon = false,
separator_style = "thin",
sort_by = "insert_after_current",
offsets = {
{
filetype = "minifiles",
text = "Files",
separator = true,
},
},
},
})
vim.keymap.set("n", "<C-0>", "<cmd>BufferLineCycleNext<cr>", { desc = "[B]uffer [N]ext" })
vim.keymap.set("n", "<C-9>", "<cmd>BufferLineCyclePrev<cr>", { desc = "[B]uffer [P]revious" })
vim.keymap.set("n", "<leader>bb", "<cmd>BufferLinePick<cr>", { desc = "[B]uffer [B]rowse" })
vim.keymap.set("n", "<leader>bd", "<cmd>bdelete<cr>", { desc = "[B]uffer [D]elete" })
end,
},
{ {
"gitsigns.nvim", "gitsigns.nvim",
event = { "BufReadPre", "BufNewFile" }, event = { "BufReadPre", "BufNewFile" },
@@ -0,0 +1,3 @@
; extends
("attach") @keyword
+1 -1
View File
@@ -147,7 +147,7 @@ in
input = { input = {
focus-follows-mouse.enable = true; focus-follows-mouse.enable = true;
mouse."accel-speed" = 0.4; mouse."accel-speed" = if machine.portable then -0.6 else 0.4;
keyboard = { keyboard = {
repeat-delay = 300; repeat-delay = 300;
repeat-rate = 50; repeat-rate = 50;
-1
View File
@@ -17,7 +17,6 @@ in
settings = { settings = {
trusted-users = [ "@wheel" ]; trusted-users = [ "@wheel" ];
use-xdg-base-directories = true; use-xdg-base-directories = true;
auto-optimise-store = true;
experimental-features = [ experimental-features = [
"nix-command" "nix-command"
+10 -3
View File
@@ -2,13 +2,20 @@
flake.modules.nixos.printing = flake.modules.nixos.printing =
{ pkgs, ... }: { pkgs, ... }:
{ {
services.printing = { programs.system-config-printer.enable = true;
services = {
printing = {
enable = true; enable = true;
browsed.enable = true;
drivers = with pkgs; [ drivers = with pkgs; [
cups-filters
cups-browsed
cnijfilter2 cnijfilter2
]; ];
}; };
avahi = {
enable = true;
nssmdns4 = true;
};
};
}; };
} }
+11
View File
@@ -62,6 +62,17 @@
''; '';
initContent = '' initContent = ''
source <(/home/kiri/.garden/gardenctl completion zsh)
[ -n "$GCTL_SESSION_ID" ] || [ -n "$TERM_SESSION_ID" ] || export GCTL_SESSION_ID=$(uuidgen)
if [ -z "$GCTL_SESSION_ID" ] && [ -z "$TERM_SESSION_ID" ]; then
export GCTL_SESSION_ID=$(uuidgen)
fi
eval $(/home/kiri/.garden/gardenctl kubectl-env zsh)
bindkey -v bindkey -v
export KEYTIMEOUT=1 export KEYTIMEOUT=1
+5
View File
@@ -42,6 +42,11 @@ in
label = "sync"; label = "sync";
devices = builtins.attrNames syncDevices; devices = builtins.attrNames syncDevices;
}; };
bruno = {
path = "~/dev/bruno";
label = "bruno";
devices = builtins.attrNames syncDevices;
};
}; };
devices = syncDevices; devices = syncDevices;
}; };
+1
View File
@@ -56,6 +56,7 @@ in
in in
{ {
home.pointerCursor = { home.pointerCursor = {
enable = true;
inherit (cursorTheme) inherit (cursorTheme)
name name
package package
+11 -2
View File
@@ -38,10 +38,19 @@ in
}; };
flake.modules.homeManager.primary-launcher-walker = flake.modules.homeManager.primary-launcher-walker =
{ config, lib, ... }: {
config,
lib,
pkgs,
...
}:
{ {
imports = [ homeModules.walker-base ]; imports = [ homeModules.walker-base ];
facts.desktop.launcherCommand = lib.getExe config.programs.walker.package; facts.desktop.launcherCommand = [
(lib.getExe' pkgs.libressl.nc "nc")
"-U"
"/run/user/1000/walker/walker.sock"
];
}; };
} }
+15
View File
@@ -0,0 +1,15 @@
{
flake.modules.nixos.yookr-dev =
{ config, ... }:
{
security.pki.certificateFiles = [
../hosts/zenith/mkcert-rootCA.pem
../hosts/polaris/mkcert-rootCA.pem
];
networking.extraHosts = ''
127.0.0.1 local.management.yookr.org
127.0.0.1 local.dashboard.yookr.org
'';
};
}
+5
View File
@@ -0,0 +1,5 @@
{
flake.modules.homeManager.zed = {
programs.zed-editor.enable = true;
};
}
+1
View File
@@ -38,6 +38,7 @@ in
nixosModules.workstation-base nixosModules.workstation-base
nixosModules.deluge nixosModules.deluge
nixosModules.steam nixosModules.steam
nixosModules.yookr-dev
./_hardware.nix ./_hardware.nix
] ]
++ (with inputs.nixos-hardware.nixosModules; [ ++ (with inputs.nixos-hardware.nixosModules; [
+26
View File
@@ -0,0 +1,26 @@
-----BEGIN CERTIFICATE-----
MIIEeTCCAuGgAwIBAgIQfVRHKMDYi6CwYW2V9xAZXjANBgkqhkiG9w0BAQsFADBV
MR4wHAYDVQQKExVta2NlcnQgZGV2ZWxvcG1lbnQgQ0ExFTATBgNVBAsMDGtpcmlA
cG9sYXJpczEcMBoGA1UEAwwTbWtjZXJ0IGtpcmlAcG9sYXJpczAeFw0yNjA3MTAy
MDAyMzZaFw0zNjA3MTAyMDAyMzZaMFUxHjAcBgNVBAoTFW1rY2VydCBkZXZlbG9w
bWVudCBDQTEVMBMGA1UECwwMa2lyaUBwb2xhcmlzMRwwGgYDVQQDDBNta2NlcnQg
a2lyaUBwb2xhcmlzMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAtjZR
dUXirk/gMKXD58D+SbGHZIMKvRbWg1xPMWoXpPZWfu8XDuCYV0LSzOb2bWxSV2bo
zb2tgUVyxwwsBS1UyOkYiGREz+s/0O2drHPDZCxvw1xPbAIIO8CsxWbpyNV/CMpQ
NDH7DRvNJ19K49wvB2B9/K3iVipK55Sz7oCUZnbfkFQ887K4u+m7HvYhyagKX/Wc
NCFYOxDexABozIiGnP42RjziBZxOxARnIpqyWixqSY8JpDmy5QsAeZDikpckLh36
yU8GORVMCy2J6gBd7IW9+iIyCtHi7p5uGJAB94wCgQpiJ9W5/L1rFh3IhGK2HIdd
UmIArNRoL17NAYnxeYV+Ew6dsKXXNIpHu6tWLoscu4tXZO8njSz8c9nuYYFlsgM+
exDpcOCMrRny4P3QAsrRWJPXfxfmvcthWas0fWnM2G1bFvOQ0p0FXb/dfh/+qlLZ
BFxgeys2stfyH0qKsA1074CGJ+3rHfQDnVasT0bZdEoySSOLnvvnfyEVYIF/AgMB
AAGjRTBDMA4GA1UdDwEB/wQEAwICBDASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1Ud
DgQWBBT7QjaWKqbU38Su80x41Ao3c00vxTANBgkqhkiG9w0BAQsFAAOCAYEAc+ft
ZuKFXK+3GwMgisy3223GbjqzW/PpvlUaG5wQMUZyrJd7ejbLY8ot6lfTH3EUtq/D
11IxMAXbjwV5bjzURS2E33b22RT/e/+m3I9pgTITipbHcwfEj6VINsIn3dpsxXbx
uiZaq9RF7LiyhttWBR8qCL9XJaKTYbVc8pr+Rdi5TJr7TA9Dtlzo0ZaF3QFW0/kw
oh0tOoIx4vQ7szl7imtri+Ym4CBgGP3S4gToNrpleJaAg4wQgwoMC/ZY9BO2SQ0P
5hic5yy0fw2XgStGRsxuMhI95BXhXEqGCPvoE5mRXe8ze3kh6Pa/2LlfwSU0fk7E
nKxT20AY4EAu1Eq1nzYCqQMyzRw2g6p6xXSe/CSPa6HazHe/MS6jBDZqhHUKIHGo
N4s1776ibjUbMN6kqtfqEJZKdzkcsFYPJMhwSFktEU76s00SHnJhuQ8FwA/MOmal
090f0qcX3EdwbJWMs+gP03R6Dq9ZQPFc6bWeGig7sf8+DN2ZPPa9YeFhQpdB
-----END CERTIFICATE-----
+1
View File
@@ -37,6 +37,7 @@ in
nixosModules.workstation-base nixosModules.workstation-base
nixosModules.deluge nixosModules.deluge
nixosModules.laptop-power nixosModules.laptop-power
nixosModules.yookr-dev
{ {
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
services.fwupd.enable = true; services.fwupd.enable = true;
+26
View File
@@ -0,0 +1,26 @@
-----BEGIN CERTIFICATE-----
MIIEdjCCAt6gAwIBAgIRAOJuuQ6BjvYPVrr3/QgaFz0wDQYJKoZIhvcNAQELBQAw
UzEeMBwGA1UEChMVbWtjZXJ0IGRldmVsb3BtZW50IENBMRQwEgYDVQQLDAtraXJp
QHplbml0aDEbMBkGA1UEAwwSbWtjZXJ0IGtpcmlAemVuaXRoMB4XDTI2MDcxNjA3
MTQ0M1oXDTM2MDcxNjA3MTQ0M1owUzEeMBwGA1UEChMVbWtjZXJ0IGRldmVsb3Bt
ZW50IENBMRQwEgYDVQQLDAtraXJpQHplbml0aDEbMBkGA1UEAwwSbWtjZXJ0IGtp
cmlAemVuaXRoMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAn6JVWaP9
1f+NjudJPWnvMxEJyqYQuQBpMd/6O8XCBjp0LVcKl3sub/tieK4LEJhDHxDw6K7h
I8ZByu7WOpbKCJ59fDyOR2nauo7z443dJLZtqQEfaqVhyvungVFEwEskJWYWK9a4
vCYb0C1096WRd0sT2QEWGWzwc45Q6NG18RXQ7NDM6ou8wiUZXHfd0JDhOmWYwDC1
f123uQBCaZgstb/2PclB7v/ubpZEks1Zsi5kgek3fmspzSHpYN3sjfK9nydl8xBW
5Mv6Qq27BPBZpeFdDIQHB/xwRSFBUwvfwNoYN1Mpk5vwNp97u7Kqxk/zIAvwZd52
QS4WbZobHxC0pOL6opxEweuPELnSmr9xngjOAix3bJIZAv+PrrjOM2mrBjRQCzmu
dxkRUA7PTazzUhFvE6aTfJcDU99Wig+aBLrfe8/FHzSER54+f2LsF+kyoZx3qhJM
hPvgMjRuDG8aVHNEW++sjXOi1l/8YravH+wbiHIY0J/rwlRAqpfkzKg3AgMBAAGj
RTBDMA4GA1UdDwEB/wQEAwICBDASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQW
BBSoh/jhmHEsqe0PODpM/Zshi8wJDzANBgkqhkiG9w0BAQsFAAOCAYEANpe6D8+b
O1SEd1NUiyssPBCgKtx88vvV7P1a3a1askanm7Qq64byrMzs0a5ukU4Be4xOaPlz
o+s4Nk23PYbBHf+uZW4nq5b3eLGIPK17xtToEJlMZoWZx7E960Iql4fywFpt+how
U9K0GMPC8OIOCSkwuhvozrwoyxnErc3lVhTf16DOAYoiMvpH62kk3aSqkqL89hgh
jiMzwhzD9LgNBSq+tyHQMLPAEvwNWOI2U1tDErCcCDia7faP0ppLqpCfd7FAeCBT
DsWpU4eXALbHwljQyzkz5U30GU+UoQAuyKfmWyu5Mwywdvwo94xH/YdkWxr3MqUy
cLEkvuX5dgPHhm8xJs5NqHe6qP4yf0SbiZ8IFtwt1YRchTx2tHDDFfVuFb80KDFp
9wGQ/DoO6Qs8J8QPdCHPh/wsIojgJtw2RO/JmcLEYBJnU9egn6Iko5Ih0YgnVgyw
KrBe9F9HPKJ9CT7s/DrR5rySyomZt0VwFbug7rFeJ4h35M1Nwm81E6Ux
-----END CERTIFICATE-----
+2 -1
View File
@@ -15,6 +15,7 @@ in
nixosModules.nix nixosModules.nix
nixosModules.locale-nl nixosModules.locale-nl
nixosModules.sops-password nixosModules.sops-password
nixosModules.helix
]; ];
home-manager = { home-manager = {
@@ -25,7 +26,7 @@ in
hmModules.facts hmModules.facts
hmModules.syncthing hmModules.syncthing
hmModules.shell hmModules.shell
hmModules.neovim hmModules.helix
]; ];
}; };
+3 -1
View File
@@ -24,6 +24,7 @@ in
nixosModules.theme nixosModules.theme
nixosModules.ai nixosModules.ai
nixosModules.hidraw-access nixosModules.hidraw-access
nixosModules.openvpn
nixosModules.walker-cache nixosModules.walker-cache
]; ];
@@ -42,6 +43,7 @@ in
homeModules.passwords homeModules.passwords
homeModules.clipboard homeModules.clipboard
homeModules.dev-tools homeModules.dev-tools
homeModules.zed
homeModules.xdg homeModules.xdg
homeModules.workstation-apps homeModules.workstation-apps
homeModules.primary-browser-vivaldi homeModules.primary-browser-vivaldi
@@ -49,7 +51,6 @@ in
homeModules.primary-launcher-walker homeModules.primary-launcher-walker
homeModules.default-image-viewer-imv homeModules.default-image-viewer-imv
homeModules.default-document-viewer-sioyek homeModules.default-document-viewer-sioyek
homeModules.default-editor-neovim
homeModules.email homeModules.email
homeModules.mpv homeModules.mpv
homeModules.nix homeModules.nix
@@ -60,6 +61,7 @@ in
homeModules.primary-terminal-kitty homeModules.primary-terminal-kitty
homeModules.terminal-foot homeModules.terminal-foot
homeModules.noctalia homeModules.noctalia
homeModules.keyring
{ {
programs.discord = { programs.discord = {
enable = true; enable = true;