1{
2 lib,
3 config,
4 pkgs,
5 ...
6}: {
7 options.myHome.programs.git.enable = lib.mkEnableOption "git version control";
8
9 config = lib.mkIf config.myHome.programs.git.enable {
10 programs.git = {
11 enable = true;
12 signing = {
13 format = "ssh";
14 key = "~/.ssh/id_ed25519";
15 signByDefault = true;
16 };
17 settings = {
18 user = {
19 name = "ayla";
20 email = "ayla-git.barcode041@silomails.com";
21 };
22 color.ui = true;
23 github.user = "ayla6";
24 init = {
25 defaultBranch = "main";
26 };
27 push = {
28 autoSetupRemote = true;
29 default = "current";
30 };
31 credential = {
32 helper = lib.getExe pkgs.git-credential-manager;
33 credentialStore =
34 if config.myHome.desktop.enable
35 then "secretservice"
36 else "pgp";
37 "https://git.aylac.top".provider = "generic";
38 };
39 };
40 };
41 };
42}