From 7573ab4ca0bd4e61e64f954b99af531fc0774f4f Mon Sep 17 00:00:00 2001 From: Nicole Date: Wed, 23 Apr 2025 20:17:19 +0200 Subject: [PATCH] Moved desktop configuration to module --- etc/nixos/configuration.nix | 29 ++++++------ etc/nixos/modules/desktop.nix | 84 +++++++++++++++++++++++++++++++++++ etc/nixos/modules/nvidia.nix | 18 ++++---- 3 files changed, 108 insertions(+), 23 deletions(-) create mode 100644 etc/nixos/modules/desktop.nix diff --git a/etc/nixos/configuration.nix b/etc/nixos/configuration.nix index 3adf2e1..f6e8b2d 100644 --- a/etc/nixos/configuration.nix +++ b/etc/nixos/configuration.nix @@ -21,6 +21,7 @@ in ./hardware-configuration.nix ./modules/virtualization.nix ./modules/nvidia.nix + ./modules/desktop.nix ]; @@ -142,22 +143,22 @@ in #░▀▀░░▀▀▀░▀▀▀░▀░▀░░▀░░▀▀▀░▀░░ # Enable SDDM & Hyprland - services.xserver.displayManager.gdm.enable = true; - services.gnome.gnome-keyring.enable = true; - services.desktopManager.cosmic.xwayland.enable = true; +# services.xserver.displayManager.gdm.enable = true; +# services.gnome.gnome-keyring.enable = true; +# services.desktopManager.cosmic.xwayland.enable = true; - programs.hyprland = { - enable = true; - withUWSM = true; - xwayland.enable = true; - }; +# programs.hyprland = { +# enable = true; +# withUWSM = true; +# xwayland.enable = true; +# }; - environment.sessionVariables = { - WLR_NO_HARDWARE_CURSOR = "1"; - NIXOS_OZONE_WL = "1"; - CUDA_HOME = "${pkgs.cudaPackages.cudatoolkit}"; - CUDA_MODULE_LOADING = "LAZY"; - }; +# environment.sessionVariables = { +# WLR_NO_HARDWARE_CURSOR = "1"; +# NIXOS_OZONE_WL = "1"; +# CUDA_HOME = "${pkgs.cudaPackages.cudatoolkit}"; +# CUDA_MODULE_LOADING = "LAZY"; +# }; diff --git a/etc/nixos/modules/desktop.nix b/etc/nixos/modules/desktop.nix new file mode 100644 index 0000000..775ad43 --- /dev/null +++ b/etc/nixos/modules/desktop.nix @@ -0,0 +1,84 @@ +#░█▀▄░█▀▀░█▀▀░█░█░▀█▀░█▀█░█▀█ +#░█░█░█▀▀░▀▀█░█▀▄░░█░░█░█░█▀▀ +#░▀▀░░▀▀▀░▀▀▀░▀░▀░░▀░░▀▀▀░▀░░ + +{config, pkgs, pkgs-unstable, lib, ... }: + +{ + + # Enable GDM + services.xserver.displayManager.gdm.enable = true; + + # Gnome Keyring (for window managers) + services.gnome.gnome-keyring.enable = true; + + # HYPRLAND # + programs.hyprland = { + enable = true; + withUWSM = true; + xwayland.enable = true; + }; + + environment.sessionVariables = { + WLR_NO_HARDWARE_CURSOR = "1"; + NIXOS_OZONE_WL = "1"; + CUDA_HOME = "${pkgs.cudaPackages.cudatoolkit}"; + CUDA_MODULE_LOADING = "LAZY"; + }; + + # GNOME # + services.xserver.desktopManager.gnome.enable = true; + + # Exclude GNOME packages + environment.gnome.excludePackages = with pkgs; [ + orca + evince + # file-roller + geary + gnome-disk-utility + seahorse + sushi + sysprof + # + # gnome-shell-extensions + # + adwaita-icon-theme + # nixos-background-info + gnome-backgrounds + # gnome-bluetooth + # gnome-color-manager + # gnome-control-center + # gnome-shell-extensions + gnome-tour # GNOME Shell detects the .desktop file on first log-in. + gnome-user-docs + # glib # for gsettings program + # gnome-menus + # gtk3.out # for gtk-launch program + # xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/ + # xdg-user-dirs-gtk # Used to create the default bookmarks + # + baobab + epiphany + gnome-text-editor + gnome-calculator + gnome-calendar + gnome-characters + # gnome-clocks + gnome-console + gnome-contacts + gnome-font-viewer + gnome-logs + gnome-maps + gnome-music + # gnome-system-monitor + gnome-weather + # loupe + # nautilus + gnome-connections + simple-scan + snapshot + totem + yelp + gnome-software + ]; +} diff --git a/etc/nixos/modules/nvidia.nix b/etc/nixos/modules/nvidia.nix index 3d8dba2..700e90e 100644 --- a/etc/nixos/modules/nvidia.nix +++ b/etc/nixos/modules/nvidia.nix @@ -16,19 +16,19 @@ hardware = { nvidia = { - open = true; + open = false; gsp.enable = config.hardware.nvidia.open; powerManagement.enable = true; nvidiaSettings = false; - # package = config.boot.kernelPackages.nvidiaPackages.stable; - package = config.boot.kernelPackages.nvidiaPackages.mkDriver { - version = "575.51.02"; - sha256_64bit = "sha256-XZ0N8ISmoAC8p28DrGHk/YN1rJsInJ2dZNL8O+Tuaa0="; - openSha256 = "sha256-NQg+QDm9Gt+5bapbUO96UFsPnz1hG1dtEwT/g/vKHkw="; - useSettings = false; - usePersistenced = false; - }; + package = config.boot.kernelPackages.nvidiaPackages.latest; +# package = config.boot.kernelPackages.nvidiaPackages.mkDriver { +# version = "575.51.02"; +# sha256_64bit = "sha256-XZ0N8ISmoAC8p28DrGHk/YN1rJsInJ2dZNL8O+Tuaa0="; +# openSha256 = "sha256-NQg+QDm9Gt+5bapbUO96UFsPnz1hG1dtEwT/g/vKHkw="; +# useSettings = false; +# usePersistenced = false; +# }; videoAcceleration = true; }; };