aboutsummaryrefslogtreecommitdiffstats
path: root/home-manager/git
diff options
context:
space:
mode:
authorene <ene@sils.li>2023-02-17 16:51:44 +0100
committerene <ene@sils.li>2023-02-17 16:51:44 +0100
commit32d4278611a8e9a88ca54a27a072985087015039 (patch)
tree3f3d73e246be7ba75d1b368e50dcbc37c8429609 /home-manager/git
parentFeat(impermanence): Add full stack tempfs (diff)
downloadnixos-config-32d4278611a8e9a88ca54a27a072985087015039.zip
Feat(home-manager): Move configs in their own directory
Diffstat (limited to 'home-manager/git')
-rw-r--r--home-manager/git/default.nix141
1 files changed, 0 insertions, 141 deletions
diff --git a/home-manager/git/default.nix b/home-manager/git/default.nix
deleted file mode 100644
index 667bb206..00000000
--- a/home-manager/git/default.nix
+++ /dev/null
@@ -1,141 +0,0 @@
-{
- config,
- pkgs,
- ...
-}: let
- gitTemplateFile =
- pkgs.writeText "git_template.git"
- ''
- # Title: Summary, imperative, start upper case, don't end with a period
- # If applied, this commit will <your Title>
-
- # Body: Explain *what* and *why* (not *how*).
-
-
- # BREAKING CHANGE: <description>
- # Fixes: #
- # Refs: #
- # Co-authored-by: <name> <email>
-
-
-
- # Convention Commits (https://www.conventionalcommits.org/en/v1.0.0/):
- # feat: [Features] -> MINOR version bump
- # A new feature
- #
- # fix: [Bug Fixes] -> PATCH version bump
- # A bug fix
- #
- # append '!' after the type/scope: [Breaking Change] -> MAJOR version bump
- # A breaking API change
- #
- # docs: [Documentation]
- # Documentation only changes
- #
- # style: [Styles]
- # Changes that do not affect the meaning of the code
- # (white-space, formatting, missing semi-colons, etc)
- #
- # refactor: [Code Refactoring]
- # A code change that neither fixes a bug nor adds a feature
- #
- # perf: [Performance Improvements] -> PATCH version bump
- # A code change that improves performance
- #
- # test: [Tests]
- # Adding missing tests or correcting existing tests
- #
- # build: [Builds] -> PATCH version bump
- # Changes that affect the build system or external dependencies
- # (example scopes: gulp, broccoli, npm)
- #
- # ci: [Continuous Integrations]
- # Changes to our CI configuration files and scripts
- # (example scopes: Travis, Circle, BrowserStack, SauceLabs)
- #
- # chore: [Chores]
- # Other changes that don't modify src or test files
- #
- # reverts: [Reverts]
- # Reverts a previous commit
-
- # How to Write a Git Commit Message:
- # [https://chris.beams.io/posts/git-commit/] -> https://cbea.ms/git-commit/
- #
- # 1. Separate subject from body with a blank line
- # 2. Limit the subject line to 50 characters
- # 3. Capitalize the subject line
- # 4. Do not end the subject line with a period
- # 5. Use the imperative mood in the subject line
- # 6. Wrap the body at 72 characters
- # 7. Use the body to explain *what* and *why* vs. *how*
- '';
-
- gitConfig = {
- init = {
- defaultBranch = "prime";
- };
- credential = {
- helper = "cache --timeout 43200";
- };
- user = {
- email = "ene@sils.li";
- name = "ene";
- };
- help = {
- autocorrect = 5;
- };
- commit = {
- template = "${gitTemplateFile}";
- };
- };
-in {
- programs.git = {
- enable = true;
- #package = pkgs.gitAndTools.gitFull; # TODO for git send-email support
- aliases = {
- st = "status";
-
- ## Logging:
- ls = "log --max-count=10 --color --format=format:'%C(bold red)%h%C(reset) %C(dim bold blue)%s%C(reset) %C(dim white)[%aN]' ";
-
- # https://stackoverflow.com/a/61487052
- lg = "lg1";
- lg1 = "lg1-specific --all";
- lg2 = "lg2-specific --all";
- lg3 = "lg3-specific --all";
-
- lg1-specific = "log --graph --abbrev-commit --decorate \
- --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(auto)%d%C(reset)'";
-
- lg2-specific = "log --graph --abbrev-commit --decorate \
- --format=format:'%C(bold blue)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(auto)%d%C(reset)%n'' %C(white)%s%C(reset) %C(dim white)- %an%C(reset)'";
-
- lg3-specific = "log --graph --abbrev-commit --decorate \
- --format=format:'%C(bold blue)%h%C(reset)\
- - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)\
- %C(bold cyan)(committed: %cD)%C(reset) %C(auto)%d%C(reset)%n\
- '' %C(white)%s%C(reset)%n'' \
- %C(dim white)- %an <%ae> %C(reset) %C(dim white)(committer: %cn <%ce>)%C(reset)'";
- };
- extraConfig = gitConfig;
- delta = {
- enable = true;
- options = {
- decorations = {
- commit-decoration-style = "bold yellow box ul";
- file-decoration-style = "none";
- file-style = "bold yellow ul";
- };
- features = "decorations";
- whitespace-error-style = "22 reverse";
- };
- };
- signing = {
- key = null; #let gpg2 decide, based on the author
- signByDefault = true;
- };
- };
-}
-# vim: ts=2
-