From 2b0d0ce8d81c6ed9d73c7800289bd8a9273e5a8e Mon Sep 17 00:00:00 2001 From: gwg313 Date: Thu, 16 Apr 2026 13:41:27 -0400 Subject: [PATCH] add jj --- modules/aspects/roles.nix | 1 + modules/features/programs/cli/vc-jujutsu.nix | 119 +++++++++++++++++++ 2 files changed, 120 insertions(+) create mode 100644 modules/features/programs/cli/vc-jujutsu.nix diff --git a/modules/aspects/roles.nix b/modules/aspects/roles.nix index 9ecf65b..70b4063 100644 --- a/modules/aspects/roles.nix +++ b/modules/aspects/roles.nix @@ -76,6 +76,7 @@ ]; developer.features = [ + "jujutsu" "developer-cli" "editor-neovim" "containers-podman" diff --git a/modules/features/programs/cli/vc-jujutsu.nix b/modules/features/programs/cli/vc-jujutsu.nix new file mode 100644 index 0000000..deaaf28 --- /dev/null +++ b/modules/features/programs/cli/vc-jujutsu.nix @@ -0,0 +1,119 @@ +{ ... }: +{ + config.dendritic.features.jujutsu = { + homeModules = [ + ( + { pkgs, ... }: + { + programs.jujutsu = { + enable = true; + settings = { + user = { + email = "gwg313@pm.me"; + name = "gwg313"; + }; + signing = { + behavior = "own"; + backend = "gpg"; + }; + aliases = { + c = [ "commit" ]; + ci = [ + "commit" + "--interactive" + ]; + e = [ "edit" ]; + i = [ + "git" + "init" + "--colocate" + ]; + tug = [ + "bookmark" + "move" + "--from" + "closest_bookmark(@-)" + "--to" + "@-" + ]; + log-recent = [ + "log" + "-r" + "default() & recent()" + ]; + nb = [ + "bookmark" + "create" + "-r" + "@-" + ]; # new bookmark + upmain = [ + "bookmark" + "set" + "main" + ]; + squash-desc = [ + "squash" + "::@" + "-d" + "@" + ]; + rebase-main = [ + "rebase" + "-d" + "main" + ]; + amend = [ + "describe" + "-m" + ]; + pushall = [ + "git" + "push" + "--all" + ]; + push = [ + "git" + "push" + "--allow-new" + ]; + pull = [ + "git" + "fetch" + ]; + dmain = [ + "diff" + "-r" + "main" + ]; + l = [ + "log" + "-T" + "builtin_log_compact" + ]; + lf = [ + "log" + "-r" + "all()" + ]; + r = [ "rebase" ]; + s = [ "squash" ]; + si = [ + "squash" + "--interactive" + ]; + }; + }; + }; + + home.packages = with pkgs; [ + lazyjj + meld + ]; + + } + ) + ]; + + }; +}