From bb361f28686d5ca4f2d18682f01d942422c60aa1 Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 20 Oct 2026 08:30:35 +0200 Subject: [PATCH 01/47] convert niri module to nix --- modules/home/programs/emacs.nix | 3 - modules/home/programs/niri.nix | 345 +++++++++++++++++--------------- modules/system/stylix/fonts.nix | 1 + 3 files changed, 189 insertions(+), 160 deletions(-) diff --git a/modules/home/programs/emacs.nix b/modules/home/programs/emacs.nix index f8d6d78..de4a89c 100644 --- a/modules/home/programs/emacs.nix +++ b/modules/home/programs/emacs.nix @@ -7,9 +7,6 @@ extraConfig = '' ;; -*- lexical-binding: t; -*- (setq make-backup-files nil) - - (add-to-list 'default-frame-alist '(font . "JetBrainsMono Nerd Font Mono-14")) - (require 'package) (add-to-list 'package-archives '("melpa-snapshots" diff --git a/modules/home/programs/niri.nix b/modules/home/programs/niri.nix index 1feea0c..498ea75 100644 --- a/modules/home/programs/niri.nix +++ b/modules/home/programs/niri.nix @@ -1,163 +1,194 @@ { ... }: { - flake.homeModules.niri = { + flake.homeModules.niri = { config, lib, ... }: { wayland.windowManager.niri = { enable = true; - extraConfig = '' - prefer-no-csd - hotkey-overlay { - skip-at-startup - } - - environment { - GTK_THEME "adw-gtk3-dark" - XDG_CURRENT_DESKTOP "niri" - XDG_SESSION_TYPE "wayland" - XDG_SESSION_DESKTOP "niri" - QT_QPA_PLATFORM "wayland;xcb" - OZONE_PLATFORM "wayland" - ELECTRON_OZONE_PLATFORM_HINT "auto" - } - cursor { - xcursor-size 24 - xcursor-theme "macOS" - } - input { - keyboard { - xkb { - layout "eu" - } - } - - touchpad { - tap - natural-scroll - - } - - mouse { - accel-speed -0.4 - accel-profile "flat" - } - focus-follows-mouse max-scroll-amount="20%" - - } - - output "PNP(BNQ) BenQ EX2710Q K6R04023019" { - mode "2560x1440@165.002" - scale 1 - transform "normal" - position x=1920 y=0 - } - output "Dell Inc. DELL P2317H 9KFDW6C533DB" { - position x=0 y=0 - } - - output "eDP-1" { - scale 1 - } - - - layout { - gaps 16 - center-focused-column "never" - default-column-width { proportion 0.6; } - focus-ring { - off - } - border { - width 2 - active-color "#ffc87f" - inactive-color "#505050" - } - } - spawn-at-startup "qs" - screenshot-path null - animations {} - window-rule { - geometry-corner-radius 16 - clip-to-geometry true - } - - binds { - Mod+return { spawn-sh "ghostty +new-window"; } - Mod+space { spawn "fuzzel"; } - Mod+e { spawn "nautilus"; } - - XF86AudioRaiseVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; } - XF86AudioLowerVolume allow-when-locked=true { spawn-sh "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; } - XF86AudioMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; } - XF86AudioMicMute allow-when-locked=true { spawn-sh "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; } - - XF86AudioPlay allow-when-locked=true { spawn-sh "playerctl play-pause"; } - XF86AudioStop allow-when-locked=true { spawn-sh "playerctl stop"; } - XF86AudioPrev allow-when-locked=true { spawn-sh "playerctl previous"; } - XF86AudioNext allow-when-locked=true { spawn-sh "playerctl next"; } - - XF86MonBrightnessUp allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "+10%"; } - XF86MonBrightnessDown allow-when-locked=true { spawn "brightnessctl" "--class=backlight" "set" "10%-"; } - - Mod+O repeat=false { toggle-overview; } - Mod+Q repeat=false { close-window; } - - Mod+Left { focus-column-left; } - Mod+Down { focus-window-down; } - Mod+Up { focus-window-up; } - Mod+Right { focus-column-right; } - Mod+H { focus-column-left; } - Mod+J { focus-window-down; } - Mod+K { focus-window-up; } - Mod+L { focus-column-right; } - Mod+Ctrl+Left { move-column-left; } - Mod+Ctrl+Down { move-window-down; } - Mod+Ctrl+Up { move-window-up; } - Mod+Ctrl+Right { move-column-right; } - Mod+Ctrl+H { move-column-left; } - Mod+Ctrl+J { move-window-down; } - Mod+Ctrl+K { move-window-up; } - mod+ctrl+l { move-column-right; } - - Mod+comma { focus-monitor-left; } - Mod+period { focus-monitor-right; } - - Mod+Shift+comma { move-column-to-monitor-left; } - Mod+Shift+period { move-column-to-monitor-right; } - - - Mod+Shift+WheelScrollDown { focus-column-right; } - Mod+Shift+WheelScrollUp { focus-column-left; } - Mod+1 { focus-workspace 1; } - Mod+2 { focus-workspace 2; } - Mod+3 { focus-workspace 3; } - Mod+4 { focus-workspace 4; } - Mod+5 { focus-workspace 5; } - Mod+6 { focus-workspace 6; } - Mod+7 { focus-workspace 7; } - Mod+8 { focus-workspace 8; } - Mod+9 { focus-workspace 9; } - Mod+Shift+1 { move-column-to-workspace 1; } - Mod+Shift+2 { move-column-to-workspace 2; } - Mod+Shift+3 { move-column-to-workspace 3; } - Mod+Shift+4 { move-column-to-workspace 4; } - Mod+Shift+5 { move-column-to-workspace 5; } - Mod+Shift+6 { move-column-to-workspace 6; } - Mod+Shift+7 { move-column-to-workspace 7; } - Mod+Shift+8 { move-column-to-workspace 8; } - Mod+Shift+9 { move-column-to-workspace 9; } - - Mod+BracketLeft { consume-or-expel-window-left; } - Mod+BracketRight { consume-or-expel-window-right; } - Mod+F { maximize-column; } - - Mod+Minus { set-column-width "-10%"; } - Mod+Equal { set-column-width "+10%"; } - - Mod+V { toggle-window-floating; } - Mod+Shift+S { screenshot; } - Alt+Shift+S { screenshot-screen; } - Alt+Ctrl+S { screenshot-window; } - Mod+Shift+q { quit; } - } - ''; + settings = { + prefer-no-csd = { }; + hotkey-overlay.skip-at-startup = { }; + environment = { + XDG_CURRENT_DESKTOP = "niri"; + XDG_SESSION_TYPE = "wayland"; + XDG_SESSION_DESKTOP = "niri"; + }; + cursor = { + xcursor-size = 24; + xcursor-theme = "macOS"; + }; + input = { + keyboard.xkb.layout = "eu"; + touchpad = { + tap = { }; + natural-scroll = { }; + }; + mouse = { + accel-speed = -0.4; + accel-profile = "flat"; + }; + focus-follows-mouse._props.max-scroll-amount = "20%"; + }; + spawn-at-startup = [ "qs" ]; + screenshot-path = null; + animations = { }; + layout = { + gaps = 16; + center-focused-column = "never"; + default-column-width._children = [ { proportion = 0.6; } ]; + focus-ring.off = { }; + border = { + width = 2; + active-color = config.lib.stylix.colors.base0D; + inactive-color = config.lib.stylix.colors.base03; + }; + }; + binds = { + "Mod+Return".spawn-sh = "ghostty +new-window"; + "Mod+space".spawn = [ "fuzzel" ]; + "Mod+e".spawn = [ "nautilus" ]; + "XF86AudioRaiseVolume" = { + _props.allow-when-locked = true; + spawn-sh = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1+ -l 1.0"; + }; + "XF86AudioLowerVolume" = { + _props.allow-when-locked = true; + spawn-sh = "wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.1-"; + }; + "XF86AudioMute" = { + _props.allow-when-locked = true; + spawn-sh = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"; + }; + "XF86AudioMicMute" = { + _props.allow-when-locked = true; + spawn-sh = "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"; + }; + "XF86AudioPlay" = { + _props.allow-when-locked = true; + spawn-sh = "playerctl play-pause"; + }; + "XF86AudioStop" = { + _props.allow-when-locked = true; + spawn-sh = "playerctl stop"; + }; + "XF86AudioPrev" = { + _props.allow-when-locked = true; + spawn-sh = "playerctl previous"; + }; + "XF86AudioNext" = { + _props.allow-when-locked = true; + spawn-sh = "playerctl next"; + }; + "XF86MonBrightnessUp" = { + _props.allow-when-locked = true; + spawn = [ + "brightnessctl" + "--class=backlight" + "set" + "+10%" + ]; + }; + "XF86MonBrightnessDown" = { + _props.allow-when-locked = true; + spawn = [ + "brightnessctl" + "--class=backlight" + "set" + "10%-" + ]; + }; + "Mod+O" = { + _props.repeat = false; + toggle-overview = { }; + }; + "Mod+Q" = { + _props.repeat = false; + close-window = { }; + }; + "Mod+Left".focus-column-left = { }; + "Mod+Down".focus-window-down = { }; + "Mod+Up".focus-window-up = { }; + "Mod+Right".focus-column-right = { }; + "Mod+H".focus-column-left = { }; + "Mod+J".focus-window-down = { }; + "Mod+K".focus-window-up = { }; + "Mod+L".focus-column-right = { }; + "Mod+Ctrl+Left".move-column-left = { }; + "Mod+Ctrl+Down".move-window-down = { }; + "Mod+Ctrl+Up".move-window-up = { }; + "Mod+Ctrl+Right".move-column-right = { }; + "Mod+Ctrl+H".move-column-left = { }; + "Mod+Ctrl+J".move-window-down = { }; + "Mod+Ctrl+K".move-window-up = { }; + "Mod+Ctrl+L".move-column-right = { }; + "Mod+comma".focus-monitor-left = { }; + "Mod+period".focus-monitor-right = { }; + "Mod+Shift+comma".move-column-to-monitor-left = { }; + "Mod+Shift+period".move-column-to-monitor-right = { }; + "Mod+Shift+WheelScrollDown".focus-column-right = { }; + "Mod+Shift+WheelScrollUp".focus-column-left = { }; + "Mod+1".focus-workspace = 1; + "Mod+2".focus-workspace = 2; + "Mod+3".focus-workspace = 3; + "Mod+4".focus-workspace = 4; + "Mod+5".focus-workspace = 5; + "Mod+6".focus-workspace = 6; + "Mod+7".focus-workspace = 7; + "Mod+8".focus-workspace = 8; + "Mod+9".focus-workspace = 9; + "Mod+Shift+1".move-column-to-workspace = 1; + "Mod+Shift+2".move-column-to-workspace = 2; + "Mod+Shift+3".move-column-to-workspace = 3; + "Mod+Shift+4".move-column-to-workspace = 4; + "Mod+Shift+5".move-column-to-workspace = 5; + "Mod+Shift+6".move-column-to-workspace = 6; + "Mod+Shift+7".move-column-to-workspace = 7; + "Mod+Shift+8".move-column-to-workspace = 8; + "Mod+Shift+9".move-column-to-workspace = 9; + "Mod+BracketLeft".consume-or-expel-window-left = { }; + "Mod+BracketRight".consume-or-expel-window-right = { }; + "Mod+F".maximize-column = { }; + "Mod+Minus".set-column-width = "-10%"; + "Mod+Equal".set-column-width = "+10%"; + "Mod+V".toggle-window-floating = { }; + "Mod+Shift+S".screenshot = { }; + "Alt+Shift+S".screenshot-screen = { }; + "Alt+Ctrl+S".screenshot-window = { }; + "Mod+Shift+q".quit = { }; + }; + _children = [ + { + output = { + _args = [ "PNP(BNQ) BenQ EX2710Q K6R04023019" ]; + mode = "2560x1440@165.002"; + scale = 1; + transform = "normal"; + position._props = { + x = 1920; + y = 0; + }; + }; + } + { + output = { + _args = [ "Dell Inc. DELL P2317H 9KFDW6C533DB" ]; + position._props = { + x = 0; + y = 0; + }; + }; + } + { + output = { + _args = [ "eDP-1" ]; + scale = 1; + }; + } + { + window-rule._children = [ + { geometry-corner-radius = 16; } + { clip-to-geometry = true; } + ]; + } + ]; + }; }; }; } diff --git a/modules/system/stylix/fonts.nix b/modules/system/stylix/fonts.nix index c8025a6..b45a8c1 100644 --- a/modules/system/stylix/fonts.nix +++ b/modules/system/stylix/fonts.nix @@ -1,6 +1,7 @@ { ... }: { flake.nixosModules.stylix_fonts = { pkgs, config, ... }: { stylix.fonts = { + sizes.terminal = 14; serif = { package = config.stylix.fonts.monospace.package; name = config.stylix.fonts.monospace.name; From 56ba1a0513c5797131daf180020a5e4f88f35d78 Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 20 Oct 2026 09:57:03 +0200 Subject: [PATCH 02/47] add qs-theme module --- modules/home/files/qs-theme.nix | 7 +++++++ modules/system/core/user.nix | 1 + 2 files changed, 8 insertions(+) create mode 100644 modules/home/files/qs-theme.nix diff --git a/modules/home/files/qs-theme.nix b/modules/home/files/qs-theme.nix new file mode 100644 index 0000000..2788e90 --- /dev/null +++ b/modules/home/files/qs-theme.nix @@ -0,0 +1,7 @@ +{ ... }: { + flake.homeModules.qs-theme = { config, lib, ... }: { + xdg.dataFile."quickshell/stylix-scheme.json".text = builtins.toJSON { + colors = config.lib.stylix.colors.withHashtag; + }; + }; +} diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index 2de9142..afc3d34 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -29,6 +29,7 @@ git homeStylix fuzzel + qs-theme ]; }; } From 9a056e844258dae1d9cc167e7f5ab0c5c1ea2d07 Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 20 Oct 2026 10:33:52 +0200 Subject: [PATCH 03/47] remove home.files module --- modules/home/files/qs-theme.nix | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 modules/home/files/qs-theme.nix diff --git a/modules/home/files/qs-theme.nix b/modules/home/files/qs-theme.nix deleted file mode 100644 index 2788e90..0000000 --- a/modules/home/files/qs-theme.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ ... }: { - flake.homeModules.qs-theme = { config, lib, ... }: { - xdg.dataFile."quickshell/stylix-scheme.json".text = builtins.toJSON { - colors = config.lib.stylix.colors.withHashtag; - }; - }; -} From 75c6cfcb18f2bda1ee7188bc9b4b0fe5038db87f Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 20 Oct 2026 10:34:11 +0200 Subject: [PATCH 04/47] remove home.files module from user.nix --- modules/system/core/user.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index afc3d34..2de9142 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -29,7 +29,6 @@ git homeStylix fuzzel - qs-theme ]; }; } From dccecc00b2f74f035a797748677262f45d83f95f Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 20 Oct 2026 10:43:10 +0200 Subject: [PATCH 05/47] add chromim module --- modules/default.nix | 1 + modules/system/programs/chromium.nix | 11 +++++++++++ 2 files changed, 12 insertions(+) create mode 100644 modules/system/programs/chromium.nix diff --git a/modules/default.nix b/modules/default.nix index 1a07e2a..633b1fe 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -9,6 +9,7 @@ let base_services boot core + chromium easyroam myStylix packages diff --git a/modules/system/programs/chromium.nix b/modules/system/programs/chromium.nix new file mode 100644 index 0000000..e47fe90 --- /dev/null +++ b/modules/system/programs/chromium.nix @@ -0,0 +1,11 @@ +{ ... }: { + flake.nixosModules.chromium = { + programs.chromium = { + enable = true; + extensions = [ + "nngceckbapebfimnlniiiahkandclblb" # bitwarden + "ddkjiahejlhfcafbddmgiahcphecmpfh" # ublock origin lite + ]; + }; + }; +} From 4905397ff79c7df58cfeb486ab56cb2cf61f7a4d Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 20 Oct 2026 11:56:19 +0200 Subject: [PATCH 06/47] rename stylix modules --- modules/default.nix | 4 ++-- modules/system/stylix/default.nix | 2 +- modules/system/stylix/targets.nix | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/default.nix b/modules/default.nix index 633b1fe..e8e09f7 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -11,11 +11,11 @@ let core chromium easyroam - myStylix packages pipewire programs - stylixTargets + stylix + stylix_targets stylix_fonts tlp user diff --git a/modules/system/stylix/default.nix b/modules/system/stylix/default.nix index b4ccdb0..b312641 100644 --- a/modules/system/stylix/default.nix +++ b/modules/system/stylix/default.nix @@ -1,5 +1,5 @@ { inputs, ... }: { - flake.nixosModules.myStylix = { pkgs, ... }: { + flake.nixosModules.stylix = { pkgs, ... }: { imports = [ inputs.stylix.nixosModules.stylix ]; diff --git a/modules/system/stylix/targets.nix b/modules/system/stylix/targets.nix index 81b064f..b5b2e76 100644 --- a/modules/system/stylix/targets.nix +++ b/modules/system/stylix/targets.nix @@ -1,5 +1,5 @@ { inputs, ... }: { - flake.nixosModules.stylixTargets = { + flake.nixosModules.stylix_targets = { stylix.autoEnable = false; stylix.targets = { gtk.enable = true; From 00676cb2ac32c962d4ceb70b528927c417feee5e Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 20 Oct 2026 23:13:22 +0200 Subject: [PATCH 07/47] add quickshell module --- modules/home/programs/quickshell.nix | 9 +++++++++ modules/system/core/packages.nix | 1 - modules/system/core/user.nix | 20 ++++++++++---------- modules/system/stylix/default.nix | 2 +- 4 files changed, 20 insertions(+), 12 deletions(-) create mode 100644 modules/home/programs/quickshell.nix diff --git a/modules/home/programs/quickshell.nix b/modules/home/programs/quickshell.nix new file mode 100644 index 0000000..ea7404e --- /dev/null +++ b/modules/home/programs/quickshell.nix @@ -0,0 +1,9 @@ +{ ... }: { + + flake.homeModules.quickshell = { + programs.quickshell = { + enable = true; + systemd.enable = true; + }; + }; +} diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index d40f18c..f130a4a 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -13,7 +13,6 @@ rnote btop chromium - quickshell wl-clipboard adw-gtk3 polkit_gnome diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index 2de9142..256182d 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -19,16 +19,16 @@ home.username = "lucy"; home.homeDirectory = "/home/lucy"; home.stateVersion = "25.11"; - }; - home-manager.sharedModules = with self.homeModules; [ - nixcord - ghostty - niri - emacs - git - homeStylix - fuzzel - ]; }; + home-manager.sharedModules = with self.homeModules; [ + nixcord + ghostty + niri + emacs + git + homeStylix + fuzzel + quickshell + ]; } diff --git a/modules/system/stylix/default.nix b/modules/system/stylix/default.nix index b312641..c066807 100644 --- a/modules/system/stylix/default.nix +++ b/modules/system/stylix/default.nix @@ -5,7 +5,7 @@ ]; stylix = { enable = true; - base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml"; + base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml"; cursor = { name = "macOS"; package = pkgs.apple-cursor; From 3c7efc01d91fe4b76d2cb7789cba3b0b2e636383 Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 20 Oct 2026 23:25:00 +0200 Subject: [PATCH 08/47] fix infinite recursion error --- modules/system/core/user.nix | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index 256182d..c2a941e 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -20,15 +20,16 @@ home.homeDirectory = "/home/lucy"; home.stateVersion = "25.11"; }; + home-manager.sharedModules = with self.homeModules; [ + nixcord + ghostty + niri + emacs + git + homeStylix + fuzzel + quickshell + ]; }; - home-manager.sharedModules = with self.homeModules; [ - nixcord - ghostty - niri - emacs - git - homeStylix - fuzzel - quickshell - ]; + } From 548bec32ab4f5bb4637645053f843a03d7ba9265 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 14:30:52 +0200 Subject: [PATCH 09/47] add state --- modules/default.nix | 10 ++++++++-- modules/system/core/core.nix | 4 +++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/modules/default.nix b/modules/default.nix index e8e09f7..3d515e4 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -29,8 +29,14 @@ in with self.nixosModules; [ { - config.dualBoot = true; config.networking.hostName = "nerv"; + config.dualBoot = true; + config.hardware.nvidia = { + open = true; + modesetting.enable = true; + }; + config.services.xserver.videoDrivers = [ "nvidia" ]; + } ] ++ mods; @@ -39,9 +45,9 @@ in modules = [ { config.networking.hostName = "seele"; + } ] ++ mods; - }; } diff --git a/modules/system/core/core.nix b/modules/system/core/core.nix index 430c611..227d18e 100644 --- a/modules/system/core/core.nix +++ b/modules/system/core/core.nix @@ -1,5 +1,6 @@ { ... }: { - flake.nixosModules.core = { + flake.nixosModules.core = { pkgs, ... }: { + boot.kernelPackages = pkgs.linuxPackages_latest; hardware.bluetooth = { enable = true; powerOnBoot = false; @@ -33,5 +34,6 @@ "nix-command" "flakes" ]; + system.stateVersion = "26.05"; }; } From c6c44123b98427e5b06a5c58e5498f6c79a70d50 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 15:04:20 +0200 Subject: [PATCH 10/47] update lockfile and lock drawing tablets to main screen --- flake.lock | 24 ++++++++++++------------ modules/home/programs/niri.nix | 3 +++ 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/flake.lock b/flake.lock index ac15c17..9f34b63 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1790734419, - "narHash": "sha256-n7wew722m1OTBT9DOIMxNX/NF4zfsSUABAO5eW3wikE=", + "lastModified": 1792507013, + "narHash": "sha256-8tKjSQajD3mUND1GaAuaWTcuyUpgcGsh5V+l4ibzC7U=", "owner": "ryantm", "repo": "agenix", - "rev": "3daa710894355fa2fad8243380af373a2b4046ef", + "rev": "5e5b88a0c8e56f291a108c2fe9934054d9745b2e", "type": "github" }, "original": { @@ -185,11 +185,11 @@ ] }, "locked": { - "lastModified": 1792098797, - "narHash": "sha256-u4DIIZgznEGzByxXrxWCXK19VcMtTBmi/M9gZ7Jk9bM=", + "lastModified": 1792495086, + "narHash": "sha256-TyoYH983Nsc++1scw0SoOEKshPSJWJDxK7tTmuZ974M=", "owner": "nix-community", "repo": "home-manager", - "rev": "640725978b99076e18e069f6e7d2959124584f8f", + "rev": "ec80131710bffcdf3b8498cf41f3a0579833b023", "type": "github" }, "original": { @@ -289,11 +289,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1792277718, - "narHash": "sha256-Nv32eZ+x7qr/yKofkemv1O2ImnXkUpFQgq71u6c6Wi8=", + "lastModified": 1792571875, + "narHash": "sha256-XpP8ws1IYlvoQVN27adsJkLP5IsJ6H/o8aWtS3WrE2s=", "owner": "4evy", "repo": "nixcord", - "rev": "f4f803048d4bb6bc296fc4bdbd8620ff63fe100f", + "rev": "99ad1fb696c3b761ea6dac99211c862b9ca64571", "type": "github" }, "original": { @@ -304,11 +304,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1792094642, - "narHash": "sha256-zp8ToDMnqZcu4o4IH9pdwXFXGp7yLm/M0dEnNWnyd7I=", + "lastModified": 1792502884, + "narHash": "sha256-IoNisKcGbUjdd45qCqywGMCYmZ5EnkxezvLII0FWwNA=", "owner": "nixos", "repo": "nixpkgs", - "rev": "fe13242281a67641c0102cdb1087f0ebe586c7df", + "rev": "02c087f3fe673c9e317f206a627cb6b910336dbe", "type": "github" }, "original": { diff --git a/modules/home/programs/niri.nix b/modules/home/programs/niri.nix index 498ea75..bc30150 100644 --- a/modules/home/programs/niri.nix +++ b/modules/home/programs/niri.nix @@ -20,6 +20,9 @@ tap = { }; natural-scroll = { }; }; + tablet = { + map-to-output = "PNP(BNQ) BenQ EX2710Q K6R04023019"; + }; mouse = { accel-speed = -0.4; accel-profile = "flat"; From 8d42e6e0b56f3ed2fe33687d19e731aa9e232575 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 15:57:50 +0200 Subject: [PATCH 11/47] add gdm and update ghostty config --- modules/home/programs/niri.nix | 2 +- modules/system/core/packages.nix | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/home/programs/niri.nix b/modules/home/programs/niri.nix index bc30150..30dc3ab 100644 --- a/modules/home/programs/niri.nix +++ b/modules/home/programs/niri.nix @@ -2,6 +2,7 @@ flake.homeModules.niri = { config, lib, ... }: { wayland.windowManager.niri = { enable = true; + systemd.enable = true; settings = { prefer-no-csd = { }; hotkey-overlay.skip-at-startup = { }; @@ -29,7 +30,6 @@ }; focus-follows-mouse._props.max-scroll-amount = "20%"; }; - spawn-at-startup = [ "qs" ]; screenshot-path = null; animations = { }; layout = { diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index f130a4a..2868e9c 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -2,6 +2,7 @@ flake.nixosModules.packages = { pkgs, ... }: { nixpkgs.config.allowUnfree = true; programs.niri.enable = true; + services.displayManager.gdm.enable = true; environment.systemPackages = with pkgs; [ stow ufetch From b7302531f76e5963e97a887f1471e520d7275b25 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:14:28 +0200 Subject: [PATCH 12/47] rename stylix module and add syncthing --- modules/home/services/syncthing.nix | 12 ++++++++++++ modules/home/stylix/targets.nix | 2 +- modules/system/core/user.nix | 3 ++- 3 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 modules/home/services/syncthing.nix diff --git a/modules/home/services/syncthing.nix b/modules/home/services/syncthing.nix new file mode 100644 index 0000000..4ad14e0 --- /dev/null +++ b/modules/home/services/syncthing.nix @@ -0,0 +1,12 @@ +{ ... }: { + flake.homeModules.syncthing = { + services.syncthings = { + enable = true; + settings = { + devices = { + cyberia.id = "5SW5N7Z-BGTZD37-5ELRQVE-PBRK3O5-M4CGYLZ-R3KCVVS-AM5QD2G-WTQYKA7"; + }; + }; + }; + }; +} diff --git a/modules/home/stylix/targets.nix b/modules/home/stylix/targets.nix index 3708b27..7575d92 100644 --- a/modules/home/stylix/targets.nix +++ b/modules/home/stylix/targets.nix @@ -1,5 +1,5 @@ {inputs, ...}: { - flake.homeModules.homeStylix = { + flake.homeModules.stylix = { stylix.targets = { ghostty.enable = true; fuzzel.enable = true; diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index c2a941e..09bcf7b 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -26,9 +26,10 @@ niri emacs git - homeStylix + stylix fuzzel quickshell + syncthing ]; }; From 911685f9ee514b9fee3a84ecde189f2eb717c809 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:16:35 +0200 Subject: [PATCH 13/47] misspelled name --- modules/home/services/syncthing.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/home/services/syncthing.nix b/modules/home/services/syncthing.nix index 4ad14e0..1814348 100644 --- a/modules/home/services/syncthing.nix +++ b/modules/home/services/syncthing.nix @@ -1,6 +1,6 @@ { ... }: { flake.homeModules.syncthing = { - services.syncthings = { + services.syncthing = { enable = true; settings = { devices = { From 4e3838b97f3ad2a0f532a84754395b4a0dbe0053 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:24:16 +0200 Subject: [PATCH 14/47] add bluetooth and nvidia modules + hw config --- modules/default.nix | 12 +----- modules/hardware/bluetooth.nix | 15 +++++++ modules/hardware/nvidia.nix | 18 ++++++++ modules/hosts/nerv/hardware-configuration.nix | 42 +++++++++++++++++++ modules/system/core/core.nix | 10 ----- 5 files changed, 77 insertions(+), 20 deletions(-) create mode 100644 modules/hardware/bluetooth.nix create mode 100644 modules/hardware/nvidia.nix create mode 100644 modules/hosts/nerv/hardware-configuration.nix diff --git a/modules/default.nix b/modules/default.nix index 3d515e4..dcd533a 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -7,6 +7,7 @@ let mods = with self.nixosModules; [ agenix base_services + bluetooth boot core chromium @@ -28,16 +29,7 @@ in modules = with self.nixosModules; [ - { - config.networking.hostName = "nerv"; - config.dualBoot = true; - config.hardware.nvidia = { - open = true; - modesetting.enable = true; - }; - config.services.xserver.videoDrivers = [ "nvidia" ]; - - } + nvidia ] ++ mods; }; diff --git a/modules/hardware/bluetooth.nix b/modules/hardware/bluetooth.nix new file mode 100644 index 0000000..c40074a --- /dev/null +++ b/modules/hardware/bluetooth.nix @@ -0,0 +1,15 @@ +{ ... }: +{ + flake.nixosModules.bluetooth = { + hardware.bluetooth = { + enable = true; + powerOnBoot = false; + input.General.ClassicBondedOnly = false; + settings = { + General = { + Experimental = true; + }; + }; + }; + }; +} diff --git a/modules/hardware/nvidia.nix b/modules/hardware/nvidia.nix new file mode 100644 index 0000000..9c23782 --- /dev/null +++ b/modules/hardware/nvidia.nix @@ -0,0 +1,18 @@ +{ ... }: { + flake.nixosModules.nvidia = { config, ... }: { + # Enable OpenGL + hardware.graphics = { + enable = true; + }; + + services.xserver.videoDrivers = [ "nvidia" ]; + hardware.nvidia = { + modesetting.enable = true; + powerManagement.enable = false; + powerManagement.finegrained = false; + open = true; + nvidiaSettings = true; + package = config.boot.kernelPackages.nvidiaPackages.stable; + }; + }; +} diff --git a/modules/hosts/nerv/hardware-configuration.nix b/modules/hosts/nerv/hardware-configuration.nix new file mode 100644 index 0000000..ca77fe4 --- /dev/null +++ b/modules/hosts/nerv/hardware-configuration.nix @@ -0,0 +1,42 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ ... }: + +{ + flake.nixosModules.nerv = { + + boot.initrd.availableKernelModules = [ + "nvme" + "xhci_pci" + "ahci" + "usbhid" + "usb_storage" + "sd_mod" + ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/48badf37-8adb-48d0-b861-fbf71cbaddd7"; + fsType = "xfs"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/DC66-ACA6"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/3b0e79c9-e3d8-4b58-99b4-63c98309ac85"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + }; +} diff --git a/modules/system/core/core.nix b/modules/system/core/core.nix index 227d18e..3719db2 100644 --- a/modules/system/core/core.nix +++ b/modules/system/core/core.nix @@ -1,16 +1,6 @@ { ... }: { flake.nixosModules.core = { pkgs, ... }: { boot.kernelPackages = pkgs.linuxPackages_latest; - hardware.bluetooth = { - enable = true; - powerOnBoot = false; - input.General.ClassicBondedOnly = false; - settings = { - General = { - Experimental = true; - }; - }; - }; time.timeZone = "Europe/Berlin"; i18n.defaultLocale = "en_US.UTF-8"; i18n.extraLocaleSettings = { From 29a224e6bd46f04587a443ee1753773d3ec048f5 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:27:32 +0200 Subject: [PATCH 15/47] fix typos --- modules/default.nix | 2 +- modules/hosts/nerv/hardware-configuration.nix | 68 ++++++++++--------- 2 files changed, 37 insertions(+), 33 deletions(-) diff --git a/modules/default.nix b/modules/default.nix index dcd533a..41e0d23 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -21,7 +21,6 @@ let tlp user zsh - /etc/nixos/hardware-configuration.nix ]; in { @@ -30,6 +29,7 @@ in with self.nixosModules; [ nvidia + nerv ] ++ mods; }; diff --git a/modules/hosts/nerv/hardware-configuration.nix b/modules/hosts/nerv/hardware-configuration.nix index ca77fe4..c2f03d2 100644 --- a/modules/hosts/nerv/hardware-configuration.nix +++ b/modules/hosts/nerv/hardware-configuration.nix @@ -1,42 +1,46 @@ # Do not modify this file! It was generated by ‘nixos-generate-config’ # and may be overwritten by future invocations. Please make changes # to /etc/nixos/configuration.nix instead. -{ ... }: +{ lib, config, ... }: { - flake.nixosModules.nerv = { + flake.nixosModules.nerv = { config, ... }: { + config = { + dualBoot = true; + networking.hostName = "nerv"; - boot.initrd.availableKernelModules = [ - "nvme" - "xhci_pci" - "ahci" - "usbhid" - "usb_storage" - "sd_mod" - ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = { - device = "/dev/disk/by-uuid/48badf37-8adb-48d0-b861-fbf71cbaddd7"; - fsType = "xfs"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/DC66-ACA6"; - fsType = "vfat"; - options = [ - "fmask=0077" - "dmask=0077" + boot.initrd.availableKernelModules = [ + "nvme" + "xhci_pci" + "ahci" + "usbhid" + "usb_storage" + "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/48badf37-8adb-48d0-b861-fbf71cbaddd7"; + fsType = "xfs"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/DC66-ACA6"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/3b0e79c9-e3d8-4b58-99b4-63c98309ac85"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; }; - - swapDevices = [ - { device = "/dev/disk/by-uuid/3b0e79c9-e3d8-4b58-99b4-63c98309ac85"; } - ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; }; } From 47cd47b4f2daa5d1af331f40511fe9823376f6a1 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:29:57 +0200 Subject: [PATCH 16/47] seperate hw config and quirks --- modules/default.nix | 1 + modules/hosts/nerv/hardware-configuration.nix | 65 +++++++++---------- modules/hosts/nerv/quirks.nix | 8 +++ 3 files changed, 40 insertions(+), 34 deletions(-) create mode 100644 modules/hosts/nerv/quirks.nix diff --git a/modules/default.nix b/modules/default.nix index 41e0d23..c888354 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -30,6 +30,7 @@ in [ nvidia nerv + nerv_quirks ] ++ mods; }; diff --git a/modules/hosts/nerv/hardware-configuration.nix b/modules/hosts/nerv/hardware-configuration.nix index c2f03d2..f411dac 100644 --- a/modules/hosts/nerv/hardware-configuration.nix +++ b/modules/hosts/nerv/hardware-configuration.nix @@ -5,42 +5,39 @@ { flake.nixosModules.nerv = { config, ... }: { - config = { - dualBoot = true; - networking.hostName = "nerv"; - boot.initrd.availableKernelModules = [ - "nvme" - "xhci_pci" - "ahci" - "usbhid" - "usb_storage" - "sd_mod" - ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; + boot.initrd.availableKernelModules = [ + "nvme" + "xhci_pci" + "ahci" + "usbhid" + "usb_storage" + "sd_mod" + ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; - fileSystems."/" = { - device = "/dev/disk/by-uuid/48badf37-8adb-48d0-b861-fbf71cbaddd7"; - fsType = "xfs"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/DC66-ACA6"; - fsType = "vfat"; - options = [ - "fmask=0077" - "dmask=0077" - ]; - }; - - swapDevices = [ - { device = "/dev/disk/by-uuid/3b0e79c9-e3d8-4b58-99b4-63c98309ac85"; } - ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + fileSystems."/" = { + device = "/dev/disk/by-uuid/48badf37-8adb-48d0-b861-fbf71cbaddd7"; + fsType = "xfs"; }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/DC66-ACA6"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/3b0e79c9-e3d8-4b58-99b4-63c98309ac85"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; }; + } diff --git a/modules/hosts/nerv/quirks.nix b/modules/hosts/nerv/quirks.nix new file mode 100644 index 0000000..a53af4e --- /dev/null +++ b/modules/hosts/nerv/quirks.nix @@ -0,0 +1,8 @@ +{ ... }: { + flake.nixosModules.nerv_quirks = { config, ... }: { + config = { + networking.hostName = "nerv"; + dualBoot = true; + }; + }; +} From d1712461f61b53e39fcbc10a65404f3c22b93614 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:32:54 +0200 Subject: [PATCH 17/47] overhaul repo structure --- modules/system/core/boot.nix | 1 + modules/system/hardware/bluetooth.nix | 15 +++++++ modules/system/hardware/nvidia.nix | 18 ++++++++ .../hosts/nerv/hardware-configuration.nix | 43 +++++++++++++++++++ modules/system/hosts/nerv/quirks.nix | 8 ++++ 5 files changed, 85 insertions(+) create mode 100644 modules/system/hardware/bluetooth.nix create mode 100644 modules/system/hardware/nvidia.nix create mode 100644 modules/system/hosts/nerv/hardware-configuration.nix create mode 100644 modules/system/hosts/nerv/quirks.nix diff --git a/modules/system/core/boot.nix b/modules/system/core/boot.nix index 35e0e3d..98789ab 100644 --- a/modules/system/core/boot.nix +++ b/modules/system/core/boot.nix @@ -10,6 +10,7 @@ config.boot.loader = { efi.canTouchEfiVariables = true; limine = { + style.wallapers = [ ]; enable = true; extraEntries = lib.mkIf config.dualBoot '' /Windows 11 diff --git a/modules/system/hardware/bluetooth.nix b/modules/system/hardware/bluetooth.nix new file mode 100644 index 0000000..c40074a --- /dev/null +++ b/modules/system/hardware/bluetooth.nix @@ -0,0 +1,15 @@ +{ ... }: +{ + flake.nixosModules.bluetooth = { + hardware.bluetooth = { + enable = true; + powerOnBoot = false; + input.General.ClassicBondedOnly = false; + settings = { + General = { + Experimental = true; + }; + }; + }; + }; +} diff --git a/modules/system/hardware/nvidia.nix b/modules/system/hardware/nvidia.nix new file mode 100644 index 0000000..9c23782 --- /dev/null +++ b/modules/system/hardware/nvidia.nix @@ -0,0 +1,18 @@ +{ ... }: { + flake.nixosModules.nvidia = { config, ... }: { + # Enable OpenGL + hardware.graphics = { + enable = true; + }; + + services.xserver.videoDrivers = [ "nvidia" ]; + hardware.nvidia = { + modesetting.enable = true; + powerManagement.enable = false; + powerManagement.finegrained = false; + open = true; + nvidiaSettings = true; + package = config.boot.kernelPackages.nvidiaPackages.stable; + }; + }; +} diff --git a/modules/system/hosts/nerv/hardware-configuration.nix b/modules/system/hosts/nerv/hardware-configuration.nix new file mode 100644 index 0000000..f411dac --- /dev/null +++ b/modules/system/hosts/nerv/hardware-configuration.nix @@ -0,0 +1,43 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ lib, config, ... }: + +{ + flake.nixosModules.nerv = { config, ... }: { + + boot.initrd.availableKernelModules = [ + "nvme" + "xhci_pci" + "ahci" + "usbhid" + "usb_storage" + "sd_mod" + ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/48badf37-8adb-48d0-b861-fbf71cbaddd7"; + fsType = "xfs"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/DC66-ACA6"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/3b0e79c9-e3d8-4b58-99b4-63c98309ac85"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + }; + +} diff --git a/modules/system/hosts/nerv/quirks.nix b/modules/system/hosts/nerv/quirks.nix new file mode 100644 index 0000000..a53af4e --- /dev/null +++ b/modules/system/hosts/nerv/quirks.nix @@ -0,0 +1,8 @@ +{ ... }: { + flake.nixosModules.nerv_quirks = { config, ... }: { + config = { + networking.hostName = "nerv"; + dualBoot = true; + }; + }; +} From 88972aa4a272018890af635d8a611e130151018d Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:33:10 +0200 Subject: [PATCH 18/47] overhaul repo structure, 2 --- modules/hardware/bluetooth.nix | 15 ------- modules/hardware/nvidia.nix | 18 -------- modules/hosts/nerv/hardware-configuration.nix | 43 ------------------- modules/hosts/nerv/quirks.nix | 8 ---- 4 files changed, 84 deletions(-) delete mode 100644 modules/hardware/bluetooth.nix delete mode 100644 modules/hardware/nvidia.nix delete mode 100644 modules/hosts/nerv/hardware-configuration.nix delete mode 100644 modules/hosts/nerv/quirks.nix diff --git a/modules/hardware/bluetooth.nix b/modules/hardware/bluetooth.nix deleted file mode 100644 index c40074a..0000000 --- a/modules/hardware/bluetooth.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ ... }: -{ - flake.nixosModules.bluetooth = { - hardware.bluetooth = { - enable = true; - powerOnBoot = false; - input.General.ClassicBondedOnly = false; - settings = { - General = { - Experimental = true; - }; - }; - }; - }; -} diff --git a/modules/hardware/nvidia.nix b/modules/hardware/nvidia.nix deleted file mode 100644 index 9c23782..0000000 --- a/modules/hardware/nvidia.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ ... }: { - flake.nixosModules.nvidia = { config, ... }: { - # Enable OpenGL - hardware.graphics = { - enable = true; - }; - - services.xserver.videoDrivers = [ "nvidia" ]; - hardware.nvidia = { - modesetting.enable = true; - powerManagement.enable = false; - powerManagement.finegrained = false; - open = true; - nvidiaSettings = true; - package = config.boot.kernelPackages.nvidiaPackages.stable; - }; - }; -} diff --git a/modules/hosts/nerv/hardware-configuration.nix b/modules/hosts/nerv/hardware-configuration.nix deleted file mode 100644 index f411dac..0000000 --- a/modules/hosts/nerv/hardware-configuration.nix +++ /dev/null @@ -1,43 +0,0 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ -# and may be overwritten by future invocations. Please make changes -# to /etc/nixos/configuration.nix instead. -{ lib, config, ... }: - -{ - flake.nixosModules.nerv = { config, ... }: { - - boot.initrd.availableKernelModules = [ - "nvme" - "xhci_pci" - "ahci" - "usbhid" - "usb_storage" - "sd_mod" - ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = { - device = "/dev/disk/by-uuid/48badf37-8adb-48d0-b861-fbf71cbaddd7"; - fsType = "xfs"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/DC66-ACA6"; - fsType = "vfat"; - options = [ - "fmask=0077" - "dmask=0077" - ]; - }; - - swapDevices = [ - { device = "/dev/disk/by-uuid/3b0e79c9-e3d8-4b58-99b4-63c98309ac85"; } - ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - }; - -} diff --git a/modules/hosts/nerv/quirks.nix b/modules/hosts/nerv/quirks.nix deleted file mode 100644 index a53af4e..0000000 --- a/modules/hosts/nerv/quirks.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ ... }: { - flake.nixosModules.nerv_quirks = { config, ... }: { - config = { - networking.hostName = "nerv"; - dualBoot = true; - }; - }; -} From db536c6b80df53c30305fc7560a6e0739c82dfdc Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:33:45 +0200 Subject: [PATCH 19/47] make limine use no wallpaper --- modules/system/core/boot.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/system/core/boot.nix b/modules/system/core/boot.nix index 98789ab..cd2b8cf 100644 --- a/modules/system/core/boot.nix +++ b/modules/system/core/boot.nix @@ -10,7 +10,7 @@ config.boot.loader = { efi.canTouchEfiVariables = true; limine = { - style.wallapers = [ ]; + style.wallpapers = [ ]; enable = true; extraEntries = lib.mkIf config.dualBoot '' /Windows 11 From 408ccf7b2288d99548e4f12e631dceff6e2d954a Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:35:27 +0200 Subject: [PATCH 20/47] remove unneeded packages --- modules/system/core/packages.nix | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index 2868e9c..3ec489a 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -4,27 +4,23 @@ programs.niri.enable = true; services.displayManager.gdm.enable = true; environment.systemPackages = with pkgs; [ - stow ufetch rbw pinentry-gnome3 nixd nixfmt xournalpp - rnote btop chromium wl-clipboard - adw-gtk3 polkit_gnome xwayland-satellite - nemo + nautilus libwacom devenv kdePackages.qt6ct gcc clang-tools - clang gdb gnumake libreoffice @@ -32,15 +28,8 @@ jq nmgui kdePackages.qtdeclarative - gsettings-desktop-schemas - glib ]; fonts.packages = with pkgs; [ - jetbrains-mono - nerd-fonts.jetbrains-mono - noto-fonts - noto-fonts-cjk-sans - noto-fonts-color-emoji inter ]; }; From 09bb5db1aba4032fee4c539113924327dbf145ee Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:42:32 +0200 Subject: [PATCH 21/47] add seele hw config --- modules/default.nix | 8 ++-- .../hosts/seele/hardware-configuration.nix | 37 +++++++++++++++++++ modules/system/hosts/seele/quirks.nix | 5 +++ 3 files changed, 45 insertions(+), 5 deletions(-) create mode 100644 modules/system/hosts/seele/hardware-configuration.nix create mode 100644 modules/system/hosts/seele/quirks.nix diff --git a/modules/default.nix b/modules/default.nix index c888354..f89d484 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -36,11 +36,9 @@ in }; flake.nixosConfigurations.seele = inputs.nixpkgs.lib.nixosSystem { modules = [ - { - config.networking.hostName = "seele"; - - } - ] + seele + seele_quirks + ]; ++ mods; }; } diff --git a/modules/system/hosts/seele/hardware-configuration.nix b/modules/system/hosts/seele/hardware-configuration.nix new file mode 100644 index 0000000..a5d3a65 --- /dev/null +++ b/modules/system/hosts/seele/hardware-configuration.nix @@ -0,0 +1,37 @@ +{ lib, ... }: + +{ + flake.nixosModules.seele = { config, ... }: { + boot.initrd.availableKernelModules = [ + "xhci_pci" + "nvme" + "usb_storage" + "sd_mod" + "sdhci_pci" + ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/629196f0-60e9-476e-b294-0d22fd7279c4"; + fsType = "xfs"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/2474-C1E6"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/166d1fb4-527f-4fda-a6bf-85aad4a4f917"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + }; +} diff --git a/modules/system/hosts/seele/quirks.nix b/modules/system/hosts/seele/quirks.nix new file mode 100644 index 0000000..34a64ac --- /dev/null +++ b/modules/system/hosts/seele/quirks.nix @@ -0,0 +1,5 @@ +{ ... }: { + flake.nixosModules.seele_quirks = { + networking.hostName = "seele"; + }; +} From 58d312bc11915d57ab28b714bf612c19dc4f57a8 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 21:44:54 +0200 Subject: [PATCH 22/47] fix errors (self.nixosModules missing), typo --- modules/default.nix | 12 +++++++----- .../system/hosts/seele/hardware-configuration.nix | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/modules/default.nix b/modules/default.nix index f89d484..bc86718 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -35,10 +35,12 @@ in ++ mods; }; flake.nixosConfigurations.seele = inputs.nixpkgs.lib.nixosSystem { - modules = [ - seele - seele_quirks - ]; - ++ mods; + modules = + with self.nixosModules; + [ + seele + seele_quirks + ] + ++ mods; }; } diff --git a/modules/system/hosts/seele/hardware-configuration.nix b/modules/system/hosts/seele/hardware-configuration.nix index a5d3a65..c7e4e4f 100644 --- a/modules/system/hosts/seele/hardware-configuration.nix +++ b/modules/system/hosts/seele/hardware-configuration.nix @@ -1,4 +1,4 @@ -{ lib, ... }: +{ lib, config, ... }: { flake.nixosModules.seele = { config, ... }: { From 8207e7cfe056f390fd7674322dd1c36d7a13405f Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 22:31:01 +0200 Subject: [PATCH 23/47] fix firmware shit --- .../hosts/seele/hardware-configuration.nix | 75 +++++++++++-------- 1 file changed, 44 insertions(+), 31 deletions(-) diff --git a/modules/system/hosts/seele/hardware-configuration.nix b/modules/system/hosts/seele/hardware-configuration.nix index c7e4e4f..dd1ae92 100644 --- a/modules/system/hosts/seele/hardware-configuration.nix +++ b/modules/system/hosts/seele/hardware-configuration.nix @@ -1,37 +1,50 @@ -{ lib, config, ... }: +{ + lib, + config, + modulesPath, + ... +}: { - flake.nixosModules.seele = { config, ... }: { - boot.initrd.availableKernelModules = [ - "xhci_pci" - "nvme" - "usb_storage" - "sd_mod" - "sdhci_pci" - ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; + flake.nixosModules.seele = + { + config, + lib, - fileSystems."/" = { - device = "/dev/disk/by-uuid/629196f0-60e9-476e-b294-0d22fd7279c4"; - fsType = "xfs"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/2474-C1E6"; - fsType = "vfat"; - options = [ - "fmask=0077" - "dmask=0077" + ... + }: + { + boot.initrd.availableKernelModules = [ + "xhci_pci" + "nvme" + "usb_storage" + "sd_mod" + "sdhci_pci" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/629196f0-60e9-476e-b294-0d22fd7279c4"; + fsType = "xfs"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/2474-C1E6"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/166d1fb4-527f-4fda-a6bf-85aad4a4f917"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + hardware.enableRedistributableFirmware = true; }; - - swapDevices = [ - { device = "/dev/disk/by-uuid/166d1fb4-527f-4fda-a6bf-85aad4a4f917"; } - ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - }; } From 955c926ec393af81d525f3f9bac1310cade331d5 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 21 Oct 2026 22:51:02 +0200 Subject: [PATCH 24/47] move firmware shit to core.nix --- modules/system/core/core.nix | 1 + modules/system/hosts/seele/hardware-configuration.nix | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/system/core/core.nix b/modules/system/core/core.nix index 3719db2..cd88822 100644 --- a/modules/system/core/core.nix +++ b/modules/system/core/core.nix @@ -1,5 +1,6 @@ { ... }: { flake.nixosModules.core = { pkgs, ... }: { + hardware.enableRedistributableFirmware = true; boot.kernelPackages = pkgs.linuxPackages_latest; time.timeZone = "Europe/Berlin"; i18n.defaultLocale = "en_US.UTF-8"; diff --git a/modules/system/hosts/seele/hardware-configuration.nix b/modules/system/hosts/seele/hardware-configuration.nix index dd1ae92..60e76f9 100644 --- a/modules/system/hosts/seele/hardware-configuration.nix +++ b/modules/system/hosts/seele/hardware-configuration.nix @@ -45,6 +45,5 @@ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - hardware.enableRedistributableFirmware = true; }; } From eccf12805cb4b4a6b0e5cfd2d66ef5f2a2a15c2f Mon Sep 17 00:00:00 2001 From: lucy Date: Thu, 22 Oct 2026 10:09:34 +0200 Subject: [PATCH 25/47] install emacs packages via nix instead of use-package --- modules/home/programs/emacs.nix | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/modules/home/programs/emacs.nix b/modules/home/programs/emacs.nix index de4a89c..ac57339 100644 --- a/modules/home/programs/emacs.nix +++ b/modules/home/programs/emacs.nix @@ -4,6 +4,15 @@ programs.emacs = { enable = true; package = pkgs.emacs-pgtk; + extraPackages = + epkgs: with epkgs; [ + eldoc-box + elisp-autofmt + corfu + cape + nix-mode + envrc + ]; extraConfig = '' ;; -*- lexical-binding: t; -*- (setq make-backup-files nil) @@ -14,25 +23,22 @@ "https://snapshots.melpa.org/packages/") t) ;; add packages - (use-package org-view-mode :ensure t) - (use-package envrc :ensure t) + (use-package org-view-mode) + (use-package envrc) - (use-package nix-mode :ensure t) + (use-package nix-mode) (use-package eldoc-box - :ensure t :hook (eglot-managed-mode . eldoc-box-hover-mode) ) (use-package elisp-autofmt - :ensure t :commands (elisp-autofmt-buffer elisp-autofmt-mode) :hook (emacs-lisp-mode . elisp-autofmt-mode) :config) (use-package portage-modes :ensure t) (use-package corfu - :ensure t :init (setq corfu-auto t @@ -43,7 +49,6 @@ (setq tab-always-indent 'complete) (use-package cape - :ensure t :bind ("C-c p" . cape-prefix-map) ;; Alternative key: M-, M-p, M-+ :init (add-hook 'completion-at-point-functions #'cape-file)) (setq corfu-auto-prefix 2) From f7f29fd891c57b13dabd660ac6431a27f9b6847c Mon Sep 17 00:00:00 2001 From: lucy Date: Thu, 22 Oct 2026 10:12:27 +0200 Subject: [PATCH 26/47] forgot some packages --- modules/home/programs/emacs.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/modules/home/programs/emacs.nix b/modules/home/programs/emacs.nix index ac57339..fde2af5 100644 --- a/modules/home/programs/emacs.nix +++ b/modules/home/programs/emacs.nix @@ -12,6 +12,9 @@ cape nix-mode envrc + elcord + qml-mode + lua-mode ]; extraConfig = '' ;; -*- lexical-binding: t; -*- @@ -36,7 +39,6 @@ :commands (elisp-autofmt-buffer elisp-autofmt-mode) :hook (emacs-lisp-mode . elisp-autofmt-mode) :config) - (use-package portage-modes :ensure t) (use-package corfu :init @@ -52,9 +54,9 @@ :bind ("C-c p" . cape-prefix-map) ;; Alternative key: M-, M-p, M-+ :init (add-hook 'completion-at-point-functions #'cape-file)) (setq corfu-auto-prefix 2) - (use-package qml-mode :ensure t) - (use-package lua-mode :ensure t) - (use-package elcord :ensure t :init (elcord-mode)) + (use-package qml-mode) + (use-package lua-mode) + (use-package elcord :init (elcord-mode)) (add-to-list 'display-buffer-alist From 1f64b16ade2a2f3f3ad0ac0598c52f79a2afe183 Mon Sep 17 00:00:00 2001 From: lucy Date: Thu, 22 Oct 2026 10:16:29 +0200 Subject: [PATCH 27/47] add spicetify module --- flake.nix | 18 ++++++++++++------ modules/home/programs/spotify.nix | 8 ++++++++ modules/system/core/user.nix | 1 + 3 files changed, 21 insertions(+), 6 deletions(-) create mode 100644 modules/home/programs/spotify.nix diff --git a/flake.nix b/flake.nix index e1e33f8..71d80a7 100644 --- a/flake.nix +++ b/flake.nix @@ -24,11 +24,17 @@ url = "github:nix-community/stylix"; inputs.nixpkgs.follows = "nixpkgs"; }; + spicetify-nix = { + url = "github:Gerg-L/spicetify-nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; - outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } { - imports = [ - inputs.home-manager.flakeModules.home-manager - (inputs.import-tree ./modules) - ]; - }; + outputs = + inputs: + inputs.flake-parts.lib.mkFlake { inherit inputs; } { + imports = [ + inputs.home-manager.flakeModules.home-manager + (inputs.import-tree ./modules) + ]; + }; } diff --git a/modules/home/programs/spotify.nix b/modules/home/programs/spotify.nix new file mode 100644 index 0000000..723a939 --- /dev/null +++ b/modules/home/programs/spotify.nix @@ -0,0 +1,8 @@ +{ ... }: { + flake.homeModules.spotify = { + imports = [ inputs.spicetify-nix.homeManagerModules.spicetify-nix ]; + programs.spicetify = { + enable = true; + }; + }; +} diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index 09bcf7b..fb75bb4 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -29,6 +29,7 @@ stylix fuzzel quickshell + spotify syncthing ]; }; From 8d3a9b8b4bdbc9a6e24d7e7d31c11998a067a4d5 Mon Sep 17 00:00:00 2001 From: lucy Date: Thu, 22 Oct 2026 10:22:05 +0200 Subject: [PATCH 28/47] enable stylix target for spicetify --- flake.lock | 39 ++++++++++++++++++++++++++++++- modules/home/programs/spotify.nix | 4 ++-- modules/home/stylix/targets.nix | 1 + 3 files changed, 41 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index 9f34b63..791505f 100644 --- a/flake.lock +++ b/flake.lock @@ -393,9 +393,31 @@ "nix-easyroam": "nix-easyroam", "nixcord": "nixcord", "nixpkgs": "nixpkgs", + "spicetify-nix": "spicetify-nix", "stylix": "stylix" } }, + "spicetify-nix": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ], + "systems": "systems" + }, + "locked": { + "lastModified": 1792312987, + "narHash": "sha256-W76wP2Kr/a/E2IMK3wtBD5WaTJJnB21C25pWUbD5IC8=", + "owner": "Gerg-L", + "repo": "spicetify-nix", + "rev": "fc58c85761e0893299092f482150305b1ef60914", + "type": "github" + }, + "original": { + "owner": "Gerg-L", + "repo": "spicetify-nix", + "type": "github" + } + }, "stylix": { "inputs": { "base16": "base16", @@ -409,7 +431,7 @@ "nixpkgs" ], "nur": "nur", - "systems": "systems", + "systems": "systems_2", "tinted-kitty": "tinted-kitty", "tinted-schemes": "tinted-schemes", "tinted-tmux": "tinted-tmux", @@ -430,6 +452,21 @@ } }, "systems": { + "locked": { + "lastModified": 1791244623, + "narHash": "sha256-uuanbkFk8a313Zfrxdcz8Us/yQtaxNnKJtX8v0ZPpd8=", + "owner": "nix-systems", + "repo": "default", + "rev": "d36eeed142f88b5a636f2e3856a53c61654cf29b", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_2": { "locked": { "lastModified": 1774449309, "narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=", diff --git a/modules/home/programs/spotify.nix b/modules/home/programs/spotify.nix index 723a939..cb5ee08 100644 --- a/modules/home/programs/spotify.nix +++ b/modules/home/programs/spotify.nix @@ -1,6 +1,6 @@ -{ ... }: { +{ inputs, ... }: { flake.homeModules.spotify = { - imports = [ inputs.spicetify-nix.homeManagerModules.spicetify-nix ]; + imports = [ inputs.spicetify-nix.homeManagerModules.spicetify ]; programs.spicetify = { enable = true; }; diff --git a/modules/home/stylix/targets.nix b/modules/home/stylix/targets.nix index 7575d92..1f9c614 100644 --- a/modules/home/stylix/targets.nix +++ b/modules/home/stylix/targets.nix @@ -6,6 +6,7 @@ gtk.enable = true; emacs.enable = true; nixcord.enable = true; + spicetify.enable = true; }; }; } From 67824a0c5a254bd61013512a2887652dfa315dea Mon Sep 17 00:00:00 2001 From: lucy Date: Thu, 22 Oct 2026 11:25:15 +0200 Subject: [PATCH 29/47] add btop module --- modules/home/programs/btop.nix | 10 ++++++++++ modules/system/core/user.nix | 1 + 2 files changed, 11 insertions(+) create mode 100644 modules/home/programs/btop.nix diff --git a/modules/home/programs/btop.nix b/modules/home/programs/btop.nix new file mode 100644 index 0000000..daa6ec8 --- /dev/null +++ b/modules/home/programs/btop.nix @@ -0,0 +1,10 @@ +{...} : { + flake.homeModules.btop = { + programs.btop = { + enable = true; + settings = { + theme_background = false; + }; + }; + }; +} diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index fb75bb4..7c94917 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -21,6 +21,7 @@ home.stateVersion = "25.11"; }; home-manager.sharedModules = with self.homeModules; [ + btop nixcord ghostty niri From 951406bed2e5169a56fd62614e95671ecc18ed73 Mon Sep 17 00:00:00 2001 From: lucy Date: Thu, 22 Oct 2026 11:25:55 +0200 Subject: [PATCH 30/47] remove btop from systempackages --- modules/system/core/packages.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index 3ec489a..7399632 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -10,7 +10,6 @@ nixd nixfmt xournalpp - btop chromium wl-clipboard polkit_gnome From 9031a8306bdf7d9e4d2e1a8885255f46aea5e485 Mon Sep 17 00:00:00 2001 From: lucy Date: Thu, 22 Oct 2026 13:55:46 +0200 Subject: [PATCH 31/47] add qt targets to stylix --- modules/home/stylix/targets.nix | 1 + modules/system/stylix/default.nix | 2 +- modules/system/stylix/targets.nix | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/home/stylix/targets.nix b/modules/home/stylix/targets.nix index 1f9c614..ff5fc39 100644 --- a/modules/home/stylix/targets.nix +++ b/modules/home/stylix/targets.nix @@ -4,6 +4,7 @@ ghostty.enable = true; fuzzel.enable = true; gtk.enable = true; + qt.enable = true; emacs.enable = true; nixcord.enable = true; spicetify.enable = true; diff --git a/modules/system/stylix/default.nix b/modules/system/stylix/default.nix index c066807..8f195e6 100644 --- a/modules/system/stylix/default.nix +++ b/modules/system/stylix/default.nix @@ -5,7 +5,7 @@ ]; stylix = { enable = true; - base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml"; + base16Scheme = "${pkgs.base16-schemes}/share/themes/oxocarbon-dark.yaml"; cursor = { name = "macOS"; package = pkgs.apple-cursor; diff --git a/modules/system/stylix/targets.nix b/modules/system/stylix/targets.nix index b5b2e76..c75de55 100644 --- a/modules/system/stylix/targets.nix +++ b/modules/system/stylix/targets.nix @@ -3,6 +3,7 @@ stylix.autoEnable = false; stylix.targets = { gtk.enable = true; + qt.enable = true; chromium.enable = true; console.enable = true; font-packages.enable = true; From 21b058e1db53ad57aa3e3f5eddde078c67fdd241 Mon Sep 17 00:00:00 2001 From: lucy Date: Sat, 24 Oct 2026 00:26:54 +0200 Subject: [PATCH 32/47] add needed font packages --- modules/system/core/packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index 7399632..09330b3 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -30,6 +30,7 @@ ]; fonts.packages = with pkgs; [ inter + noto-fonts ]; }; } From 25f89042adfab9dde9010706fc2466d2aa558449 Mon Sep 17 00:00:00 2001 From: lucy Date: Mon, 26 Oct 2026 10:11:43 +0100 Subject: [PATCH 33/47] switch colorscheme and add hermes agent --- flake.lock | 148 +++++++++++++++++++++++++++++- flake.nix | 5 + modules/home/programs/hermes.nix | 9 ++ modules/system/core/user.nix | 1 + modules/system/stylix/default.nix | 2 +- 5 files changed, 163 insertions(+), 2 deletions(-) create mode 100644 modules/home/programs/hermes.nix diff --git a/flake.lock b/flake.lock index 791505f..f8e9c39 100644 --- a/flake.lock +++ b/flake.lock @@ -123,6 +123,27 @@ } }, "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "hermes-agent", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1790898470, + "narHash": "sha256-zTwuwezD0w3hpga6a6P8emidzAZFyWqlNeRBlpWOOl8=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "024633cd702b10285db5cb19b40ad48d2399ba60", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { "inputs": { "nixpkgs-lib": [ "stylix", @@ -178,6 +199,34 @@ "type": "gitlab" } }, + "hermes-agent": { + "inputs": { + "flake-parts": "flake-parts_2", + "home-manager": [ + "home-manager" + ], + "nixpkgs": [ + "nixpkgs" + ], + "npm-lockfile-fix": "npm-lockfile-fix", + "pyproject-build-systems": "pyproject-build-systems", + "pyproject-nix": "pyproject-nix", + "uv2nix": "uv2nix" + }, + "locked": { + "lastModified": 1792874130, + "narHash": "sha256-q+GuDKV3sve6ZIBTQ370+P/H70YxKANDjAG/Fb3+Bsw=", + "owner": "NousResearch", + "repo": "hermes-agent", + "rev": "1c0cd667746d3395fe9e1b6c74f8f85952486f18", + "type": "github" + }, + "original": { + "owner": "NousResearch", + "repo": "hermes-agent", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -359,6 +408,27 @@ "url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst" } }, + "npm-lockfile-fix": { + "inputs": { + "nixpkgs": [ + "hermes-agent", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775903712, + "narHash": "sha256-2GV79U6iVH4gKAPWYrxUReB0S41ty/Y3dBLquU8AlaA=", + "owner": "jeslie0", + "repo": "npm-lockfile-fix", + "rev": "c6093acb0c0548e0f9b8b3d82918823721930fe8", + "type": "github" + }, + "original": { + "owner": "jeslie0", + "repo": "npm-lockfile-fix", + "type": "github" + } + }, "nur": { "inputs": { "flake-parts": [ @@ -384,10 +454,61 @@ "type": "github" } }, + "pyproject-build-systems": { + "inputs": { + "nixpkgs": [ + "hermes-agent", + "nixpkgs" + ], + "pyproject-nix": [ + "hermes-agent", + "pyproject-nix" + ], + "uv2nix": [ + "hermes-agent", + "uv2nix" + ] + }, + "locked": { + "lastModified": 1792499785, + "narHash": "sha256-mGOkvueuMGSRiD75ccxFzfEvSlIU9ztjFluHMKOtogY=", + "owner": "pyproject-nix", + "repo": "build-system-pkgs", + "rev": "a17819c85163988e063806ffc4f6d2716bc8ead8", + "type": "github" + }, + "original": { + "owner": "pyproject-nix", + "repo": "build-system-pkgs", + "type": "github" + } + }, + "pyproject-nix": { + "inputs": { + "nixpkgs": [ + "hermes-agent", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1791657700, + "narHash": "sha256-vcCAvhtA7hG+/gOge29hYHy7I/dLkIsr5nLx4sFEQic=", + "owner": "pyproject-nix", + "repo": "pyproject.nix", + "rev": "ddc400a6883b042646d0940e65971bb7f7e96107", + "type": "github" + }, + "original": { + "owner": "pyproject-nix", + "repo": "pyproject.nix", + "type": "github" + } + }, "root": { "inputs": { "agenix": "agenix", "flake-parts": "flake-parts", + "hermes-agent": "hermes-agent", "home-manager": "home-manager", "import-tree": "import-tree", "nix-easyroam": "nix-easyroam", @@ -425,7 +546,7 @@ "base16-helix": "base16-helix", "base16-vim": "base16-vim", "firefox-gnome-theme": "firefox-gnome-theme", - "flake-parts": "flake-parts_2", + "flake-parts": "flake-parts_3", "gnome-shell": "gnome-shell", "nixpkgs": [ "nixpkgs" @@ -566,6 +687,31 @@ "repo": "treefmt-nix", "type": "github" } + }, + "uv2nix": { + "inputs": { + "nixpkgs": [ + "hermes-agent", + "nixpkgs" + ], + "pyproject-nix": [ + "hermes-agent", + "pyproject-nix" + ] + }, + "locked": { + "lastModified": 1792666911, + "narHash": "sha256-UWo7wDPi00YXOI1Io7g4vGKuCSPJ863kHJVDzsgqtoM=", + "owner": "pyproject-nix", + "repo": "uv2nix", + "rev": "0fdaa03ea3c3c16dbb1fe4d69108f07227a4b42d", + "type": "github" + }, + "original": { + "owner": "pyproject-nix", + "repo": "uv2nix", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 71d80a7..b743e19 100644 --- a/flake.nix +++ b/flake.nix @@ -28,6 +28,11 @@ url = "github:Gerg-L/spicetify-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; + hermes-agent = { + url = "github:NousResearch/hermes-agent"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.home-manager.follows = "home-manager"; + }; }; outputs = inputs: diff --git a/modules/home/programs/hermes.nix b/modules/home/programs/hermes.nix new file mode 100644 index 0000000..208b36d --- /dev/null +++ b/modules/home/programs/hermes.nix @@ -0,0 +1,9 @@ +{ inputs, ... }: { + flake.homeModules.hermes = { + imports = [ inputs.hermes-agent.homeManagerModules.default ]; + programs.hermes-agent = { + enable = true; + desktop.enable = true; + }; + }; +} diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index 7c94917..fc9dd54 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -24,6 +24,7 @@ btop nixcord ghostty + hermes niri emacs git diff --git a/modules/system/stylix/default.nix b/modules/system/stylix/default.nix index 8f195e6..c066807 100644 --- a/modules/system/stylix/default.nix +++ b/modules/system/stylix/default.nix @@ -5,7 +5,7 @@ ]; stylix = { enable = true; - base16Scheme = "${pkgs.base16-schemes}/share/themes/oxocarbon-dark.yaml"; + base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml"; cursor = { name = "macOS"; package = pkgs.apple-cursor; From b79a4b248ce7c5fb22ccf861818ce6b83ba00834 Mon Sep 17 00:00:00 2001 From: lucy Date: Mon, 26 Oct 2026 10:15:33 +0100 Subject: [PATCH 34/47] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'hermes-agent': 'github:NousResearch/hermes-agent/1c0cd667746d3395fe9e1b6c74f8f85952486f18?narHash=sha256-q%2BGuDKV3sve6ZIBTQ370%2BP/H70YxKANDjAG/Fb3%2BBsw%3D' (2026-10-24) → 'github:NousResearch/hermes-agent/9b904dcc22c23fe8b82834339bbdd96495072e59?narHash=sha256-gZD8QVfZU4d19WbpGU1d3a1N4iJ0w1b916b/V%2BP0%2Bcc%3D' (2026-10-26) • Updated input 'home-manager': 'github:nix-community/home-manager/ec80131710bffcdf3b8498cf41f3a0579833b023?narHash=sha256-TyoYH983Nsc%2B%2B1scw0SoOEKshPSJWJDxK7tTmuZ974M%3D' (2026-10-20) → 'github:nix-community/home-manager/c216bf5a1f173b0481bd5c8c489ebe5595ecc68c?narHash=sha256-/0tELNnhdSnP%2BbHSdWiEe6KpfSwi6WrTnT9cm/jNkjA%3D' (2026-10-25) • Updated input 'nixcord': 'github:4evy/nixcord/99ad1fb696c3b761ea6dac99211c862b9ca64571?narHash=sha256-XpP8ws1IYlvoQVN27adsJkLP5IsJ6H/o8aWtS3WrE2s%3D' (2026-10-21) → 'github:4evy/nixcord/63e33cd00b08ef49b6623a1b6f9f27f69049d1a9?narHash=sha256-i8nr7pMfov5q0W5m1UCeNYGClbA4hdbmTwa%2BOkumdlY%3D' (2026-10-26) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/02c087f3fe673c9e317f206a627cb6b910336dbe?narHash=sha256-IoNisKcGbUjdd45qCqywGMCYmZ5EnkxezvLII0FWwNA%3D' (2026-10-20) → 'github:nixos/nixpkgs/3ec636362e1816bc2f0888fa0fa2c69f1bc9e504?narHash=sha256-rZLrzrC6i%2BjnTAlvPZHogKDulY7WWDEv9hJeHieO7Zw%3D' (2026-10-23) • Updated input 'spicetify-nix': 'github:Gerg-L/spicetify-nix/fc58c85761e0893299092f482150305b1ef60914?narHash=sha256-W76wP2Kr/a/E2IMK3wtBD5WaTJJnB21C25pWUbD5IC8%3D' (2026-10-18) → 'github:Gerg-L/spicetify-nix/f6eb8135c060130150c8fbcc6b7cf5e22e5179d8?narHash=sha256-gJ8uPmQFhJ98X%2BVWPpD%2Bo0tnQ0nJjbG%2BZ3QDHcSJKw0%3D' (2026-10-25) • Updated input 'stylix': 'github:nix-community/stylix/2856c4c6a845b9bec98828ef197abe176e4806bb?narHash=sha256-UMnLnZ3JlA7UTBNNNx1rNsXYoPP/cirXLCKGiQ/yDx8%3D' (2026-10-09) → 'github:nix-community/stylix/3e27b6c499e507df6e3bb8eca3614f5c95e28140?narHash=sha256-2pkE97wOXAYIn2/Nhs9y%2BiR0qVT%2Bg/3UtukXdkywxXc%3D' (2026-10-25) --- flake.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/flake.lock b/flake.lock index f8e9c39..cfc596a 100644 --- a/flake.lock +++ b/flake.lock @@ -214,11 +214,11 @@ "uv2nix": "uv2nix" }, "locked": { - "lastModified": 1792874130, - "narHash": "sha256-q+GuDKV3sve6ZIBTQ370+P/H70YxKANDjAG/Fb3+Bsw=", + "lastModified": 1793005886, + "narHash": "sha256-gZD8QVfZU4d19WbpGU1d3a1N4iJ0w1b916b/V+P0+cc=", "owner": "NousResearch", "repo": "hermes-agent", - "rev": "1c0cd667746d3395fe9e1b6c74f8f85952486f18", + "rev": "9b904dcc22c23fe8b82834339bbdd96495072e59", "type": "github" }, "original": { @@ -234,11 +234,11 @@ ] }, "locked": { - "lastModified": 1792495086, - "narHash": "sha256-TyoYH983Nsc++1scw0SoOEKshPSJWJDxK7tTmuZ974M=", + "lastModified": 1792896866, + "narHash": "sha256-/0tELNnhdSnP+bHSdWiEe6KpfSwi6WrTnT9cm/jNkjA=", "owner": "nix-community", "repo": "home-manager", - "rev": "ec80131710bffcdf3b8498cf41f3a0579833b023", + "rev": "c216bf5a1f173b0481bd5c8c489ebe5595ecc68c", "type": "github" }, "original": { @@ -338,11 +338,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1792571875, - "narHash": "sha256-XpP8ws1IYlvoQVN27adsJkLP5IsJ6H/o8aWtS3WrE2s=", + "lastModified": 1792984624, + "narHash": "sha256-i8nr7pMfov5q0W5m1UCeNYGClbA4hdbmTwa+OkumdlY=", "owner": "4evy", "repo": "nixcord", - "rev": "99ad1fb696c3b761ea6dac99211c862b9ca64571", + "rev": "63e33cd00b08ef49b6623a1b6f9f27f69049d1a9", "type": "github" }, "original": { @@ -353,11 +353,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1792502884, - "narHash": "sha256-IoNisKcGbUjdd45qCqywGMCYmZ5EnkxezvLII0FWwNA=", + "lastModified": 1792773339, + "narHash": "sha256-rZLrzrC6i+jnTAlvPZHogKDulY7WWDEv9hJeHieO7Zw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "02c087f3fe673c9e317f206a627cb6b910336dbe", + "rev": "3ec636362e1816bc2f0888fa0fa2c69f1bc9e504", "type": "github" }, "original": { @@ -526,11 +526,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1792312987, - "narHash": "sha256-W76wP2Kr/a/E2IMK3wtBD5WaTJJnB21C25pWUbD5IC8=", + "lastModified": 1792919014, + "narHash": "sha256-gJ8uPmQFhJ98X+VWPpD+o0tnQ0nJjbG+Z3QDHcSJKw0=", "owner": "Gerg-L", "repo": "spicetify-nix", - "rev": "fc58c85761e0893299092f482150305b1ef60914", + "rev": "f6eb8135c060130150c8fbcc6b7cf5e22e5179d8", "type": "github" }, "original": { @@ -559,11 +559,11 @@ "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1791574276, - "narHash": "sha256-UMnLnZ3JlA7UTBNNNx1rNsXYoPP/cirXLCKGiQ/yDx8=", + "lastModified": 1792920263, + "narHash": "sha256-2pkE97wOXAYIn2/Nhs9y+iR0qVT+g/3UtukXdkywxXc=", "owner": "nix-community", "repo": "stylix", - "rev": "2856c4c6a845b9bec98828ef197abe176e4806bb", + "rev": "3e27b6c499e507df6e3bb8eca3614f5c95e28140", "type": "github" }, "original": { From 3bf7626b15156ace1da9206595b0a747ac984b88 Mon Sep 17 00:00:00 2001 From: lucy Date: Mon, 26 Oct 2026 10:48:34 +0100 Subject: [PATCH 35/47] reload qs on hm activation --- modules/system/core/user.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index fc9dd54..6f43809 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -15,10 +15,18 @@ home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.extraSpecialArgs = { inherit inputs; }; - home-manager.users.lucy = { + home-manager.users.lucy = { config, lib, ... }: { home.username = "lucy"; home.homeDirectory = "/home/lucy"; home.stateVersion = "25.11"; + home.activation.reloadQuickshell = lib.hm.dag.entryAfter [ "writeBoundary" ] '' + qs=${lib.getExe' config.programs.quickshell.package "qs"} + runtime_dir="''${XDG_RUNTIME_DIR:-/run/user/$(id -u)}" + if run --silence env XDG_RUNTIME_DIR="$runtime_dir" "$qs" ipc show; then + run --silence env XDG_RUNTIME_DIR="$runtime_dir" "$qs" ipc call config reload || + warnEcho "Quickshell is running, but 'qs ipc call config reload' failed" + fi + ''; }; home-manager.sharedModules = with self.homeModules; [ btop From c0f1b2abd7b00040925397e3f6225afc6b2bf696 Mon Sep 17 00:00:00 2001 From: lucy Date: Mon, 26 Oct 2026 14:22:37 +0100 Subject: [PATCH 36/47] add components for hermes screen --- modules/home/programs/hermes.nix | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/modules/home/programs/hermes.nix b/modules/home/programs/hermes.nix index 208b36d..303bf88 100644 --- a/modules/home/programs/hermes.nix +++ b/modules/home/programs/hermes.nix @@ -1,9 +1,26 @@ { inputs, ... }: { - flake.homeModules.hermes = { + flake.homeModules.hermes = { pkgs, ... }: { imports = [ inputs.hermes-agent.homeManagerModules.default ]; programs.hermes-agent = { enable = true; desktop.enable = true; }; + + # Bot Screen: Xvnc + Xfce-Kern, den tools/bot_desktop/launcher.sh erwartet + # (REQUIRED_BINARIES). Der Installer im Screen-Tab kennt nur apt/dnf/pacman. + home.packages = with pkgs; [ + tigervnc # Xvnc + xfwm4 + xfce.xfce4-panel + xfce.xfdesktop + xfce.xfce4-settings # xfsettingsd + xfce.xfce4-terminal + xauth + xdpyinfo + setxkbmap + xprop + xsetroot + xset + ]; }; } From 1ed478d98740488f81bcf2491d61867654ba68db Mon Sep 17 00:00:00 2001 From: lucy Date: Mon, 26 Oct 2026 22:20:00 +0100 Subject: [PATCH 37/47] change packages and add needed packages for hermes screen to hermes.nix --- modules/home/programs/hermes.nix | 13 +++++++++---- modules/system/core/packages.nix | 6 ++---- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/modules/home/programs/hermes.nix b/modules/home/programs/hermes.nix index 303bf88..0bc87be 100644 --- a/modules/home/programs/hermes.nix +++ b/modules/home/programs/hermes.nix @@ -10,17 +10,22 @@ # (REQUIRED_BINARIES). Der Installer im Screen-Tab kennt nur apt/dnf/pacman. home.packages = with pkgs; [ tigervnc # Xvnc + dbus # dbus-run-session xfwm4 - xfce.xfce4-panel - xfce.xfdesktop - xfce.xfce4-settings # xfsettingsd - xfce.xfce4-terminal + xfce4-panel + xfdesktop + xfce4-settings # xfsettingsd + xfce4-terminal xauth xdpyinfo setxkbmap xprop xsetroot xset + # Der Screen-Launcher schreibt ThemeName=Adwaita-dark und IconThemeName=hicolor + # in xsettings.xml; ohne gnome-themes-extra fällt GTK auf ein unthemed Default + # zurück (Chromium-Fenster "ohne Theme"). + gnome-themes-extra ]; }; } diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index 09330b3..6335706 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -17,16 +17,14 @@ nautilus libwacom devenv - kdePackages.qt6ct gcc - clang-tools gdb + clang-tools gnumake - libreoffice ripgrep jq - nmgui kdePackages.qtdeclarative + brightnessctl ]; fonts.packages = with pkgs; [ inter From 29e7918966633b6c4e2e5f614b2054262f11ced3 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 28 Oct 2026 15:14:51 +0100 Subject: [PATCH 38/47] switch fonts --- modules/system/core/packages.nix | 1 + modules/system/stylix/fonts.nix | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index 6335706..c05baa2 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -25,6 +25,7 @@ jq kdePackages.qtdeclarative brightnessctl + libreoffice-stable ]; fonts.packages = with pkgs; [ inter diff --git a/modules/system/stylix/fonts.nix b/modules/system/stylix/fonts.nix index b45a8c1..4d5338d 100644 --- a/modules/system/stylix/fonts.nix +++ b/modules/system/stylix/fonts.nix @@ -13,8 +13,8 @@ }; monospace = { - package = pkgs.iosevka; - name = "Iosevka"; + package = pkgs.maple-mono.Normal-TTF; + name = "Maple Mono Normal"; }; emoji = { From e313c72d4690414d203ad25499a5b7704588c428 Mon Sep 17 00:00:00 2001 From: lucy Date: Wed, 28 Oct 2026 15:18:31 +0100 Subject: [PATCH 39/47] use gruvbox-dark-hard --- modules/system/stylix/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/system/stylix/default.nix b/modules/system/stylix/default.nix index c066807..b312641 100644 --- a/modules/system/stylix/default.nix +++ b/modules/system/stylix/default.nix @@ -5,7 +5,7 @@ ]; stylix = { enable = true; - base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml"; + base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml"; cursor = { name = "macOS"; package = pkgs.apple-cursor; From d160a5898459d0b7b440a82cf0d9fd6534617d6d Mon Sep 17 00:00:00 2001 From: lucy Date: Thu, 29 Oct 2026 11:59:00 +0100 Subject: [PATCH 40/47] add clangd config file --- modules/home/programs/clangd.nix | 10 ++++++++++ modules/system/core/user.nix | 1 + 2 files changed, 11 insertions(+) create mode 100644 modules/home/programs/clangd.nix diff --git a/modules/home/programs/clangd.nix b/modules/home/programs/clangd.nix new file mode 100644 index 0000000..9cfc58c --- /dev/null +++ b/modules/home/programs/clangd.nix @@ -0,0 +1,10 @@ +{ ... }: { + flake.homeModules.clangd = { + home.file."clangd" = { + text = '' + BreakBeforeBraces: Allman + IndentWidth: 8 + ''; + }; + }; +} diff --git a/modules/system/core/user.nix b/modules/system/core/user.nix index 6f43809..0830502 100644 --- a/modules/system/core/user.nix +++ b/modules/system/core/user.nix @@ -30,6 +30,7 @@ }; home-manager.sharedModules = with self.homeModules; [ btop + clangd nixcord ghostty hermes From 7e933a89b0eac2ad19c92429baf3f0b0fb490c9e Mon Sep 17 00:00:00 2001 From: lucy Date: Fri, 30 Oct 2026 21:49:25 +0100 Subject: [PATCH 41/47] add ani-cli to system packages --- modules/home/programs/clangd.nix | 2 ++ modules/system/core/packages.nix | 1 + 2 files changed, 3 insertions(+) diff --git a/modules/home/programs/clangd.nix b/modules/home/programs/clangd.nix index 9cfc58c..e24d2f0 100644 --- a/modules/home/programs/clangd.nix +++ b/modules/home/programs/clangd.nix @@ -5,6 +5,8 @@ BreakBeforeBraces: Allman IndentWidth: 8 ''; + target = ".clang-format"; + }; }; } diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index c05baa2..a29d9c6 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -26,6 +26,7 @@ kdePackages.qtdeclarative brightnessctl libreoffice-stable + ani-cli ]; fonts.packages = with pkgs; [ inter From a695cd5132eeb1970803b3f00d5aad7348fac49d Mon Sep 17 00:00:00 2001 From: lucy Date: Mon, 2 Nov 2026 13:12:27 +0100 Subject: [PATCH 42/47] add nautilus module --- modules/default.nix | 1 + modules/system/core/.#core.nix | 1 + modules/system/core/packages.nix | 1 + modules/system/programs/nautilus.nix | 6 ++++++ 4 files changed, 9 insertions(+) create mode 120000 modules/system/core/.#core.nix create mode 100644 modules/system/programs/nautilus.nix diff --git a/modules/default.nix b/modules/default.nix index bc86718..68abba5 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -12,6 +12,7 @@ let core chromium easyroam + nautilus packages pipewire programs diff --git a/modules/system/core/.#core.nix b/modules/system/core/.#core.nix new file mode 120000 index 0000000..5264b64 --- /dev/null +++ b/modules/system/core/.#core.nix @@ -0,0 +1 @@ +lucy@seele.646918:1792669977 \ No newline at end of file diff --git a/modules/system/core/packages.nix b/modules/system/core/packages.nix index a29d9c6..e316ac4 100644 --- a/modules/system/core/packages.nix +++ b/modules/system/core/packages.nix @@ -27,6 +27,7 @@ brightnessctl libreoffice-stable ani-cli + ryubing ]; fonts.packages = with pkgs; [ inter diff --git a/modules/system/programs/nautilus.nix b/modules/system/programs/nautilus.nix new file mode 100644 index 0000000..94e33ca --- /dev/null +++ b/modules/system/programs/nautilus.nix @@ -0,0 +1,6 @@ +{ ... }: { + flake.nixosModules.nautilus = { + services.gvfs.enable = true; + services.udisks2.enable = true; + }; +} From 0fe3abef0e9faa80fefaa78cc0f0745e87283921 Mon Sep 17 00:00:00 2001 From: lucy Date: Mon, 2 Nov 2026 13:13:30 +0100 Subject: [PATCH 43/47] remove stale emacs lock --- modules/system/core/.#core.nix | 1 - 1 file changed, 1 deletion(-) delete mode 120000 modules/system/core/.#core.nix diff --git a/modules/system/core/.#core.nix b/modules/system/core/.#core.nix deleted file mode 120000 index 5264b64..0000000 --- a/modules/system/core/.#core.nix +++ /dev/null @@ -1 +0,0 @@ -lucy@seele.646918:1792669977 \ No newline at end of file From 437a074fe8496b7b6ce2e6ec61afca4e545645fb Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 3 Nov 2026 11:13:11 +0100 Subject: [PATCH 44/47] use tokyo-night-dark --- modules/system/stylix/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/system/stylix/default.nix b/modules/system/stylix/default.nix index b312641..04fea95 100644 --- a/modules/system/stylix/default.nix +++ b/modules/system/stylix/default.nix @@ -5,7 +5,7 @@ ]; stylix = { enable = true; - base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-dark-hard.yaml"; + base16Scheme = "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml"; cursor = { name = "macOS"; package = pkgs.apple-cursor; From 8b21230a3b48edb138ffebf07047fc82c75c02d5 Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 3 Nov 2026 15:31:31 +0100 Subject: [PATCH 45/47] remove hermes desktop app --- modules/home/programs/hermes.nix | 23 --------- .../hosts/seele/#hardware-configuration.nix# | 49 +++++++++++++++++++ 2 files changed, 49 insertions(+), 23 deletions(-) create mode 100644 modules/system/hosts/seele/#hardware-configuration.nix# diff --git a/modules/home/programs/hermes.nix b/modules/home/programs/hermes.nix index 0bc87be..c84577d 100644 --- a/modules/home/programs/hermes.nix +++ b/modules/home/programs/hermes.nix @@ -3,29 +3,6 @@ imports = [ inputs.hermes-agent.homeManagerModules.default ]; programs.hermes-agent = { enable = true; - desktop.enable = true; }; - - # Bot Screen: Xvnc + Xfce-Kern, den tools/bot_desktop/launcher.sh erwartet - # (REQUIRED_BINARIES). Der Installer im Screen-Tab kennt nur apt/dnf/pacman. - home.packages = with pkgs; [ - tigervnc # Xvnc - dbus # dbus-run-session - xfwm4 - xfce4-panel - xfdesktop - xfce4-settings # xfsettingsd - xfce4-terminal - xauth - xdpyinfo - setxkbmap - xprop - xsetroot - xset - # Der Screen-Launcher schreibt ThemeName=Adwaita-dark und IconThemeName=hicolor - # in xsettings.xml; ohne gnome-themes-extra fällt GTK auf ein unthemed Default - # zurück (Chromium-Fenster "ohne Theme"). - gnome-themes-extra - ]; }; } diff --git a/modules/system/hosts/seele/#hardware-configuration.nix# b/modules/system/hosts/seele/#hardware-configuration.nix# new file mode 100644 index 0000000..60e76f9 --- /dev/null +++ b/modules/system/hosts/seele/#hardware-configuration.nix# @@ -0,0 +1,49 @@ +{ + lib, + config, + modulesPath, + ... +}: + +{ + flake.nixosModules.seele = + { + config, + lib, + + ... + }: + { + boot.initrd.availableKernelModules = [ + "xhci_pci" + "nvme" + "usb_storage" + "sd_mod" + "sdhci_pci" + ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/629196f0-60e9-476e-b294-0d22fd7279c4"; + fsType = "xfs"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/2474-C1E6"; + fsType = "vfat"; + options = [ + "fmask=0077" + "dmask=0077" + ]; + }; + + swapDevices = [ + { device = "/dev/disk/by-uuid/166d1fb4-527f-4fda-a6bf-85aad4a4f917"; } + ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + }; +} From 4af197d174b79a0c56a1556b1c9cdea2a4fe5d66 Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 3 Nov 2026 15:32:07 +0100 Subject: [PATCH 46/47] remove emacs autosave file --- .../hosts/seele/#hardware-configuration.nix# | 49 ------------------- 1 file changed, 49 deletions(-) delete mode 100644 modules/system/hosts/seele/#hardware-configuration.nix# diff --git a/modules/system/hosts/seele/#hardware-configuration.nix# b/modules/system/hosts/seele/#hardware-configuration.nix# deleted file mode 100644 index 60e76f9..0000000 --- a/modules/system/hosts/seele/#hardware-configuration.nix# +++ /dev/null @@ -1,49 +0,0 @@ -{ - lib, - config, - modulesPath, - ... -}: - -{ - flake.nixosModules.seele = - { - config, - lib, - - ... - }: - { - boot.initrd.availableKernelModules = [ - "xhci_pci" - "nvme" - "usb_storage" - "sd_mod" - "sdhci_pci" - ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = { - device = "/dev/disk/by-uuid/629196f0-60e9-476e-b294-0d22fd7279c4"; - fsType = "xfs"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/2474-C1E6"; - fsType = "vfat"; - options = [ - "fmask=0077" - "dmask=0077" - ]; - }; - - swapDevices = [ - { device = "/dev/disk/by-uuid/166d1fb4-527f-4fda-a6bf-85aad4a4f917"; } - ]; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - }; -} From 8e907b1ad439673cdf486dfacb3c8ea9063b2e24 Mon Sep 17 00:00:00 2001 From: lucy Date: Tue, 3 Nov 2026 15:41:21 +0100 Subject: [PATCH 47/47] add module for gaming --- modules/default.nix | 1 + modules/system/programs/default.nix | 1 - modules/system/programs/gaming.nix | 26 ++++++++++++++++++++++++++ 3 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 modules/system/programs/gaming.nix diff --git a/modules/default.nix b/modules/default.nix index 68abba5..e5addbc 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -11,6 +11,7 @@ let boot core chromium + gaming easyroam nautilus packages diff --git a/modules/system/programs/default.nix b/modules/system/programs/default.nix index e4458ef..4950094 100644 --- a/modules/system/programs/default.nix +++ b/modules/system/programs/default.nix @@ -1,7 +1,6 @@ { ... }: { flake.nixosModules.programs = { programs.niri.enable = true; - programs.steam.enable = true; programs.direnv.enable = true; }; } diff --git a/modules/system/programs/gaming.nix b/modules/system/programs/gaming.nix new file mode 100644 index 0000000..aeeff62 --- /dev/null +++ b/modules/system/programs/gaming.nix @@ -0,0 +1,26 @@ +{ + flake.nixosModules.gaming = + { pkgs, ... }: + { + programs.steam = { + enable = true; + extraCompatPackages = with pkgs; [ proton-ge-bin ]; + protontricks.enable = true; + remotePlay.openFirewall = true; + localNetworkGameTransfers.openFirewall = true; + }; + + programs.gamescope = { + enable = true; + capSysNice = true; + enableWsi = true; + }; + + programs.gamemode.enable = true; + + environment.systemPackages = with pkgs; [ + heroic # Epic-Fassung von Rocket League (braucht GE-Proton) + umu-launcher # Proton-Runtime für Heroic / Nicht-Steam-Games + ]; + }; +}