diff --git a/programs/browser/bookmarks.json b/programs/browser/bookmarks.json index 891f83c..dcacd91 100644 --- a/programs/browser/bookmarks.json +++ b/programs/browser/bookmarks.json @@ -35,6 +35,11 @@ "url": "https://nix-community.github.io/home-manager/options.xhtml", "tags": ["Software", "Documentation", "Nix"] }, + { + "name": "KDE Plasma Desktop Scripting", + "url": "https://develop.kde.org/docs/plasma/scripting/", + "tags": ["Software", "Documentation", "KDE", "Plasma"] + }, { "name": "Awesome Emacs", "url": "https://github.com/emacs-tw/awesome-emacs", diff --git a/programs/desktop/plasma6/default.nix b/programs/desktop/plasma6/default.nix index ba5d635..239144d 100644 --- a/programs/desktop/plasma6/default.nix +++ b/programs/desktop/plasma6/default.nix @@ -62,42 +62,96 @@ }; }; - panels = [ - { - height = 44; - lengthMode = "fill"; + panels = let + launcher = { + height = 48; + lengthMode = "fit"; location = "bottom"; alignment = "center"; - hiding = "none"; + hiding = "dodgewindows"; floating = true; widgets = [ { name = "org.kde.plasma.kickoff"; - config = {General.icon = "nix-snowflake";}; + config.General = { + icon = "nix-snowflake"; + favorites = [ + "applications:emacsclient.desktop" + "applications:proton-bridge-gui.desktop" + "applications:org.kde.elisa.desktop" + "applications:org.kde.okular.desktop" + "applications:org.kde.gwenview.desktop" + "applications:org.inkscape.Inkscape.desktop" + "applications:writer.desktop" + "applications:calc.desktop" + "applications:impress.desktop" + "applications:webcord.desktop" + ]; + primaryActions = "0"; + favoritesDisplay = "0"; + applicationsDisplay = "1"; + showActionButtonCaptions = "true"; + compactMode = "false"; + }; } { name = "org.kde.plasma.icontasks"; - config = { - General.launchers = [ - "applications:systemsettings.desktop" - "applications:org.kde.konsole.desktop" - "applications:org.kde.dolphin.desktop" - "applications:emacs.desktop" - "applications:firefox.desktop" - ]; + config.General.launchers = [ + "applications:systemsettings.desktop" + "applications:org.kde.konsole.desktop" + "applications:org.kde.dolphin.desktop" + "preferred://browser" + ]; + } + ]; + }; + status = { + height = 32; + lengthMode = "fit"; + location = "bottom"; + alignment = "right"; + hiding = "autohide"; + floating = true; + widgets = [ + { + systemTray = { + icons = { + spacing = "small"; + scaleToFit = false; + }; }; } - "org.kde.plasma.systemtray" { digitalClock = { - time.format = "24h"; + date.enable = false; + time = { + format = "24h"; + showSeconds = "onlyInTooltip"; + }; calendar.showWeekNumbers = true; }; } - "org.kde.plasma.showdesktop" ]; - } - ]; + }; + pager = { + height = 128; + lengthMode = "fit"; + location = "top"; + alignment = "center"; + hiding = "autohide"; + floating = true; + widgets = [ + { + name = "org.kde.plasma.pager"; + config.General = { + showWindowIcons = "true"; + showOnlyCurrentScreen = "false"; + wrapPage = "true"; + }; + } + ]; + }; + in [launcher status pager]; shortcuts = { kwin = { @@ -120,18 +174,19 @@ }; configFile = { - baloofilerc = {"Basic Settings"."Indexing-Enabled" = false;}; + baloofilerc."Basic Settings"."Indexing-Enabled" = false; kcminputrc.Keyboard.NumLock = 1; + krunnerrc.General.FreeFloating = false; + kscreenlockerrc = { + Daemon.Timeout = 15; + Greeter.WallpaperPlugin = "org.kde.potd"; + }; kdeglobals = { General = { TerminalApplication = "konsole"; TerminalService = "org.kde.konsole.desktop"; }; }; - kscreenlockerrc = { - Daemon.Timeout = 15; - Greeter.WallpaperPlugin = "org.kde.potd"; - }; kwinrc = { Windows = { FocusPolicy = "FocusFollowsMouse"; @@ -144,6 +199,10 @@ LongitudeFixed = "-1.2"; }; }; + plasmanotifyrc.Notifications = { + NormalAlwaysOnTop = true; + PopupPosition = "BottomRight"; + }; }; }; }