{ config, lib, pkgs, ... }: { imports = [ ./games.nix ./libreoffice.nix ./steam.nix ]; config = lib.mkIf (config.beancloud.software.desktop) { environment.systemPackages = with pkgs; [ (lib.mkIf config.beancloud.software.chromium chromium) (lib.mkIf config.beancloud.software.photography ansel) (lib.mkIf config.beancloud.software.davinci-resolve davinci-resolve-studio) (lib.mkIf config.beancloud.software.photography darktable) firefox (lib.mkIf config.beancloud.software.nextcloud.client nextcloud-client) (lib.mkIf config.beancloud.software.nextcloud.talk-desktop nextcloud-talk-desktop) (lib.mkIf config.beancloud.software.obs-studio obs-studio) (lib.mkIf config.beancloud.software.podman-desktop podman-desktop) (lib.mkIf config.beancloud.software.shotcut shotcut) (lib.mkIf config.beancloud.software.zed-editor zed-editor) ]; services = { xserver = { enable = true; }; displayManager = { enable = true; sddm.autoLogin.relogin = lib.mkIf config.beancloud.hardware.steamdeck true; }; greetd = { enable = if config.beancloud.hardware.steamdeck then true else false; settings = { default_session = { command = "${pkgs.gamescope}/bin/gamescope -f --mangoapp --steam --xwayland-count 2 -- steam -pipewire-dmabuf -gamepadui -steamos > /dev/null 2>&1"; }; }; }; }; beancloud.os.screensaver.lock = lib.mkIf config.beancloud.hardware.steamdeck false; }; }