{ pkgs, config, lib, inputs, ... }: let inherit (config.lib.cosmic) mkRON; mkAction = variant: action: mkRON "enum" { inherit variant; value = [ (mkRON "enum" action) ]; }; in { imports = [inputs.cosmic-manager.homeManagerModules.cosmic-manager]; wayland.desktopManager.cosmic = { enable = true; systemActions = mkRON "map" [ { key = mkRON "enum" "Terminal"; value = lib.getExe config.programs.terminal; } ]; shortcuts = [ { action = mkAction "System" "Terminal"; key = "Super+Return"; } ]; wallpapers = [ { filter_by_theme = true; filter_method = mkRON "enum" "Lanczos"; output = "all"; rotation_frequency = 600; sampling_method = mkRON "enum" "Alphanumeric"; scaling_mode = mkRON "enum" { value = [ (mkRON "tuple" [ 0.5 1.0 (mkRON "raw" "0.345354352") ]) ]; variant = "Fit"; }; source = mkRON "enum" { value = [ (toString config.stylix.image) ]; variant = "Path"; }; } ]; panels = [ { anchor = mkRON "enum" "Top"; anchor_gap = false; autohide = mkRON "optional" null; background = mkRON "enum" "Dark"; expand_to_edges = true; name = "Panel"; opacity = 1.0; output = mkRON "enum" "All"; plugins_center = mkRON "optional" [ "com.system76.CosmicAppletTime" ]; plugins_wings = mkRON "optional" (mkRON "tuple" [ [ "com.system76.CosmicPanelWorkspacesButton" "com.system76.CosmicPanelAppButton" "com.system76.CosmicAppletWorkspaces" ] [ "com.system76.CosmicAppletInputSources" "com.system76.CosmicAppletStatusArea" "com.system76.CosmicAppletTiling" "com.system76.CosmicAppletAudio" "com.system76.CosmicAppletNetwork" "com.system76.CosmicAppletBattery" "com.system76.CosmicAppletNotifications" "com.system76.CosmicAppletBluetooth" "com.system76.CosmicAppletPower" ] ]); size = mkRON "enum" "XS"; } ]; }; }