diff --git a/flake.lock b/flake.lock index c2bb2da..30b6e66 100644 --- a/flake.lock +++ b/flake.lock @@ -63,15 +63,19 @@ "nixpkgs" ], "sops-nix": "sops-nix", - "systems": "systems", - "treefmt-nix": "treefmt-nix" + "systems": [ + "systems" + ], + "treefmt-nix": [ + "treefmt-nix" + ] }, "locked": { - "lastModified": 1747235631, - "narHash": "sha256-v3tBUKPCIsOUjuznZZqGOHKGPITECWiRE+gzb3mTOxI=", + "lastModified": 1747537306, + "narHash": "sha256-3MB5NtIYWI57mCgmUGZrHzqhfHwJAUdReS5bNVnuhxI=", "ref": "refs/heads/main", - "rev": "974c3f9b095ada5be29491a5c83da35a16642429", - "revCount": 6923, + "rev": "7f62a7993a446bad3bfde5c71bee98067448d976", + "revCount": 7006, "type": "git", "url": "https://git.clan.lol/clan/clan-core" }, @@ -115,11 +119,11 @@ ] }, "locked": { - "lastModified": 1747008053, - "narHash": "sha256-rob/qftmEuk+/JVGCIrOpv+LWjdmayFtebEKqRZXVAI=", - "rev": "2666bb11f4287cfbdf3b7c5f55231c6b5772a436", + "lastModified": 1747418440, + "narHash": "sha256-ZwcVRqAdJj0/KS6+7bP9EoXxpt0VO4ML04nUNIykQas=", + "rev": "826a1abb862ab371f6d3d2833961000ecb880190", "type": "tarball", - "url": "https://git.clan.lol/api/v1/repos/clan/data-mesher/archive/2666bb11f4287cfbdf3b7c5f55231c6b5772a436.tar.gz" + "url": "https://git.clan.lol/api/v1/repos/clan/data-mesher/archive/826a1abb862ab371f6d3d2833961000ecb880190.tar.gz" }, "original": { "type": "tarball", @@ -134,11 +138,11 @@ ] }, "locked": { - "lastModified": 1746729224, - "narHash": "sha256-9R4sOLAK1w3Bq54H3XOJogdc7a6C2bLLmatOQ+5pf5w=", + "lastModified": 1747274630, + "narHash": "sha256-87RJwXbfOHyzTB9LYagAQ6vOZhszCvd8Gvudu+gf3qo=", "owner": "nix-community", "repo": "disko", - "rev": "85555d27ded84604ad6657ecca255a03fd878607", + "rev": "ec7c109a4f794fce09aad87239eab7f66540b888", "type": "github" }, "original": { @@ -173,8 +177,12 @@ "inputs": { "crane": "crane", "fenix": "fenix", - "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs" + "flake-utils": [ + "flake-utils" + ], + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { "lastModified": 1740331452, @@ -191,23 +199,6 @@ } }, "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_2": { - "flake": false, "locked": { "lastModified": 1747046372, "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", @@ -222,59 +213,9 @@ "type": "github" } }, - "flake-compat_3": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_4": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-compat_5": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, "flake-parts": { "inputs": { - "nixpkgs-lib": [ - "nixpkgs" - ] + "nixpkgs-lib": "nixpkgs-lib" }, "locked": { "lastModified": 1743550720, @@ -291,27 +232,6 @@ } }, "flake-parts_2": { - "inputs": { - "nixpkgs-lib": [ - "neovim-nightly-overlay", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1743550720, - "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "c621e8422220273271f52058f618c94e405bb0f5", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_3": { "inputs": { "nixpkgs-lib": [ "neovim-nightly-overlay", @@ -332,30 +252,11 @@ "type": "indirect" } }, - "flake-parts_4": { - "inputs": { - "nixpkgs-lib": [ - "nur", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1733312601, - "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, "flake-utils": { "inputs": { - "systems": "systems_2" + "systems": [ + "systems" + ] }, "locked": { "lastModified": 1731533236, @@ -373,7 +274,7 @@ }, "flake-utils_2": { "inputs": { - "systems": "systems_3" + "systems": "systems" }, "locked": { "lastModified": 1731533236, @@ -389,41 +290,37 @@ "type": "github" } }, + "flakey-profile": { + "locked": { + "lastModified": 1712898590, + "narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=", + "owner": "lf-", + "repo": "flakey-profile", + "rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d", + "type": "github" + }, + "original": { + "owner": "lf-", + "repo": "flakey-profile", + "type": "github" + } + }, "git-hooks": { "inputs": { - "flake-compat": "flake-compat_3", - "gitignore": "gitignore_2", + "flake-compat": [ + "flake-compat" + ], + "gitignore": "gitignore", "nixpkgs": [ - "neovim-nightly-overlay", "nixpkgs" ] }, "locked": { - "lastModified": 1746537231, - "narHash": "sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS+noCWo=", + "lastModified": 1747372754, + "narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "fa466640195d38ec97cf0493d6d6882bc4d14969", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "git-hooks.nix", - "type": "github" - } - }, - "git-hooks-nix": { - "inputs": { - "flake-compat": "flake-compat", - "gitignore": "gitignore", - "nixpkgs": "nixpkgs_2" - }, - "locked": { - "lastModified": 1746537231, - "narHash": "sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS+noCWo=", - "owner": "cachix", - "repo": "git-hooks.nix", - "rev": "fa466640195d38ec97cf0493d6d6882bc4d14969", + "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", "type": "github" }, "original": { @@ -435,28 +332,6 @@ "gitignore": { "inputs": { "nixpkgs": [ - "git-hooks-nix", - "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" - } - }, - "gitignore_2": { - "inputs": { - "nixpkgs": [ - "neovim-nightly-overlay", "git-hooks", "nixpkgs" ] @@ -475,41 +350,20 @@ "type": "github" } }, - "gitignore_3": { - "inputs": { - "nixpkgs": [ - "pre-commit-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" - } - }, "hercules-ci-effects": { "inputs": { - "flake-parts": "flake-parts_3", + "flake-parts": "flake-parts_2", "nixpkgs": [ "neovim-nightly-overlay", "nixpkgs" ] }, "locked": { - "lastModified": 1744693102, - "narHash": "sha256-1Z4WPGVky4w3lrhrgs89OKsLzPdtkbi1bPLNFWsoLfY=", + "lastModified": 1747284884, + "narHash": "sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "5b6cec51c9ec095a0d3fd4c8eeb53eb5c59ae33e", + "rev": "7168f6002a6b48a9b6151e1e97e974a0722ecfdc", "type": "github" }, "original": { @@ -525,11 +379,11 @@ ] }, "locked": { - "lastModified": 1747225851, - "narHash": "sha256-4IbmZrNOdXP143kZEUzxBS5SqyxUlaSHLgdpeJfP2ZU=", + "lastModified": 1747565775, + "narHash": "sha256-B6jmKHUEX1jxxcdoYHl7RVaeohtAVup8o3nuVkzkloA=", "owner": "nix-community", "repo": "home-manager", - "rev": "6bf057fc8326e83bda05a669fc08d106547679fb", + "rev": "97118a310eb8e13bc1b9b12d67267e55b7bee6c8", "type": "github" }, "original": { @@ -584,14 +438,16 @@ "jovian": { "inputs": { "nix-github-actions": "nix-github-actions", - "nixpkgs": "nixpkgs_3" + "nixpkgs": [ + "nixpkgs" + ] }, "locked": { - "lastModified": 1747221863, - "narHash": "sha256-2sHoet8Dj16i6fiwlZh9r5Hs9mRIInKvewk8JjU91KQ=", + "lastModified": 1747466853, + "narHash": "sha256-/evYltwuF8Kz1odgocWnguh/8VQV1i76VB4yMTU9m7k=", "owner": "Jovian-Experiments", "repo": "Jovian-NixOS", - "rev": "e6189e1e6e019dea8c0ee4f7eba2a435b232e294", + "rev": "0ba1a34fa6d995fe433109f0ad66de8d5613d46e", "type": "github" }, "original": { @@ -600,13 +456,50 @@ "type": "github" } }, + "lix": { + "flake": false, + "locked": { + "lastModified": 1746827285, + "narHash": "sha256-hsFe4Tsqqg4l+FfQWphDtjC79WzNCZbEFhHI8j2KJzw=", + "rev": "47aad376c87e2e65967f17099277428e4b3f8e5a", + "type": "tarball", + "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/47aad376c87e2e65967f17099277428e4b3f8e5a.tar.gz?rev=47aad376c87e2e65967f17099277428e4b3f8e5a" + }, + "original": { + "type": "tarball", + "url": "https://git.lix.systems/lix-project/lix/archive/2.93.0.tar.gz" + } + }, + "lix-module": { + "inputs": { + "flake-utils": [ + "flake-utils" + ], + "flakey-profile": "flakey-profile", + "lix": "lix", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1746838955, + "narHash": "sha256-11R4K3iAx4tLXjUs+hQ5K90JwDABD/XHhsM9nkeS5N8=", + "rev": "cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc", + "type": "tarball", + "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc.tar.gz?rev=cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc" + }, + "original": { + "type": "tarball", + "url": "https://git.lix.systems/lix-project/nixos-module/archive/2.93.0.tar.gz" + } + }, "master": { "locked": { - "lastModified": 1747244259, - "narHash": "sha256-MDcETIJDcln8Xk0wLBev/dRNltOV6Vr7BrVJeBQ5hIg=", + "lastModified": 1747575265, + "narHash": "sha256-JSKMeKA3RDGBFlimwHl313vwsnNDfm2kg0xz6E1BUtU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "6d0d3850ff291b04c1394cc388cd5740f843fabc", + "rev": "8f5f0f0fa9df25b9dcc9be5413c394135e0965b4", "type": "github" }, "original": { @@ -639,20 +532,30 @@ }, "neovim-nightly-overlay": { "inputs": { - "flake-compat": "flake-compat_2", - "flake-parts": "flake-parts_2", - "git-hooks": "git-hooks", + "flake-compat": [ + "flake-compat" + ], + "flake-parts": [ + "flake-parts" + ], + "git-hooks": [ + "git-hooks" + ], "hercules-ci-effects": "hercules-ci-effects", "neovim-src": "neovim-src", - "nixpkgs": "nixpkgs_4", - "treefmt-nix": "treefmt-nix_2" + "nixpkgs": [ + "nixpkgs" + ], + "treefmt-nix": [ + "treefmt-nix" + ] }, "locked": { - "lastModified": 1747188452, - "narHash": "sha256-n/XRdH8zSaEispBMMV+lVXTndAKrZ++ebCuKRbOJfhY=", + "lastModified": 1747554936, + "narHash": "sha256-LBFEVTt3JISA/HDHznJanvlNvKllNfILr1nfI8KZmVM=", "owner": "nix-community", "repo": "neovim-nightly-overlay", - "rev": "a2f0b8e4d30ea28a8021fa3314eb2244cc133199", + "rev": "5a732bf3edb47767a25c3b05436e4c21f91edf91", "type": "github" }, "original": { @@ -664,11 +567,11 @@ "neovim-src": { "flake": false, "locked": { - "lastModified": 1747147482, - "narHash": "sha256-9Vvl0BVjZNrPrgXiNZT1xfR/Fnatyl3oba5GnI+rKfQ=", + "lastModified": 1747523215, + "narHash": "sha256-55RIMak4EwDaLdNTkM+4d3LjC90wlkNRaaG8DupK3AM=", "owner": "neovim", "repo": "neovim", - "rev": "40b64e91007e364fd7c7eaab64ce7c8cf0150aec", + "rev": "5661f74ab2a6ef0c497ef2ea49bc58ea89b6ab6b", "type": "github" }, "original": { @@ -689,11 +592,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1747152040, - "narHash": "sha256-C6xbCOgSAi+a/1Bk1GPdWd5l791neY5YRWxVM/0cYNg=", + "lastModified": 1747491150, + "narHash": "sha256-UpHzUfmxpKko/4f/Nw971wfw+0EgHEJHkoJ3mGQKDkg=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "fa50b6e56aaf6c9b32aadc44f7a2e47187e9b6ac", + "rev": "ea61079b4d48031087c0c994782c24c846d4b95e", "type": "github" }, "original": { @@ -722,11 +625,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1747145615, - "narHash": "sha256-U6MhqL4QXLojCOKH5yc8GbfOF7Fas36e1nqcPQx6/zQ=", + "lastModified": 1747486745, + "narHash": "sha256-ngQ+iTHmBJkEbsjYfCWTJdV8gHhOCTkV8K0at6Y+YHI=", "owner": "YaLTeR", "repo": "niri", - "rev": "0d6843ea67da91aea37b655be5de92dfeea081b5", + "rev": "ae89cb6017668f3a81ccd92461cbbc70ab8377d0", "type": "github" }, "original": { @@ -743,11 +646,11 @@ ] }, "locked": { - "lastModified": 1746708654, - "narHash": "sha256-GeC99gu5H6+AjBXsn5dOhP4/ApuioGCBkufdmEIWPRs=", + "lastModified": 1747365160, + "narHash": "sha256-4ZVr0x+ry6ybym/VhVYACj0HlJo44YxAaPGOxiS88Hg=", "owner": "nix-darwin", "repo": "nix-darwin", - "rev": "6cb36e8327421c61e5a3bbd08ed63491b616364a", + "rev": "8817b00b0011750381d0d44bb94d61087349b6ba", "type": "github" }, "original": { @@ -785,11 +688,11 @@ ] }, "locked": { - "lastModified": 1746934494, - "narHash": "sha256-3n6i+F0sDASjkhbvgFDpPDZGp7z19IrRtjfF9TwJpCA=", + "lastModified": 1747540584, + "narHash": "sha256-cxCQ413JTUuRv9Ygd8DABJ1D6kuB/nTfQqC0Lu9C0ls=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "e9b21b01e4307176b9718a29ac514838e7f6f4ff", + "rev": "ec179dd13fb7b4c6844f55be91436f7857226dce", "type": "github" }, "original": { @@ -849,18 +752,23 @@ "nixos-mailserver": { "inputs": { "blobs": "blobs", - "flake-compat": "flake-compat_4", + "flake-compat": [ + "flake-compat" + ], + "git-hooks": [ + "git-hooks" + ], "nixpkgs": [ "nixpkgs" ], "nixpkgs-24_11": "nixpkgs-24_11" }, "locked": { - "lastModified": 1746937334, - "narHash": "sha256-7g2GSePdYbpD1v5BxEVSCJ2Ogf4K5rc9sBB81FervUY=", + "lastModified": 1747320434, + "narHash": "sha256-wOW99SCOovRlX5y8+W1cRrS3mEN1QA0XTHMRfr3NMB8=", "owner": "simple-nixos-mailserver", "repo": "nixos-mailserver", - "rev": "da66510f688b7eac54e3cac7c75be4b8dd78ce8b", + "rev": "433520257af7170824ab6e567d49b8e305e776e9", "type": "gitlab" }, "original": { @@ -871,41 +779,58 @@ }, "nixpkgs": { "locked": { - "lastModified": 1736344531, - "narHash": "sha256-8YVQ9ZbSfuUk2bUf2KRj60NRraLPKPS0Q4QFTbc+c2c=", - "owner": "NixOS", + "lastModified": 1747467164, + "narHash": "sha256-JBXbjJ0t6T6BbVc9iPVquQI9XSXCGQJD8c8SgnUquus=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "bffc22eb12172e6db3c5dde9e3e5628f8e3e7912", + "rev": "3fcbdcfc707e0aa42c541b7743e05820472bdaec", "type": "github" }, "original": { - "id": "nixpkgs", - "ref": "nixos-unstable", - "type": "indirect" + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" } }, "nixpkgs-24_11": { "locked": { - "lastModified": 1734083684, - "narHash": "sha256-5fNndbndxSx5d+C/D0p/VF32xDiJCJzyOqorOYW4JEo=", + "lastModified": 1747209494, + "narHash": "sha256-fLise+ys+bpyjuUUkbwqo5W/UyIELvRz9lPBPoB0fbM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "314e12ba369ccdb9b352a4db26ff419f7c49fa84", + "rev": "5d736263df906c5da72ab0f372427814de2f52f8", "type": "github" }, "original": { - "id": "nixpkgs", + "owner": "NixOS", "ref": "nixos-24.11", - "type": "indirect" + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-lib": { + "locked": { + "lastModified": 1747530816, + "narHash": "sha256-GAwJUpq2pm9J0P6SVqzMBF5Gn6FmiLnBGfSd0v23Khc=", + "owner": "nix-community", + "repo": "nixpkgs.lib", + "rev": "59938251d4ed9d18fbb1462165897e50fac1492f", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nixpkgs.lib", + "type": "github" } }, "nixpkgs-stable": { "locked": { - "lastModified": 1746957726, - "narHash": "sha256-k9ut1LSfHCr0AW82ttEQzXVCqmyWVA5+SHJkS5ID/Jo=", + "lastModified": 1747335874, + "narHash": "sha256-IKKIXTSYJMmUtE+Kav5Rob8SgLPnfnq4Qu8LyT4gdqQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a39ed32a651fdee6842ec930761e31d1f242cb94", + "rev": "ba8b70ee098bc5654c459d6a95dfc498b91ff858", "type": "github" }, "original": { @@ -915,118 +840,6 @@ "type": "github" } }, - "nixpkgs_2": { - "locked": { - "lastModified": 1730768919, - "narHash": "sha256-8AKquNnnSaJRXZxc5YmF/WfmxiHX6MMZZasRP6RRQkE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1744932701, - "narHash": "sha256-fusHbZCyv126cyArUwwKrLdCkgVAIaa/fQJYFlCEqiU=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "b024ced1aac25639f8ca8fdfc2f8c4fbd66c48ef", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1747060738, - "narHash": "sha256-ByfPRQuqj+nhtVV0koinEpmJw0KLzNbgcgi9EF+NVow=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "eaeed9530c76ce5f1d2d8232e08bec5e26f18ec1", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_5": { - "locked": { - "lastModified": 1747060738, - "narHash": "sha256-ByfPRQuqj+nhtVV0koinEpmJw0KLzNbgcgi9EF+NVow=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "eaeed9530c76ce5f1d2d8232e08bec5e26f18ec1", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_6": { - "locked": { - "lastModified": 1746904237, - "narHash": "sha256-3e+AVBczosP5dCLQmMoMEogM57gmZ2qrVSrmq9aResQ=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "d89fc19e405cb2d55ce7cc114356846a0ee5e956", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_7": { - "locked": { - "lastModified": 1730768919, - "narHash": "sha256-8AKquNnnSaJRXZxc5YmF/WfmxiHX6MMZZasRP6RRQkE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a04d33c0c3f1a59a2c1cb0c6e34cd24500e5a1dc", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_8": { - "locked": { - "lastModified": 1692934111, - "narHash": "sha256-9EEE59v/esKNMR5zKbLRV9NoRPYvERw5jHQOnfr47bk=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1e44a037bbf4fcaba041436e65e87be88f3f495b", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, "nixvim": { "inputs": { "flake-parts": [ @@ -1036,14 +849,16 @@ "nixpkgs" ], "nuschtosSearch": "nuschtosSearch", - "systems": "systems_4" + "systems": [ + "systems" + ] }, "locked": { - "lastModified": 1747224967, - "narHash": "sha256-we27kbNAAEeT0+PxJ2aUNVFXlJ7uvh4pxTc3R8RUqxA=", + "lastModified": 1747524500, + "narHash": "sha256-XC5jm9hZ3SUw+AD5ARcDVhizuRF2zYsCa34NO5lSuO8=", "owner": "nix-community", "repo": "nixvim", - "rev": "95ca65c8d1adee5594bd14f527c68d564fb68879", + "rev": "5474f9a33f1d6a3d98eaea73c980e0c05af6849e", "type": "github" }, "original": { @@ -1054,16 +869,22 @@ }, "nur": { "inputs": { - "flake-parts": "flake-parts_4", - "nixpkgs": "nixpkgs_6", - "treefmt-nix": "treefmt-nix_3" + "flake-parts": [ + "flake-parts" + ], + "nixpkgs": [ + "nixpkgs" + ], + "treefmt-nix": [ + "treefmt-nix" + ] }, "locked": { - "lastModified": 1747240942, - "narHash": "sha256-4vzxLACNjlCHGnJo4I+hg1CuelDicd711OXGryfvNW0=", + "lastModified": 1747571687, + "narHash": "sha256-HaoIJVxW1H37kvMiDcCx97el0R5B9yIBY5DJ+5eQylU=", "owner": "nix-community", "repo": "NUR", - "rev": "aace8e6f0db97112d40089b96686101bd0d72c54", + "rev": "2c785032f3567da0c209858290431d5692c6269a", "type": "github" }, "original": { @@ -1095,49 +916,33 @@ "type": "github" } }, - "pre-commit-hooks": { - "inputs": { - "flake-compat": "flake-compat_5", - "gitignore": "gitignore_3", - "nixpkgs": "nixpkgs_7" - }, - "locked": { - "lastModified": 1746537231, - "narHash": "sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS+noCWo=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "fa466640195d38ec97cf0493d6d6882bc4d14969", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "type": "github" - } - }, "root": { "inputs": { "arkenfox-userjs": "arkenfox-userjs", "asus-touchpad-numpad-driver": "asus-touchpad-numpad-driver", "clan-core": "clan-core", "filetags": "filetags", + "flake-compat": "flake-compat", "flake-parts": "flake-parts", - "git-hooks-nix": "git-hooks-nix", + "flake-utils": "flake-utils", + "git-hooks": "git-hooks", "home-manager": "home-manager", "impermanence": "impermanence", "jovian": "jovian", + "lix-module": "lix-module", "master": "master", "neovim-nightly-overlay": "neovim-nightly-overlay", "niri": "niri", "nix-index-database": "nix-index-database", "nix-monitored": "nix-monitored", "nixos-mailserver": "nixos-mailserver", - "nixpkgs": "nixpkgs_5", + "nixpkgs": "nixpkgs", "nixvim": "nixvim", "nur": "nur", - "pre-commit-hooks": "pre-commit-hooks", "stable": "stable", + "systems": "systems_2", "timers": "timers", + "treefmt-nix": "treefmt-nix", "zola-theme": "zola-theme" } }, @@ -1181,16 +986,16 @@ }, "stable": { "locked": { - "lastModified": 1746957726, - "narHash": "sha256-k9ut1LSfHCr0AW82ttEQzXVCqmyWVA5+SHJkS5ID/Jo=", + "lastModified": 1747428706, + "narHash": "sha256-XVds9FkRrY59xRNNq14FNsFGqDiexXX/mlHcX4hPyyk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "a39ed32a651fdee6842ec930761e31d1f242cb94", + "rev": "2e1496bf8652ff4af4e4d4737277f71e4a4f5cb2", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-24.11", + "ref": "nixos-25.05", "repo": "nixpkgs", "type": "github" } @@ -1240,40 +1045,12 @@ "type": "github" } }, - "systems_4": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_5": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "timers": { "inputs": { "naersk": "naersk", - "nixpkgs": "nixpkgs_8", + "nixpkgs": [ + "nixpkgs" + ], "utils": "utils" }, "locked": { @@ -1293,58 +1070,15 @@ "treefmt-nix": { "inputs": { "nixpkgs": [ - "clan-core", "nixpkgs" ] }, "locked": { - "lastModified": 1746989248, - "narHash": "sha256-uoQ21EWsAhyskNo8QxrTVZGjG/dV4x5NM1oSgrmNDJY=", + "lastModified": 1747469671, + "narHash": "sha256-bo1ptiFoNqm6m1B2iAhJmWCBmqveLVvxom6xKmtuzjg=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "708ec80ca82e2bbafa93402ccb66a35ff87900c5", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, - "treefmt-nix_2": { - "inputs": { - "nixpkgs": [ - "neovim-nightly-overlay", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1746989248, - "narHash": "sha256-uoQ21EWsAhyskNo8QxrTVZGjG/dV4x5NM1oSgrmNDJY=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "708ec80ca82e2bbafa93402ccb66a35ff87900c5", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, - "treefmt-nix_3": { - "inputs": { - "nixpkgs": [ - "nur", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1733222881, - "narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "49717b5af6f80172275d47a418c9719a31a78b53", + "rev": "ab0378b61b0d85e73a8ab05d5c6029b5bd58c9fb", "type": "github" }, "original": { @@ -1355,7 +1089,7 @@ }, "utils": { "inputs": { - "systems": "systems_5" + "systems": "systems_3" }, "locked": { "lastModified": 1692799911, diff --git a/flake.nix b/flake.nix index 8c1744f..cc23268 100644 --- a/flake.nix +++ b/flake.nix @@ -1,67 +1,4 @@ { - inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; - master.url = "github:nixos/nixpkgs"; - stable.url = "github:nixos/nixpkgs/nixos-24.11"; - - # New flake-parts input - flake-parts.url = "github:hercules-ci/flake-parts"; - flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs"; - git-hooks-nix.url = "github:cachix/git-hooks.nix"; - - clan-core = { - url = "git+https://git.clan.lol/clan/clan-core"; - inputs.nixpkgs.follows = "nixpkgs"; # Needed if your configuration uses nixpkgs unstable. - inputs.flake-parts.follows = "flake-parts"; - }; - - nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver"; - nixos-mailserver.inputs.nixpkgs.follows = "nixpkgs"; - - home-manager.inputs.nixpkgs.follows = "nixpkgs"; - home-manager.url = "github:nix-community/home-manager"; - - impermanence.url = "github:nix-community/impermanence"; - - pre-commit-hooks.url = "github:cachix/pre-commit-hooks.nix"; - - nur.url = "github:nix-community/NUR"; - - nix-index-database.url = "github:Mic92/nix-index-database"; - nix-index-database.inputs.nixpkgs.follows = "nixpkgs"; - - nix-monitored.url = "github:ners/nix-monitored"; - nix-monitored.inputs.nixpkgs.follows = "nixpkgs"; - - jovian.url = "github:Jovian-Experiments/Jovian-NixOS"; - - # Programs - timers.url = "git+https://gitea.moritzboeh.me/moritz/timers.git"; - filetags.url = "git+https://gitea.moritzboeh.me/moritz/filetags.git"; - - # Neovim - neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay"; - - nixvim.url = "github:nix-community/nixvim"; - nixvim.inputs.flake-parts.follows = "flake-parts"; - nixvim.inputs.nixpkgs.follows = "nixpkgs"; - - # Niri - niri.url = "github:sodiboo/niri-flake"; - niri.inputs.nixpkgs.follows = "nixpkgs"; - - # Laptop - asus-touchpad-numpad-driver.url = "github:MoritzBoehme/asus-touchpad-numpad-driver/german-layout"; - asus-touchpad-numpad-driver.flake = false; - - # Firefox user.js - arkenfox-userjs.url = "github:arkenfox/user.js"; - arkenfox-userjs.flake = false; - - zola-theme.url = "github:Speyll/anemone"; - zola-theme.flake = false; - }; - outputs = inputs @ {flake-parts, ...}: flake-parts.lib.mkFlake {inherit inputs;} ({self, ...}: { # We define our own systems below. you can still use this to add system specific outputs to your flake. @@ -71,7 +8,7 @@ # import clan-core modules imports = [ inputs.clan-core.flakeModules.default - inputs.git-hooks-nix.flakeModule + inputs.git-hooks.flakeModule ./clanServices/flake-module.nix ]; @@ -84,7 +21,26 @@ devShells = rec { default = pkgs.mkShell { inherit (config.pre-commit.devShell) shellHook nativeBuildInputs; - packages = [inputs'.clan-core.packages.clan-cli pkgs.alejandra]; + packages = [ + inputs'.clan-core.packages.clan-cli + pkgs.alejandra + (pkgs.writeShellApplication { + name = "nix-follows"; + text = '' + nix flake metadata --json | jq -r '(.locks.nodes.root.inputs | keys) as $root_input_keys + | .locks.nodes | to_entries[] + | select(.key | IN($root_input_keys[])) + | select((.value | has("flake") | not) or (.value.flake == true)) + | select(.value | has("inputs")) + | .key as $parent_key + | .value.inputs | keys[] + | select(IN($root_input_keys[])) + | {"key": $parent_key, "value": .} + | .key + ".inputs." + .value + ".follows = \"" + .value + "\";"' + ''; + runtimeInputs = [pkgs.jq]; + }) + ]; }; zola = let theme = inputs.zola-theme; @@ -140,4 +96,83 @@ }; }; }); + + inputs = { + nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; + master.url = "github:nixos/nixpkgs"; + stable.url = "github:nixos/nixpkgs/nixos-25.05"; + + # New flake-parts input + flake-parts.url = "github:hercules-ci/flake-parts"; + + clan-core.url = "git+https://git.clan.lol/clan/clan-core"; + clan-core.inputs.nixpkgs.follows = "nixpkgs"; # Needed if your configuration uses nixpkgs unstable. + + flake-utils.url = "github:numtide/flake-utils"; + git-hooks.url = "github:cachix/git-hooks.nix"; + home-manager.url = "github:nix-community/home-manager"; + impermanence.url = "github:nix-community/impermanence"; + jovian.url = "github:Jovian-Experiments/Jovian-NixOS"; + lix-module.url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.0.tar.gz"; + nix-index-database.url = "github:Mic92/nix-index-database"; + nix-monitored.url = "github:ners/nix-monitored"; + nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver"; + nur.url = "github:nix-community/NUR"; + treefmt-nix.url = "github:numtide/treefmt-nix"; + flake-compat.url = "github:edolstra/flake-compat"; + niri.url = "github:sodiboo/niri-flake"; + systems.url = "github:nix-systems/default"; + + # Programs + timers.url = "git+https://gitea.moritzboeh.me/moritz/timers.git"; + filetags.url = "git+https://gitea.moritzboeh.me/moritz/filetags.git"; + + # Neovim + neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay"; + nixvim.url = "github:nix-community/nixvim"; + + # Laptop + asus-touchpad-numpad-driver.url = "github:MoritzBoehme/asus-touchpad-numpad-driver/german-layout"; + asus-touchpad-numpad-driver.flake = false; + + # Firefox user.js + arkenfox-userjs.url = "github:arkenfox/user.js"; + arkenfox-userjs.flake = false; + + zola-theme.url = "github:Speyll/anemone"; + zola-theme.flake = false; + + # NOTE: create follows statements with nix-follows + clan-core.inputs.flake-parts.follows = "flake-parts"; + clan-core.inputs.systems.follows = "systems"; + clan-core.inputs.treefmt-nix.follows = "treefmt-nix"; + filetags.inputs.flake-utils.follows = "flake-utils"; + filetags.inputs.nixpkgs.follows = "nixpkgs"; + flake-utils.inputs.systems.follows = "systems"; + git-hooks.inputs.flake-compat.follows = "flake-compat"; + git-hooks.inputs.nixpkgs.follows = "nixpkgs"; + home-manager.inputs.nixpkgs.follows = "nixpkgs"; + jovian.inputs.nixpkgs.follows = "nixpkgs"; + lix-module.inputs.flake-utils.follows = "flake-utils"; + lix-module.inputs.nixpkgs.follows = "nixpkgs"; + neovim-nightly-overlay.inputs.flake-compat.follows = "flake-compat"; + neovim-nightly-overlay.inputs.flake-parts.follows = "flake-parts"; + neovim-nightly-overlay.inputs.git-hooks.follows = "git-hooks"; + neovim-nightly-overlay.inputs.nixpkgs.follows = "nixpkgs"; + neovim-nightly-overlay.inputs.treefmt-nix.follows = "treefmt-nix"; + niri.inputs.nixpkgs.follows = "nixpkgs"; + nix-index-database.inputs.nixpkgs.follows = "nixpkgs"; + nix-monitored.inputs.nixpkgs.follows = "nixpkgs"; + nixos-mailserver.inputs.flake-compat.follows = "flake-compat"; + nixos-mailserver.inputs.git-hooks.follows = "git-hooks"; + nixos-mailserver.inputs.nixpkgs.follows = "nixpkgs"; + nixvim.inputs.flake-parts.follows = "flake-parts"; + nixvim.inputs.nixpkgs.follows = "nixpkgs"; + nixvim.inputs.systems.follows = "systems"; + nur.inputs.flake-parts.follows = "flake-parts"; + nur.inputs.nixpkgs.follows = "nixpkgs"; + nur.inputs.treefmt-nix.follows = "treefmt-nix"; + timers.inputs.nixpkgs.follows = "nixpkgs"; + treefmt-nix.inputs.nixpkgs.follows = "nixpkgs"; + }; } diff --git a/machines/moritz-server/configuration.nix b/machines/moritz-server/configuration.nix index 57a1055..f5b8ca1 100644 --- a/machines/moritz-server/configuration.nix +++ b/machines/moritz-server/configuration.nix @@ -1,4 +1,4 @@ -{ +{inputs, ...}: { imports = [ ../../modules/zfs_unencrypted.nix ../../modules/shared.nix @@ -7,6 +7,7 @@ ./ddns.nix ./mail-server.nix ./website/root + inputs.lix-module.nixosModules.default ]; time.timeZone = "Europe/Berlin"; diff --git a/modules/moritz/programs/nix.nix b/modules/moritz/programs/nix.nix index d00dfd1..ca8134f 100644 --- a/modules/moritz/programs/nix.nix +++ b/modules/moritz/programs/nix.nix @@ -2,14 +2,16 @@ config, lib, inputs, - self, - pkgs, ... }: let inherit (lib) mkEnableOption mkOption types; cfg = config.my.programs.nix; in { + imports = [ + inputs.lix-module.nixosModules.default + ]; + options.my.programs.nix = { gc = { enable = mkEnableOption "nix-gc"; @@ -23,15 +25,9 @@ in { }; config = { - home-manager.users.moritz.programs.direnv.nix-direnv.package = pkgs.nix-direnv.override { - nix = config.nix.package; - }; - nix = { nixPath = ["nixpkgs=${inputs.nixpkgs}"]; - package = pkgs.nix; # TODO: change this back - extraOptions = '' experimental-features = nix-command flakes ''; @@ -56,9 +52,6 @@ in { master.flake = inputs.master; nixpkgs.flake = inputs.nixpkgs; stable.flake = inputs.stable; - dotfiles.flake = self; - default.flake = self; - d.flake = self; }; settings = {