feat(nixos-95): extract DE themining into nixosModule

the desktop environment can be included via `self.nixosModules.nixos95`

this will expose two options (for now):
nixos95.enable -> enable the desktop environment
nixos95.wallpaper -> path to the wallpaper to use

currently the setup is closy coupled to this configuration,
which will change in the future, so it can be used with any configuration
This commit is contained in:
gytic 2025-07-25 18:04:18 +02:00
parent 915121f327
commit 6a9de226ef
21 changed files with 185 additions and 118 deletions

View file

@ -23,48 +23,24 @@ in {
# Home Manager integration
inputs.home-manager.nixosModules.home-manager
# nixos95
inputs.self.nixosModules.nixos95
];
################################################################
# Display & Desktop Environment
################################################################
services.xserver = {
nixos95 = {
enable = true;
desktopManager.xfce.enable = true;
xkb = {
layout = "de";
variant = "";
};
user = username;
};
services.xserver.displayManager.lightdm.enable = false;
services.displayManager.sddm = {
enable = true;
package = pkgs.qt6Packages.sddm;
};
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
################################################################
# System Packages (XFCE & Utilities)
################################################################
environment.systemPackages = with pkgs; [
xdg-desktop-portal-gtk
# XFCE Core
xfce.xfwm4
xfce.xfce4-panel
xfce.xfce4-session
xfce.xfce4-settings
xfce.thunar
xfce.mousepad
xfce.xfce4-terminal
xfce.xfce4-appfinder
xfce.xfce4-power-manager
xfce.xfce4-notifyd
xfce.xfce4-whiskermenu-plugin
# Optional Extras
xfce.gigolo
@ -136,4 +112,4 @@ in {
################################################################
system.stateVersion = "25.05";
}
}