I have emerged rss-glx-0.8.1-r4 USE="kde sse xscreensaver -3dnow -openal". But this time they not appers in controlcenter, instead I found them in KMenu in "Lost & Found". The problem is where the *.desktop files are installed:/usr/share/applications instead of /usr/kde/3.5/share/applnk/System/ScreenSavers. I have modified the ebuild and now is working fine Reproducible: Always Steps to Reproduce: 1.emerge rss-glx 2. 3. Actual Results: The screensavers don't appers in controlcenter, instead I found them in KMenu in "Lost & Found". The .desktop files are installed in the /usr/share/applications Expected Results: Install the .desktop files to /usr/kde/3.5/share/applnk/System/ScreenSavers I have modified the rss-glx-0.8.1-r4ebuild: Code: if use kde; then find . -name '*.desktop' -exec \ sed -i \ -e 's:Exec=kxsrun \(.*\):Exec=kxsrun \1:g' \ -e 's:Exec=kxsconfig \(.*\):Exec=kxsconfig \1:g' \ '{}' \ \; \ || die "couldnt sed desktop files" # the problem is here myconf="${myconf} --with-kdessconfigdir=usr/share/applications" fi To this Code: if use kde; then find . -name '*.desktop' -exec \ sed -i \ -e 's:Exec=kxsrun \(.*\):Exec=kxsrun \1:g' \ -e 's:Exec=kxsconfig \(.*\):Exec=kxsconfig \1:g' \ '{}' \ \; \ || die "couldnt sed desktop files" myconf="${myconf} #This is the solution to the problem --with-kdessconfigdir=/usr/kde/3.5/share/applnk/System/ScreenSavers" fi
(In reply to comment #0) > #This is the solution to the problem > --with-kdessconfigdir=/usr/kde/3.5/share/applnk/System/ScreenSavers" > fi No, this is not the solution; that location is deprecated and shouldn't be used anywhere. Does /usr/share/applications/screensavers work for you?
/usr/share/applications/screensavers don't work for me. With this location I have the same problem. There is a screenshoot: http://img228.imageshack.us/my.php?image=lostfoundscreensaversio4.jpg
KDE, where do you want your extra screensaver .desktop files installed by rss-glx with --with-kdessconfigdir= ? It's a KDE only thing, these savers work fine without the mentioned files in other environments and in xscreensaver itself.
The paths kcm_screensaver uses to look for .desktop files seems really limited. A quick patch to kcontrol adds the current install path for rss-glx (/usr/share/applications/). If you don't feel like patching, you can copy rss-glx's .desktop files into ~/.kde/share/applnk/System/ScreenSavers/ and they'll show up in the screensaver dialog. Note that the .desktop files kind of suck, they don't put the screensavers in any of the dialog's categories (they are put in the root of the list instead of, say, OpenGL Screen Savers). rss-glx needs to be patched for that.
Created attachment 113432 [details, diff] Patch to kcontrol's kcm_screensaver Patches kcm_screensaver to add /usr/share/applications/ to the paths searched when looking for .desktop files (necessary for the entries being displayed in the dialog).
KDE should follow standards from freedesktop.org.. http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html#variables
Yes, it should but currently it does only half-heartedly. Please file an upstream bug for this and add its URL to this bug.
I would like to see an upstream bug filed about this issue and linked to from here. This does look like a very minimal patch to fix an issue. It seems unlikely to introduce bugs and allows KDE to better function within the freedesktop.org standards. I have applied the patch in 3.5.7 but didn't rev bump as this is an issue that only affects a small number of users in a very minimal way. Works just fine here and some of those screensavers are very pretty - would be a shame to hide them from KDE users. I do agree that it would be good if they had better .desktop files...