From aeb29c17a283973e34dece923e94fd00366342c8 Mon Sep 17 00:00:00 2001 From: Trolli Schmittlauch Date: Tue, 27 Jan 2026 23:16:27 +0100 Subject: [PATCH 1/2] overlay: clean up structure --- home/overlays.nix | 54 +++++++++++++++++++++++------------------------ 1 file changed, 26 insertions(+), 28 deletions(-) diff --git a/home/overlays.nix b/home/overlays.nix index 6d1cbf1..74db291 100644 --- a/home/overlays.nix +++ b/home/overlays.nix @@ -1,33 +1,31 @@ [ - (self: super: rec { - myVim = - with super; - neovim.override { - configure = { - packages.myVimPackage = with pkgs.vimPlugins; { - # loaded on start - start = [ - ale - base16-vim - LanguageClient-neovim - ctrlp - direnv-vim - fugitive - haskell-vim - jedi-vim - nerdtree - nerdtree-git-plugin - supertab - vim-dirdiff - vim-pandoc - vim-pandoc-syntax - vim-nix - vim-jinja - which-key-nvim - ]; - }; - customRC = builtins.readFile ./vimrc; + (self: super: { + myVim = super.neovim.override { + configure = { + packages.myVimPackage = with self.pkgs.vimPlugins; { + # loaded on start + start = [ + ale + base16-vim + LanguageClient-neovim + ctrlp + direnv-vim + fugitive + haskell-vim + jedi-vim + nerdtree + nerdtree-git-plugin + supertab + vim-dirdiff + vim-pandoc + vim-pandoc-syntax + vim-nix + vim-jinja + which-key-nvim + ]; }; + customRC = builtins.readFile ./vimrc; }; + }; }) ] From 16d52b4ddf04d8dfacbcfcd3960a4f4cc04459eb Mon Sep 17 00:00:00 2001 From: Trolli Schmittlauch Date: Tue, 27 Jan 2026 23:16:49 +0100 Subject: [PATCH 2/2] home/nix-direnv: use unreleased version from flake necessary to get integrated [GC root refreshing](https://github.com/nix-community/nix-direnv/pull/631). It currently looks like nix-direnv is going to be integrated into direnv itself, so maybe nor new releases will be made until then. --- flake.lock | 69 +++++++++++++++++++++++++++++++++++++++++++++++-- flake.nix | 5 ++++ home/common.nix | 6 ++++- 3 files changed, 77 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index f9e30c5..856f77c 100644 --- a/flake.lock +++ b/flake.lock @@ -53,6 +53,27 @@ } }, "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "nix-direnv", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1768135262, + "narHash": "sha256-PVvu7OqHBGWN16zSi6tEmPwwHQ4rLPU9Plvs8/1TUBY=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "80daad04eddbbf5a4d883996a73f3f542fa437ac", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { "inputs": { "nixpkgs-lib": [ "nur", @@ -177,6 +198,28 @@ "type": "github" } }, + "nix-direnv": { + "inputs": { + "flake-parts": "flake-parts_2", + "nixpkgs": [ + "nixpkgs" + ], + "treefmt-nix": "treefmt-nix" + }, + "locked": { + "lastModified": 1768704530, + "narHash": "sha256-BASsdRYo8t/himZisgWW524t86pxuC0H3/Dv8sqR8sM=", + "owner": "nix-community", + "repo": "nix-direnv", + "rev": "29bb68202897f6e8653d28f64c5525c2c502f19c", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nix-direnv", + "type": "github" + } + }, "nixos-hardware": { "locked": { "lastModified": 1769302137, @@ -259,7 +302,7 @@ }, "nur": { "inputs": { - "flake-parts": "flake-parts_2", + "flake-parts": "flake-parts_3", "nixpkgs": "nixpkgs_3" }, "locked": { @@ -308,11 +351,12 @@ "lanzaboote": "lanzaboote", "mysecrets": "mysecrets", "nix-darwin": "nix-darwin", + "nix-direnv": "nix-direnv", "nixos-hardware": "nixos-hardware", "nixos-unstable": "nixos-unstable", "nixpkgs": "nixpkgs_2", "nur": "nur", - "treefmt-nix": "treefmt-nix", + "treefmt-nix": "treefmt-nix_2", "utils": "utils" } }, @@ -353,6 +397,27 @@ } }, "treefmt-nix": { + "inputs": { + "nixpkgs": [ + "nix-direnv", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1768158989, + "narHash": "sha256-67vyT1+xClLldnumAzCTBvU0jLZ1YBcf4vANRWP3+Ak=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "e96d59dff5c0d7fddb9d113ba108f03c3ef99eca", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", + "type": "github" + } + }, + "treefmt-nix_2": { "inputs": { "nixpkgs": [ "nixpkgs" diff --git a/flake.nix b/flake.nix index 7fd80f4..567a2c6 100644 --- a/flake.nix +++ b/flake.nix @@ -29,6 +29,11 @@ flake = false; url = "git+ssh://gitea@git.orlives.de:2342/schmittlauch/home-manager_secrets.git"; }; + nix-direnv = { + url = "github:nix-community/nix-direnv"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + }; outputs = diff --git a/home/common.nix b/home/common.nix index 0df7d8f..1bce7b0 100644 --- a/home/common.nix +++ b/home/common.nix @@ -19,7 +19,11 @@ programs.bat.enable = true; programs.direnv = { enable = true; - nix-direnv.enable = true; + nix-direnv = { + enable = true; + # use a more recent nix-direnv to get the _nix_refresh_gcroots integration + package = inputs.nix-direnv.packages."${pkgs.stdenv.hostPlatform.system}".nix-direnv; + }; enableZshIntegration = true; };