From 4ba1fc005b56731d2516736361e3380acc6b44be Mon Sep 17 00:00:00 2001 From: Ethan Reece Date: Fri, 11 Jul 2025 02:32:33 -0500 Subject: [PATCH] Move gpg config to nix --- flake.nix | 20 ++++++++++++-------- home/home.nix | 32 ++++++++++++++++++++------------ 2 files changed, 32 insertions(+), 20 deletions(-) diff --git a/flake.nix b/flake.nix index 1e1dbe2..f76b091 100644 --- a/flake.nix +++ b/flake.nix @@ -91,12 +91,17 @@ nixFiles = builtins.filter (name: builtins.match ".*\\.nix" name != null) langFiles; configs = map (file: import (langDir + "/${file}") { inherit pkgs treefmt; }) nixFiles; helixLanguages = { - language = map (cfg: cfg.helix.language) ( - (builtins.filter (cfg: builtins.hasAttr "language" cfg.helix) ( - builtins.filter (cfg: builtins.hasAttr "helix" cfg) configs - )) - ); - language-server = builtins.foldl' (acc: cfg: acc // (cfg.helix.language-server or { })) { } configs; + directory = ".helix"; + filename = "languages.toml"; + content = { + language = map (cfg: cfg.helix.language) ( + (builtins.filter (cfg: builtins.hasAttr "language" cfg.helix) ( + builtins.filter (cfg: builtins.hasAttr "helix" cfg) configs + )) + ); + language-server = builtins.foldl' (acc: cfg: acc // (cfg.helix.language-server or { })) { } configs; + }; + file = tomlFormatter.generate "languages.toml" helixLanguages.content; }; treefmtPrograms = builtins.foldl' ( acc: cfg: deepMerge acc (cfg.treefmt.programs or { }) @@ -117,7 +122,6 @@ acc: cfg: acc // (cfg.devshell.devshellStartup or { }) ) { } configs; }; - helixLanguagesFile = tomlFormatter.generate "languages.toml" helixLanguages; in { _module.args.pkgs = pkgs; @@ -185,7 +189,7 @@ helix_config = { text = '' mkdir -p .helix - ${pkgs.uutils-coreutils-noprefix}/bin/ln -fs ${helixLanguagesFile} ./.helix/languages.toml + ${pkgs.uutils-coreutils-noprefix}/bin/ln -fs ${helixLanguages.file} ./${helixLanguages.directory}/${helixLanguages.filename} ''; }; pre-commit.text = '' diff --git a/home/home.nix b/home/home.nix index 48ee200..2e74fec 100644 --- a/home/home.nix +++ b/home/home.nix @@ -189,18 +189,18 @@ in # }; # }; # TODO: Disable Guix integration - # git = { - # enable = true; - # delta = { - # enable = true; - # }; - # signing = { - # format = "openpgp"; - # signByDefault = true; - # }; - # userEmail = "contact@ethanreece.com"; - # userName = "Ethan Reece"; - # }; + git = { + enable = true; + delta = { + enable = true; + }; + signing = { + format = "openpgp"; + signByDefault = true; + }; + userEmail = "contact@ethanreece.com"; + userName = "Ethan Reece"; + }; gh = { enable = true; settings = { @@ -430,6 +430,14 @@ in }; services = { arrpc.enable = true; + gpg-agent = { + enable = true; + enableSshSupport = true; + pinentry = { + package = pkgs.pinentry-all; + program = "pinentry"; + }; + }; }; targets.genericLinux.enable = true; }