home-manager @ f2ca5f8340d7b8360298931f56194f1db1f7ee6b

 1{
 2  pkgs,
 3  inputs,
 4  git,
 5  ...
 6}: let
 7  tomlFormat = pkgs.formats.toml {};
 8in {
 9  xdg.configFile."jj/config.toml".source = tomlFormat.generate "config.toml" {
10    user = {
11      name = git.name;
12      email = git.email;
13    };
14    ui = {
15      diff-formatter = ":git";
16      pager = ":builtin";
17    };
18    aliases = {
19      wk = ["log" "-r" "trunk()::@ | @::"];
20      gp = ["git" "push" "--allow-new"];
21      gf = ["git" "fetch"];
22      tracked = ["bookmark" "list" "-t" "-T" ''if(self.tracked(), if(self.name() != "main", self.name()++"\n"))''];
23      untracked = ["bookmark" "list" "-T" ''if(!self.tracked(), if(self.name() != "main", self.name()++"\n"))''];
24      e = ["edit"];
25      track = ["util" "exec" "--" "bash" "-c" "jj bookmark set $(jj log -r @ -T 'self.change_id()' --no-graph)"];
26      tug = ["bookmark" "move" "--from" "heads(::@- & bookmarks())" "--to" "@-"];
27      nm = ["new" "-r" "trunk()"];
28    };
29    templates = {
30      log = "builtin_log_compact";
31    };
32    template-aliases = {
33      "commit_timestamp(commit)" = "commit.author().timestamp()";
34    };
35  };
36}