首先我美化grub启动菜单背景和开关机背景,还有自动换壁纸。其它的美化日后再写博文。
Grub启动菜单背景更换:这个很简单,比以前的ubuntu和grub版本简单多了,直接将图片文件放到/boot/grub中即可,最后更新一下,注意权限是root的就行了
sudo cp ./a.jpg /boot/grub/a.jpg
开关机背景替换:现在ubuntu的开关机画面都是由plymouth来控制的,你可以装plymouth管理器,在网上下载主题来装,但这里我只要开关机背景就行了,管理器什么的我都不装了,直接改。
首先在/lib/plymouth/themes建立个文件夹,用root建立
sudo mkdir /lib/plymouth/themes/xx
然后将你想要的图片放进这个xx文件夹内,注意,要png格式的,(我不清楚,照做就行)
我们假设图片是background.png
sudo cp ./background.png /lib/plymouth/themes/xx
然后再建立2个文件
sudo gedit /lib/plymouth/themes/xx/xx.plymouth
在里面添加:
[Plymouth Theme] Name=xx Description=xxxxxxxxxx ModuleName=script [script] ImageDir=/lib/plymouth/themes/xx ScriptFile=/lib/plymouth/themes/xx/xx.script
再建立个文件
sudo gedit /lib/plymouth/themes/xx/xx.script
在里面添加:
Window.GetMaxWidth = fun (){ i = 0; width = 0; while (Window.GetWidth(i)){ width = Math.Max(width, Window.GetWidth(i)); i++; } return width; }; Window.GetMaxHeight = fun (){ i = 0; height = 0; while (Window.GetHeight(i)){ height = Math.Max(height, Window.GetHeight(i)); i++; } return height; }; background.original_image = ImageNew("background.png"); background.image = background.original_image.Scale(Window.GetMaxWidth() , Window.GetMaxHeight()); background.sprite = SpriteNew(); background.sprite.SetImage(background.image); background.sprite.SetPosition(Window.GetX(), Window.GetY(), -10);
然后更新到plymouth启动即可,
sudo update-alternatives --install /lib/plymouth/themes/default.plymouth default.plymouth /lib/plymouth/themes/xx/xx.plymouth 100
sudo update-alternatives --config
在里面选择刚刚添加的序号即可
最后更新一下
sudo update-initramfs -u
自动切换壁纸:
compiz太恶心了,弄了自动换壁纸桌面上所有文件夹什么的都会消失,虽然还存在,但是看不到。所以我放弃了compiz的,在网上找了些脚本,自己弄个壁纸切换吧。
建立一个sh文件,在里面添加:
#!/bin/bash # Program: # # Author: Leomon # Email: 1964416932@qq.com # Blog: blog.csdn.net/leomon_1993 # # History: # 2014/5-2014/6 First Release. # PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin export PATH #Variables #源(壁纸)目录 source= #目标地址 destination=/usr/share/backgrounds #目标文件夹的名称 dest_name="pictures" #目标文件列表 filelist= #配置文件名称 conf_file_name="trusty.xml" #标志标量,1表示第一次循环开始。 flag="1" #图片静止的时间 s_duration=1795.0 t_duration=5.0 #End of Variables #Functions #函数:用来生成节点<starttime></starttime> function Create_Starttime { echo -e "\t<starttime>" >>$conf_file_name echo -e "\t\t<year>2014</year>" >>$conf_file_name echo -e "\t\t<month>01</month>" >>$conf_file_name echo -e "\t\t<day>01</day>" >>$conf_file_name echo -e "\t\t<hour>00</hour>" >>$conf_file_name echo -e "\t\t<minute>00</minute>" >>$conf_file_name echo -e "\t\t<second>00</second>" >>$conf_file_name echo -e "\t</starttime>" >>$conf_file_name } #函数:用来生成幻灯片动画配置节点 function Create_Animation () { if [[ "$#" == "4" ]]; then static_duration=$1 transition_duration=$2 from_picture=$3 to_picture=$4 echo "++from picture [$from_picture] to [$to_picture]." echo -e "\t<static>" >>$conf_file_name echo -e "\t\t<duration>$static_duration</duration>" >>$conf_file_name echo -e "\t\t<file>$from_picture</file>" >>$conf_file_name echo -e "\t</static>" >>$conf_file_name echo -e "\t<transition>" >>$conf_file_name echo -e "\t\t<duration>$transition_duration</duration>" >>$conf_file_name echo -e "\t\t<from>$from_picture</from>" >>$conf_file_name echo -e "\t\t<to>$to_picture</to>" >>$conf_file_name echo -e "\t</transition>" >>$conf_file_name else echo "+参数个数不匹配,无法生成!" fi } #End of Functions #Clear the screen.. clear #首先判断下参数个数是否为1,并且后面接的是一个目录 if [[ "$#" == "1" ]]; then if [[ -d "$1" ]]; then source=$1 else echo "+Err:后面连接的参数非目录,退出!" exit 0 fi else echo "+Err:参数个数不为1,退出!" exit 0 fi #这儿开始咯。。。。 echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" echo "+ 欢迎使用 +" echo "+脚本名称:slide_wallpaper_creator. +" echo "+脚本功能:自动生成幻灯片壁纸配置,让您的桌面壁纸自动切换 +" echo "+作者:@leomon 2014/6/12 博客:blog.csdn.net/leomon_1993. +" echo "+版本:version 0.1 +" echo "+更改日志:无 +" echo "+注意:该脚本只适用于Ubuntu14.04 Desktop版本,其他的版本自+" echo "+行测试修改。具体参见README文件说明。 +" echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" read -p "+继续执行脚本?(y/n)" yn case $yn in "y") ;; "n") echo "+停止执行." exit 0 ;; esac #首先将所有的壁纸复制到指定的位置 read -p "+将要把 $source 中所有图片复制到 $destination/$dest_name, 您需要重命名目标文件夹吗?(y/n)" yn case $yn in "y") echo "++当前目标文件夹名称是:$dest_name." read -p "++输入新的名称:" dest_name echo "++好的,您已成功更新目标文件夹名称为:$dest_name" ;; *) ;; esac #开始复制图片到目标文件夹中 destination="$destination/$dest_name" if [ ! -d $destination ];then echo "+正在生成目录$destination" mkdir $destination echo "+正在复制图片到$destination..." cd $source cp ./* $destination echo -e "+复制完毕!\n" else echo "+检测到有相同的目录,停止复制图片..." fi #进入目标目录 echo "+进入目标目录..." cd $destination #修改权限 chmod 444 ./* #准备生成配置文件 echo -e "+正在生成配置文件,请稍等..." test -f $conf_file_name && rm -f $conf_file_name #生成头节点 echo "+添加起始节点..." echo "<background>" >>$conf_file_name #添加起始时间节点 echo "+添加起始时间节点..." Create_Starttime echo "+准备添加动画切换节点..." echo -e "\n<!--This animation will start at midnight.-->" >>$conf_file_name #配置切换动画时间 read -p "+是否使用默认的壁纸切换配置?(y/n)" yn case $yn in "y" ) ;; "n") read -p "设置每张壁纸静止的时间(默认为1795.0,单位:秒):" s_duration read -p "设置壁纸切换的时间间隔(默认为5.0,单位:秒):" t_duration ;; *) echo "输入有误!使用默认的切换配置." ;; esac #获取文件列表 echo "++正在获取图片列表..." #将空格替换成?来处理 filelist=`ls | tr " " "\?"` #遍历可以得到整个目录 from= to= first= for filename in $filelist do case $filename in "filenames") ;; "$conf_file_name") ;; *) case $flag in "1") from="$destination/$filename" first=$from to=$from flag="0" ;; "0") from=$to to="$destination/$filename" #echo $from #echo $to #调用函数生成新节点 Create_Animation "$s_duration" "$t_duration" "$from" "$to" #为了显示出来动态的效果,遂采用进程睡眠的方式来实现。。。 sleep 0.05 ;; esac ;; esac done #循环回去 Create_Animation "$s_duration" "$t_duration" "$to" "$first" echo "+添加尾节点..." echo "</background>" >>$conf_file_name echo "+Ubuntu 幻灯片壁纸配置文件生成完毕!" #下面将生成的配置文件存放到contest目录中,并重新命名为trusty.xml cd .. test -d contest && echo "+检测到目录contest." || (echo "+新建目录:contest";mkdir contest) cd contest #查看目录中有没有已经存在的配置文件,并询问用户如何处理旧的配置文件 if [[ -f "$conf_file_name" ]]; then read -p "+发现同名的配置文件,直接覆盖?(y/n)" yn case $yn in "y") ;; "n") echo "+正在备份旧的配置文件..." #为防止重名,使用带有时间的后缀名称。 mv $conf_file_name ${conf_file_name}.`date +%H_%M_%S`back ;; "*") ;; esac fi #复制配置文件过来 echo "+复制配置文件到`pwd`..." cp "$destination/$conf_file_name" ./ #完成了 echo "+Success! 请在桌面空白处右键菜单,选择更换桌面背景项进行设置。谢谢您的使用!" #Return status to System. exit 0
用sudo来运行,然后跟着做就行了,最后重启一下。