.desktop security and using kde in multiple prefixes
faure at kde.org
Fri Oct 1 17:37:07 BST 2010
The security check that says .desktop should be executable to be run, unless
they are in a known KDE prefix (known == by kdeinit/klauncher), breaks when
using multiple versions of KDE together.
In my kde-4.5 environment I source my trunk environment (different KDEHOME and
KDEDIR), run konqueror, and then press Ctrl+U (view document source), and I
klauncher(3694) KDesktopFile::isAuthorizedDesktopFile: Access to '
"/d/kde/inst/kde-trunk/share/applications/kde4/kwrite.desktop" ' denied
because of 'non_executable_desktop_file' restriction.
(and something similar in a messagebox; and kwrite isn't started).
This is because the klauncher process is running in the kde-4.5 environment,
so it sees the path to kwrite .desktop (in the trunk prefix) as a foreign
desktop file, not as one in a known prefix.
==> Is it OK if I chmod a+x all the .desktop files installed by KDE?
The prefix-check was just a way to avoid having to do that, but IMHO it's the
right way to do it so that it works in all cases.
(I wonder if svn will let me commit chmod changes? Do I need to change a
David Faure, faure at kde.org, http://www.davidfaure.fr
Sponsored by Nokia to work on KDE, incl. Konqueror (http://www.konqueror.org).
More information about the kde-core-devel