mirror of
https://git.sr.ht/~neverness/ultima
synced 2025-01-09 09:03:51 +00:00
72 lines
1.5 KiB
Nix
72 lines
1.5 KiB
Nix
{ pkgs, lib, config, flakeDir, True, False, ... }:
|
|
|
|
with lib;
|
|
|
|
let
|
|
cfg = config.module.programs.cli.git;
|
|
never = "git@git.sr.ht:~neverness";
|
|
interval = 300;
|
|
repo = {
|
|
ultima = "/persist/flake";
|
|
wallpapers = "/persist/wallpapers";
|
|
readme = "/persist/readme";
|
|
niXtended = "/persist/niXtended";
|
|
};
|
|
in {
|
|
options = {
|
|
module.programs.cli.git = {
|
|
enable = mkEnableOption "";
|
|
path = mkOption {
|
|
default = null;
|
|
type = types.str;
|
|
};
|
|
name = mkOption {
|
|
default = null;
|
|
type = types.str;
|
|
};
|
|
email = mkOption {
|
|
default = null;
|
|
type = types.str;
|
|
};
|
|
};
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
programs.git = True // {
|
|
package = pkgs.gitMinimal;
|
|
userName = cfg.name;
|
|
userEmail = cfg.email;
|
|
extraConfig = {
|
|
color.ui = true;
|
|
init.defaultBranch = "main";
|
|
safe.directory = flakeDir;
|
|
};
|
|
};
|
|
services.git-sync = False // {
|
|
repositories = {
|
|
"ultima" = {
|
|
inherit interval;
|
|
uri = "${never}/ultima";
|
|
path = repo.ultima;
|
|
};
|
|
"wallpapers" = {
|
|
inherit interval;
|
|
uri = "${never}/wallpapers";
|
|
path = repo.wallpapers;
|
|
};
|
|
"readme" = {
|
|
inherit interval;
|
|
uri = "${never}/readme";
|
|
path = repo.readme;
|
|
};
|
|
"niXtended" = {
|
|
inherit interval;
|
|
uri = "${never}/niXtended";
|
|
path = repo.niXtended;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|
|
|