From d756e966b1743f096680dae422a53b083cf9b2b9 Mon Sep 17 00:00:00 2001 From: Sam Rolfe Date: Thu, 5 Mar 2026 17:06:32 +1100 Subject: [PATCH] Removed integra --- hosts/sam-4screen-desktop/configuration.nix | 90 ++++++++++++++++++--- 1 file changed, 80 insertions(+), 10 deletions(-) diff --git a/hosts/sam-4screen-desktop/configuration.nix b/hosts/sam-4screen-desktop/configuration.nix index e2b7986..7175917 100644 --- a/hosts/sam-4screen-desktop/configuration.nix +++ b/hosts/sam-4screen-desktop/configuration.nix @@ -49,6 +49,7 @@ home-manager.backupFileExtension = "hm-bak"; # Networking # --- networking.networkmanager.enable = true; + networking.interfaces.enp0s31f6.wakeOnLan.enable = true; # Static IP policy: # - Static IP must be on Wi-Fi SSID "Aussie Broadband 8729" @@ -122,6 +123,16 @@ home-manager.backupFileExtension = "hm-bak"; # --- +users.users.sam.openssh.authorizedKeys.keys = [ + "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC3yxLtvBY6ClGliUfKA6eJLwUoCmagT5aZTrMsJnguUIch5lmdIGqz8gbGoy9ADEBaUpSA9nQsZZaXQE34t4xEqAzqra7hYogHR2uT6bIoML0ZWPiiMvSHOtknKcnfK/MBBPKjGYJSMhy2nzP02ORZs9D+DlfV8nVknsJa/G5jkgJXpA4za0bhxIZWJE7DPFF/utfSjxs6AB2wOzjfLPeuqSyUVq8nze+b1zf8baMBYVNxxpbHCyEXCvpuoxDw3JVk5Ha+hYyWb7563cCSeakrGM3f5048pFdPRGdbi4qcNsQV1KCBEd939VsOSNcY7Yr69zjnWzZNDCRBWxzlu+3DNY8I7ukHzxR78FPAQ6eCDR4druwIiGqlo5CE6S4P1h0uqKH2RW75qXoLb/orlwHKnAi3YOxDvELTQnxnLVgp6ahRpRu7ZqtLfJfwMLVcjTaExm8Yo4fLTJMgNv7U4bY/yRgenRzzRKHwL+kR/+SfY6KOH+8X0Jf0J653d9Z3VcVrXgo8r4vv6wx8CE605AfgQAsK9RN0cmtaDgd5GaXs3BOWMz+IeeiauSF2EXvPK5BsnvnZbBfATgpqsfi+iShoIDJ0+6mbwFqbczc17Ss9Z0mkSZyg3fsQHpWo9UFBNq5Jic1UGcjUKcvvZaB6/5bPvc6dVL/JKGcj0xqogr1paQ== root@core-ssh" +]; + + + services.ollama.enable = true; + +services.udisks2.enable = true; +services.dbus.enable = true; + programs.kdeconnect.enable = true; services.gvfs.enable = true; services.tumbler.enable = true; @@ -176,6 +187,18 @@ PermitRootLogin = "no"; # especially in minimal Wayland sessions. security.polkit.enable = true; + +security.polkit.extraConfig = '' + polkit.addRule(function(action, subject) { + if (action.id == "org.freedesktop.login1.suspend" && + subject.user == "sam") { + return polkit.Result.YES; + } + }); +''; + + + # --- # Firmware / microcode (stability) # --- @@ -220,18 +243,48 @@ PermitRootLogin = "no"; # fsType = "ext4"; # options = [ "nofail" "x-systemd.device-timeout=1s" ]; # }; -fileSystems."/mnt/integral300" = { - device = "/dev/disk/by-uuid/27febd74-20aa-4a3a-92c1-6fdd1ad7e88e"; - fsType = "ext4"; - options = [ - "nofail" - "noauto" - "x-systemd.automount" - "x-systemd.idle-timeout=60" - "x-systemd.device-timeout=30s" - ]; + + +systemd.services.wake-on-lan-resume = { + description = "Re-enable Wake-on-LAN after resume"; + wantedBy = [ "post-resume.target" ]; + after = [ "post-resume.target" ]; + serviceConfig = { + Type = "oneshot"; + ExecStart = "${pkgs.ethtool}/bin/ethtool -s enp0s31f6 wol g"; + }; }; +# Allow sam to suspend without password (for Home Assistant WOL) +security.sudo.extraRules = [ + { + users = [ "sam" ]; + commands = [ + { + command = "${pkgs.systemd}/bin/systemctl suspend"; + options = [ "NOPASSWD" ]; + } + ]; + } +]; + + + + +# This was the integral drive that died. + +# fileSystems."/mnt/integral300" = { +# device = "/dev/disk/by-uuid/27febd74-20aa-4a3a-92c1-6fdd1ad7e88e"; +# fsType = "ext4"; +# options = [ +# "nofail" +# "noauto" +# "x-systemd.automount" +# "x-systemd.idle-timeout=60" +# "x-systemd.device-timeout=30s" +# ]; +# }; + fileSystems."/mnt/backup" = { device = "/dev/disk/by-uuid/0806B92006B90FA4"; fsType = "ntfs3"; @@ -315,6 +368,7 @@ systemd.tmpfiles.rules = lib.mkAfter [ extraPortals = [ pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-wlr + pkgs.kdePackages.xdg-desktop-portal-kde ]; }; @@ -327,6 +381,9 @@ fonts.packages = with pkgs; [ # Minimal system packages needed for the session and core usability environment.systemPackages = with pkgs; [ + + ethtool + swww uv (pkgs.callPackage ../../pkgs/agentpipe.nix { }) @@ -334,6 +391,14 @@ fonts.packages = with pkgs; [ xfce.thunar xfce.tumbler ffmpegthumbnailer + + + # Optional: ensure Qt apps look okay in Niri + kdePackages.qtwayland + kdePackages.qtsvg + + + poppler-utils kdePackages.kdeconnect-kde tmux @@ -364,6 +429,11 @@ fonts.packages = with pkgs; [ grim slurp ]; + + + + + services.tailscale.enable = true; # --- # NVIDIA (simple, first-boot stable config; PRIME tuning later)