1、建一个文件夹:
sudo mkdir /usr/share/backgrounds/mywallpapers/
2、把你漂亮的桌面壁纸文件(png、jpg)复制到新建的文件夹里面:
sudo cp *.jpg /usr/share/backgrounds/mywallpapers/
3、编辑自动切换桌面背景的定义文件,指定切换时间间隔等参数:
sudo gedit /usr/share/backgrounds/mywallpapers/mywallpapers-timed.xml
内容大概如下:
代码: 全选
<background>
<starttime>
<year>2020</year>
<month>04</month>
<day>01</day>
<hour>00</hour>
<minute>00</minute>
<second>00</second>
</starttime>
<!-- This animation will start at midnight. -->
<static>
<duration>600.0</duration>
<file>/usr/share/backgrounds/mywallpapers/001.jpg</file>
</static>
<transition>
<duration>2.0</duration>
<from>/usr/share/backgrounds/mywallpapers/001.jpg</from>
<to>/usr/share/backgrounds/mywallpapers/002.jpg</to>
</transition>
<static>
<duration>600.0</duration>
<file>/usr/share/backgrounds/mywallpapers/002.jpg</file>
</static>
<transition>
<duration>2.0</duration>
<from>/usr/share/backgrounds/mywallpapers/002.jpg</from>
<to>/usr/share/backgrounds/mywallpapers/003.jpg</to>
</transition>
<static>
<duration>600.0</duration>
<file>/usr/share/backgrounds/mywallpapers/003.jpg</file>
</static>
<transition>
<duration>2.0</duration>
<from>/usr/share/backgrounds/mywallpapers/003.jpg</from>
<to>/usr/share/backgrounds/mywallpapers/001.jpg</to>
</transition>
</background>
其中 <duration>600.0</duration> 里面的 600.0 是每张桌面背景显示的持续时间,<duration>2.0</duration> 里的2.0是背景切换时间。
以上例子中,我们拷贝了三张壁纸,分别是 001.jpg、002.jpg、003.jpg,请根据你自己实际的壁纸数量和名称增减修改。
我们设置了从 001.jpg 到 002.jpg 再到 003.jpg 最后回到 001.jpg 每个一段时间自动循环切换壁纸显示。
4、若想自己的复制进/usr/share/backgrounds/mywallpapers/目录的壁纸在 “更换桌面壁纸” 的设置里自动显示出来,还要再编辑一个文件:
sudo gedit /usr/share/gnome-background-properties/mywallpapers.xml
内容大概是罗列你复制到 /usr/share/backgrounds/mywallpapers/ 里面的那些壁纸文件名(这个例子中我们的三张示例壁纸文件是 001.jpg、002.jpg 和 003.jpg,请改成你自己的实际壁纸名称):
代码: 全选
<?xml version="1.0"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
<wallpaper deleted="false">
<name>1</name>
<filename>/usr/share/backgrounds/mywallpapers/001.jpg</filename>
<options>zoom</options>
<pcolor>#ffffff</pcolor>
<scolor>#000000</scolor>
</wallpaper>
<wallpaper deleted="false">
<name>2</name>
<filename>/usr/share/backgrounds/mywallpapers/002.jpg</filename>
<options>zoom</options>
<pcolor>#ffffff</pcolor>
<scolor>#000000</scolor>
</wallpaper>
<wallpaper deleted="false">
<name>3</name>
<filename>/usr/share/backgrounds/mywallpapers/003.jpg</filename>
<options>zoom</options>
<pcolor>#ffffff</pcolor>
<scolor>#000000</scolor>
</wallpaper>
</wallpapers>
5、最后再编辑一个文件:
sudo gedit /usr/share/gnome-background-properties/mydefaultwallpapers.xml
内容大体如下:
代码: 全选
<?xml version="1.0"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
<wallpaper deleted="false">
<name>Default Background</name>
<filename>/usr/share/backgrounds/mywallpapers/mywallpapers-timed.xml</filename>
<options>zoom</options>
<shade_type>solid</shade_type>
<pcolor>#3465a4</pcolor>
<scolor>#000000</scolor>
</wallpaper>
</wallpapers>
完工。你可以把以上编辑的文件打包成一个 deb ,用 dpkg -i 命令装上。提供一个参考示例 deb 包:
你可以解包并拷入你自己的桌面背景,根据你的实际情况编辑修改那些 xml 文件,然后重新封包。
解包和封包推荐用我的脚本:
sudo gedit /usr/local/bin/undeb
贴入如下内容:
代码: 全选
#!/bin/bash
PKG=$1
sudo rm -rf d; mkdir -p d/DEBIAN
dpkg -e $PKG d/DEBIAN/
dpkg -x $PKG d/
sudo rm -rf $PKG
sudo chmod +x /usr/local/bin/undeb
sudo gedit /usr/local/bin/redeb
贴入如下内容:
代码: 全选
#!/bin/bash
DIR=$1
PKG=$(cat $DIR/DEBIAN/control | grep "Package:" | sed 's/ //g' | cut -d: -f2)
VER=$(cat $DIR/DEBIAN/control | grep "Version:" | sed 's/ //g' | cut -d: -f2)
ARC=$(cat $DIR/DEBIAN/control | grep "Architecture:" | sed 's/ //g' | cut -d: -f2)
cd $DIR
find usr lib etc bin sbin var opt -type f 2>/dev/null | xargs -i md5sum {} > DEBIAN/md5sums
SIZE=$(du -s usr lib etc bin sbin var opt 2>/dev/null | awk 'BEGIN{FS=" "};{sum+=$1}END{print sum}')
sed -i "s/\(Installed-Size:\).\+$/\1 $SIZE/g" DEBIAN/control
cd - > /dev/null 2>&1
sudo chown -R root:root $DIR
sudo dpkg -b $DIR ${PKG}"_"${VER}"_"${ARC}.deb
[ $? -eq 0 ] && sudo rm -rf $DIR
sudo chmod +x /usr/local/bin/redeb
这两个脚本可以大大方便 deb 解包和重新封包,怎么用呢?像这样:
undeb my-custom-backgrounds_1.0-1_all.deb
得到一个文件夹 d,一通修改后,
redeb d
得到一个新的 deb 包,就是你自己自定义的 deb 包。