Migrate .gitconfig to home-manager
This commit is contained in:
@@ -70,6 +70,7 @@
|
|||||||
inputs.fw_nix.nixosModules.identities
|
inputs.fw_nix.nixosModules.identities
|
||||||
vscode-server.homeModules.default
|
vscode-server.homeModules.default
|
||||||
self.homeModules.linux-headless
|
self.homeModules.linux-headless
|
||||||
|
./hosts/common/home.nix
|
||||||
./hosts/deimos/home.nix
|
./hosts/deimos/home.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
@@ -82,6 +83,7 @@
|
|||||||
modules = [
|
modules = [
|
||||||
inputs.fw_nix.nixosModules.identities
|
inputs.fw_nix.nixosModules.identities
|
||||||
self.homeModules.mac-portable
|
self.homeModules.mac-portable
|
||||||
|
./hosts/common/home.nix
|
||||||
./hosts/mars/home.nix
|
./hosts/mars/home.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|||||||
22
hosts/common/home.nix
Normal file
22
hosts/common/home.nix
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
identities,
|
||||||
|
primaryUser,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
user = identities.users.${primaryUser};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
programs.git = {
|
||||||
|
signing = {
|
||||||
|
# Will be available on remote machines via SSH agent (Secretive).
|
||||||
|
key = "key::" + user.sign."sign@mars".key;
|
||||||
|
signByDefault = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
settings.user = {
|
||||||
|
name = "Artem Sheremet";
|
||||||
|
inherit (user) email;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
[color]
|
|
||||||
ui = auto
|
|
||||||
[alias]
|
|
||||||
co = checkout
|
|
||||||
st = status
|
|
||||||
di = diff -w --no-prefix
|
|
||||||
df = diff
|
|
||||||
dc = diff --cached
|
|
||||||
ci = commit
|
|
||||||
br = branch
|
|
||||||
lg = log -p --decorate=full --show-signature
|
|
||||||
lol = log --graph --decorate=full --pretty=oneline --abbrev-commit
|
|
||||||
lola = log --graph --decorate=full --pretty=oneline --abbrev-commit --all
|
|
||||||
ls = ls-files
|
|
||||||
# Show files ignored by git:
|
|
||||||
ign = ls-files -o -i --exclude-standard
|
|
||||||
[apply]
|
|
||||||
whitespace = nowarn
|
|
||||||
[push]
|
|
||||||
default = tracking
|
|
||||||
[rebase]
|
|
||||||
stat = yes
|
|
||||||
[format]
|
|
||||||
pretty = fuller
|
|
||||||
[fetch]
|
|
||||||
prune = yes
|
|
||||||
[credential "https://source.developers.google.com"]
|
|
||||||
helper = gcloud.sh
|
|
||||||
[core]
|
|
||||||
autocrlf = input
|
|
||||||
[branch]
|
|
||||||
# 0 times I wanted this when doing "git checkout".
|
|
||||||
autoSetupMerge = false
|
|
||||||
# Set up new branches in a way that "git pull" does a rebase by default.
|
|
||||||
autoSetupRebase = always
|
|
||||||
|
|
||||||
# Commit signing, currently using ssh@mars -- to be switched to sign@mars after 2026-05-15
|
|
||||||
[gpg]
|
|
||||||
format = ssh
|
|
||||||
[commit]
|
|
||||||
gpgsign = true
|
|
||||||
[user]
|
|
||||||
signingkey = key::ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBNwSX/Ib6kNzgRKqWfcb3HsAQQo++Gt9KeXSvP6NDk6YQPjDsi+//IiBovgLjQ34El+x8l8y3aYhfIGlCyX7aOM= sign@mars
|
|
||||||
name = Artem Sheremet
|
|
||||||
email = dot.doom@gmail.com
|
|
||||||
@@ -19,6 +19,44 @@
|
|||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
programs.git = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
alias = {
|
||||||
|
co = "checkout";
|
||||||
|
st = "status";
|
||||||
|
di = "diff -w --no-prefix";
|
||||||
|
df = "diff";
|
||||||
|
dc = "diff --cached";
|
||||||
|
ci = "commit";
|
||||||
|
br = "branch";
|
||||||
|
lg = "log -p --decorate=full --show-signature";
|
||||||
|
lol = "log --graph --decorate=full --pretty=oneline --abbrev-commit";
|
||||||
|
lola = "log --graph --decorate=full --pretty=oneline --abbrev-commit --all";
|
||||||
|
ls = "ls-files";
|
||||||
|
# Show files ignored by git:
|
||||||
|
ign = "ls-files -o -i --exclude-standard";
|
||||||
|
};
|
||||||
|
|
||||||
|
color.ui = "auto";
|
||||||
|
apply.whitespace = "nowarn";
|
||||||
|
push.default = "tracking";
|
||||||
|
rebase.stat = "yes";
|
||||||
|
format.pretty = "fuller";
|
||||||
|
fetch.prune = "yes";
|
||||||
|
core.autocrlf = "input";
|
||||||
|
branch = {
|
||||||
|
# 0 times I wanted this when doing "git checkout".
|
||||||
|
autoSetupMerge = false;
|
||||||
|
# Set up new branches in a way that "git pull" does a rebase by default.
|
||||||
|
autoSetupRebase = "always";
|
||||||
|
};
|
||||||
|
gpg.format = "ssh";
|
||||||
|
credential."https://source.developers.google.com".helper = "gcloud.sh";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
initContent = ''
|
initContent = ''
|
||||||
|
|||||||
Reference in New Issue
Block a user