1{ config, lib, pkgs, ... }: 2 3with lib; 4 5let 6 7 xcfg = config.services.xserver; 8 cfg = xcfg.desktopManager.lumina; 9 10in 11 12{ 13 options = { 14 15 services.xserver.desktopManager.lumina.enable = mkOption { 16 type = types.bool; 17 default = false; 18 description = "Enable the Lumina desktop manager"; 19 }; 20 21 }; 22 23 24 config = mkIf cfg.enable { 25 26 services.xserver.displayManager.sessionPackages = [ 27 pkgs.lumina.lumina 28 ]; 29 30 environment.systemPackages = 31 pkgs.lumina.preRequisitePackages ++ 32 pkgs.lumina.corePackages; 33 34 # Link some extra directories in /run/current-system/software/share 35 environment.pathsToLink = [ 36 "/share/lumina" 37 # FIXME: modules should link subdirs of `/share` rather than relying on this 38 "/share" 39 ]; 40 41 }; 42}