9 nil
) echo >&2 "usage: $0 DIR,... HOST:DISP [CMD ARGS ...]"; exit 2; ;;
11 dirs=$1 host=${2%:*} dpy
=${2##*:}; shift 2
14 set -- /usr
/lib
/xscreensaver
/glslideshow
-duration
10 -pan
10 \
15 -xrm
"'*desktopGrabber: ./getimg %s'"
18 set -- /usr
/lib
/xscreensaver
/photopile
-no-titles
-no-polaroid
-shadows \
19 -xrm
"'*desktopGrabber: ./getimg %s'"
23 t
=$
(mktemp
-d
"${TMPDIR-/tmp}/remote-slidesshow.XXXXXXXX")
30 tmp=\$(mktemp -d \"\${TMPDIR-/tmp}/remote-slideshow.XXXXXXXX\")
31 trap 'cd / && rm -rf \$tmp' EXIT INT TERM HUP
33 IMAGEFILE=\$tmp/img; export IMAGEFILE
34 DISPLAY=:$dpy; export DISPLAY
39 echo \"\$IMAGEFILE\" >&4
40 xscreensaver-command -deactivate >/dev/null 2>&1 || :
42 exec xscreensaver-getimage -directory \"\${IMAGEFILE%/*}\" -file img \"\$@\"
46 while IFS
= read -r rdir
; do
48 for e
in jpg jpeg pjpeg pjpg png gif tif tiff xbm xpm
; do
49 set -- "$@" -o
-name
"*.$e"
51 set -- "$@" \
) -type f
-print
-o
-type d \
( -false
56 *,*) d
=${dd##*,} dd=${dd%,*} ;;
59 for i
in $
(find "$d" -name .slideshow-ignore
-type f
-print
); do
60 while IFS
= read -r line
; do
61 case $line in \
#*) continue ;; esac
62 set -- "$@" -o
-path
"${i%/*}/$line"
68 f
=$
(find "$@" | shuf
-n1
)
70 scp
"$f" "$host:$rdir" >/dev
/null
2>&1