diff --git a/shared/assets/autostart/Nextcloud.desktop b/shared/assets/autostart/Nextcloud.desktop new file mode 100644 index 0000000..219765f --- /dev/null +++ b/shared/assets/autostart/Nextcloud.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=Nextcloud +GenericName=File Synchronizer +Exec="/usr/bin/nextcloud" --background +Terminal=false +Icon=Nextcloud +Categories=Network +Type=Application +StartupNotify=false +X-GNOME-Autostart-enabled=true +X-GNOME-Autostart-Delay=10 diff --git a/shared/assets/autostart/discord.desktop b/shared/assets/autostart/discord.desktop new file mode 100644 index 0000000..e4cbe21 --- /dev/null +++ b/shared/assets/autostart/discord.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Categories=Network;InstantMessaging; +Comment=All-in-one voice and text chat for gamers that's free, secure, and works on both your desktop and phone. +Exec=/usr/bin/discord +GenericName=Internet Messenger +Icon=discord +Name=Discord +Path=/usr/bin +StartupWMClass=discord +Type=Application diff --git a/shared/assets/autostart/org.kde.yakuake.desktop b/shared/assets/autostart/org.kde.yakuake.desktop new file mode 100644 index 0000000..7939124 --- /dev/null +++ b/shared/assets/autostart/org.kde.yakuake.desktop @@ -0,0 +1,13 @@ +[Desktop Entry] +Categories=Qt;KDE;System;TerminalEmulator; +Comment=A drop-down terminal emulator based on KDE Konsole technology. +DBusActivatable=true +Exec=yakuake +GenericName=Drop-down Terminal +Icon=yakuake +Name=Yakuake +Terminal=false +Type=Application +X-DBUS-ServiceName=org.kde.yakuake +X-DBUS-StartupType=Unique +X-KDE-StartupNotify=false diff --git a/shared/assets/autostart/org.keepassxc.KeePassXC.desktop b/shared/assets/autostart/org.keepassxc.KeePassXC.desktop new file mode 100644 index 0000000..c6e4654 --- /dev/null +++ b/shared/assets/autostart/org.keepassxc.KeePassXC.desktop @@ -0,0 +1,17 @@ +[Desktop Entry] +Name=KeePassXC +GenericName=Password Manager +Exec=keepassxc +TryExec=keepassxc +Icon=keepassxc +StartupWMClass=keepassxc +StartupNotify=true +Terminal=false +Type=Application +Version=1.0 +Categories=Utility;Security;Qt; +MimeType=application/x-keepass2; +X-GNOME-Autostart-enabled=true +X-GNOME-Autostart-Delay=2 +X-KDE-autostart-after=panel +X-LXQt-Need-Tray=true diff --git a/shared/assets/autostart/steam.desktop b/shared/assets/autostart/steam.desktop new file mode 100644 index 0000000..5d6842b --- /dev/null +++ b/shared/assets/autostart/steam.desktop @@ -0,0 +1,57 @@ +[Desktop Action BigPicture] +Exec=steam steam://open/bigpicture +Name=Big Picture + +[Desktop Action Community] +Exec=steam steam://url/SteamIDControlPage +Name=Community + +[Desktop Action Friends] +Exec=steam steam://open/friends +Name=Friends + +[Desktop Action Library] +Exec=steam steam://open/games +Name=Library + +[Desktop Action News] +Exec=steam steam://open/news +Name=News + +[Desktop Action Screenshots] +Exec=steam steam://open/screenshots +Name=Screenshots + +[Desktop Action Servers] +Exec=steam steam://open/servers +Name=Servers + +[Desktop Action Settings] +Exec=steam steam://open/settings +Name=Settings + +[Desktop Action Store] +Exec=steam steam://store +Name=Store + +[Desktop Entry] +Actions=Store;Community;Library;Servers;Screenshots;News;Settings;BigPicture;Friends; +Categories=Network;FileTransfer;Game; +Comment[en_DK]=Application for managing and playing games on Steam +Comment=Application for managing and playing games on Steam +Exec=/usr/bin/steam-runtime -nochatui -nofriendsui -silent -forcedesktopscaling 1.5 %U +GenericName[en_DK]= +GenericName= +Icon=steam +MimeType= +Name[en_DK]=Steam (Runtime) +Name=Steam (Runtime) +Path= +PrefersNonDefaultGPU=true +StartupNotify=true +Terminal=false +TerminalOptions= +Type=Application +X-KDE-RunOnDiscreteGpu=true +X-KDE-SubstituteUID=false +X-KDE-Username= diff --git a/shared/home_manager/plasma_manager.nix b/shared/home_manager/plasma_manager.nix index 3425b9e..24aedf7 100644 --- a/shared/home_manager/plasma_manager.nix +++ b/shared/home_manager/plasma_manager.nix @@ -1,112 +1,23 @@ -{ plasma-manager, config, ... }: +{ plasma-manager, ... }: # https://nix-community.github.io/plasma-manager/options.xhtml # https://github.com/nix-community/plasma-manager/blob/trunk/examples/home.nix { - # imports = [ - # ./plasma_manager/shortcuts.nix - # ]; + imports = [ + ./plasma_manager/shortcuts.nix + ./plasma_manager/krunner.nix + ./plasma_manager/baloo.nix + ./plasma_manager/theme.nix + ./plasma_manager/panel.nix + ./plasma_manager/input.nix + ./plasma_manager/kwin.nix + ./plasma_manager/autostart.nix + ]; programs.plasma = { enable = true; overrideConfig = true; - - panels = [{ - floating = false; - height = 44; - location = "left"; - widgets = [ - "org.kde.plasma.kickoff" - "org.kde.plasma.pager" - { - iconTasks.launchers = []; - } - "org.kde.plasma.marginsseparator" - { - systemTray.items = { - # shown = []; - # hidden = []; - }; - } - { - digitalClock = { - calendar = { - firstDayOfWeek = "monday"; - showWeekNumbers = true; - }; - time.format = "24h"; - settings.Appearance.showDate = false; - }; - } - ]; - }]; - - workspace = { - theme = "breeze-dark"; - colorScheme = "KritaDarkOrange"; - }; - - kwin = { - edgeBarrier = 0; - cornerBarrier = false; - virtualDesktops = { - number = 8; - rows = 4; - }; - }; - - # Find attributes at /proc/bus/input/devices - # converting vendorId and productId from hex to base10 is broken currently - # https://github.com/nix-community/plasma-manager/issues/306 - input.touchpads = [{ - enable = true; - name = "SynPS/2 Synaptics TouchPad"; - vendorId = "0002"; - productId = "0007"; - naturalScroll = true; - }]; - - configFile = { - "baloofilerc"."Basic Settings"."Indexing-Enabled" = false; - - "krunnerrc"."PlasmaRunnerManager"."migrated" = true; - "krunnerrc"."Plugins"."CharacterRunnerEnabled" = false; - "krunnerrc"."Plugins"."DictionaryEnabled" = false; - "krunnerrc"."Plugins"."appstreamEnabled" = false; - "krunnerrc"."Plugins"."baloosearchEnabled" = false; - "krunnerrc"."Plugins"."bookmarksEnabled" = false; - "krunnerrc"."Plugins"."browserhistoryEnabled" = false; - "krunnerrc"."Plugins"."browsertabsEnabled" = false; - "krunnerrc"."Plugins"."calculatorEnabled" = true; - "krunnerrc"."Plugins"."desktopsessionsEnabled" = false; - "krunnerrc"."Plugins"."helprunnerEnabled" = false; - "krunnerrc"."Plugins"."katesessionsEnabled" = false; - "krunnerrc"."Plugins"."konsoleprofilesEnabled" = false; - "krunnerrc"."Plugins"."krunner_appstreamEnabled" = false; - "krunnerrc"."Plugins"."krunner_bookmarksrunnerEnabled" = false; - "krunnerrc"."Plugins"."krunner_katesessionsEnabled" = false; - "krunnerrc"."Plugins"."krunner_killEnabled" = false; - "krunnerrc"."Plugins"."krunner_placesrunnerEnabled" = false; - "krunnerrc"."Plugins"."krunner_recentdocumentsEnabled" = false; - "krunnerrc"."Plugins"."krunner_servicesEnabled" = true; - "krunnerrc"."Plugins"."krunner_spellcheckEnabled" = false; - "krunnerrc"."Plugins"."locationsEnabled" = false; - "krunnerrc"."Plugins"."org.kde.activities2Enabled" = false; - "krunnerrc"."Plugins"."org.kde.datetimeEnabled" = false; - "krunnerrc"."Plugins"."org.kde.windowedwidgetsEnabled" = false; - "krunnerrc"."Plugins"."placesEnabled" = false; - "krunnerrc"."Plugins"."recentdocumentsEnabled" = false; - "krunnerrc"."Plugins"."shellEnabled" = false; - "krunnerrc"."Plugins"."unitconverterEnabled" = true; - "krunnerrc"."Plugins"."webshortcutsEnabled" = false; - "krunnerrc"."Plugins"."windowsEnabled" = false; - "krunnerrc"."Plugins/Favorites"."plugins" = "krunner_services"; - - }; }; - systemd.user.tmpfiles.rules = [ - "L ${config.variables.homedir}/.local/share/color-schemes/KritaDarkOrange.colors - - - - ${config.variables.flakedir}/shared/home_manager/assets/KritaDarkOrange.colors" - ]; } # vim: tabstop=2 softtabstop=2 diff --git a/shared/home_manager/plasma_manager/autostart.nix b/shared/home_manager/plasma_manager/autostart.nix new file mode 100644 index 0000000..ac82d8b --- /dev/null +++ b/shared/home_manager/plasma_manager/autostart.nix @@ -0,0 +1,12 @@ +{ config, ... }: + +{ + config.xdg.configFile = { + "autostart/yakuake.desktop".text = builtins.readFile ../../assets/autostart/org.kde.yakuake.desktop; + "autostart/nextcloud.desktop".text = builtins.readFile ../../assets/autostart/Nextcloud.desktop; + # "autostart/discord.desktop".text = builtins.readFile ../../assets/autostart/discord.desktop; + "autostart/keepassxc.desktop".text = builtins.readFile ../../assets/autostart/org.keepassxc.KeePassXC.desktop; + }; +} + +# vim: tabstop=2 softtabstop=2 diff --git a/shared/home_manager/plasma_manager/baloo.nix b/shared/home_manager/plasma_manager/baloo.nix new file mode 100644 index 0000000..62f36ca --- /dev/null +++ b/shared/home_manager/plasma_manager/baloo.nix @@ -0,0 +1,9 @@ +{ plasma-manager, ... }: + +{ + programs.plasma.configFile = { + "baloofilerc"."Basic Settings"."Indexing-Enabled" = false; + }; +} + +# vim: tabstop=2 softtabstop=2 diff --git a/shared/home_manager/plasma_manager/input.nix b/shared/home_manager/plasma_manager/input.nix new file mode 100644 index 0000000..0981292 --- /dev/null +++ b/shared/home_manager/plasma_manager/input.nix @@ -0,0 +1,16 @@ +{ plasma-manager, ... }: + +{ + # Find attributes at /proc/bus/input/devices + # converting vendorId and productId from hex to base10 is broken currently + # https://github.com/nix-community/plasma-manager/issues/306 + programs.plasma.input.touchpads = [{ + enable = true; + name = "SynPS/2 Synaptics TouchPad"; + vendorId = "0002"; + productId = "0007"; + naturalScroll = true; + }]; +} + +# vim: tabstop=2 softtabstop=2 diff --git a/shared/home_manager/plasma_manager/krunner.nix b/shared/home_manager/plasma_manager/krunner.nix new file mode 100644 index 0000000..04698b7 --- /dev/null +++ b/shared/home_manager/plasma_manager/krunner.nix @@ -0,0 +1,40 @@ +{ plasma-manager, ... }: + +{ + programs.plasma.configFile = { + "krunnerrc"."PlasmaRunnerManager"."migrated" = true; + "krunnerrc"."Plugins"."CharacterRunnerEnabled" = false; + "krunnerrc"."Plugins"."DictionaryEnabled" = false; + "krunnerrc"."Plugins"."appstreamEnabled" = false; + "krunnerrc"."Plugins"."baloosearchEnabled" = false; + "krunnerrc"."Plugins"."bookmarksEnabled" = false; + "krunnerrc"."Plugins"."browserhistoryEnabled" = false; + "krunnerrc"."Plugins"."browsertabsEnabled" = false; + "krunnerrc"."Plugins"."calculatorEnabled" = true; + "krunnerrc"."Plugins"."desktopsessionsEnabled" = false; + "krunnerrc"."Plugins"."helprunnerEnabled" = false; + "krunnerrc"."Plugins"."katesessionsEnabled" = false; + "krunnerrc"."Plugins"."konsoleprofilesEnabled" = false; + "krunnerrc"."Plugins"."krunner_appstreamEnabled" = false; + "krunnerrc"."Plugins"."krunner_bookmarksrunnerEnabled" = false; + "krunnerrc"."Plugins"."krunner_katesessionsEnabled" = false; + "krunnerrc"."Plugins"."krunner_killEnabled" = false; + "krunnerrc"."Plugins"."krunner_placesrunnerEnabled" = false; + "krunnerrc"."Plugins"."krunner_recentdocumentsEnabled" = false; + "krunnerrc"."Plugins"."krunner_servicesEnabled" = true; + "krunnerrc"."Plugins"."krunner_spellcheckEnabled" = false; + "krunnerrc"."Plugins"."locationsEnabled" = false; + "krunnerrc"."Plugins"."org.kde.activities2Enabled" = false; + "krunnerrc"."Plugins"."org.kde.datetimeEnabled" = false; + "krunnerrc"."Plugins"."org.kde.windowedwidgetsEnabled" = false; + "krunnerrc"."Plugins"."placesEnabled" = false; + "krunnerrc"."Plugins"."recentdocumentsEnabled" = false; + "krunnerrc"."Plugins"."shellEnabled" = false; + "krunnerrc"."Plugins"."unitconverterEnabled" = true; + "krunnerrc"."Plugins"."webshortcutsEnabled" = false; + "krunnerrc"."Plugins"."windowsEnabled" = false; + "krunnerrc"."Plugins/Favorites"."plugins" = "krunner_services"; + }; +} + +# vim: tabstop=2 softtabstop=2 diff --git a/shared/home_manager/plasma_manager/kwin.nix b/shared/home_manager/plasma_manager/kwin.nix new file mode 100644 index 0000000..83f0864 --- /dev/null +++ b/shared/home_manager/plasma_manager/kwin.nix @@ -0,0 +1,14 @@ +{ plasma-manager, ... }: + +{ + programs.plasma.kwin = { + edgeBarrier = 0; + cornerBarrier = false; + virtualDesktops = { + number = 8; + rows = 4; + }; + }; +} + +# vim: tabstop=2 softtabstop=2 diff --git a/shared/home_manager/plasma_manager/panel.nix b/shared/home_manager/plasma_manager/panel.nix new file mode 100644 index 0000000..8e30ae6 --- /dev/null +++ b/shared/home_manager/plasma_manager/panel.nix @@ -0,0 +1,35 @@ +{ plasma-manager, ... }: + +{ + programs.plasma.panels = [{ + floating = false; + height = 44; + location = "left"; + widgets = [ + "org.kde.plasma.kickoff" + "org.kde.plasma.pager" + { + iconTasks.launchers = []; + } + "org.kde.plasma.marginsseparator" + { + systemTray.items = { + # shown = []; + # hidden = []; + }; + } + { + digitalClock = { + calendar = { + firstDayOfWeek = "monday"; + showWeekNumbers = true; + }; + time.format = "24h"; + settings.Appearance.showDate = false; + }; + } + ]; + }]; +} + +# vim: tabstop=2 softtabstop=2 diff --git a/shared/home_manager/plasma_manager/theme.nix b/shared/home_manager/plasma_manager/theme.nix new file mode 100644 index 0000000..7aed8d8 --- /dev/null +++ b/shared/home_manager/plasma_manager/theme.nix @@ -0,0 +1,14 @@ +{ plasma-manager, config, ... }: + +{ + programs.plasma.workspace = { + theme = "breeze-dark"; + colorScheme = "KritaDarkOrange"; + }; + + systemd.user.tmpfiles.rules = [ + "L ${config.variables.homedir}/.local/share/color-schemes/KritaDarkOrange.colors - - - - ${config.variables.flakedir}/shared/home_manager/assets/KritaDarkOrange.colors" + ]; +} + +# vim: tabstop=2 softtabstop=2