[WIP] Refactor nix config
This commit is contained in:
88
newnix/modules/home/git.nix
Normal file
88
newnix/modules/home/git.nix
Normal file
@@ -0,0 +1,88 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.git = {
|
||||
enable = true;
|
||||
settings = {
|
||||
alias = {
|
||||
st = "status";
|
||||
ci = "commit";
|
||||
co = "checkout";
|
||||
br = "branch";
|
||||
pl = "pull";
|
||||
ps = "push";
|
||||
sw = "switch";
|
||||
mno =" merge --no-ff";
|
||||
lg = "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%C(bold blue)<%an>%Creset' --abbrev-commit";
|
||||
cleanup = "!git fetch --prune && git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -D";
|
||||
};
|
||||
|
||||
column.ui = "auto";
|
||||
branch.sort = "-committerdate";
|
||||
tag.sort = "version:refname";
|
||||
diff = {
|
||||
algorithm = "histogram";
|
||||
colorMoved = "plain";
|
||||
mnemonicPrefix = "true";
|
||||
renames = "true";
|
||||
};
|
||||
pull.rebase = "true";
|
||||
push = {
|
||||
default = "simple";
|
||||
autoSetupRemote = "true";
|
||||
followTags = "true";
|
||||
};
|
||||
fetch = {
|
||||
prune = "true";
|
||||
pruneTags = "true";
|
||||
all = "true";
|
||||
};
|
||||
help.autocorrect = "prompt";
|
||||
commit.verbose = "true";
|
||||
rerere = {
|
||||
enabled = "true";
|
||||
autoupdate = "true";
|
||||
};
|
||||
rebase = {
|
||||
autoSquas = "true";
|
||||
autoStash = "true";
|
||||
updateRefs = "true";
|
||||
};
|
||||
merge.conflictstyle = "zdiff3";
|
||||
core.editor = "nvim";
|
||||
init.defaultBranch = "main";
|
||||
};
|
||||
|
||||
ignores = [
|
||||
".direnv/"
|
||||
".envrc"
|
||||
];
|
||||
};
|
||||
|
||||
programs.difftastic = {
|
||||
enable = true;
|
||||
git.enable = true;
|
||||
};
|
||||
|
||||
programs.lazygit = {
|
||||
enable = true;
|
||||
settings = {
|
||||
theme.lightTheme = "true";
|
||||
git = {
|
||||
log = {
|
||||
format = "%C(yellow)%h%Creset %C(bold blue)<%an>%Creset %s %Cgreen(%cr)%Creset";
|
||||
graph = "true";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs.jujutsu = {
|
||||
enable = true;
|
||||
settings = {
|
||||
aliases = {
|
||||
tug = ["bookmark" "move" "--from" "heads(::@- & bookmarks())" "--to" "@-"];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user