如何让 xstarfish 壁纸在 Ubuntu 14.04 中工作

如何让 xstarfish 壁纸在 Ubuntu 14.04 中工作

xstarfish 是一个生成随机壁纸的命令。我尝试将它与 Ubuntu 14.04 和 Unity 一起使用。

无论如何,我已将以下所有 gsettings 设置为 false,但我仍然只有黑色壁纸,有时当我注销时,xstarfish 壁纸才会变得可见。

gsettings set org.gnome.settings-daemon.plugins.background false
gsettings set org.gnome.desktop.background show-desktop-icons false
gsettings set org.gnome.desktop.background draw-background false

我不知道接下来该怎么做。在我看来,xstarfish 似乎不想绘制桌面背景,而不是在桌面背景上绘制其他内容。

答案1

我刚刚偶然发现了这个页面,我觉得我应该指出只是(比如,今晚!)发布了 Starfish/xstarfish 的 HTML5/JavaScript 端口http://micah.cowan.name/starfishjs/,满足了我个人对易于使用的跨平台版 Starfish 的渴望(不过,遗憾的是,它当然不能自动设置您的桌面背景 - 您必须右键单击图像进行保存并自行执行此操作!)

答案2

该程序似乎不适用于现代桌面。

正如您所说,它会生成一个图像。默认情况下,它会生成一个大小为 256x256 的图案。

我不知道是否有更好的方法,但你可以执行以下操作:

  • 安装 ImageMagick(用于composite命令):

    sudo apt-get install imagemagick
    
  • 用以下命令创建一个新模式:

    xstarfish --outfile wallpaper_tile.png
    
  • 创建新壁纸(例如 1920x1200)

    composite -tile wallpaper_tile.png -size 1920x1200  xc:none wallpaper_out.png
    
  • 设置新壁纸(更改此项<your_absolute_image_path>:):

    gsettings set org.gnome.desktop.background picture-uri file://<your_absolute_image_path>/wallpaper_out.png
    

这是一个小脚本。它创建一个 1920x1200 的图像(在脚本中更改尺寸)。将代码放在新文件中(例如“set_wallpaper”)。

#!/bin/bash

size="1920x1200"

xstarfish --outfile "$HOME"/wallpaper_tile.png
composite -tile "$HOME"/wallpaper_tile.png -size "$size"  xc:none "$HOME"/wallpaper_out.png
gsettings set org.gnome.desktop.background picture-uri file://"$HOME"/wallpaper_out.png

exit 0

保存文件并使其可执行:

chmod +x set_wallpaper

并启动测试。

为了使图像在一段时间后发生变化,您可以创建一个新的 CRON 作业:

crontab -e

并添加如下一行:

15 * * * *       <script_path>

例如:

15 * * * *       myapps/set_wallpaper

你的壁纸每 15 分钟更换一次。

答案3

我通过告诉 xstarfish 创建输出文件来解决这个问题

xstarfish --outfile /location/of/file.png -d 60

这告诉 xstarfish 每 60 秒更新一次背景文件。

然后我只需在 Unity 菜单中将背景设置为该文件,当 xstarfish 更新背景时,壁纸也会更新(出于某种原因)。

相关内容