2011年6月21日 星期二

wallpaper slideshow for lxde, dual monitors

捨kde換 lxde 也過了幾個月了
台灣之光真的不賴 我的小筆電效能都像草上飛一般...
嗯..不開chrome的話 XD
可惜桌布不會自己換 小小缺憾~

為了雙螢幕也可以換桌布
寫了個script來即時亂數選兩張圖
調圖片大小後再併成一張桌布
用這個script, 配合cron就可以定期換桌布啦

imagemagick 真是好工具啊!! 連opencl都支援 強大到了一種...
叫我們怎麼茍延殘喘下去呢 QQ



wallpaper.sh內容如下


#!/bin/bash 
# $ sudo pacman -S imagemagick
# $ sudo ln -s /path/to/wallpaper.sh /etc/cron.hourly/wallpaper

ID=username
RES1="1680x1050^"
RES2="1280x1024^"
D="/path/to/Wallpapers/"
FN="/tmp/wallpaper.jpg"

# randomly pick up two images as wallpaper
N="`/bin/ls -1 \"$D\" | wc -l`"
FN1="`/bin/ls -1 \"$D\" | sed -e \"$((${RANDOM}%${N}))!d\"`"
FN2="`/bin/ls -1 \"$D\" | sed -e \"$((${RANDOM}%${N}))!d\"`"

# resize 2 images to fit two resolutions, then append to big wallpaper
convert \
    \( -resize ${RES1} "${D}${FN1}" -gravity center -extent "${RES1}" \) \
    \( -resize ${RES2} "${D}${FN2}" -gravity center -extent "${RES2}" \) \
    +append "${FN}"

EXEC="su -l ${ID} -c 'pcmanfm --display=:0 --set-wallpaper \"${FN}\"'"
eval $EXEC

### optional: run at to slideshow
### $ sudo pacman -S at
# M=5   # change wallpaper per M minutes
# if [ -z "`atq | grep \"a ${ID}\"`"     ] ; then
#    echo $0 | at now+${M}minutes
# fi