status of kde/plasma kiosk framework in kf5

Thomas Pfeiffer thomas.pfeiffer at kde.org
Thu May 12 11:46:06 UTC 2016


Hi Thomas,
thank you for your detailed email!
I have added the Plasma mailing list, hoping that somebody on that list can 
provide feedback, which is probably relevant for others on the enterprise list 
as well (so please make sure you reply to all, dear Plasma devs :) ).
Thanks,
Thomas

On Mittwoch, 11. Mai 2016 23:25:27 CEST Mag. Weissel Thomas wrote:

hello everybody,
i'm on my way to deploy about 40 classroom installations of kubuntu/neon
with plasma5.6 and so far my first testsuspects (15 students) were
amazed by the new plasma5
especially the handling of widgets (long press to configure) and the
possibilty to undo changes (for example removing the main panel) saves a
lot of lifes :)  (and of course the new looks)
 
for the classrooms i strongly depend on the #kiosk framework..  i've
played around with it in kde4 and managed to lock down the classroom
desktops as much as possible
(the prove that this was a success is one school year without any
support calls that relate to the user interface)
 
here a small list of what i've done so far:
 
 
i created a file called "kdeglobals" and placed it in /etc/kde4 -- this
directory was read first and userconfigurations read later were ignored
 
[KDE Action Restrictions][$i]
 
 
movable_toolbars=false
 
run_command=false  #disable krunner
action/run_command=false  #hide action in kontextmenu
 
action/lock_screen=false   #hide action screenlock in kontextmenu
action/movable_toolbars=false   #very important !!
action/logout=false
action/kwin_rmb=false
action/options_configure_keybinding=false
action/fullscreen=false  #just in case someone doesn't know how to get
outathere
 
 
plasma-desktop/add_activities=false  #not working?
plasma/containment_actions=false
plasma/containment_context_menu=false
plasma/allow_configure_when_locked=false
plasma/plasma-desktop/unlockedDesktop=false
 
 
since the /etc/kde4 directory is gone.. WHERE should i put this file ??
 
 
-----------
echo "disabling rightclick on desktop containment"
echo -e "$(sed '/RightButton/d'
/home/student/.kde/share/config/plasma-desktop-appletsrc)" >
/home/student/.kde/share/config/plasma-desktop-appletsrc
 
this config file has moved to ~/.config  and was renamed to
"plasma-org.kde.plasma.desktop-appletsrc"  (seriously???)
-----------
 
echo "locking desktop...."
sudo echo -e "[\$i]\n $(cat
/home/student/.kde/share/config/plasma-desktop-appletsrc)" >
/etc/kde4/plasma-desktop-appletsrc
 
well..first of all the directory /etc/kde4 does not exist anymore..
creating it and placing a kde configfile in it in order to override the
userconfig files is not working anymore
further placing [$i] at the beginning of the file (which should make
everything immutable) leads to a blank desktop -- only the panel
containment is there.. everything else is gone..
 
-------------------
 
sudo echo -e "[\$i]\n $(cat
/home/student/.kde/share/config/plasma-desktoprc)" >
/etc/kde4/plasma-desktoprc
echo -e "[\$i]\n $(cat
/home/student/.kde/share/config/plasma-desktoprc)" >
/home/student/.kde/share/config/plasma-desktoprc
 
this file was renamed to plasmashellrc and moved to ~/.config
-------------------
 
echo "removing cashew..."
sudo chmod 600 /usr/lib/kde4/plasma_toolbox_desktoptoolbox.so
sudo chmod -x /usr/bin/kmenuedit
 
in kde4 this was the only way to get rid of the cashew.. and dissalow
editing the menu
 
------------------
 
then i removed almost all keyboardshortcuts and kwin titlebar actions
resulting in a totally locked down desktop... the only thing that could
revive the desktop was a little script (password protected)
"unlock desktop" that would delete the content of /etc/kde4 get the
backups of the configuration files the "lockdesktop" script created and
copy them over the locked files.. killall Xorg will then do the rest..
 
________
 
 
so here i am..  i already invested hours to find out what the #kiosk
framework can do and can not do.. and now i need to start over it seems.
there is a website
https://userbase.kde.org/KDE_System_Administration/Kiosk/Introduction
and this site is so totally out of date - it hurts...  also there was a
kiosk admin tool in kde3..  wonderful..  could someone please revive this??
 
 
WHAT WORKS SO FAR:
##################
placing [$i] at the end of a section in
plasma-org.kde.plasma.desktop-appletsrc
 
like
 
[ActionPlugins][0][$i]
MidButton;NoModifier=org.kde.paste
RightButton;NoModifier=org.kde.contextmenu
wheel:Vertical;NoModifier=org.kde.switchdesktop
 
will change the whole section (after a restart of the desktop) to this :
 
[ActionPlugins][0]
MidButton;NoModifier[$i]=org.kde.paste
RightButton;NoModifier[$i]=org.kde.contextmenu
wheel:Vertical;NoModifier[$i]=org.kde.switchdesktop
 
 
you will still be able to configure everything for the session but the
next time you log in the setting will be undone..  (not quite what i
wanted but still usable)
i didn't try it for all sections of course.. but for this section it
works..
 
[Containments][1][Applets][21]  you may change "favorites" but it will
revert back after a new login .. so again.. it would be better to not be
able to change anything but not saving the changes works too..
[Containments][1]   (the panel)  set "immutability" to 2  and you will
not see the "configure panel" kontextmenu entry..
 
 
WHAT DOESN'T WORK:
#################
# "kdeglobals" and action restrictions could work (but i don't know
where to put them
# do NOT [$i] the whole section  [Containments][1]  this will lead to a
blank panel... similar to placing a [$i] at the beginning of the file
# [Containments][1][Applets][21]   this is org.kde.plasma.kicker - i
shouldn't be able to change the kicker icon for example but i still am.. :(
interestingly it doesn't change the value of custom image button
but i can disable the custom image button - it will then revert back to
the default K icon.
 
 
 
more interesting than locking down every single bit of plasma would be a
way to disable rightclick on ALL containments at once..
 
i will work on this list and test more of the #kiosk framework in the
next days..  hopefully someone of you has some experience or is curious
to help me figure this out..
i guess a good list of what works and what not is a good starting point
for talking to the devs :-)
 
thx
have a nice day/night




More information about the Plasma-devel mailing list