From d829d8b67e5aaab56d77e379c14aa327294b5513 Mon Sep 17 00:00:00 2001 From: Andre Date: Sun, 6 Oct 2024 11:53:28 -0400 Subject: [PATCH] General: manage git-crypt config --- modules/users/aires/default.nix | 1 + modules/users/common/home-manager/git-crypt.nix | 16 ++++++++++++++++ modules/users/gremlin/default.nix | 1 + modules/users/root/default.nix | 1 + 4 files changed, 19 insertions(+) create mode 100644 modules/users/common/home-manager/git-crypt.nix diff --git a/modules/users/aires/default.nix b/modules/users/aires/default.nix index c0b1463..1d11444 100644 --- a/modules/users/aires/default.nix +++ b/modules/users/aires/default.nix @@ -50,6 +50,7 @@ in # Configure home-manager home-manager.users.aires = { imports = [ + ../common/home-manager/git-crypt.nix ../common/home-manager/gnome.nix ../common/home-manager/zsh.nix ]; diff --git a/modules/users/common/home-manager/git-crypt.nix b/modules/users/common/home-manager/git-crypt.nix new file mode 100644 index 0000000..6fbc4ab --- /dev/null +++ b/modules/users/common/home-manager/git-crypt.nix @@ -0,0 +1,16 @@ +# Configure Git to support git-crypt +{ pkgs, ... }: +{ + programs.git = { + extraConfig = { + filter."git-crypt" = { + required = true; + smudge = "/run/current-system/sw/bin/git-crypt smudge"; + clean = "/run/current-system/sw/bin/git-crypt clean"; + }; + diff."git-crypt" = { + textconv = "/run/current-system/sw/bin/git-crypt diff"; + }; + }; + }; +} diff --git a/modules/users/gremlin/default.nix b/modules/users/gremlin/default.nix index 1aa4a12..444deec 100644 --- a/modules/users/gremlin/default.nix +++ b/modules/users/gremlin/default.nix @@ -51,6 +51,7 @@ in home-manager.users.gremlin = { imports = [ + ../common/home-manager/git-crypt.nix ../common/home-manager/gnome.nix ../common/home-manager/zsh.nix ]; diff --git a/modules/users/root/default.nix b/modules/users/root/default.nix index 0f521d7..9eb4b3f 100644 --- a/modules/users/root/default.nix +++ b/modules/users/root/default.nix @@ -2,6 +2,7 @@ { # Give root user access to run remote builds home-manager.users.root = { + imports = [ ../common/home-manager/git-crypt.nix ]; home.stateVersion = "24.05"; programs = { ssh = {