Dear Maintainer,
on a system with the barcode package installed, and the default set
of xscreensaver packages,
ii barcode 0.98+debian-9.1
ii xscreensaver 5.30-1+b1
ii xscreensaver-data 5.30-1+b1
un xscreensaver-gl <none>
un xscreensaver-gnome <none>
un xscreensaver-nognome <none>
% which barcode
/usr/bin/barcode
xscreensaver ends up running /usr/bin/barcode rather than
the screensaver in /usr/lib/xscreensaver .
This is because the commands are named without absolute paths in
/etc/X11/app-defaults/XScreenSaver-nogl,
% grep -C3 barcode /etc/X11/app-defaults/XScreenSaver-nogl
- GL: antspotlight -root \n\
apple2 -root \n\
- GL: atunnel -root \n\
barcode -root \n\
- GL: blinkbox -root \n\
- GL: blocktube -root \n\
- GL: bouncingcow -root \n\
and the barcode saver is in xscreensaver-data-extra but is mentioned in the
app-defaults file from xscreensaver-data, so while it is not found in
/usr/lib/xscreensaver it is found later in $PATH. As a result, my laptop
frequently ends up showing the usage message from /usr/bin/barcode rather than
a pleasing graphical screensaver.
Perhaps xscreensaver should only consider /usr/lib/xscreensaver when executing
the screensavers rather than falling back to $PATH, since there may be other
commands that are less benign when executed erroneously. But I don't know
what the downsides of that approach might be ...
thanks,
-andy