aboutsummaryrefslogtreecommitdiff
path: root/home/git.nix
diff options
context:
space:
mode:
Diffstat (limited to 'home/git.nix')
-rw-r--r--home/git.nix80
1 files changed, 0 insertions, 80 deletions
diff --git a/home/git.nix b/home/git.nix
deleted file mode 100644
index 4fbbbb9..0000000
--- a/home/git.nix
+++ /dev/null
@@ -1,80 +0,0 @@
-{ lib, pkgs, config, ... }:
-let
- sshPub = builtins.fromTOML (
- builtins.readFile ../configs/ssh-pubkeys.toml
- );
-in
-{
- home.file.".ssh/allowed_signers".text = lib.concatMapStrings (x: "franck@fcuny.net ${x}\n") (with sshPub; [ aptos work git ykey-laptop op ]);
-
- programs.git = {
- enable = true;
- userName = "Franck Cuny";
- userEmail = "franck@fcuny.net";
-
- signing = {
- key = "key::${sshPub.op}";
- signByDefault = true;
- };
-
- aliases = {
- amend = "commit --amend";
- ll = "log --pretty=\"format:%h %G? %aN %s\"";
- };
-
- extraConfig = {
- core.whitespace = "trailing-space,space-before-tab";
- color.ui = "true";
-
- gpg.format = "ssh";
- gpg.ssh.allowedSignersFile = "~/.ssh/allowed_signers";
- gpg.ssh.program = "/Applications/1Password.app/Contents/MacOS/op-ssh-sign";
-
- # abort if the remote branch does not match the local one
- push.default = "simple";
-
- # https://adamj.eu/tech/2024/01/18/git-improve-diff-histogram/
- diff.algorithm = "histogram";
-
- init.defaultBranch = "main";
-
- pull.rebase = true;
- rebase = {
- # Automatically create a temporary stash entry before the
- # operation begins, and apply it after the operation ends.
- autoStash = true;
- # Print a warning if some commits are removed
- missingCommitsCheck = "warn";
- };
-
- branch.autosetuprebase = "remote";
- branch.sort = "authordate";
-
- commit.template = "${config.xdg.dataHome}/git/commit.template";
- };
-
- ignores = [
- "*~"
- ".direnv"
- "__pycache__"
- ];
- };
-
- xdg.dataFile."git/commit.template".source = pkgs.writeText "commit.template" ''
-
- # (If applied, this commit will...) <subject>
-
- # Explain why this change is being made
-
- # --- COMMIT END ---
- # Remember to
- # Use the imperative mood, present tense: `change' not `changed' nor `changes'
- # Do not end the subject line with a period
- # Use the body to explain what and why vs. how
- # Can use multiple lines with "-" for bullet points in body
-'';
-
- home.packages = with pkgs; [
- gitAndTools.pre-commit
- ];
-}