From eeb53599fb7f7a6ae9543f37538d6eef69b5d81c Mon Sep 17 00:00:00 2001 From: Jakub Stachurski Date: Sat, 11 Oct 2025 21:02:35 +0200 Subject: Bunch of updates: - Fixed not having virt-manager - Added Steam - Removed old ssd mounts on apocalypse - Fixed syncthing service - Probably some spotify stuff --- flake.lock | 12 +++---- home-modules/apps/default.nix | 6 ++-- home-modules/apps/desktop/default.nix | 1 - home-modules/services/default.nix | 2 +- home-modules/services/syncthing.nix | 8 +++-- hosts/apocalypse/default.nix | 1 + hosts/apocalypse/hardware-configuration.nix | 20 ++++++------ modules/desktop/default.nix | 1 + modules/desktop/steam.nix | 50 +++++++++++++++++++++++++++++ modules/desktop/wayland.nix | 7 ++++ modules/virt.nix | 3 +- users/wilkuu.nix | 2 +- 12 files changed, 87 insertions(+), 26 deletions(-) create mode 100644 modules/desktop/steam.nix diff --git a/flake.lock b/flake.lock index 0353969..3380cfa 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1758810399, - "narHash": "sha256-bpWoE1tiFX5T1tr5EudkpW9Kk02XR+6olkoSkf3nHZU=", + "lastModified": 1759573136, + "narHash": "sha256-ILSPD0Dm8p0w0fCVzOx98ZH8yFDrR75GmwmH3fS2VnE=", "owner": "nix-community", "repo": "home-manager", - "rev": "39d26c16866260eee6d0487fe9c102ba1c1bf7b2", + "rev": "5f06ceafc6c9b773a776b9195c3f47bbe1defa43", "type": "github" }, "original": { @@ -22,11 +22,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1758690382, - "narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=", + "lastModified": 1759381078, + "narHash": "sha256-gTrEEp5gEspIcCOx9PD8kMaF1iEmfBcTbO0Jag2QhQs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e643668fd71b949c53f8626614b21ff71a07379d", + "rev": "7df7ff7d8e00218376575f0acdcc5d66741351ee", "type": "github" }, "original": { diff --git a/home-modules/apps/default.nix b/home-modules/apps/default.nix index 15294cb..5c920fd 100644 --- a/home-modules/apps/default.nix +++ b/home-modules/apps/default.nix @@ -105,9 +105,9 @@ in home.packages = with pkgs; [ eduvpn-client ]; - services.syncthing = { - enable = true; - }; + # services.syncthing = { + # enable = true; + # }; }) (lib.mkIf cfg.multimedia.enable { home.packages = with pkgs; [ diff --git a/home-modules/apps/desktop/default.nix b/home-modules/apps/desktop/default.nix index 6c74a6c..5eb14f3 100644 --- a/home-modules/apps/desktop/default.nix +++ b/home-modules/apps/desktop/default.nix @@ -71,7 +71,6 @@ in (lib.mkIf cfg.connectivity.enable { home.packages = with pkgs; [ kdePackages.kdeconnect-kde - syncthingtray eduvpn-client ]; services.syncthing = { diff --git a/home-modules/services/default.nix b/home-modules/services/default.nix index 6694bb0..4eb6005 100644 --- a/home-modules/services/default.nix +++ b/home-modules/services/default.nix @@ -1,5 +1,5 @@ {lib, ...}: { - imports = [./direnv.nix]; + imports = [./direnv.nix ./syncthing.nix]; # Gnome keyring, very smort services.gnome-keyring.enable = true; diff --git a/home-modules/services/syncthing.nix b/home-modules/services/syncthing.nix index 06b94a2..b264433 100644 --- a/home-modules/services/syncthing.nix +++ b/home-modules/services/syncthing.nix @@ -1,7 +1,9 @@ -{ config, pkgs, ... }: +{ config, pkgs, lib ,... }: { - services.syncthing = { - enable = true; + config = lib.mkIf config.homeapps.presets.connectivity.enable { + services.syncthing = { + enable = true; + }; }; } diff --git a/hosts/apocalypse/default.nix b/hosts/apocalypse/default.nix index c20c609..2782a6e 100644 --- a/hosts/apocalypse/default.nix +++ b/hosts/apocalypse/default.nix @@ -11,6 +11,7 @@ addons = { desktop.hyprland.enable = true; desktop.xfce.enable = true; + steam.enable = true; virtualisation.guest = false; virtualisation.host = true; diff --git a/hosts/apocalypse/hardware-configuration.nix b/hosts/apocalypse/hardware-configuration.nix index a3bd75f..7470331 100644 --- a/hosts/apocalypse/hardware-configuration.nix +++ b/hosts/apocalypse/hardware-configuration.nix @@ -59,21 +59,21 @@ menuentry 'UEFI Firmware' $menuentry_id_option 'uefi-firmware' { fsType = "btrfs"; options = [ "noatime" "compress=zstd" "subvol=/"]; }; - fileSystems."/store1" = - { device = "/dev/disk/by-uuid/6A2E2BFF2E2BC2C5"; - fsType = "ntfs-3g" ; - options = ["rw" "uid=1000" "gid=100"]; - }; + # fileSystems."/store1" = + # { device = "/dev/disk/by-uuid/6A2E2BFF2E2BC2C5"; + # fsType = "ntfs-3g" ; + # options = ["rw" "uid=1000" "gid=100"]; + # }; fileSystems."/win_games" = { device = "/dev/disk/by-uuid/6A680789680752ED"; fsType = "ntfs-3g" ; options = ["rw" "uid=1000" "gid=100"]; }; - fileSystems."/windows" = { - device = "/dev/disk/by-uuid/7AFA6C84FA6C3E8F"; - fsType = "ntfs-3g"; - options = ["rw" "uid=1000" "gid=100"]; - }; + # fileSystems."/windows" = { + # device = "/dev/disk/by-uuid/7AFA6C84FA6C3E8F"; + # fsType = "ntfs-3g"; + # options = ["rw" "uid=1000" "gid=100"]; + # }; swapDevices = [ { device = "/dev/mapper/cryptswap"; } diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix index c3e0b45..4719b5d 100644 --- a/modules/desktop/default.nix +++ b/modules/desktop/default.nix @@ -17,6 +17,7 @@ in { ./x11.nix ./wayland.nix ./wms + ./steam.nix ]; options.addons.desktop = with types; { wmMeta = mkOption { diff --git a/modules/desktop/steam.nix b/modules/desktop/steam.nix new file mode 100644 index 0000000..f19130c --- /dev/null +++ b/modules/desktop/steam.nix @@ -0,0 +1,50 @@ +{config, pkgs,lib, ...}: { + options.addons = { + steam.enable = lib.mkEnableOption "Enable steam on this machine"; + }; + + config = lib.mkIf config.addons.steam.enable (lib.mkMerge [ + ({ + assertions = [ + { + assertion = config.addons.desktop.enable; + message = "You need a desktop environment to enable Steam!"; + } + ]; + programs.gamescope = { + enable = true; + capSysNice = true; + }; + programs.steam = { + enable = true; + # Done according to the wiki, talks about some unexpected values in a lambda? + # Doesn't seem to be how overrides work + # TODO: Figure out how overrides work + # package = pkgs.steam.override { + # # withPrimus = true; + # extraPackages = with pkgs; [bumblebee glxinfo]; + # }; + + # Gamescope + gamescopeSession.enable = true; + + # Open firewall + remotePlay.openFirewall = true; + dedicatedServer.openFirewall = true; + localNetworkGameTransfers.openFirewall = true; + }; + + # Enable Appimage for some steam games + programs.appimage.enable = true; + programs.appimage.binfmt = true; + }) + + (lib.mkIf config.addons.dssktop.x11.enable { + + }) + (lib.mkIf config.addons.dssktop.wayland.enable { + + }) + + ]); +} diff --git a/modules/desktop/wayland.nix b/modules/desktop/wayland.nix index 0b78daf..d7b9651 100644 --- a/modules/desktop/wayland.nix +++ b/modules/desktop/wayland.nix @@ -2,5 +2,12 @@ options.addons.desktop.wayland.enable = lib.mkEnableOption "Enable wayland" ; config = lib.mkIf config.addons.desktop.wayland.enable { services.displayManager.sddm.wayland.enable = true; + + xdg.portal = { + enable = true; + extraPortals = [ + pkgs.xdg-desktop-portal-gtk + ]; + }; }; } diff --git a/modules/virt.nix b/modules/virt.nix index 416f1c4..feb27c7 100644 --- a/modules/virt.nix +++ b/modules/virt.nix @@ -13,7 +13,9 @@ in environment.systemPackages = with pkgs; [ qemu ]; + programs.virt-manager.enable = true; virtualisation = { + spiceUSBRedirection.enable = true; docker.enable = true; libvirtd = { enable = true; @@ -28,7 +30,6 @@ in }) (lib.mkIf cfg.guest { - virtualisation.spiceUSBRedirection.enable = true; services.spice-vdagentd.enable = true; }) ]); diff --git a/users/wilkuu.nix b/users/wilkuu.nix index b4882bf..1815b10 100644 --- a/users/wilkuu.nix +++ b/users/wilkuu.nix @@ -6,7 +6,7 @@ shell = pkgs.zsh; isNormalUser = true; initialPassword = "PleazeChangeThis123"; - extraGroups = [ "wheel" "adbusers" "networkmanager" "input" "docker" "adbusers" "libvirtd" ]; # Enable ‘sudo’ for the user. + extraGroups = [ "wheel" "adbusers" "networkmanager" "input" "docker" "adbusers" "libvirtd" "libvirt"]; # Enable ‘sudo’ for the user. packages = with pkgs; [ home-manager ]; -- cgit v1.3.1