{ config, lib, pkgs, ... }: # The following can be generated with the command: # nix run github:nix-community/plasma-manager # # Plasma-manager options documentation # https://nix-community.github.io/plasma-manager/options.xhtml # # Polonium usage # https://github.com/zeroxoneafour/polonium/blob/master/docs/usage.md # # TODO: Extract this configuration into something that's a bit easier to manage # TODO: Update shortcuts for better window/tiling/desktop management akin to i3wm # TODO(ambitious): Add Kmail support to plasma-manager { programs.plasma = { enable = true; overrideConfig = true; kwin = { scripts.polonium.enable = true; }; hotkeys.commands."launch-konsole" = { name = "Launch Konsole"; key = "Meta+Enter"; command = "konsole"; }; shortcuts = { kmix = { "decrease_microphone_volume" = "Microphone Volume Down"; "decrease_volume" = "Volume Down"; "decrease_volume_small" = "Shift+Volume Down"; "increase_microphone_volume" = "Microphone Volume Up"; "increase_volume" = "Volume Up"; "increase_volume_small" = "Shift+Volume Up"; "mic_mute" = ["Microphone Mute" "Meta+Volume Mute,Microphone Mute" "Meta+Volume Mute,Mute Microphone"]; "mute" = "Volume Mute"; }; mediacontrol = { "mediavolumedown" = "none,,Media volume down"; "mediavolumeup" = "none,,Media volume up"; "nextmedia" = "Media Next"; "pausemedia" = "Media Pause"; "playmedia" = "none,,Play media playback"; "playpausemedia" = "Media Play"; "previousmedia" = "Media Previous"; "stopmedia" = "Media Stop"; }; ksmserver = { "Lock Session" = ["Meta+Ctrl+Q" "Screensaver,Meta+L" "Screensaver,Lock Session"]; }; kwin = { "Window Close" = "Meta+Shift+Q"; "Kill Window" = "Meta+Ctrl+Esc"; "Window Operations Menu" = "Alt+F3"; "Window Resize" = "Meta+R,,Resize Window"; "Overview" = "Meta+W"; "Grid View" = "Meta+G"; "Edit Tiles" = "Meta+T"; "Activate Window Demanding Attention" = "Meta+Ctrl+A"; "PoloniumCycleEngine" = "Meta+|,none,Polonium: Cycle Engine"; "PoloniumFocusAbove" = "Meta+K,none,Polonium: Focus Above"; "PoloniumFocusBelow" = "Meta+J,none,Polonium: Focus Below"; "PoloniumFocusLeft" = "Meta+H,none,Polonium: Focus Left"; "PoloniumFocusRight" = "Meta+L,none,Polonium: Focus Right"; "PoloniumInsertAbove" = "Meta+Shift+K,none,Polonium: Insert Above"; "PoloniumInsertBelow" = "Meta+Shift+J,none,Polonium: Insert Below"; "PoloniumInsertLeft" = "Meta+Shift+H,none,Polonium: Insert Left"; "PoloniumInsertRight" = "Meta+Shift+L,none,Polonium: Insert Right"; "PoloniumOpenSettings" = "Meta+\\\\,none,Polonium: Open Settings Dialog"; "PoloniumResizeAbove" = "Meta+Ctrl+K,none,Polonium: Resize Above"; "PoloniumResizeBelow" = "Meta+Ctrl+J,none,Polonium: Resize Below"; "PoloniumResizeLeft" = "Meta+Ctrl+H,none,Polonium: Resize Left"; "PoloniumResizeRight" = "Meta+Ctrl+L,none,Polonium: Resize Right"; "PoloniumRetileWindow" = "Meta+Shift+Space,none,Polonium: Retile Window"; "PoloniumSwitchBTree" = [ ]; "PoloniumSwitchHalf" = [ ]; "PoloniumSwitchKwin" = [ ]; "PoloniumSwitchMonocle" = [ ]; "PoloniumSwitchThreeColumn" = [ ]; "Show Desktop" = "Meta+D"; "Switch to Desktop 1" = "Meta+1,,Switch to Desktop 1"; "Switch to Desktop 2" = "Meta+2,,Switch to Desktop 2"; "Switch to Desktop 3" = "Meta+3,,Switch to Desktop 3"; "Switch to Desktop 4" = "Meta+4,,Switch to Desktop 4"; "Switch to Desktop 5" = "Meta+5,,Switch to Desktop 5"; "Switch to Desktop 6" = "none,,Switch to Desktop 6"; "Switch to Desktop 7" = "none,,Switch to Desktop 7"; "Switch to Desktop 8" = "none,,Switch to Desktop 8"; "Switch to Desktop 9" = "none,,Switch to Desktop 9"; "Window to Desktop 1" = "Meta+!,,Window to Desktop 1"; "Window to Desktop 2" = "Meta+@,,Window to Desktop 2"; "Window to Desktop 3" = "Meta+#,,Window to Desktop 3"; "Window to Desktop 4" = "Meta+$,,Window to Desktop 4"; "Window to Desktop 5" = "Meta+%,,Window to Desktop 5"; "Window to Desktop 6" = "none,,Window to Desktop 6"; "Window to Desktop 7" = "none,,Window to Desktop 7"; "Window to Desktop 8" = "none,,Window to Desktop 8"; "Window to Desktop 9" = "none,,Window to Desktop 9"; "Walk Through Windows" = "Alt+Tab"; "Walk Through Windows (Reverse)" = "Alt+Shift+Tab"; "Walk Through Windows of Current Application" = "Alt+`"; "Walk Through Windows of Current Application (Reverse)" = "Alt+~"; "Window Fullscreen" = "Meta+Shift+F,,Make Window Fullscreen"; "Window Quick Tile Bottom" = "Meta+Down"; "Window Quick Tile Left" = "Meta+Left"; "Window Quick Tile Right" = "Meta+Right"; "Window Quick Tile Top" = "Meta+Up"; "view_actual_size" = "Meta+0"; "view_zoom_in" = ["Meta++" "Meta+=,Meta++" "Meta+=,Zoom In"]; "view_zoom_out" = "Meta+-"; }; "org_kde_powerdevil"."Decrease Keyboard Brightness" = "Keyboard Brightness Down"; "org_kde_powerdevil"."Decrease Screen Brightness" = "Monitor Brightness Down"; "org_kde_powerdevil"."Decrease Screen Brightness Small" = "Shift+Monitor Brightness Down"; "org_kde_powerdevil"."Hibernate" = "Hibernate"; "org_kde_powerdevil"."Increase Keyboard Brightness" = "Keyboard Brightness Up"; "org_kde_powerdevil"."Increase Screen Brightness" = "Monitor Brightness Up"; "org_kde_powerdevil"."Increase Screen Brightness Small" = "Shift+Monitor Brightness Up"; "org_kde_powerdevil"."PowerDown" = "Power Down"; "org_kde_powerdevil"."PowerOff" = "Power Off"; "org_kde_powerdevil"."Sleep" = "Sleep"; "org_kde_powerdevil"."Toggle Keyboard Backlight" = "Keyboard Light On/Off"; "org_kde_powerdevil"."Turn Off Screen" = [ ]; "org_kde_powerdevil"."powerProfile" = ["Battery" "Meta+B,Battery" "Meta+B,Switch Power Profile"]; "plasmashell"."activate application launcher" = ["Meta" "Alt+F1,Meta" "Alt+F1,Activate Application Launcher"]; }; configFile = { kwinrc.Desktops.Number = { value = 9; immutable = true; }; }; }; }