From 4ff2ddecf50bf30c28d622e7063024d735492d32 Mon Sep 17 00:00:00 2001 From: janis Date: Tue, 28 Jul 2026 16:56:47 +0200 Subject: [PATCH] reorder packages --- home/common.nix | 26 +++-- home/desktop-apps.nix | 2 + home/emacs.nix | 3 + home/sway.nix | 231 ++++++++++++++++++++++-------------------- home/theme.nix | 43 ++++---- home/zsh.nix | 6 ++ system/core.nix | 40 ++++++++ 7 files changed, 209 insertions(+), 142 deletions(-) diff --git a/home/common.nix b/home/common.nix index 4fae381..33daefd 100644 --- a/home/common.nix +++ b/home/common.nix @@ -34,28 +34,26 @@ in { }; packages = with pkgs; [ - # Add your global packages here + # see also: system/core.nix + + # keygen duralumin duralumin-keygen + + # terminal utilities + gh + yazi ranger neovim - bottom - git - wget - curl - tree - htop - ripgrep - killall - xdg-utils - file - gh + + nix-index + + imagemagick # for running wayland apps over ssh waypipe - blender - + # my own screenshot utility screenshot ]; }; diff --git a/home/desktop-apps.nix b/home/desktop-apps.nix index d93ab3c..f4afe38 100644 --- a/home/desktop-apps.nix +++ b/home/desktop-apps.nix @@ -28,6 +28,8 @@ virt-manager foliate + blender + # GUI File Manager nemo-with-extensions ]; diff --git a/home/emacs.nix b/home/emacs.nix index f293690..06838ca 100644 --- a/home/emacs.nix +++ b/home/emacs.nix @@ -50,6 +50,9 @@ in { hunspellDicts.de-de hunspellDicts.da-dk + # English word lists for spell checking + scowl + # jinx from emacsPackages emacsPackages.jinx diff --git a/home/sway.nix b/home/sway.nix index 3e66e3e..c0e740f 100644 --- a/home/sway.nix +++ b/home/sway.nix @@ -50,136 +50,145 @@ in { "*".scale = "${lib.strings.floatToString super-config.desktop_scale}"; }// super-config.extraOutputConfig; - startup = [ - { - always = true; - command = "${pkgs.gammastep}/bin/gammastep -l 54:10 -t 6500k:4500k"; - } - # { - # always = true; - # command = "systemctl --user restart libinput-gestures.service"; - # } - # { - # always = true; - # command = "systemctl --user start wpaperd.service"; - # } - ]; + startup = [ + { + command = "dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"; + } + { + command = "gesttings set org.gnome.desktop.interface color-scheme 'prefer-dark'"; + } + { + command = "gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita-dark'"; + } + { + always = true; + command = "${pkgs.gammastep}/bin/gammastep -l 54:10 -t 6500k:4500k"; + } + # { + # always = true; + # command = "systemctl --user restart libinput-gestures.service"; + # } + # { + # always = true; + # command = "systemctl --user start wpaperd.service"; + # } + ]; - gaps = { - inner = 8; - }; + gaps = { + inner = 8; + }; - bars = [{ - command = "${pkgs.waybar}/bin/waybar"; - }]; + bars = [{ + command = "${pkgs.waybar}/bin/waybar"; + }]; - window = { - border = 3; - titlebar = false; - }; + window = { + border = 3; + titlebar = false; + }; - input = { - "type:pointer" = { - pointer_accel = "-1"; - }; + input = { + "type:pointer" = { + pointer_accel = "-1"; + }; - "type:keyboard" = { - xkb_layout = "gb,dk"; - xkb_options = - "caps:escape,grp:menu_toggle,grp:rctrl_toggle"; - repeat_delay = "250"; - repeat_rate = "25"; - }; + "type:keyboard" = { + xkb_layout = "gb,dk"; + xkb_options = + "caps:escape,grp:menu_toggle,grp:rctrl_toggle"; + repeat_delay = "250"; + repeat_rate = "25"; + }; - "type:touchpad" = { - natural_scroll = "enabled"; - tap = "enabled"; - tap_button_map = "lrm"; - pointer_accel = "0"; - }; - }; + "type:touchpad" = { + natural_scroll = "enabled"; + tap = "enabled"; + tap_button_map = "lrm"; + pointer_accel = "0"; + }; + }; - keybindings = with pkgs; { - "Print" = "exec screenshot"; - "${mod}+Print" = "exec screenshot --area"; - "${mod}+Shift+Print" = "exec screenshot --current-window"; + keybindings = with pkgs; { + "Print" = "exec screenshot"; + "${mod}+Print" = "exec screenshot --area"; + "${mod}+Shift+Print" = "exec screenshot --current-window"; - "XF86AudioRaiseVolume" = "exec ${alsa-utils}/bin/amixer set Master 5%+"; - "XF86AudioLowerVolume" = "exec ${alsa-utils}/bin/amixer set Master 5%-"; - "XF86AudioMute" = "exec ${wireplumber}/bin/wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; - "XF86AudioMicMute" = "exec ${wireplumber}/bin/wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; + "XF86AudioRaiseVolume" = "exec ${alsa-utils}/bin/amixer set Master 5%+"; + "XF86AudioLowerVolume" = "exec ${alsa-utils}/bin/amixer set Master 5%-"; + "XF86AudioMute" = "exec ${wireplumber}/bin/wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; + "XF86AudioMicMute" = "exec ${wireplumber}/bin/wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; - "XF86AudioPlay" = "mpc toggle"; - "XF86AudioNext" = "mpc next"; - "XF86AudioPrev" = "mpc prev"; + "XF86AudioPlay" = "mpc toggle"; + "XF86AudioNext" = "mpc next"; + "XF86AudioPrev" = "mpc prev"; - "XF86MonBrightnessUp" = "exec ${brightnessctl}/bin/brightnessctl set +5%"; - "XF86MonBrightnessDown" = "exec ${brightnessctl}/bin/brightnessctl set 5%-"; + "XF86MonBrightnessUp" = "exec ${brightnessctl}/bin/brightnessctl set +5%"; + "XF86MonBrightnessDown" = "exec ${brightnessctl}/bin/brightnessctl set 5%-"; - "${mod}+Shift+Return" = "exec ${alacritty}/bin/alacritty"; - "${mod}+q" = "kill"; - "${mod}+p" = "exec ${launcher}"; - "${mod}+Shift+e" = "exec ${pkgs.emacs}/bin/emacsclient -c -a ''"; - "${mod}+Shift+b" = "exec ${pkgs.firefox}/bin/firefox"; - "${mod}+Shift+c" = "reload"; - "${mod}+Shift+q" = "exec ${pkgs.sway}/bin/swaymsg exit"; + "${mod}+Shift+Return" = "exec ${alacritty}/bin/alacritty"; + "${mod}+q" = "kill"; + "${mod}+p" = "exec ${launcher}"; + "${mod}+Shift+e" = "exec ${pkgs.emacs}/bin/emacsclient -c -a ''"; + "${mod}+Shift+b" = "exec ${pkgs.firefox}/bin/firefox"; + "${mod}+Shift+c" = "reload"; + "${mod}+Shift+q" = "exec ${pkgs.sway}/bin/swaymsg exit"; - "${mod}+${left}" = "focus left"; - "${mod}+${right}" = "focus right"; - "${mod}+${up}" = "focus up"; - "${mod}+${down}" = "focus down"; + "${mod}+${left}" = "focus left"; + "${mod}+${right}" = "focus right"; + "${mod}+${up}" = "focus up"; + "${mod}+${down}" = "focus down"; - "${mod}+Shift+${left}" = "move left"; - "${mod}+Shift+${right}" = "move right"; - "${mod}+Shift+${up}" = "move up"; - "${mod}+Shift+${down}" = "move down"; + "${mod}+Shift+${left}" = "move left"; + "${mod}+Shift+${right}" = "move right"; + "${mod}+Shift+${up}" = "move up"; + "${mod}+Shift+${down}" = "move down"; - "${mod}+Ctrl+${left}" = "move workspace to output left"; - "${mod}+Ctrl+${right}" = "move workspace to output right"; - "${mod}+tab" = "workspace back_and_forth"; + "${mod}+Ctrl+${left}" = "move workspace to output left"; + "${mod}+Ctrl+${right}" = "move workspace to output right"; + "${mod}+tab" = "workspace back_and_forth"; - "${mod}+b" = "splith"; - "${mod}+v" = "splitv"; + "${mod}+b" = "splith"; + "${mod}+v" = "splitv"; - "${mod}+s" = "layout stacking"; - "${mod}+w" = "layout tabbed"; - "${mod}+e" = "layout toggle split"; + "${mod}+s" = "layout stacking"; + "${mod}+w" = "layout tabbed"; + "${mod}+e" = "layout toggle split"; - "${mod}+Shift+space" = "floating toggle"; - "${mod}+space" = "focus mode_toggle"; - "${mod}+Shift+f" = "fullscreen"; + "${mod}+Shift+space" = "floating toggle"; + "${mod}+space" = "focus mode_toggle"; + "${mod}+Shift+f" = "fullscreen"; - } // lib.attrsets.mergeAttrsList (map - (n: let workspace = toString n; in { - "${mod}+${workspace}" = "workspace ${workspace}"; - "${mod}+Shift+${workspace}" = "move container to workspace ${workspace}"; - }) - [1 2 3 4 5 6 7 8 9 0] - ); + } // lib.attrsets.mergeAttrsList (map + (n: let workspace = toString n; in { + "${mod}+${workspace}" = "workspace ${workspace}"; + "${mod}+Shift+${workspace}" = "move container to workspace ${workspace}"; + }) + [1 2 3 4 5 6 7 8 9 0] + ); - colors = { - focused = { - background = "#A7C080"; - text = "#272E33"; - indicator = "#A7C080"; - border = "#A7C080"; - childBorder = "#A7C080"; - }; - unfocused = { - background = "#9DA9A0"; - text = "#272E33"; - indicator = "#9DA9A0"; - border = "#9DA9A0"; - childBorder = "#9DA9A0"; - }; - urgent = { - background = "#E67E80"; - text = "#272E33"; - indicator = "#E67E80"; - border = "#E67E80"; - childBorder = "#E67E80"; - }; - }; + colors = { + focused = { + background = "#A7C080"; + text = "#272E33"; + indicator = "#A7C080"; + border = "#A7C080"; + childBorder = "#A7C080"; + }; + unfocused = { + background = "#9DA9A0"; + text = "#272E33"; + indicator = "#9DA9A0"; + border = "#9DA9A0"; + childBorder = "#9DA9A0"; + }; + urgent = { + background = "#E67E80"; + text = "#272E33"; + indicator = "#E67E80"; + border = "#E67E80"; + childBorder = "#E67E80"; + }; + }; }; }; }; diff --git a/home/theme.nix b/home/theme.nix index 8438e51..f5c7988 100644 --- a/home/theme.nix +++ b/home/theme.nix @@ -24,14 +24,20 @@ # GTK Setup gtk = { enable = true; + # theme = { + # name = "catppuccin-mocha-standard-blue-dark"; + # package = pkgs.catppuccin-gtk.override { + # accents = [ "blue" ]; + # size = "standard"; + # variant = "mocha"; + # }; + # }; + theme = { - name = "catppuccin-mocha-standard-blue-dark"; - package = pkgs.catppuccin-gtk.override { - accents = [ "blue" ]; - size = "standard"; - variant = "mocha"; - }; + name = "Adwaita-dark"; + package = pkgs.gnome-themes-extra; }; + iconTheme = { name = "Papirus-Dark"; package = pkgs.catppuccin-papirus-folders.override { @@ -39,14 +45,19 @@ accent = "blue"; }; }; - cursorTheme = { - name = "catppuccin-mocha-lavender-cursors"; - package = pkgs.catppuccin-cursors.mochaLavender; + # cursorTheme = { + # name = "catppuccin-mocha-lavender-cursors"; + # package = pkgs.catppuccin-cursors.mochaLavender; + # }; + + gtk3.extraConfig = { + gtk-application-prefer-dark-theme = lib.mkIf (super-config.darkMode == true) 1; }; - gtk3 = { - extraConfig.gtk-application-prefer-dark-theme = super-config.darkMode == true; + gtk4.extraConfig = { + gtk-application-prefer-dark-theme = lib.mkIf (super-config.darkMode == true) 1; }; }; + dconf.settings = { "org/gtk/settings/file-chooser" = { sort-directories-first = true; @@ -54,7 +65,7 @@ # GTK4 Setup "org/gnome/desktop/interface" = { - gtk-theme = "catppuccin-mocha-standard-blue-dark"; + # gtk-theme = "catppuccin-mocha-standard-blue-dark"; color-scheme = lib.mkIf (super-config.darkMode == true) "prefer-dark"; }; }; @@ -88,13 +99,11 @@ qt = { enable = true; - platformTheme.name = "qtct"; - style = { - name = "kvantum"; - }; + platformTheme.name = "gtk"; + style.name = "adwaita-dark"; }; systemd.user.sessionVariables = { - QT_STYLE_OVERRIDE = "kvantum"; + QT_STYLE_OVERRIDE = "adwaita-dark"; }; } diff --git a/home/zsh.nix b/home/zsh.nix index 39dc5c2..66ac932 100644 --- a/home/zsh.nix +++ b/home/zsh.nix @@ -3,6 +3,12 @@ let aliases = import ../data/zsh-aliases.nix {}; in { home.packages = with pkgs; [ pure-prompt ]; + + programs.zoxide = { + enable = true; + enableZshIntegration = true; + }; + programs.zsh = { enable = true; enableCompletion = true; diff --git a/system/core.nix b/system/core.nix index 039f28a..18cbc5f 100644 --- a/system/core.nix +++ b/system/core.nix @@ -4,10 +4,50 @@ zsh wget curl + rsync git vim + jq + bat + ripgrep + ripgrep-all + zoxide + file + fd + tree + xdg-utils + # nixos util + nh + + # compression + unzip + zip + zstd + + # stats and monitoring + fastfetch + pciutils + usbutils + lsof + lm_sensors + + # network tools + nmap + tcpdump + doggo + inetutils + iproute2 + whois + + # documentation + man-pages + man-db + + # system monitoring htop + bottom + killall linux-firmware linuxHeaders