summaryrefslogtreecommitdiff
path: root/home/home-minimal.nix
diff options
context:
space:
mode:
Diffstat (limited to 'home/home-minimal.nix')
-rw-r--r--home/home-minimal.nix117
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";
+ };
+ };
+
+}