From f66a3fe2f35523acb638eadab27feb48d6664c82 Mon Sep 17 00:00:00 2001 From: jolheiser Date: Wed, 10 Jul 2024 10:48:54 -0500 Subject: [PATCH] feat: ssh signing Signed-off-by: jolheiser --- apps/nogui/git.nix | 78 ++++++++++++++++++++++++---------------------- apps/nogui/jj.nix | 2 +- 2 files changed, 42 insertions(+), 38 deletions(-) diff --git a/apps/nogui/git.nix b/apps/nogui/git.nix index b371869..c7637ee 100644 --- a/apps/nogui/git.nix +++ b/apps/nogui/git.nix @@ -1,18 +1,26 @@ -{config, ...}: let - key = "0xB853ADA5DA7BBF7A"; +{ + pkgs, + config, + ... +}: let insteadOf = prefix: domain: { "https://${domain}/".insteadOf = "${prefix}:"; "git@${domain}:".insteadOf = "ssh:${prefix}:"; }; + key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAUxLwkJOlalAHTdkbh+m49XTZGKDqWz1o/o8OLmtQdX"; + sshSigning = { + commit.gpgsign = true; + user.signingkey = key; + gpg = { + format = "ssh"; + ssh.allowedSignersFile = "${pkgs.writeText "allowedSigners" "git@jolheiser.com ${key}"}"; + }; + }; in { programs.git = { enable = true; userName = "jolheiser"; - userEmail = "john.olheiser@gmail.com"; - signing = { - signByDefault = true; - key = key; - }; + userEmail = "git@jolheiser.com"; aliases = { wt = "worktree"; ci = "commit -s -S -m"; @@ -30,37 +38,33 @@ in { }; lfs.enable = true; ignores = [".idea/" "result" "node_modules" "ve"]; - extraConfig = { - init.defaultBranch = "main"; - merge.conflictstyle = "zdiff3"; - diff.colorMoved = "default"; - core.editor = "hx"; - push = { - sutoSetupRemote = true; - default = "current"; - gpgSign = "if-asked"; - }; - rerere.enabled = true; - pull.rebase = true; - diff.algorithm = "histogram"; - merge.tool = "hx"; - url = - insteadOf "jo" "git.jolheiser.com" - // insteadOf "gh" "github.com" - // insteadOf "jj" "git.jojodev.com" - // insteadOf "gt" "gitea.com" - // insteadOf "gl" "gitlab.com" - // insteadOf "cb" "codeberg.org"; - }; - delta = { + extraConfig = + { + commit.gpgsign = true; + init.defaultBranch = "main"; + merge.conflictstyle = "zdiff3"; + diff.colorMoved = "default"; + core.editor = "hx"; + push = { + sutoSetupRemote = true; + default = "current"; + gpgSign = "if-asked"; + }; + rerere.enabled = true; + pull.rebase = true; + diff.algorithm = "histogram"; + merge.tool = "hx"; + url = + insteadOf "jo" "git.jolheiser.com" + // insteadOf "gh" "github.com" + // insteadOf "jj" "git.jojodev.com" + // insteadOf "gt" "gitea.com" + // insteadOf "gl" "gitlab.com" + // insteadOf "cb" "codeberg.org"; + } + // sshSigning; + difftastic = { enable = true; - options = { - features = "ctp-mocha"; - navigate = true; - light = false; - line-numbers = true; - side-by-side = true; - }; }; includes = [ { diff --git a/apps/nogui/jj.nix b/apps/nogui/jj.nix index ae1983a..5d6b9f4 100644 --- a/apps/nogui/jj.nix +++ b/apps/nogui/jj.nix @@ -4,7 +4,7 @@ settings = { user = { name = "jolheiser"; - email = "john@jolheiser.com"; + email = "git@jolheiser.com"; }; ui = { diff.tool = ["${pkgs.difftastic}/bin/difft" "--color=always" "$left" "$right"];