diff options
Diffstat (limited to 'home/modules/profiles/development')
-rw-r--r-- | home/modules/profiles/development/default.nix | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/home/modules/profiles/development/default.nix b/home/modules/profiles/development/default.nix new file mode 100644 index 0000000..d85e796 --- /dev/null +++ b/home/modules/profiles/development/default.nix @@ -0,0 +1,78 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.profiles.development; +in + { + options.profiles.development = { + enable = lib.mkEnableOption + "A profile that enables the system to be used for developing programs"; + }; + + config = lib.mkIf cfg.enable { + programs.gh.enable = true; + programs.git = { + enable = true; + package = pkgs.gitFull; + + userName = "Zack A"; + userEmail = "hi@boopy.dev"; + + signing = { + key = null; + signByDefault = true; + }; + + aliases = { + graph = + "log --graph --abbrev-commit --decorate --date=relative --format=format:'%C(bold cyan)%h%C(reset) - %C(green)(%ar)%C(reset)%C(bold yellow)%d%C(reset)%n %C(white)%s%C(reset) %C(dim white)- %an%C(reset)' --all"; + co = "checkout"; + br = "branch"; + st = "status"; + ps = "push"; + pl = "pull"; + root = "rev-parse --show-toplevel"; + }; + + extraConfig = { + init.defaultBranch = "main"; + pull.rebase = true; + }; + + ignores = [ + # IntelliJ files and folders + ".idea/" + "*.iml" + # backupfiles and shadow copies done by editors + "*~" + "\\#*\\#" + ".#*" + # Elixir language server + "/.elixir_ls" + # MyPy Cache + ".mypy_cache" + # Visual Studio Code project configuration + "/.vscode" + # Result folder for nix builds + "result" + "result-*" + # direnv caches + ".direnv/" + # emacs/python stuff + "flycheck_*.py" + ]; + }; + + home.packages = [ pkgs.ripgrep pkgs.rust-analyzer pkgs.gnupg ]; + + services.gpg-agent = { + enable = true; + enableExtraSocket = true; + defaultCacheTtl = 34560000; + defaultCacheTtlSsh = 34560000; + maxCacheTtl = 34560000; + maxCacheTtlSsh = 34560000; + }; + }; + } + |