diff options
Diffstat (limited to 'modules/home-manager/personal/programs')
| -rw-r--r-- | modules/home-manager/personal/programs/git.nix | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/modules/home-manager/personal/programs/git.nix b/modules/home-manager/personal/programs/git.nix index 85ce0e4..a34b1b3 100644 --- a/modules/home-manager/personal/programs/git.nix +++ b/modules/home-manager/personal/programs/git.nix @@ -1,4 +1,4 @@ -{ config, lib, pkgs, ... }: +{ config, lib, pkgs, ... }@extraArgs: let primaryEmail = let @@ -28,5 +28,14 @@ in { result '' ]; + + extraConfig = { + safe.directory = lib.mkIf (extraArgs ? osConfig) ( + let + flake = extraArgs.osConfig.system.autoUpgrade.flake; + flakeIsValid = flake != null && lib.hasPrefix "git+file://" flake; + flakePath = lib.removePrefix "git+file://" flake; + in lib.optional flakeIsValid flakePath); + }; }; } |
