{{Header}} __NOINDEX__ {{#seo: |description=Development Notes about KDE }} {{dev_desktop_environment}} {{intro| {{project_name_short}} Development Notes about KDE '''For user documentation, see [[Other Desktop Environments]] instead!''' Users, non-developers, should ignore this page. }} {{archived}} = todo =
bookworm kde X11 / Wayland: hover of systray, without clicking, the systray icon is vanishing
install new theme -> downloaded unverified?
low contrast theme, difficult to read
require different theme
= KDE Privacy issues = * https://gitlab.freedesktop.org/geoclue/geoclue/-/issues/177 = Reasons for Deprecation of KDE as {{project_name_short}} Default Desktop Environment = * https://forums.whonix.org/t/user-poll-xfce-vs-kde-kde-deprecation-considered/6235 = Changes to the Debian/KDE defaults = {| class="wikitable" ! align="left" | Application ! align="left" | Changed Setting ! align="left" | Reason ! align="left" | Status |- class="odd" | align="left" | Dolphin | align="left" | Always show Menu Bar | align="left" | Easier to find the button to show hidden files. | align="left" | Done. |- class="even" | align="left" | Dolphin | align="left" | Double click instead single click. | align="left" | Usability | align="left" | Done. |- class="odd" | align="left" | Desktop | align="left" | Change Theme | align="left" | Prevent confusion of host desktop and {{workstation_product_name}} desktop.; No legally required, but looking different than the Debian/KDE default theme. | align="left" | TODO, how? |- class="even" | align="left" | Desktop | align="left" | Mouse Theme | align="left" | Same as above. | align="left" | TODO, how? |- class="odd" | align="left" | Desktop | align="left" | Change Wallpaper | align="left" | Same as above. | align="left" | Done. |- class="even" | align="left" | plasma-desktop | align="left" | folderview instead of desktop view | align="left" | Displaying desktop icons for the most important applications. | align="left" | Done. |- class="odd" | align="left" | KGpg | align="left" | Disabled tip of the day. | align="left" | - | align="left" | Done. |- class="even" | align="left" | KGpg | align="left" | Disabled first run wizard and configure. | align="left" | - | align="left" | Done. |- class="odd" | align="left" | Konsole | align="left" | Unlimited scroll back | align="left" | - | align="left" | Done. |- class="even" | align="left" | KDE? | align="left" | Autologin | align="left" | - | align="left" | Done. |- class="odd" | align="left" | plasma-desktop | align="left" | Digital Clock, set to UTC, show date, show seconds | align="left" | Without showing UTC it is even more confusing why the clock "wrong".; Show seconds to demonstrate the timesync script is working. | align="left" | [https://bugs.kde.org/show_bug.cgi?id=314224 Upstream BUG] |- class="even" | align="left" | plasma-desktop | align="left" | KGpg unhidden in tray | align="left" | Usability. Otherwise it looks like it doesn't start. It would start, but only hidden in tray. | align="left" | Done. (Tray icon disabled by default as workaround. Now starts in foreground.) |- class="odd" | align="left" | plasma-desktop | align="left" | start menu favorites | align="left" | Usability. Highlighting most important applications. | align="left" | Done. |} = Added Desktop Icons = {| class="wikitable" ! align="left" | Application ! align="left" | Changed Setting ! align="left" | Reason ! align="left" | Status |- class="odd" | align="left" | plasma-desktop | align="left" | Synaptic (install software) | align="left" | - | align="left" | Removed. |- class="even" | align="left" | plasma-desktop | align="left" | Tor Browser Updater Icon | align="left" | - | align="left" | Done. |- class="odd" | align="left" | plasma-desktop | align="left" | Tor Browser | align="left" | - | align="left" | Removed. |- class="even" | align="left" | plasma-desktop | align="left" | Documentation | align="left" | Encouraging reading documentation. | align="left" | Done. |- class="odd" | align="left" | plasma-desktop | align="left" | Tor Browser Recommended | align="left" | Encouraging users to read {{project name}} Feature Blog or at least {{project name}} Important Blog. | align="left" | Removed. |- class="even" | align="left" | plasma-desktop | align="left" | HexChat | align="left" | - | align="left" | Done. Remove? |- class="odd" | align="left" | plasma-desktop | align="left" | Whonixcheck | align="left" | Reminding users to use whonixcheck. This is important after pause/resume of a VM or after restoring snapshots. We don't know how to automate running whonixcheck in such situations. | align="left" | Done. |- class="even" | align="left" | plasma-desktop | align="left" | Timesync | align="left" | Reminding users to use timesync. This is important after pause/resume of a VM or after restoring snapshots. We don't know how to automate running timesync in such situations. | align="left" | Done. |- class="even" | align="left" | plasma-desktop | align="left" | konsole | align="left" | - | align="left" | Done. Remove? |- class="odd" | align="left" | plasma-desktop | align="left" | User Help Forum | align="left" | Support. Building a community. | align="left" | Done. |- class="even" | align="left" | plasma-desktop | align="left" | Developer Mailing List | align="left" | Attracting developers. Getting causal readers and comments. | align="left" | Done. |- class="odd" | align="left" | plasma-desktop | align="left" | Contribute | align="left" | Encouraging contributions. | align="left" | Done. |- class="even" | align="left" | plasma-desktop | align="left" | Donate | align="left" | Encouraging donations. | align="left" | Done. |- class="odd" | align="left" | plasma-desktop | align="left" | Feature Blog | align="left" | - | align="left" | Removed. |- class="even" | align="left" | plasma-desktop | align="left" | Important Blog | align="left" | - | align="left" | Done. Remove? |} = KDE Lowfat Settings = https://github.com/{{project_name_short}}/kde-lowfat/tree/master/usr/share/kde-lowfat [http://lists.kde.org/?l=kde&m=136497689725852&w=2 KDE Mailing list: How to learn about all those configuration file values?] == kdedrc == TODO: Review and update kdedrc
## What does it do: Disable KDE Bluetooth integration
## Source: http://userbase.kde.org/Bluedevil
## Whonix: Not required in {{project name}} 
[Module-bluedevil]
autoload=false
kcmshell4 --list | grep mount, gives me device_automounter_kcm, with a description: "Configure automatic handling of removable storage media".
kcmshell4 device_automounter_kcm give me... well you can try it. Of course that's the Removable Device Automounter, as listed in the services configuration (kcmkded). Without this module running the new removable device should still show up in device-notifier, but the configured automount actions won't occur.
This one will strongly depend on whether the user is willing to jump thru manual hoops to mount a newly plugged removable storage device, or would prefer that kde handled it even at the expense of a bit of kde startup speed and memory for the automounting service. Of course people like me don't like kde mounting stuff behind their back anyway, so turning it off is an easy choice here, but a lot of users want the system to handle it... if they even know anything about mounting to begin with. http://lists.kde.org/?l=kde&m=136497689725852&w=2
[Module-device_automounter]
autoload=true
http://lists.kde.org/?l=kde&m=136497689725852&w=2
[Module-dnssdwatcher]
autoload=false

## What does it do: This module notifies the user when /home or one of
## the other directories which you can configure it to monitor are
## running out of space. 
## Source: http://packages.debian.org/unstable/main/freespacenotifier
## Whonix: We should probably leave it enabled.
[Module-freespacenotifier]
autoload=true

[Module-kwrited]
autoload=false

[Module-nepomuksearchmodule]
autoload=false
http://lists.kde.org/?l=kde&m=136497689725852&w=2 I /think/ this is Network Status in kcmkded. But as I don't run network-manager or the like at all, instead using initscripts for my network management, I have absolutely no experience with this.
[Module-networkmanagement]
autoload=false

[Module-obexftpdaemon]
autoload=false
http://lists.kde.org/?l=kde&m=136497689725852&w=2 kcmkded says display management change monitor. Probably useful for laptop users that often plug external monitors or who frequently change resolution, not so much for folks who always run the same monitor config and resolution.
[Module-randrmonitor]
autoload=false
http://lists.kde.org/?l=kde&m=136497689725852&w=2 Remote URL change notifier. For those with network folders this is probably useful. Otherwise, not so much.
[Module-remotedirnotify]
autoload=false
== ksmserverrc == ksmserverrc
## What does it do: To start the kde session fresh, it makes the applications
## that was open (with tabs and contents), to start again without any kind of data.
## It wipes the applications that were open from the desktop.
## Source: http://techbase.kde.org/KDE_System_Administration/Startup and
## http://www.backtrack-linux.org/forums/archive/index.php/t-8210.html
[General]
loginMode=default
= Desktop Icons = [[File:Symlink.png]] The arrows and italic font of the desktop icons is ugly. They are arrows and italic font, because the desktop icons are symlinks. Using symlinks has several advantages. # prevents code duplication # to prevent writing into the user's home folder Litian will complain when shipping files in /home/*. Debian developers are strictly against writing into /home/. It is against Debian policy. Writing into /home/ reduces chances that {{project name}} gets some day merged into Debian (at least big parts of it). Getting big parts merged into Debian would be a major advantage. # being able to update for example /usr/share/applications/whonix/whonix-whonixcheck.desktop update as in: new icon, new description, translations, who knows... # the user is free to delete them and to prevent getting them re-added by blacklisting the responsible postinst.d script There will be no arrows, if they are copies and chmod +x. Using copies is no real alternative due to the advantages listed above. The real fix is an open question for research: '''How to tell KDE to use no arrows and no italic font for symlinked desktop icons?''' = Notes = * [http://lists.kde.org/?l=kde&m=141130406809446&w=2 kde settings files / packages - debugging and changeing user settings as a distribution] * https://forum.kde.org/viewtopic.php?f=305&t=141846 * https://marc.info/?l=kde&m=136497689725852&w=2 = {{project_name_short}} 14 = * https://phabricator.whonix.org/T633 == TODO == * enable sdwdate-gui systray by default ** https://marc.info/?l=kde-devel&m=148832561511181&w=2 ** https://phabricator.whonix.org/T636 * [Need Plasma 5 scripter] fix "KDE Desktop Settings for {{workstation_product_name}} (TODO: not GS?). Enables KDE folderview (allows desktop shortcuts) and sets {{project name}} specific wallpaper." ** https://github.com/{{project_name_short}}/whonix-gw-kde-desktop-conf ** https://github.com/{{project_name_short}}/whonix-ws-kde-desktop-conf ** Folderview is default in Plasma 5.10; Won't be in debian until 2036 ** Method 1: Via scripting *** Currently broken (https://github.com/{{project_name_short}}/whonix-gw-kde-desktop-conf/blob/master/usr/share/whonix-gw-kde-desktop-conf/plasma-desktop/init/00-defaultLayout.js) *** Asking on forums https://forum.kde.org/viewtopic.php?f=289&t=142861 ** Method 2: contents/default ** Global default for new users is in /usr/share/plasma/shells/org.kde.plasma.desktop/contents/defaults *** The line "Containment=" should be changed to "Containment=org.kde.plasma.folder" ** Method 3: XDG. Probably doesn't work. Only scripting or contents/default *** Placing plasma-org.kde.plasma.desktop-appletsrc in a current used XDG_CONFIG_DIR directory (for test), with the text: "[Containments][1]" "plugin=org.kde.plasma.folder" has no effect. *** Asked https://forum.kde.org/viewtopic.php?f=289&t=141930&p=381724 ** Methods 4: /etc/skel *** User's config is ~/.config/plasma-org.kde.plasma.desktop-appletsrc *** Line 15, under [Containments][1], needs to change to "plugin=org.kde.plasma.folder" == Maintain == * Confirm use of profile in konsole from https://github.com/{{project_name_short}}/kde-konsole-unlim-scrollback * (Tested on 14.0.0.5.0) https://github.com/{{project_name_short}}/pkg-manager-no-autoupdate * (Tested on 14.0.0.5.0) disable screen saver - implemented in https://github.com/{{project_name_short}}/power-savings-disable-in-vms - * (Tested on 14.0.0.5.0) https://github.com/{{project_name_short}}/knetattach-hide - Removed as unneeded. == Done == * [anon-apps-config package] KGPG defaults fix https://github.com/{{project_name_short}}/kde-kgpg-tweaks ** Kgpg not affected by XDG (plasma 5), only /etc/kde4rc (KDE4) ** https://forum.kde.org/viewtopic.php?f=225&t=141955&p=381843#p381843 * [Works if "multi user" isn't supported in {{project_name}}] Desktop shortcuts ** Works for `user` (both first login and reinstall), but not created user ** https://github.com/{{project_name_short}}/whonix-gw-desktop-shortcuts ** https://github.com/{{project_name_short}}/whonix-ws-desktop-shortcuts * [Deleted] ksmserverrc (https://github.com/{{project_name_short}}/kde-lowfat/blob/master/usr/share/kde-lowfat/ksmserverrc) * [Suggest: Review in 15] https://github.com/{{project_name_short}}/kde-lowfat/tree/master/usr/share/kde-lowfat ** (Works) kdeglobals (https://github.com/{{project_name_short}}/kde-lowfat/blob/master/usr/share/kde-lowfat/kdeglobals) ** (Works) kdedrc (https://github.com/{{project_name_short}}/kde-lowfat/blob/master/usr/share/kde-lowfat/kdedrc) *** No module set to "false" is loaded in in {{project name}} 14.0.0.5.0 *** TODO: Review which modules we want loaded * [Suggest: Can't fix] How to tell KDE to use no arrows and no italic font for symlinked desktop icons? ** arrow → hackish → rename all the emblem-symbolic-link.* files (inside theme?) .bak or replace with transparent image. ** italics → no leads. Need kde dev to confirm. * fix bugs that totally break the KDE desktop completely ** all shell packages missing- done - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=851175 - https://github.com/{{project_name_short}}/anon-meta-packages/commit/db7227aca18f1782103e86f664b962fd656c3a6e ** Error loading QML file: file:///usr/share/plasma/plasmoids/org.kde.plasma.kickoff/contents/ui/Kickoff.qml:31:1: module "org.kde.plasma.private.kicker" is not installed *** https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=824939 * update https://github.com/{{project_name_short}}/anon-meta-packages with new/modified packages from stretch * add kde-config-screenlocker (done) * fix auto login [done] * fix sdwdate-gui systray (functional but invisible in systray) - https://phabricator.whonix.org/T598 * disable / not install kde wallet? - kwalletmanager not installed * fix https://github.com/{{project_name_short}}/power-savings-disable-in-vms * fix kde kickoff favorites start menu applications - https://github.com/{{project_name_short}}/anon-gw-kde-startmenu (merged into whonix-gw-desktop-shortcuts) * fix kde kickoff favorites start menu applications - https://github.com/{{project_name_short}}/anon-ws-kde-startmenu (merged into whonix-ws-desktop-shortcuts) ** fix https://github.com/{{project_name_short}}/kde-dolphin-menubar-enable ** fix https://github.com/{{project_name_short}}/kde-kdm-autologin ported to sddm and working ** fix https://github.com/{{project_name_short}}/kde-mouse-doubleclick working (double click to open files and folders) ** fix https://github.com/{{project_name_short}}/kde-sounds-off working ** fix https://github.com/{{project_name_short}}/kmix-disable-autostart working ** fix https://github.com/{{project_name_short}}/kde-common-resolution deprecated ** fix https://github.com/{{project_name_short}}/anon-kde-streamiso ** fix https://github.com/{{project_name_short}}/kde-privacy working = Footnotes = {{reflist|close=1}} {{Footer}} [[Category:Design]] [[Category:Development]]