diff --git a/flake.lock b/flake.lock index 7a0b527..b632025 100644 --- a/flake.lock +++ b/flake.lock @@ -3,11 +3,11 @@ "actions-preview-nvim": { "flake": false, "locked": { - "lastModified": 1715088001, - "narHash": "sha256-jf2Jw10HOIA91lMouKNvVYACbTxOaXAxc00AB2HydNs=", + "lastModified": 1718540350, + "narHash": "sha256-lYjsv8y1fMuTGpBF/iG7cm/a7tLdh748vJhVsSp/Iz8=", "owner": "aznhe21", "repo": "actions-preview.nvim", - "rev": "e8d41b608e24319548637685c7cfa66fadaff2b2", + "rev": "9f52a01c374318e91337697ebed51c6fae57f8a4", "type": "github" }, "original": { @@ -26,11 +26,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1715290355, - "narHash": "sha256-2T7CHTqBXJJ3ZC6R/4TXTcKoXWHcvubKNj9SfomURnw=", + "lastModified": 1718371084, + "narHash": "sha256-abpBi61mg0g+lFFU0zY4C6oP6fBwPzbHPKBGw676xsA=", "owner": "ryantm", "repo": "agenix", - "rev": "8d37c5bdeade12b6479c85acd133063ab53187a0", + "rev": "3a56735779db467538fb2e577eda28a9daacaca6", "type": "github" }, "original": { @@ -42,11 +42,11 @@ "arkenfox-userjs": { "flake": false, "locked": { - "lastModified": 1707077370, - "narHash": "sha256-624Giuo1TfeXQGzcGK9ETW86esNFhFZ5a46DCjT6K5I=", + "lastModified": 1719071094, + "narHash": "sha256-8mzY85wkUokd1Oau9D95Gp1myCJdGU0Dd47bmCygxnE=", "owner": "arkenfox", "repo": "user.js", - "rev": "33a84b608c8a1f871c6ce9c4d2b932dc57078fae", + "rev": "23caf6961483e0e55544cd4f3594734d0aa35cf0", "type": "github" }, "original": { @@ -72,6 +72,22 @@ "type": "github" } }, + "cmp-vimtex": { + "flake": false, + "locked": { + "lastModified": 1716040164, + "narHash": "sha256-CO70M+l/9c4vqNm0XloOTzGQTmogHbSwvUFKQxYGsuw=", + "owner": "micangl", + "repo": "cmp-vimtex", + "rev": "a64b1b5eec0460144c91c4f20a45c74b8ded48ae", + "type": "github" + }, + "original": { + "owner": "micangl", + "repo": "cmp-vimtex", + "type": "github" + } + }, "darwin": { "inputs": { "nixpkgs": [ @@ -100,11 +116,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1713532798, - "narHash": "sha256-wtBhsdMJA3Wa32Wtm1eeo84GejtI43pMrFrmwLXrsEc=", + "lastModified": 1717408969, + "narHash": "sha256-Q0OEFqe35fZbbRPPRdrjTUUChKVhhWXz3T9ZSKmaoVY=", "owner": "numtide", "repo": "devshell", - "rev": "12e914740a25ea1891ec619bb53cf5e6ca922e40", + "rev": "1ebbe68d57457c8cae98145410b164b5477761f4", "type": "github" }, "original": { @@ -118,11 +134,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1715563999, - "narHash": "sha256-DDXZOKK0C5YeZ/GTUj7HiT+oqYIt8+qTsldaDvhWHFc=", + "lastModified": 1719733833, + "narHash": "sha256-6h2EqZU9bL9rHlXE+2LCBgnDImejzbS+4dYsNDDFlkY=", "owner": "nix-community", "repo": "disko", - "rev": "e972a78f4a49cd92075d64b6feeef64d26bf2996", + "rev": "d185770ea261fb5cf81aa5ad1791b93a7834d12c", "type": "github" }, "original": { @@ -148,6 +164,22 @@ } }, "flake-compat_2": { + "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_3": { "flake": false, "locked": { "lastModified": 1673956053, @@ -163,7 +195,7 @@ "type": "github" } }, - "flake-compat_3": { + "flake-compat_4": { "flake": false, "locked": { "lastModified": 1696426674, @@ -184,11 +216,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1714641030, - "narHash": "sha256-yzcRNDoyVP7+SCNX0wmuDju1NUCt8Dz9+lyUXEI0dbI=", + "lastModified": 1719745305, + "narHash": "sha256-xwgjVUpqSviudEkpQnioeez1Uo2wzrsMaJKJClh+Bls=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "e5d10a24b66c3ea8f150e47dfdb0416ab7c3390e", + "rev": "c3c5ecc05edc7dafba779c6c1a61cd08ac6583e9", "type": "github" }, "original": { @@ -205,11 +237,11 @@ ] }, "locked": { - "lastModified": 1714641030, - "narHash": "sha256-yzcRNDoyVP7+SCNX0wmuDju1NUCt8Dz9+lyUXEI0dbI=", + "lastModified": 1717285511, + "narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "e5d10a24b66c3ea8f150e47dfdb0416ab7c3390e", + "rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8", "type": "github" }, "original": { @@ -297,24 +329,6 @@ } }, "flake-utils_3": { - "inputs": { - "systems": "systems_5" - }, - "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_4": { "locked": { "lastModified": 1667395993, "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", @@ -329,32 +343,14 @@ "type": "github" } }, - "flake-utils_5": { - "inputs": { - "systems": "systems_6" - }, - "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "gen-nvim": { "flake": false, "locked": { - "lastModified": 1714746280, - "narHash": "sha256-0AEB6im8Jz5foYzmL6KEGSAYo48g1bkFpjlCSWT6JeE=", + "lastModified": 1717706134, + "narHash": "sha256-z03a2au40RIcpDUTRSWlWAbo1E+MgEgVaobFWV8hIaI=", "owner": "David-Kunz", "repo": "gen.nvim", - "rev": "bd19cf584b5b82123de977b44105e855e61e5f39", + "rev": "b1230ce2993b2be38a1e22606750d05a94307380", "type": "github" }, "original": { @@ -363,7 +359,56 @@ "type": "github" } }, + "git-hooks": { + "inputs": { + "flake-compat": "flake-compat_2", + "gitignore": "gitignore", + "nixpkgs": [ + "neovim-nightly-overlay", + "nixpkgs" + ], + "nixpkgs-stable": [ + "neovim-nightly-overlay", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1719259945, + "narHash": "sha256-F1h+XIsGKT9TkGO3omxDLEb/9jOOsI6NnzsXFsZhry4=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, "gitignore": { + "inputs": { + "nixpkgs": [ + "neovim-nightly-overlay", + "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" + } + }, + "gitignore_2": { "inputs": { "nixpkgs": [ "pre-commit-hooks", @@ -409,11 +454,11 @@ ] }, "locked": { - "lastModified": 1713898448, - "narHash": "sha256-6q6ojsp/Z9P2goqnxyfCSzFOD92T3Uobmj8oVAicUOs=", + "lastModified": 1719226092, + "narHash": "sha256-YNkUMcCUCpnULp40g+svYsaH1RbSEj6s4WdZY/SHe38=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "c0302ec12d569532a6b6bd218f698bc402e93adc", + "rev": "11e4b8dc112e2f485d7c97e1cee77f9958f498f5", "type": "github" }, "original": { @@ -450,11 +495,11 @@ ] }, "locked": { - "lastModified": 1715486357, - "narHash": "sha256-4pRuzsHZOW5W4CsXI9uhKtiJeQSUoe1d2M9mWU98HC4=", + "lastModified": 1719677234, + "narHash": "sha256-qO9WZsj/0E6zcK4Ht1y/iJ8XfwbBzq7xdqhBh44OP/M=", "owner": "nix-community", "repo": "home-manager", - "rev": "44677a1c96810a8e8c4ffaeaad10c842402647c1", + "rev": "36317d4d38887f7629876b0e43c8d9593c5cc48d", "type": "github" }, "original": { @@ -468,11 +513,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1713780596, - "narHash": "sha256-DDAYNGSnrBwvVfpKx+XjkuecpoE9HiEf6JW+DBQgvm0=", + "lastModified": 1718476555, + "narHash": "sha256-fuWpgh8KasByIJWE+xVd37Al0LV5YAn6s871T50qVY0=", "owner": "hyprwm", "repo": "contrib", - "rev": "110e6dc761d5c3d352574def3479a9c39dfc4358", + "rev": "29a8374f4b9206d5c4af84aceb7fb5dff441ea60", "type": "github" }, "original": { @@ -497,11 +542,11 @@ ] }, "locked": { - "lastModified": 1713612213, - "narHash": "sha256-zJboXgWNpNhKyNF8H/3UYzWkx7w00TOCGKi3cwi+tsw=", + "lastModified": 1718450675, + "narHash": "sha256-jpsns6buS4bK+1sF8sL8AaixAiCRjA+nldTKvcwmvUs=", "owner": "hyprwm", "repo": "hyprcursor", - "rev": "cab4746180f210a3c1dd3d53e45c510e309e90e1", + "rev": "66d5b46ff94efbfa6fa3d1d1b66735f1779c34a6", "type": "github" }, "original": { @@ -513,36 +558,39 @@ "hyprland": { "inputs": { "hyprcursor": "hyprcursor", - "hyprland-protocols": "hyprland-protocols", "hyprlang": "hyprlang", + "hyprutils": "hyprutils", + "hyprwayland-scanner": "hyprwayland-scanner", "nixpkgs": "nixpkgs_4", "systems": "systems_4", - "wlroots": "wlroots", "xdph": "xdph" }, "locked": { - "lastModified": 1713283263, - "narHash": "sha256-Urb/njWiHYUudXpmK8EKl9Z58esTIG0PxXw5LuM2r5g=", - "owner": "hyprwm", - "repo": "Hyprland", - "rev": "fe7b748eb668136dd0558b7c8279bfcd7ab4d759", - "type": "github" + "lastModified": 1719746201, + "narHash": "sha256-8Jp7iSoIupyhD2dLi+obRKyoq6YeKYOXMARm0WSIeO4=", + "ref": "refs/heads/main", + "rev": "4d6f96f74f9fa6e7b69790fa569ffe60267f8017", + "revCount": 4899, + "submodules": true, + "type": "git", + "url": "https://github.com/hyprwm/Hyprland" }, "original": { - "owner": "hyprwm", - "ref": "v0.39.1", - "repo": "Hyprland", - "type": "github" + "submodules": true, + "type": "git", + "url": "https://github.com/hyprwm/Hyprland" } }, "hyprland-protocols": { "inputs": { "nixpkgs": [ "hyprland", + "xdph", "nixpkgs" ], "systems": [ "hyprland", + "xdph", "systems" ] }, @@ -562,6 +610,10 @@ }, "hyprlang": { "inputs": { + "hyprutils": [ + "hyprland", + "hyprutils" + ], "nixpkgs": [ "hyprland", "nixpkgs" @@ -572,11 +624,11 @@ ] }, "locked": { - "lastModified": 1713121246, - "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=", + "lastModified": 1717881852, + "narHash": "sha256-XeeVoKHQgfKuXoP6q90sUqKyl7EYy3ol2dVZGM+Jj94=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706", + "rev": "ec6938c66253429192274d612912649a0cfe4d28", "type": "github" }, "original": { @@ -585,13 +637,63 @@ "type": "github" } }, + "hyprutils": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1719316102, + "narHash": "sha256-dmRz128j/lJmMuTYeCYPfSBRHHQO3VeH4PbmoyAhHzw=", + "owner": "hyprwm", + "repo": "hyprutils", + "rev": "1f6bbec5954f623ff8d68e567bddcce97cd2f085", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprutils", + "type": "github" + } + }, + "hyprwayland-scanner": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1719067853, + "narHash": "sha256-mAnZG/eQy72Fp1ImGtqCgUrDumnR1rMZv2E/zgP4U74=", + "owner": "hyprwm", + "repo": "hyprwayland-scanner", + "rev": "914f083741e694092ee60a39d31f693d0a6dc734", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprwayland-scanner", + "type": "github" + } + }, "impermanence": { "locked": { - "lastModified": 1708968331, - "narHash": "sha256-VUXLaPusCBvwM3zhGbRIJVeYluh2uWuqtj4WirQ1L9Y=", + "lastModified": 1719091691, + "narHash": "sha256-AxaLX5cBEcGtE02PeGsfscSb/fWMnyS7zMWBXQWDKbE=", "owner": "nix-community", "repo": "impermanence", - "rev": "a33ef102a02ce77d3e39c25197664b7a636f9c30", + "rev": "23c1f06316b67cb5dabdfe2973da3785cfe9c34a", "type": "github" }, "original": { @@ -618,11 +720,11 @@ }, "master": { "locked": { - "lastModified": 1715589090, - "narHash": "sha256-zrAP+EtMbOMx0XBFPgy/u0bfUBdh0F/mLUhHiaCPMi8=", + "lastModified": 1719834384, + "narHash": "sha256-M6Vr7LbYeesXrG3hjAExzIfYFxrncrs1dpnp7zdeUN4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "983a74210808ebf5a93c5ed26de1adbc45ac6f4c", + "rev": "c08bd9add4732d87fde747e15b8fc053dfd1234b", "type": "github" }, "original": { @@ -670,44 +772,21 @@ "type": "github" } }, - "neovim-flake": { - "inputs": { - "flake-utils": "flake-utils_3", - "nixpkgs": [ - "neovim-nightly-overlay", - "nixpkgs" - ] - }, - "locked": { - "dir": "contrib", - "lastModified": 1715551630, - "narHash": "sha256-hNuCVU96sDo1zmnt0OSLRYv56f2CrH9XrftPsK8fMWo=", - "owner": "neovim", - "repo": "neovim", - "rev": "c7958356bef304320d86cd541d0de8db968c6cc8", - "type": "github" - }, - "original": { - "dir": "contrib", - "owner": "neovim", - "repo": "neovim", - "type": "github" - } - }, "neovim-nightly-overlay": { "inputs": { "flake-compat": "flake-compat", "flake-parts": "flake-parts_2", + "git-hooks": "git-hooks", "hercules-ci-effects": "hercules-ci-effects", - "neovim-flake": "neovim-flake", + "neovim-src": "neovim-src", "nixpkgs": "nixpkgs_5" }, "locked": { - "lastModified": 1715558773, - "narHash": "sha256-yyKzLgpCjnY6Nns5O9M13LgNtevO5UCenQr61BO0AiI=", + "lastModified": 1719764240, + "narHash": "sha256-bsZDPD08s8FKCGyy1OMMuM+cOjO1M8vPREkhgyqkRQM=", "owner": "nix-community", "repo": "neovim-nightly-overlay", - "rev": "2d293e623b20fc71d94c3c96d8fc47e280edd1c7", + "rev": "643ec69ac0cfcc1cd26523c3816fb111e5bb3a41", "type": "github" }, "original": { @@ -716,6 +795,22 @@ "type": "github" } }, + "neovim-src": { + "flake": false, + "locked": { + "lastModified": 1719700831, + "narHash": "sha256-d89hDFBBtuQ7rwS/Q3lKYyfE0ekVCwubMN9q1qCZ3m0=", + "owner": "neovim", + "repo": "neovim", + "rev": "e7020306a19a5211c834966ec067fff3b981bdb9", + "type": "github" + }, + "original": { + "owner": "neovim", + "repo": "neovim", + "type": "github" + } + }, "nix-index-database": { "inputs": { "nixpkgs": [ @@ -723,11 +818,11 @@ ] }, "locked": { - "lastModified": 1715483403, - "narHash": "sha256-WMDuQj7J5jbpXI/X/E6FZRKgBFGcaSTvYyVxPnKE6KU=", + "lastModified": 1719726405, + "narHash": "sha256-DqeKlvYQ5Z1rC02we9ufHr8UTfqBRPhiPrGLqdJ91dQ=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "f9027322f48b427da23746aa359a6510dfcd0228", + "rev": "838a910df0f7e542de2327036b2867fd68ded3a2", "type": "github" }, "original": { @@ -773,7 +868,7 @@ }, "nix-super": { "inputs": { - "flake-compat": "flake-compat_2", + "flake-compat": "flake-compat_3", "flake-parts": "flake-parts_4", "libgit2": "libgit2", "nixpkgs": "nixpkgs_6", @@ -812,14 +907,14 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1714640452, - "narHash": "sha256-QBx10+k6JWz6u7VsohfSw8g8hjdBZEf8CFzXH1/1Z94=", + "lastModified": 1717284937, + "narHash": "sha256-lIbdfCsf8LMFloheeE6N31+BMIeixqyQWbSr2vk79EQ=", "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/50eb7ecf4cd0a5756d7275c8ba36790e5bd53e33.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz" }, "original": { "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/50eb7ecf4cd0a5756d7275c8ba36790e5bd53e33.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/eb9ceca17df2ea50a250b6b27f7bf6ab0186f198.tar.gz" } }, "nixpkgs-regression": { @@ -840,11 +935,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1710695816, - "narHash": "sha256-3Eh7fhEID17pv9ZxrPwCLfqXnYP006RKzSs0JptsN84=", + "lastModified": 1718811006, + "narHash": "sha256-0Y8IrGhRmBmT7HHXlxxepg2t8j1X90++qRN3lukGaIk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "614b4613980a522ba49f0d194531beddbb7220d3", + "rev": "03d771e513ce90147b65fe922d87d3a0356fc125", "type": "github" }, "original": { @@ -856,11 +951,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1715499532, - "narHash": "sha256-9UJLb8rdi2VokYcfOBQHUzP3iNxOPNWcbK++ENElpk0=", + "lastModified": 1719379843, + "narHash": "sha256-u+D+IOAMMl70+CJ9NKB+RMrASjInuIWMHzjLWQjPZ6c=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "af8b9db5c00f1a8e4b83578acc578ff7d823b786", + "rev": "b3f3c1b13fb08f3828442ee86630362e81136bbc", "type": "github" }, "original": { @@ -888,11 +983,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1715087517, - "narHash": "sha256-CLU5Tsg24Ke4+7sH8azHWXKd0CFd4mhLWfhYgUiDBpQ=", + "lastModified": 1719075281, + "narHash": "sha256-CyyxvOwFf12I91PBWz43iGT1kjsf5oi6ax7CrvaMyAo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b211b392b8486ee79df6cdfb1157ad2133427a29", + "rev": "a71e967ef3694799d0c418c98332f7ff4cc5f6af", "type": "github" }, "original": { @@ -904,11 +999,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1715499532, - "narHash": "sha256-9UJLb8rdi2VokYcfOBQHUzP3iNxOPNWcbK++ENElpk0=", + "lastModified": 1719468428, + "narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "af8b9db5c00f1a8e4b83578acc578ff7d823b786", + "rev": "1e3deb3d8a86a870d925760db1a5adecc64d329d", "type": "github" }, "original": { @@ -936,11 +1031,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1715499532, - "narHash": "sha256-9UJLb8rdi2VokYcfOBQHUzP3iNxOPNWcbK++ENElpk0=", + "lastModified": 1719468428, + "narHash": "sha256-vN5xJAZ4UGREEglh3lfbbkIj+MPEYMuqewMn4atZFaQ=", "owner": "nixos", "repo": "nixpkgs", - "rev": "af8b9db5c00f1a8e4b83578acc578ff7d823b786", + "rev": "1e3deb3d8a86a870d925760db1a5adecc64d329d", "type": "github" }, "original": { @@ -952,11 +1047,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1710765496, - "narHash": "sha256-p7ryWEeQfMwTB6E0wIUd5V2cFTgq+DRRBz2hYGnJZyA=", + "lastModified": 1719082008, + "narHash": "sha256-jHJSUH619zBQ6WdC21fFAlDxHErKVDJ5fpN0Hgx4sjs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e367f7a1fb93137af22a3908f00b9a35e2d286a7", + "rev": "9693852a2070b398ee123a329e68f0dab5526681", "type": "github" }, "original": { @@ -1000,11 +1095,11 @@ }, "nur": { "locked": { - "lastModified": 1715588836, - "narHash": "sha256-H6dKRVSLE7rJfCFUuaSsjgJBhwKqodAK+QCdldD4gRw=", + "lastModified": 1719762299, + "narHash": "sha256-hD+5hNGqPBipDTuZZImSCU36RqacSJadHjQtK/gbaxU=", "owner": "nix-community", "repo": "NUR", - "rev": "3478942a77be062c5914af2607021f8fbf3abc71", + "rev": "80b917d886c6554264f71e1fc68e6b17cd5fdfa1", "type": "github" }, "original": { @@ -1016,11 +1111,11 @@ "nvim-lspconfig": { "flake": false, "locked": { - "lastModified": 1715493027, - "narHash": "sha256-qOzuJLyJz3wiLoZ/Gy4EQvWDhVprNHID1oUbOIA4MwM=", + "lastModified": 1719643735, + "narHash": "sha256-ZFewYwOXG3RtH8plm8Y870WL+BiqvVuzTgdz5H66d/8=", "owner": "neovim", "repo": "nvim-lspconfig", - "rev": "94513a5b246cf32a8f87ca714af50911df63351c", + "rev": "7edfd6692ba17f8d4fe08d84142781898ab0a672", "type": "github" }, "original": { @@ -1034,7 +1129,7 @@ "flake-compat": [ "nix-super" ], - "flake-utils": "flake-utils_4", + "flake-utils": "flake-utils_3", "gitignore": [ "nix-super" ], @@ -1063,18 +1158,17 @@ }, "pre-commit-hooks_2": { "inputs": { - "flake-compat": "flake-compat_3", - "flake-utils": "flake-utils_5", - "gitignore": "gitignore", + "flake-compat": "flake-compat_4", + "gitignore": "gitignore_2", "nixpkgs": "nixpkgs_8", "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1714478972, - "narHash": "sha256-q//cgb52vv81uOuwz1LaXElp3XAe1TqrABXODAEF6Sk=", + "lastModified": 1719259945, + "narHash": "sha256-F1h+XIsGKT9TkGO3omxDLEb/9jOOsI6NnzsXFsZhry4=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "2849da033884f54822af194400f8dff435ada242", + "rev": "0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07", "type": "github" }, "original": { @@ -1086,11 +1180,11 @@ "river": { "flake": false, "locked": { - "lastModified": 1715523364, - "narHash": "sha256-Gzv/Gu4OwOJZAyWH3rNx+AW5hJR+5Alxss0lCP+gbQk=", + "lastModified": 1719742320, + "narHash": "sha256-KA7bOP66JIbBPBDQiOfNe2M8vgErVMmw/zdr/NHJsZc=", "ref": "refs/heads/master", - "rev": "1e3ef88bd573e4940f7e9dcffdbf119161473e4d", - "revCount": 1254, + "rev": "0997fde28e1aad90a983d28061deed9fdcb972f3", + "revCount": 1278, "submodules": true, "type": "git", "url": "https://github.com/riverwm/river" @@ -1107,6 +1201,7 @@ "agenix": "agenix", "arkenfox-userjs": "arkenfox-userjs", "asus-touchpad-numpad-driver": "asus-touchpad-numpad-driver", + "cmp-vimtex": "cmp-vimtex", "devshell": "devshell", "disko": "disko", "flake-parts": "flake-parts", @@ -1154,11 +1249,11 @@ }, "stable": { "locked": { - "lastModified": 1718437845, - "narHash": "sha256-ZT7Oc1g4I4pHVGGjQFnewFVDRLH5cIZhEzODLz9YXeY=", + "lastModified": 1719426051, + "narHash": "sha256-yJL9VYQhaRM7xs0M867ZFxwaONB9T2Q4LnGo1WovuR4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "752c634c09ceb50c45e751f8791cb45cb3d46c9e", + "rev": "89c49874fb15f4124bf71ca5f42a04f2ee5825fd", "type": "github" }, "original": { @@ -1243,36 +1338,6 @@ "type": "github" } }, - "systems_6": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "systems_7": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "telekasten-nvim": { "flake": false, "locked": { @@ -1311,7 +1376,7 @@ }, "utils": { "inputs": { - "systems": "systems_7" + "systems": "systems_5" }, "locked": { "lastModified": 1692799911, @@ -1327,29 +1392,9 @@ "type": "github" } }, - "wlroots": { - "flake": false, - "locked": { - "lastModified": 1713124002, - "narHash": "sha256-vPeZCY+sdiGsz4fl3AVVujfyZyQBz6+vZdkUE4hQ+HI=", - "owner": "hyprwm", - "repo": "wlroots-hyprland", - "rev": "611a4f24cd2384378f6e500253983107c6656c64", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "wlroots-hyprland", - "rev": "611a4f24cd2384378f6e500253983107c6656c64", - "type": "github" - } - }, "xdph": { "inputs": { - "hyprland-protocols": [ - "hyprland", - "hyprland-protocols" - ], + "hyprland-protocols": "hyprland-protocols", "hyprlang": [ "hyprland", "hyprlang" @@ -1364,11 +1409,11 @@ ] }, "locked": { - "lastModified": 1714662532, - "narHash": "sha256-Pj2xGSYhapYbXL7sk7TTlOtCZcTfPQoL3fPbZeg7L4Y=", + "lastModified": 1718619174, + "narHash": "sha256-FWW68AVYmB91ZDQnhLMBNCUUTCjb1ZpO2k2KIytHtkA=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "1f228ba2f1f254195c0b571302b37482861abee3", + "rev": "c7894aa54f9a7dbd16df5cd24d420c8af22d5623", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 8eaa36d..9a5bdc5 100644 --- a/flake.nix +++ b/flake.nix @@ -45,6 +45,8 @@ hawtkeys-nvim.url = "github:tris203/hawtkeys.nvim"; none-ls-shellcheck-nvim.flake = false; none-ls-shellcheck-nvim.url = "github:gbprod/none-ls-shellcheck.nvim"; + cmp-vimtex.flake = false; + cmp-vimtex.url = "github:micangl/cmp-vimtex"; # river river.url = "git+https://github.com/riverwm/river?submodules=1"; @@ -52,7 +54,11 @@ # Hyprland hypr-contrib.url = "github:hyprwm/contrib"; - hyprland.url = "github:hyprwm/Hyprland/v0.39.1"; + hyprland = { + type = "git"; + url = "https://github.com/hyprwm/Hyprland"; + submodules = true; + }; # Laptop asus-touchpad-numpad-driver.url = "github:MoritzBoehme/asus-touchpad-numpad-driver/german-layout"; diff --git a/hosts/nixos-desktop/default.nix b/hosts/nixos-desktop/default.nix index 1df502b..98ab4c9 100644 --- a/hosts/nixos-desktop/default.nix +++ b/hosts/nixos-desktop/default.nix @@ -21,23 +21,15 @@ impermanence.enable = true; webis.enable = true; }; - # programs.river = { - # enable = true; - # nvidiaSupport = true; - # }; programs.hyprland.enable = true; programs.hyprland.nvidiaSupport = true; + programs.hyprland.keyboardLayouts = [ "us" "de" ]; programs.exercism.enable = true; services.wallpaper.enable = true; }; - home-manager.users.moritz.services.kanshi.profiles = { - default = { - outputs = [ - { criteria = "HDMI-A-1"; mode = "3840x2160@60"; scale = 1.2; } - ]; - }; - }; + virtualisation.containers.cdi.dynamic.nvidia.enable = true; + home-manager.users.moritz.home.packages = with pkgs; [ anki stable.calibre # NOTE: breaks often in unstable @@ -49,7 +41,6 @@ opengl = { enable = true; driSupport32Bit = true; - driSupport = true; }; # sensors @@ -76,7 +67,7 @@ defaultGateway = "192.168.0.1"; nameservers = [ "192.168.0.4" ]; useDHCP = false; - interfaces.enp42s0 = { + interfaces.enp6s0 = { ipv4.addresses = [ { address = "192.168.0.14"; diff --git a/hosts/nixos-desktop/hardware-configuration.nix b/hosts/nixos-desktop/hardware-configuration.nix index 2b77412..d5fa4da 100644 --- a/hosts/nixos-desktop/hardware-configuration.nix +++ b/hosts/nixos-desktop/hardware-configuration.nix @@ -1,23 +1,27 @@ # Do not modify this file! It was generated by ‘nixos-generate-config’ # and may be overwritten by future invocations. Please make changes # to /etc/nixos/configuration.nix instead. -{ config -, lib -, modulesPath -, ... -}: { - imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; - boot = { - initrd = { - availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ]; - kernelModules = [ ]; - }; - kernelModules = [ "kvm-amd" ]; - extraModulePackages = [ ]; - }; +{ config, lib, pkgs, modulesPath, ... }: - hardware.cpu.amd.updateMicrocode = - lib.mkDefault config.hardware.enableRedistributableFirmware; +{ + imports = + [ + (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.enp6s0.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp7s0.useDHCP = lib.mkDefault true; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; } diff --git a/modules/programs/git.nix b/modules/programs/git.nix index 0dbd586..12171e0 100644 --- a/modules/programs/git.nix +++ b/modules/programs/git.nix @@ -29,18 +29,24 @@ in config = mkIf cfg.enable { my.shell.abbreviations = { + g = "git"; + gC = "git clone"; + gF = "git pull"; + gS = "git switch"; ga = "git add"; gap = "git add --patch"; - gr = "git restore"; - grp = "git restore --patch"; gb = "git branch"; gc = "git commit"; gco = "git checkout"; gd = "git diff"; gds = "git diff --staged"; - gp = "git push"; gf = "git fetch"; - gF = "git pull"; + gp = "git push"; + gr = "git restore"; + grm = "git rm --cached"; + grp = "git restore --patch"; + grps = "git restore --patch --staged"; + grs = "git restore --staged"; gs = "git status"; }; home-manager.users.moritz = { diff --git a/modules/programs/gnome.nix b/modules/programs/gnome.nix index f5cba87..aaa0297 100644 --- a/modules/programs/gnome.nix +++ b/modules/programs/gnome.nix @@ -20,10 +20,7 @@ in config = lib.mkIf cfg.enable { hardware = { - opengl = { - enable = true; - driSupport = true; - }; + opengl.enable = true; pulseaudio.enable = false; }; services.xserver = { diff --git a/modules/programs/hyprland/_config.nix b/modules/programs/hyprland/_config.nix index addf88d..8731021 100644 --- a/modules/programs/hyprland/_config.nix +++ b/modules/programs/hyprland/_config.nix @@ -24,10 +24,7 @@ in # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ input { kb_layout = ${concatStringsSep "," cfg.keyboardLayouts} - kb_variant = - kb_model = kb_options = grp:win_space_toggle,caps:escape - kb_rules = follow_mouse = 1 @@ -104,7 +101,7 @@ in master { # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more no_gaps_when_only = true - new_is_master = false + new_on_top = false } gestures { @@ -229,7 +226,7 @@ in # Lid open/close bindl=,switch:on:Lid Switch,exec,monitors="$(hyprctl monitors | grep -c '^Monitor')" && hyprctl keyword monitor "eDP-1, disable" && [ "$monitors" = 1 ] && loginctl lock-session - bindl=,switch:off:Lid Switch,exec, hyprctl keyword monitor "eDP-1, prefered, auto" + bindl=,switch:off:Lid Switch,exec, hyprctl keyword monitor "eDP-1, preferred, auto" # Extra Config ${cfg.extraConfig} diff --git a/modules/programs/hyprland/default.nix b/modules/programs/hyprland/default.nix index 81a99bc..4c6bed1 100644 --- a/modules/programs/hyprland/default.nix +++ b/modules/programs/hyprland/default.nix @@ -9,7 +9,7 @@ with lib; let cfg = config.my.programs.hyprland; - hyprland = config.programs.hyprland.finalPackage; + hyprland = inputs.hyprland.packages.${pkgs.system}.default; in { options.my.programs.hyprland = { @@ -65,7 +65,7 @@ in programs.hyprland = { enable = true; - package = inputs.hyprland.packages.${pkgs.system}.default; + package = hyprland; portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland; }; diff --git a/modules/programs/nvim/default.nix b/modules/programs/nvim/default.nix index 92f795e..e407c48 100644 --- a/modules/programs/nvim/default.nix +++ b/modules/programs/nvim/default.nix @@ -1,8 +1,9 @@ { config, lib, pkgs, inputs, ... }: let - cfg = config.my.programs.nvim; inherit (lib) mkEnableOption mkIf readFile; + + cfg = config.my.programs.nvim; in { imports = lib.my.listModulesRec ./plugins; @@ -16,6 +17,10 @@ in source = ./plugins/snippets; }; + home.packages = with pkgs; [ + xdotool # for vimtex + ]; + programs.neovim = { enable = true; package = inputs.neovim-nightly-overlay.packages.${pkgs.system}.default; diff --git a/modules/programs/nvim/plugins/coding.nix b/modules/programs/nvim/plugins/coding.nix index 4e14a77..3dd89b3 100644 --- a/modules/programs/nvim/plugins/coding.nix +++ b/modules/programs/nvim/plugins/coding.nix @@ -36,10 +36,17 @@ in { plugin = pkgs.vimPlugins.cmp-async-path; } { plugin = pkgs.vimPlugins.cmp-buffer; } { plugin = pkgs.vimPlugins.cmp-cmdline; } - { plugin = pkgs.vimPlugins.cmp-nvim-lsp; } - { plugin = pkgs.vimPlugins.cmp_luasnip; } - { plugin = pkgs.vimPlugins.cmp-spell; } { plugin = pkgs.vimPlugins.cmp-nvim-lsp-signature-help; } + { plugin = pkgs.vimPlugins.cmp-nvim-lsp; } + { plugin = pkgs.vimPlugins.cmp-spell; } + { + plugin = pkgs.vimUtils.buildVimPlugin { + pname = "cmp-vimtex"; + version = lib.my.mkVersionInput inputs.cmp-vimtex; + src = inputs.cmp-vimtex; + }; + } + { plugin = pkgs.vimPlugins.cmp_luasnip; } { plugin = pkgs.vimPlugins.copilot-cmp; opts = { }; @@ -210,6 +217,18 @@ in cmd = [ "ConformInfo" "Format" ]; conf = readFile ./lua/conform.lua; } - { plugin = plantuml-syntax; } + { plugin = pkgs.vimPlugins.plantuml-syntax; } + { + plugin = pkgs.vimPlugins.vimtex; + lazy = false; + conf = /* lua */ '' + vim.g.vimtex_view_method = "zathura" + vim.g.vimtex_mappings_disable = vim.fn.executable("texlab") == 1 and { ["n"] = { "K" } } or {} -- disable `K` as it conflicts with LSP hover if texlab is in path + vim.g.vimtex_quickfix_method = vim.fn.executable("pplatex") == 1 and "pplatex" or "latexlog" + ''; + keys = [ + { key = "l"; cmd = ""; desc = "+vimtex"; } + ]; + } ]; } diff --git a/modules/programs/nvim/plugins/lua/conform.lua b/modules/programs/nvim/plugins/lua/conform.lua index 2675177..e6a1a62 100644 --- a/modules/programs/nvim/plugins/lua/conform.lua +++ b/modules/programs/nvim/plugins/lua/conform.lua @@ -2,6 +2,7 @@ local conform = require("conform") local formatters_by_ft = { ["*"] = { "codespell", "trim_whitespace" }, + gleam = { "gleam" }, go = { "gofmt" }, json = { "jq" }, lua = { "stylua" }, @@ -9,9 +10,9 @@ local formatters_by_ft = { python = { { "ruff_fix", "isort" }, { "ruff_format", "black" } }, rust = { "rustfmt" }, sh = { "shfmt" }, + tex = { "latexindent" }, toml = { "taplo" }, yaml = { "yamlfix" }, - gleam = { "gleam" }, } conform.setup({ diff --git a/modules/programs/nvim/plugins/lua/nvim-cmp.lua b/modules/programs/nvim/plugins/lua/nvim-cmp.lua index 4da693c..69cf040 100644 --- a/modules/programs/nvim/plugins/lua/nvim-cmp.lua +++ b/modules/programs/nvim/plugins/lua/nvim-cmp.lua @@ -69,6 +69,7 @@ cmp.setup({ { priority = 3, name = "copilot" }, { priority = 3, name = "nvim_lsp_signature_help" }, { priority = 4, name = "luasnip" }, + { priority = 4, name = "vimtex" }, }), }) diff --git a/modules/programs/nvim/plugins/lua/nvim-lspconfig.lua b/modules/programs/nvim/plugins/lua/nvim-lspconfig.lua index 1c6dcbe..8476272 100644 --- a/modules/programs/nvim/plugins/lua/nvim-lspconfig.lua +++ b/modules/programs/nvim/plugins/lua/nvim-lspconfig.lua @@ -49,17 +49,17 @@ local on_attach_def = function(client, bufnr) l = { function() lsp_lines.toggle() - if vim.diagnostic.is_disabled() then - vim.diagnostic.enable() - else + if vim.diagnostic.is_enabled() then vim.diagnostic.disable() + else + vim.diagnostic.enable() end end, "LSP lines", }, i = { function() - vim.lsp.inlay_hint.enable(bufnr, not vim.lsp.inlay_hint.is_enabled(bufnr)) + vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled()) end, "LSP inlay hints", }, @@ -123,7 +123,6 @@ local servers = { "bashls", "gleam", "gopls", - "nil_ls", "pylsp", "ruff_lsp", "templ", @@ -133,6 +132,16 @@ for _, lsp in ipairs(servers) do lspconfig_setup(lsp, {}) end +lspconfig_setup("nil_ls", { + settings = { + flake = { + autoArchive = true, + autoEvalInputs = true, + nixpkgsInputName = "nixpkgs", + }, + }, +}) + lspconfig_setup("nixd", { settings = { nixd = { diff --git a/modules/programs/nvim/plugins/treesitter.nix b/modules/programs/nvim/plugins/treesitter.nix index 2ba777c..a7d473b 100644 --- a/modules/programs/nvim/plugins/treesitter.nix +++ b/modules/programs/nvim/plugins/treesitter.nix @@ -1,8 +1,7 @@ { pkgs, ... }: -with builtins; { - config.home-manager.users.moritz.programs.neovim.lazy.plugins = with pkgs.vimPlugins; [ + config.home-manager.users.moritz.programs.neovim.lazy.plugins = [ ( let parserDir = pkgs.symlinkJoin { @@ -11,13 +10,14 @@ with builtins; }; in { - plugin = nvim-treesitter; + plugin = pkgs.vimPlugins.nvim-treesitter; event = [ "BufReadPost" "BufNewFile" ]; opts = { sync_install = false; auto_install = false; highlight = { enable = true; + disable = [ "latex" ]; }; textobjects = { @@ -60,8 +60,8 @@ with builtins; ''; priority = 100; dependencies = [ - { plugin = nvim-treesitter-textobjects; } - { plugin = nvim-ts-context-commentstring; opts = { }; } + { plugin = pkgs.vimPlugins.nvim-treesitter-textobjects; } + { plugin = pkgs.vimPlugins.nvim-ts-context-commentstring; opts = { }; } ]; } ) diff --git a/modules/programs/sway.nix b/modules/programs/sway.nix index a11b077..ed4e22a 100644 --- a/modules/programs/sway.nix +++ b/modules/programs/sway.nix @@ -12,10 +12,8 @@ in options.my.programs.sway.enable = mkEnableOption "sway"; config = lib.mkIf cfg.enable { - hardware.opengl = { - enable = true; - driSupport = true; - }; + hardware.opengl.enable = true; + environment.loginShellInit = '' if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ]; then exec sway diff --git a/modules/security/default.nix b/modules/security/default.nix index 3fcd4fb..e7b42fe 100644 --- a/modules/security/default.nix +++ b/modules/security/default.nix @@ -1,5 +1,6 @@ { config , lib +, pkgs , ... }: { ## System security tweaks @@ -69,6 +70,7 @@ # SSH services.openssh = { + package = pkgs.master.openssh; # HACK: to fix CVE-2024-6387 settings = { # Disable ssh password login PasswordAuthentication = lib.mkDefault false;