I've created a neat little script that downloads a JPG using wget
and then sets it as the Unity desktop background with
gsettings set org.gnome.desktop.background picture-uri file:///home/myname/wallpaper.jpg
After running the script, the desktop wallpaper is incomplete but when I open the downloaded image, it is fine! When I manually run the gsettings
command, the same thing happens – so I don't think the problem could be that gsettings
starts before the image is downloaded completely.
What is causing this odd problem, and how can I fix it?
- Exhibit A: my neat little script.
- Exhibit B: My desktop with an incomplete background image:
. - Exhibit C: original image url. The trick is that this URL is static but the actual image file is continually refreshed with a different image file. That's why I made my script.
- Exhibit D: When the desktop is broken, manually setting the wallpaper through the Settings GUI (or desktop right-click) fixes it … until the cron'ed script runs again.
- Exhibit E: When the desktop is broken, manually running
gsettings set org.gnome.desktop.background picture-uri file:///home/myname/wallpaper.jpg
doesn't fix it.
- Exhibit F: When the desktop is broken, manually running
gsettings set org.gnome.desktop.background picture-options zoom
doesn't fix it. Nothing seems to happen. - Exhibit G: When the desktop is broken, the cached wallpaper is also broken. I came across this very similar topic. Adding
rm
of the cached file before thegsettings
command doesn't solve my problem though; the new cached image is broken too. It almost seems like thatgsettings
command is broken?
Best Answer
If your purpose is to display the current earth view, you might make use of xplanet, which gets a more frequently updated image.
Install xplanet with -
sudo apt-get install xplanet
Then, in your script replace the image source with the xplanet output as below.
xplanet -body earth -num_times 1 -projection mercator -output $wallpaper_name -geometry 1366x768
(replace geometry parameter value with your screen size).
Now, you will get a more frequently updated image that won't be sliced.