37 lines
1.2 KiB
Nix
37 lines
1.2 KiB
Nix
{ inputs, ... }: {
|
|
flake.nixosModules.ui = { pkgs, lib, ... }: {
|
|
# Desktop environment
|
|
services.xserver.enable = true;
|
|
services.displayManager.gdm.enable = true;
|
|
services.displayManager.gdm.wayland = true;
|
|
services.desktopManager.gnome.enable = true;
|
|
|
|
programs.dms-shell = {
|
|
enable = true;
|
|
systemd = {
|
|
enable = true; # Systemd service for auto-start
|
|
restartIfChanged = true; # Auto-restart dms.service when dms-shell changes
|
|
};
|
|
|
|
# Core features
|
|
enableSystemMonitoring = true; # System monitoring widgets (dgop)
|
|
enableVPN = true; # VPN management widget
|
|
enableDynamicTheming = true; # Wallpaper-based theming (matugen)
|
|
enableAudioWavelength = true; # Audio visualizer (cava)
|
|
enableCalendarEvents = true; # Calendar integration (khal)
|
|
enableClipboardPaste = true; # Pasting from the clipboard history (wtype)
|
|
|
|
quickshell.package = pkgs.quickshell;
|
|
};
|
|
|
|
programs.niri.enable = true;
|
|
services.displayManager.sessionPackages = [ pkgs.niri ];
|
|
services.gnome.gnome-keyring.enable = true; # secret service
|
|
|
|
# enable xwayland-satellite
|
|
environment.systemPackages = with pkgs; [
|
|
xwayland-satellite
|
|
];
|
|
};
|
|
}
|