{ pkgs, lib, ... }: { home.file.".local/share/wallpaper" = { source = ./static/wallpaper; recursive = true; }; # load hm-vars in x-session xsession.enable = true; # Use kvantum-theme home.sessionVariables = { QT_STYLE_OVERRIDE = "kvantum"; }; programs.konsole = { enable = true; defaultProfile = "default"; profiles = { default = { name = "default"; colorScheme = "Utterly-Nord-Konsole"; font = { name = "Fira Code"; size = 10; }; }; }; }; # use kvantum theme qt.enable = true; qt.style.name = "kvantum"; programs.plasma = { enable = true; overrideConfig = true; # # Some high-level settings: # workspace = { clickItemTo = "select"; lookAndFeel = "Utterly-Nord"; theme = "breeze"; colorScheme = "UtterlyNord"; cursorTheme = "Breeze"; wallpaper = "/home/jonas/.local/share/wallpaper/nord.png"; }; hotkeys.commands."launch-konsole" = { name = "Launch Konsole"; key = "Meta+Return"; command = "konsole"; }; panels = [ # Windows-like panel at the bottom { location = "bottom"; widgets = [ "org.kde.plasma.kickoff" "org.kde.plasma.pager" # We can also configure the widgets. For example if you want to pin # konsole and dolphin to the task-launcher the following widget will # have that. { name = "org.kde.plasma.icontasks"; config = { General.launchers = [ "applications:org.kde.dolphin.desktop" "applications:org.kde.konsole.desktop" ]; }; } "org.kde.plasma.marginsseperator" "org.kde.plasma.systemtray" "org.kde.plasma.digitalclock" ]; hiding = null; } ]; # # Some mid-level settings: # shortcuts = { ksmserver = { "Lock Session" = ["Screensaver" "Meta+Ctrl+Alt+L"]; }; kwin = { "Expose" = "Meta+,"; "Switch Window Down" = "Meta+J"; "Switch Window Left" = "Meta+H"; "Switch Window Right" = "Meta+L"; "Switch Window Up" = "Meta+K"; "Window Quick Tile Bottom" = "Meta+Shift+J"; "Window Quick Tile Left" = "Meta+Shift+H"; "Window Quick Tile Right" = "Meta+Shift+L"; "Window Quick Tile Top" = "Meta+Shift+K"; "Kill Window" = "Meta+Alt+Q"; "Window Close" = "Meta+Shift+Q"; } // ( with lib; let desktops = map toString (lists.range 1 8); in listToAttrs (map (i: { name = "Switch to Desktop ${i}"; value = "Meta+${i}"; }) desktops) // listToAttrs (map (i: { name = "Window to Desktop ${i}"; value = "Meta+Shift+${i}"; }) desktops) ); }; # # Some low-level settings: # configFile = { "baloofilerc"."Basic Settings"."Indexing-Enabled".value = false; "kwinrc"."org.kde.kdecoration2"."ButtonsOnLeft".value = "SF"; "kwinrc"."Desktops"."Number" = { value = 8; # Forces kde to not change this value (even through the settings app). immutable = true; }; }; }; }