From e6ab43c88256a82958e06de74f92cce2e8306944 Mon Sep 17 00:00:00 2001 From: Bun Date: Mon, 28 Apr 2025 22:57:47 -0400 Subject: [PATCH] Lots more Jupiter changes, wireless for all by default, no more earlyoom --- hosts/envy/default.nix | 5 +- hosts/intuos/default.nix | 5 +- hosts/jupiter/boot/default.nix | 1 + hosts/jupiter/default.nix | 9 +- hosts/jupiter/id_ed25519.pub | 2 +- hosts/jupiter/jovian/default.nix | 123 ++++++++++++++---- hosts/jupiter/network/default.nix | 13 -- hosts/redmond/default.nix | 5 +- hosts/tower/disko/default.nix | 1 - .../home/programs/gui/librewolf/default.nix | 2 +- modules/home/wms/sway/autostart/default.nix | 1 - modules/system/devices/networking/default.nix | 5 +- modules/system/services/general/default.nix | 1 - .../services/general/earlyoom/default.nix | 4 - modules/system/users/main/default.nix | 1 + 15 files changed, 113 insertions(+), 65 deletions(-) delete mode 100644 hosts/jupiter/network/default.nix delete mode 100644 modules/system/services/general/earlyoom/default.nix diff --git a/hosts/envy/default.nix b/hosts/envy/default.nix index 8d51adcf..628a7f30 100644 --- a/hosts/envy/default.nix +++ b/hosts/envy/default.nix @@ -10,10 +10,7 @@ ../../modules/system ]; - networking = { - hostName = "envy"; - wireless.enable = true; - }; + networking.hostName = "envy"; system = { desktop.enable = true; diff --git a/hosts/intuos/default.nix b/hosts/intuos/default.nix index 55e3a393..f11da908 100644 --- a/hosts/intuos/default.nix +++ b/hosts/intuos/default.nix @@ -10,10 +10,7 @@ ../../modules/system ]; - networking = { - hostName = "intuos"; - wireless.enable = true; - }; + networking.hostName = "intuos"; system = { desktop.enable = true; diff --git a/hosts/jupiter/boot/default.nix b/hosts/jupiter/boot/default.nix index 2b11c5a3..3cf63f7f 100644 --- a/hosts/jupiter/boot/default.nix +++ b/hosts/jupiter/boot/default.nix @@ -1,6 +1,7 @@ { pkgs, ... }: { boot = { + kernelPackages = pkgs.linuxPackages_latest; loader.systemd-boot.enable = true; plymouth.enable = true; }; diff --git a/hosts/jupiter/default.nix b/hosts/jupiter/default.nix index 95305ca3..2a7a6afd 100644 --- a/hosts/jupiter/default.nix +++ b/hosts/jupiter/default.nix @@ -6,18 +6,15 @@ ./filesystems ./hardware ./jovian - ./network ./users ../../modules/system ]; - networking = { - hostName = "jupiter"; - networkmanager.enable = true; - }; + networking.hostName = "jupiter"; system = { desktop.enable = true; - stateVersion = "24.05"; + steamdeck.enable = true; + stateVersion = "24.11"; }; } diff --git a/hosts/jupiter/id_ed25519.pub b/hosts/jupiter/id_ed25519.pub index 5319a978..ed6df854 100644 --- a/hosts/jupiter/id_ed25519.pub +++ b/hosts/jupiter/id_ed25519.pub @@ -1 +1 @@ -ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICHJ2Gy1Gaq96K85zOSfgWzGY0rIaUcqGS7Si5Nvzg+n +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHkggr+MbQuBGko8mWsATYq/Y0BlQc++TH9Mq5Q0x8KG diff --git a/hosts/jupiter/jovian/default.nix b/hosts/jupiter/jovian/default.nix index fb0d119c..3a79eb5c 100644 --- a/hosts/jupiter/jovian/default.nix +++ b/hosts/jupiter/jovian/default.nix @@ -1,32 +1,107 @@ -{ config, lib, jovian, ... }: +{ config, lib, pkgs, jovian, ... }: { imports = [ jovian.nixosModules.jovian ]; - jovian = { - steam = { - enable = true; - autoStart = true; - desktopSession = "sway"; - user = config.sysusers.main; + options.system.steamdeck.enable = lib.mkEnableOption "Enable Jovian NixOS environment"; + + config = lib.mkIf config.system.steamdeck.enable { + jovian = { + steam = { + enable = true; + autoStart = true; + desktopSession = "gnome"; + user = config.sysusers.main; + }; + decky-loader = { + enable = true; + package = pkgs.decky-loader-prerelease; + }; + devices.steamdeck = { + enable = true; + enableGyroDsuService = true; + }; }; - devices.steamdeck.enable = true; - decky-loader.enable = true; - }; - services = { - displayManager.ly.enable = lib.mkForce false; - keyd.enable = lib.mkForce false; - }; + boot.kernelPackages = lib.mkForce pkgs.linuxPackages_jovian; - environment.persistence."/persist" = { - directories = [ "/etc/NetworkManager/system-connections" ]; - users.${config.sysusers.main}.directories = [ ".steam" ]; - }; + programs.steam = { + extest.enable = true; + extraCompatPackages = with pkgs; [ proton-ge-bin ]; + localNetworkGameTransfers.openFirewall = true; + remotePlay.openFirewall = true; + }; - nixpkgs.allowUnfreePackages = [ - "steam" - "steam-jupiter-unwrapped" - "steamdeck-firmware" - "steamdeck-hw-theme" - ]; + services = { + displayManager.ly.enable = lib.mkForce false; + keyd.enable = lib.mkForce false; + tlp.enable = lib.mkForce false; + xserver.desktopManager.gnome.enable = true; + }; + + networking = { + networkmanager.enable = true; + wireless.enable = lib.mkForce false; + }; + + environment = { + persistence."/persist" = { + directories = [ + "/etc/NetworkManager/system-connections" + "/var/lib/decky-loader" + ]; + users.${config.sysusers.main}.directories = [ + ".local/share/gnome-settings-daemon" + ".local/share/gnome-shell" + ".steam" + ]; + }; + gnome.excludePackages = with pkgs; [ + adwaita-icon-theme + baobab + epiphany + evince + file-roller + geary + gnome-calculator + gnome-calendar + gnome-characters + gnome-clocks + gnome-color-manager + gnome-connections + gnome-console + gnome-contacts + gnome-disk-utility + gnome-font-viewer + gnome-logs + gnome-maps + gnome-music + gnome-shell-extensions + gnome-software + gnome-system-monitor + gnome-text-editor + gnome-tour + gnome-user-docs + gnome-weather + loupe + nautilus + orca + seahorse + simple-scan + snapshot + sushi + sysprof + totem + yelp + ]; + }; + + nixpkgs.allowUnfreePackages = [ + "steam" + "steam-jupiter-unwrapped" + "steamdeck-firmware" + "steamdeck-hw-theme" + ]; + + specialisation.desktop.configuration.config.system.steamdeck.enable = lib.mkForce false; + }; } diff --git a/hosts/jupiter/network/default.nix b/hosts/jupiter/network/default.nix deleted file mode 100644 index f87dee8a..00000000 --- a/hosts/jupiter/network/default.nix +++ /dev/null @@ -1,13 +0,0 @@ -{ ... }: -{ - networking = { - interfaces."wlp1s0".ipv4.addresses = [{ - address = "192.168.2.200"; - prefixLength = 24; - }]; - defaultGateway = { - address = "192.168.2.1"; - interface = "wlp1s0"; - }; - }; -} diff --git a/hosts/redmond/default.nix b/hosts/redmond/default.nix index 4d3236e6..13049635 100644 --- a/hosts/redmond/default.nix +++ b/hosts/redmond/default.nix @@ -10,10 +10,7 @@ ../../modules/system ]; - networking = { - hostName = "redmond"; - wireless.enable = true; - }; + networking.hostName = "redmond"; system = { desktop.enable = true; diff --git a/hosts/tower/disko/default.nix b/hosts/tower/disko/default.nix index bd494254..be224a63 100644 --- a/hosts/tower/disko/default.nix +++ b/hosts/tower/disko/default.nix @@ -55,7 +55,6 @@ "/root" = { mountpoint = "/"; mountOptions = [ - "noexec" "compress=zstd" "ssd" ]; diff --git a/modules/home/programs/gui/librewolf/default.nix b/modules/home/programs/gui/librewolf/default.nix index cc47b036..19699e13 100644 --- a/modules/home/programs/gui/librewolf/default.nix +++ b/modules/home/programs/gui/librewolf/default.nix @@ -129,7 +129,7 @@ # Theming and visibility "browser.aboutConfig.showWarning" = false; "browser.compactmode.show" = true; - "browser.tabs.inTitlebar" = 0; + "browser.tabs.inTitlebar" = 1; "browser.theme.content-theme" = 0; "browser.theme.toolbar-theme" = 0; "browser.toolbars.bookmarks.visibility" = "never"; diff --git a/modules/home/wms/sway/autostart/default.nix b/modules/home/wms/sway/autostart/default.nix index 10ef504f..abdd193e 100644 --- a/modules/home/wms/sway/autostart/default.nix +++ b/modules/home/wms/sway/autostart/default.nix @@ -14,7 +14,6 @@ { command = "wl-paste -t text --watch clipman store -P"; } { command = "wl-copy"; } { command = "mako"; } - { command = "sunshine"; } { command = "rot8"; } { command = "wlsunset -s 22:30 -S 07:30"; } diff --git a/modules/system/devices/networking/default.nix b/modules/system/devices/networking/default.nix index 6af5014f..c1463249 100644 --- a/modules/system/devices/networking/default.nix +++ b/modules/system/devices/networking/default.nix @@ -7,7 +7,10 @@ dhcpcd.enable = false; nftables.enable = true; firewall.allowPing = false; - wireless.userControlled.enable = true; + wireless = { + enable = config.system.desktop.enable; + userControlled.enable = true; + }; nameservers = [ "2620:fe::11#dns11.quad9.net" "2620:fe::fe:11#dns11.quad9.net" diff --git a/modules/system/services/general/default.nix b/modules/system/services/general/default.nix index 22685c57..34cd1184 100644 --- a/modules/system/services/general/default.nix +++ b/modules/system/services/general/default.nix @@ -2,7 +2,6 @@ { imports = [ ./displaymanager - ./earlyoom ./gnome-keyring ./keyd ./libvirtd diff --git a/modules/system/services/general/earlyoom/default.nix b/modules/system/services/general/earlyoom/default.nix deleted file mode 100644 index 314cf48d..00000000 --- a/modules/system/services/general/earlyoom/default.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ ... }: -{ - services.earlyoom.enable = true; -} diff --git a/modules/system/users/main/default.nix b/modules/system/users/main/default.nix index 52ed203f..c4914633 100644 --- a/modules/system/users/main/default.nix +++ b/modules/system/users/main/default.nix @@ -16,6 +16,7 @@ ../../../../hosts/envy/id_ed25519.pub ../../../../hosts/intuos/id_ed25519.pub + ../../../../hosts/jupiter/id_ed25519.pub ../../../../hosts/redmond/id_ed25519.pub ../../../../hosts/midas/id_ed25519.pub