{ pkgs, ... }: { programs.firefox = { nativeMessagingHosts = [ pkgs.plasma-browser-integration ]; profiles.default = { extensions = [ pkgs.nur.repos.rycee.firefox-addons.plasma-integration ]; settings = { "widget.use-xdg-desktop-portal.file-picker" = 1; "media.hardwaremediakeys.enabled" = false; }; }; }; programs.plasma = { enable = true; overrideConfig = true; input.touchpads = [{ enable = true; name = "SynPS/2 Synaptics TouchPad"; vendorId = "0002"; productId = "0007"; disableWhileTyping = false; naturalScroll = true; }]; kwin.edgeBarrier = 0; workspace = { clickItemTo = "open"; theme = "breeze-dark"; colorScheme = "BreezeDark"; lookAndFeel = "org.kde.breezedark.desktop"; wallpaper = ../../resources/wallpaper.png; }; panels = [ { screen = "all"; location = "bottom"; hiding = "dodgewindows"; widgets = [ { kickoff.icon = "nix-snowflake-white"; } "org.kde.plasma.pager" { iconTasks.launchers = [ "applications:systemsettings.desktop" "applications:org.kde.dolphin.desktop" "applications:firefox.desktop" "applications:org.kde.konsole.desktop" ]; } "org.kde.plasma.marginseparator" { systemTray = {}; } { digitalClock = { date.format = "isoDate"; time.format = "24h"; time.showSeconds = "always"; calendar.firstDayOfWeek = "monday"; }; } "org.kde.plasma.showdesktop" ]; } ]; window-rules = [ { description = "Konsole"; match.window-class.value = "konsole org.kde.konsole"; apply = { maximizehoriz = true; maximizevert = true; }; } ]; shortcuts = { kwin = { "Window Close" = "Alt+Q"; "Switch One Desktop Up" = "Ctrl+Alt+Up"; "Switch One Desktop Down" = "Ctrl+Alt+Down"; "Switch One Desktop to the Left" = "Ctrl+Alt+Left"; "Switch One Desktop to the Right" = "Ctrl+Alt+Right"; "Window One Desktop Up" = "Ctrl+Alt+Shift+Up"; "Window One Desktop Down" = "Ctrl+Alt+Shift+Down"; "Window One Desktop to the Left" = "Ctrl+Alt+Shift+Left"; "Window One Desktop to the Right" = "Ctrl+Alt+Shift+Right"; }; }; configFile = { dolphinrc.General = { RememberOpenedTabs = false; BrowseThroughArchives = true; UseTabForSwitchingSplitView = true; }; kwinrc.TabBox = { HighlightWindows = false; MultiScreenMode = 1; }; kwinrc.Desktops = { Number = 4; Rows = 2; }; kwinrc.Windows = { DelayFocusInterval = 0; FocusPolicy = "FocusFollowsMouse"; NextFocusPrefersMouse = true; FocusStealingPreventionLevel = 0; }; kxkbrc.Layout = { LayoutList = "us,ru"; DisplayNames = ","; VariantList = ","; Options = "caps:escape_shifted_capslock,grp:win_space_toggle"; ResetOldOptions = true; }; }; }; }