diff options
Diffstat (limited to 'home/home-minimal.nix')
| -rw-r--r-- | home/home-minimal.nix | 117 | 
1 files changed, 117 insertions, 0 deletions
diff --git a/home/home-minimal.nix b/home/home-minimal.nix new file mode 100644 index 0000000..a2031dd --- /dev/null +++ b/home/home-minimal.nix @@ -0,0 +1,117 @@ +{ config, lib, pkgs, inputs, ... }: + +{ +  # Let Home Manager install and manage itself. +  programs.home-manager.enable = true; + +  imports = [ +    ./packages-minimal.nix +  ]; + +  home.keyboard.options = [ "caps:escape" ]; + +  programs.bash = { +    enable = true; +    historyControl = [ "ignoredups" "ignorespace" ]; +    historyFileSize = 10000; + +    # set shell prompt & tty for the gnu pinentry (otherwise gnupg will crash) +    initExtra = '' +      export GPG_TTY=`tty` +      # this shouldn't be necessary, but apparently nix is broken ... +      NIX_PATH=$HOME/.nix-defexpr/channels''${NIX_PATH:+:}$NIX_PATH +      PS1='\[\033[1;36m\] >>> [\j|\u@\w]\$: \[\033[00m\]' +    ''; + +    shellAliases = { +      ll = "ls -slF"; +    }; +  }; + +  programs.starship = { +    enable = true; +    enableBashIntegration = true; +    enableFishIntegration = true; +    settings = { +      directory.truncation_length = 10; +    }; +  }; + +  programs.fish = { +    enable = true; +    shellAliases = { +      nix-shell = "nix-shell --command fish"; +      le = "exa"; +      ll = "exa -lh --icons"; +      llt = "exa -lh --tree --icons"; +      lt = "exa --tree --icons"; +    }; +    functions = { +      fish_greeting = { +        body = ""; +      }; +    }; +  }; + +  programs.bat = { +    enable = true; +    config.wrap = "never"; +  }; + +  programs.git = { +    enable = true; +    package = pkgs.gitAndTools.gitFull; +    userEmail = "stuebinm@disroot.org"; +    userName = "stuebinm"; + +    signing = { +      # signByDefault = true; +      key = "0x8FBE8AAD32FA12B7"; +    }; + +    extraConfig = { +      log.showSignature = true; +      init.defaultBranch = "main"; +    }; + +    delta = { +      enable = true; +      options = { +        decorations = { +          commit-decoration-style = "bold yellow"; +          file-decoration-style = "bold blue"; +          file-style = "bold yellow"; +        }; +        features = "decorations line-numbers navigate"; +        whitespace-error-style = "22 reverse"; +      }; +    }; +  }; + +  programs.htop = { +    package = pkgs.htop-vim; +    enable = true; +    settings = { +      fields = "0 48 17 18 38 46 47 49 1"; +      sort_key = 46; +      sort_direction = -1; +      hide_kernel_threads = 1; +      hide_userland_threads = 0; +      shadow_other_users = 1; +      show_program_path = 0; +      highlight_base_name = 1; +      find_comm_in_cmdline = 1; +      header_margin = 1; +      show_cpu_usage = 1; +      color_scheme = 5; +      enable_mouse = 1; +      delay = 15; +      header_layout = "two_67_33"; +      column_meters_0 = "AllCPUs Memory Swap"; +      column_meter_modes_0 = "1 1 1"; +      column_meters_1 = "Tasks LoadAverage Uptime NetworkIO"; +      column_meter_modes_1 = "2 2 2 2"; +    }; +  }; + +}  | 
