34 lines
1.1 KiB
Nix
34 lines
1.1 KiB
Nix
{ inputs, ... }: {
|
|
flake.nixosModules.ui = { pkgs, ... }: {
|
|
# Desktop environment
|
|
services.xserver.enable = true;
|
|
services.xserver.displayManager.gdm.enable = true;
|
|
services.xserver.displayManager.gdm.wayland = true;
|
|
services.xserver.desktopManager.gnome.enable = true;
|
|
services.xserver.xkb = {
|
|
layout = "us";
|
|
variant = "";
|
|
};
|
|
|
|
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)
|
|
};
|
|
|
|
programs.niri.enable = true;
|
|
services.displayManager.sessionPackages = [ pkgs.niri ];
|
|
services.gnome.gnome-keyring.enable = true; # secret service
|
|
};
|
|
}
|