我使用带有 GNOME 3 的 Fedora 15,我希望我的壁纸能够像 Windows 7 一样定期更改。如果它可以使用 RSS/Atom 或指定目录,那就最好了。
我在存储库中没有找到任何工具。我猜你可以用脚本和 cron 来更改它,但我正在寻找更优雅的东西。
答案1
这是您正在寻找的解决方案:
- http://dsathe.blogspot.com/2011/06/auto-background-changer-for-gnome-3-gui.html
- http://www.omgubuntu.co.uk/2011/06/wallpaper-slideshow-app-for-gnome-3/
我做到了;虽然只是一个测试版本,但是可以工作!
答案2
将以下 shell 脚本保存在某处:
#!/bin/bash
WP_DIR=/home/honeyp0t/wallpapers
cd $WP_DIR
while [ 1 ]
do
set -- *
length=$#
random_num=$((( $RANDOM % ($length) ) + 1))
gsettings set org.gnome.desktop.background picture-uri "file://$WP_DIR/${!random_num}"
sleep 600
done
然后在主目录中的 .config/autostart 中将以下内容放入名为 wallpaper-changer.desktop 的文件中
[Desktop Entry]
Name=wallpaper-changer
Exec=/home/sammhe/bin/setbg.sh
Comment=change wallpaper every so often
Hidden=false
Type=Application
X-GNOME-Autostart-enabled=true
这将每 10 分钟更换一次壁纸……或者按照您在脚本中设置的任何值更换一次……
我最初发布此内容为对题为“自定义 GNOME Shell”的帖子的评论在 OS 水管工的沉思中。
答案3
如果您更喜欢使用 cron 作业而不是 init 脚本,以下是我所做的。感谢 Hubert 的启发!
#!/bin/bash
walls_dir=$HOME/.wallpapers
selection=$(find $walls_dir -type f -name "*.jpg" -o -name "*.png" | shuf -n1)
gsettings set org.gnome.desktop.background picture-uri "file://$selection"
将脚本保存在某处(例如$HOME/bin/rotate_bg
),使其可执行(chmod +x $HOME/bin/rotate_bg
),然后添加cron
作业以按照您希望更改背景的频率运行它。运行crontab -e
以编辑cron
用户的表格。以下是描述 crontab 格式的链接。以下条目将每 10 分钟轮换一次您的背景:
*0 * * * * $HOME/bin/rotate_bg
答案4
将以下 shell 脚本保存在某处:
#!/bin/bash
while true; do
file=`/bin/ls -1 $1 | sort --random-sort | head -1`;path=`readlink --canonicalize "$dir/$file"`;
gsettings set org.gnome.desktop.background picture-uri "file://"$1$path;sleep $2;done
使用以下语法运行它:
scriptname directoryofpictures howmanyseconds