From 8a9b1f252904a3b3dc545b970f2cad01b791df51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20D=C3=B6nszelmann?= Date: Tue, 17 Sep 2024 10:10:18 +0200 Subject: [PATCH] add icecube and git config --- .gitignore | 1 + flake.nix | 3 +++ hosts/icecube/home.nix | 12 ++++++++++++ hosts/kili/home.nix | 13 +++++++------ hosts/ori/home.nix | 19 ++----------------- programs/git/default.nix | 25 +++++++++++++++++++++++++ programs/nvim/config.lua | 13 +++++++++++++ programs/zsh/default.nix | 14 +++++++------- 8 files changed, 70 insertions(+), 30 deletions(-) create mode 100644 hosts/icecube/home.nix create mode 100644 programs/git/default.nix diff --git a/.gitignore b/.gitignore index 92b2793..064d89b 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .direnv +result/ diff --git a/flake.nix b/flake.nix index 6f27e42..570689b 100644 --- a/flake.nix +++ b/flake.nix @@ -70,6 +70,9 @@ ori = mkHomeConfiguration (import ./hosts/ori/home.nix) { extraSpecialArgs = { inherit inputs; }; }; + icecube = mkHomeConfiguration (import ./hosts/icecube/home.nix) { + extraSpecialArgs = { inherit inputs; }; + }; }; inherit home-manager; diff --git a/hosts/icecube/home.nix b/hosts/icecube/home.nix new file mode 100644 index 0000000..df74e27 --- /dev/null +++ b/hosts/icecube/home.nix @@ -0,0 +1,12 @@ +{ pkgs, ... }: { + home.stateVersion = "24.05"; + home.username = "jonathan"; + home.homeDirectory = "/home/jonathan"; + + imports = [ + ../../programs/nvim + ../../programs/zsh + ../../programs/tmux + ../../programs/git + ]; +} diff --git a/hosts/kili/home.nix b/hosts/kili/home.nix index bc775ff..cc56a8d 100644 --- a/hosts/kili/home.nix +++ b/hosts/kili/home.nix @@ -9,16 +9,17 @@ ../../programs/kanata ../../programs/kitty ../../programs/tmux + ../../programs/git ]; # use the system-installed version of kitty on arch # something graphics related crashes otherwise programs.kitty.package = pkgs.stdenv.mkDerivation { - name = "kitty"; - src = ./.; - installPhase = '' - mkdir -p $out/bin - echo "#!/usr/bin/env bash\nexec /usr/bin/kitty" > $out/bin/kitty; - ''; + name = "kitty"; + src = ./.; + installPhase = '' + mkdir -p $out/bin + echo "#!/usr/bin/env bash\nexec /usr/bin/kitty" > $out/bin/kitty; + ''; }; } diff --git a/hosts/ori/home.nix b/hosts/ori/home.nix index 5c7945b..5062155 100644 --- a/hosts/ori/home.nix +++ b/hosts/ori/home.nix @@ -2,10 +2,11 @@ home.stateVersion = "24.05"; home.username = "jonathan"; home.homeDirectory = "/home/jonathan"; - imports = [ + imports = [ ../../programs/gnome ../../programs/nvim ../../programs/zsh + ../../programs/git ]; home.packages = with pkgs; [ @@ -41,20 +42,4 @@ programs.firefox = { enable = true; }; services.syncthing = { enable = true; }; - - programs.git = { - enable = true; - extraConfig = { - init.defaultBranch = "main"; - pull.rebase = false; - # merge.tool = "meld"; - # mergetool.meld.cmd = '' - # ${pkgs.meld}/bin/meld "$LOCAL" "$BASE" "$REMOTE" --output "$MERGED" - # ''; - push = { autoSetupRemote = true; }; - }; - aliases = { amend = "commit --amend"; }; - userName = "Jonathan Dönszelmann"; - userEmail = "jonathan@donsz.nl"; - }; } diff --git a/programs/git/default.nix b/programs/git/default.nix new file mode 100644 index 0000000..7015b3b --- /dev/null +++ b/programs/git/default.nix @@ -0,0 +1,25 @@ +_: { + programs.git = { + enable = true; + userEmail = "jonathan@donsz.nl"; + userName = "Jonathan Dönszelmann"; + signing.key = "~/.ssh/id_ed25519.pub"; + signing.signByDefault = true; + + delta.enable = true; + delta.options = { + navigate = true; + light = false; + }; + + extraConfig = { + push.autoSetupRemote = true; + pull.rebase = true; + init.defaultBranch = "main"; + gpg.format = "ssh"; + diff.colorMoved = true; + rerere.enabled = true; + + }; + }; +} diff --git a/programs/nvim/config.lua b/programs/nvim/config.lua index 0c7f518..587b425 100644 --- a/programs/nvim/config.lua +++ b/programs/nvim/config.lua @@ -38,6 +38,11 @@ cmp.setup { completion = cmp.config.window.bordered(), documentation = cmp.config.window.bordered(), }, + view = { + docs = { + auto_open = false + } + }, mapping = cmp.mapping.preset.insert({ [''] = cmp.mapping.scroll_docs(-4), [''] = cmp.mapping.scroll_docs(4), @@ -45,6 +50,14 @@ cmp.setup { [''] = cmp.mapping.abort(), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. [''] = cmp.mapping.confirm({ select = true }), + + [''] = function() + if cmp.visible_docs() then + cmp.close_docs() + else + cmp.open_docs() + end + end }), sources = cmp.config.sources({ { name = 'nvim_lsp' }, diff --git a/programs/zsh/default.nix b/programs/zsh/default.nix index 39becf6..3967b25 100644 --- a/programs/zsh/default.nix +++ b/programs/zsh/default.nix @@ -20,7 +20,7 @@ let "add" = "${pkgs.git}/bin/git add"; "patch" = "${pkgs.git}/bin/git add -p"; "amend" = "${pkgs.git}/bin/git commit --amend"; - "log" = "${pkgs.git}/bin/git log --graph --oneline --format=format:'%C(auto)%h %s%d %C(green)%cr %C(bold blue)<%an>%C(auto)'"; + "log" = "${pkgs.git}/bin/git log --all --graph --decorate"; }; # extracting any compressed format extract = '' @@ -54,12 +54,12 @@ in enableCompletion = true; syntaxHighlighting.enable = true; completionInit = '' - autoload -Uz compinit - if [[ -n ''${ZDOTDIR}/.zcompdump(#qN.mh+24) ]]; then - compinit; - else - compinit -C; - fi; + autoload -Uz compinit + if [[ -n ''${ZDOTDIR}/.zcompdump(#qN.mh+24) ]]; then + compinit; + else + compinit -C; + fi; ''; initExtra = '' source "${pkgs.grml-zsh-config}/etc/zsh/zshrc"