status of kde/plasma kiosk framework in kf5

Mag. Weissel Thomas valueerror at gmail.com
Wed May 11 21:25:27 UTC 2016


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

























-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/enterprise/attachments/20160511/ac7a7d8e/attachment.html>


More information about the Enterprise mailing list