summaryrefslogtreecommitdiffstats
path: root/kscreensaver/kxsconfig/update_hacks.sh
diff options
context:
space:
mode:
Diffstat (limited to 'kscreensaver/kxsconfig/update_hacks.sh')
-rwxr-xr-xkscreensaver/kxsconfig/update_hacks.sh18
1 files changed, 18 insertions, 0 deletions
diff --git a/kscreensaver/kxsconfig/update_hacks.sh b/kscreensaver/kxsconfig/update_hacks.sh
new file mode 100755
index 00000000..5068e5b5
--- /dev/null
+++ b/kscreensaver/kxsconfig/update_hacks.sh
@@ -0,0 +1,18 @@
+#!/bin/sh
+scsvs=`cd /usr/lib/xscreensaver/ && ls -1 | grep -v config`
+echo $scsvs
+for name in $scsvs; do
+ if test -f /usr/lib/xscreensaver/$name && test -f /usr/share/xscreensaver/config/$name.xml && test ! -f ScreenSavers/$name.desktop; then
+ echo "name: $name"
+ label=`grep '<screensaver.*_label' /usr/share/xscreensaver/config/$name.xml | sed -e 's#^.*_label=\"\(.*\)\".*$#\1#'`
+ echo "label: $label"
+ f=ScreenSavers/$name.desktop
+ sed -e "s#@NAME@#$name#; s#@LABEL@#$label#" ScreenSavers/xscreensaver.template > $f
+ if ldd /usr/lib/xscreensaver/$name 2>&1 | grep libGL; then
+ sed -e "s,@GL1@,X-KDE-Category=OpenGL Screen Savers,; s,@GL2@,X-KDE-Type=OpenGL," $f > $f.new
+ else
+ grep -v @GL $f > $f.new
+ fi
+ mv $f.new $f
+ fi
+done