News about Variety Wallpaper Changer

How to install

Ubuntu, Linux Mint, elementary OS, and other Ubuntu derivatives

Variety can be installed on Ubuntu and its variants and derivatives from its official PPA by running these commands in a terminal:

sudo add-apt-repository ppa:peterlevi/ppa
sudo apt-get update
sudo apt-get install variety variety-slideshow

This has been tested to work out of the box on the latest LTS and non-LTS versions of Ubuntu, Xubuntu, Lubuntu, Kubuntu (but see notes below for KDE), Linux Mint MATE and Cinnamon, elementary OS.

Running Variety after installation

After the installation Variety can be run from the application menus or the dash search. Or launch it from a terminal with variety.

Debian and other Debian-based systems

You can install the DEB file using GDebi or some other tool that will automatically resolve and install the missing dependencies.


Variety is in the Community repository –


On openSUSE Tumbleweed and Leap install Variety from the official openSUSE repository either through yast or with zypper in variety. The same packages are available for older versions of openSUSE from

Fedora, RedHat

There are now packages for RPM-based distributions, you can find them on rpmfind.


KDE provides no ways to set the wallpaper from inside a program. To use Variety in KDE you have to make some configurations or it will not work. Please read and follow the instructions here.


Variety uses an indicator icon. You will have to install the AppIndicator Support extension in GNOME or add the indicator plugin to the panel in XFCE.


Please load the modules Modules/System/DBus Extension and Modules/Systray.

Openbox, Fluxbox, i3, xmonad and other window managers

Many of the lighter window managers do not have native desktop-drawing capabilities but rely on feh to draw the desktop. To make Variety run there, install feh, then edit the file ~/.config/variety/scripts/set_wallpaper and uncomment this line by removing the # at the front:

# feh --bg-scale "$WP" 2> /dev/null

Other distributions / running from source

Variety runs on Python 2 (2.7.3+).

1. Download the source archive in tar.gz and unpack it to some directory. Or, alternatively, install Bazaar and run bzr branch lp:variety – this means you will be running from the latest trunk development version (which I try to keep stable).

2. Install the dependencies:

gir1.2-notify-0.7, python-configobj, python-pyexiv2, python-pycurl, gir1.2-gtk-3.0, python-dbus, gir1.2-pango-1.0, gir1.2-glib-2.0, python-imaging, python-cairo, gir1.2-gdkpixbuf-.0, python-bs4, gir1.2-webkit-3.0, yelp, imagemagick, python-lxml, gir1.2-appindicator3-0.1.

gir1.2-appindicator3-0.1 is optional – don’t worry if it is not present in your distribution, it is for Variety’s indicator icon, but Variety will fallback to a classic Gnome status icon if it is not present.

3. Now simply run it. No building or installing is necessary:
cd <folder with Variety's sources>
bin/variety -v

Raspbian (Raspberry Pi)

Users are reporting Variety works well under Raspbian. The process is the same as when running from source:

1. Install dependencies:
sudo apt-get install gir1.2-notify-0.7 python-configobj python-pyexiv2 python-pycurl gir1.2-gtk-3.0 python-dbus gir1.2-pango-1.0 gir1.2-glib-2.0 python-imaging python-cairo gir1.2-gdkpixbuf-2.0 python-bs4 gir1.2-webkit-3.0 yelp imagemagick python-lxml gir1.2-appindicator3-0.1

2. Install bzr:
sudo apt-get install bzr

3. Checkout from the repository:
bzr branch lp:variety

4. Run

If you are using the Raspberry Pi as a photo slideshow PC, you may also add and run unclutter to hide the mouse cursor:
sudo apt-get install unclutter

NOTE: If you have managed to install and use Variety on other systems, please contact me so I can put the instructions on this page. Thank you.

Alternative modes for positioning the wallpaper on screen

Variety adheres to the global setting for positioning the wallpaper on the screen and does not provide an in-app setting for this. On Ubuntu/Unity this is a combobox in the Appearance settings, the default value is “Zoom”. In other distributions this setting is wherever the wallpaper/desktop background settings are.
For example use Scale instead of Zoom, if you prefer the images to be fully displayed on the screen and not cropped.

Dual-monitor support

On dual-monitor machines, you probably want to open Ubuntu’s Appearance settings (or whatever is the place for changing wallpaper settings on your distribution) and change the wallpaper display mode from the default Zoom to Span. You may then also want to spend some time customizing the image sources in Variety so that it fetches images with the proper resolution to cover both monitors.


  1. It would seem that gir* related deps are Ubuntu-only as they are directly related to Unity (which distro’s such as Fedora will never support in a reasonable way.) Do you know of any alternative packages that can do the same thing w/o Unity-support?

    • Hm, not exactly. Here is how I understand things.

      The gir* packages (coming from “gi.repository”) contain the so-called “GObject bindings” from Python to GTK. This is the current up-to-date interface for using GTK from Python, although it seems that one can still use the older so called “PyGTK” . I don’t think these libraries are Unity-specific or Ubuntu-specific, as Variety installs and runs without problems on other distros as well – e.g. Debian and Arch, as well as on other non-Unity and non-Gnome desktop environments like LXDE, XFCE, KDE, etc.

      Now, I’m definitely not an expert, as I had no GTK experience before Variety and the whole thing with PyGTK, PyGI, GObject introspection, etc. is very confusing for a newcomer, and I still haven’t spent any decent amount of reading on the subject, so I might be very off in the definitions.

      I tried searching for RPMs for these and it seems that the package names are not exactly the same, as I can’t find any RPMs with the same name as the respective DEBs. Still there are things like this:, so I suppose everything is still available for Fedora, Mageia, etc., just the packaging is different. But with my own limited knowledge on the subject, and my lack of experience with Fedora and the other RPM-based distros, I simply cannot help any more than this, sorry. I’d be very glad if someone more experienced in the subject casts some light.

  2. Hello
    i want installed variety on fedora 18 but it have dependencies . i Install the dependencies:

    gir1.2-notify-0.7, python-configobj, python-pyexiv2, python-pycurl, gir1.2-gtk-3.0, python-dbus, gir1.2-pango-1.0, gir1.2-glib-2.0, python-imaging, python-cairo, gir1.2-gdkpixbuf-.0, python-bs4, gir1.2-webkit-3.0, yelp, imagemagick, python-lxml, gir1.2-appindicator3-0.1.

    but fedora can’t find all dependencies look to output

    [behrooz@localhost ~]$ sudo yum install gir1.2-notify-0.7, python-configobj, python-pyexiv2, python-pycurl, gir1.2-gtk-3.0, python-dbus, gir1.2-pango-1.0, gir1.2-glib-2.0, python-imaging, python-cairo, gir1.2-gdkpixbuf-.0, python-bs4, gir1.2-webkit-3.0, yelp, imagemagick, python-lxml, gir1.2-appindicator3-0.1.
    [sudo] password for behrooz:
    Sorry, try again.
    [sudo] password for behrooz:
    Loaded plugins: fastestmirror, langpacks, presto, refresh-packagekit
    Loading mirror speeds from cached hostfile
    * fedora:
    * rpmfusion-free:
    * rpmfusion-free-updates:
    * rpmfusion-nonfree:
    * rpmfusion-nonfree-updates:
    * updates:
    No package gir1.2-notify-0.7, available.
    No package python-configobj, available.
    No package python-pyexiv2, available.
    No package python-pycurl, available.
    No package gir1.2-gtk-3.0, available.
    No package python-dbus, available.
    No package gir1.2-pango-1.0, available.
    No package gir1.2-glib-2.0, available.
    No package python-imaging, available.
    No package python-cairo, available.
    No package gir1.2-gdkpixbuf-.0, available.
    No package python-bs4, available.
    No package gir1.2-webkit-3.0, available.
    No package yelp, available.
    No package imagemagick, available.
    No package python-lxml, available.
    No package gir1.2-appindicator3-0.1. available.
    Error: Nothing to do

    how i can install on fedora ?
    sorry for English

  3. Found a way to install variety on Fedora 17 (64-bits) without many problems. Just follow the next few steps and you will be up and running in 10 minutes or less.

    1. Make sure you meet the following dependancies:
    – python-beautifulsoup4
    – python-configobj
    – pyexiv2
    – python-imagine
    – ImageMagick
    I know there are much more dependancies, but I haven’t found any functions that didn’t work (yet).

    2. Download and unpack variety (source-code link on the website)

    3. Start bin/variety -v

    4. If you want to have variety automatically started with the startup of Fedora, you have to manually change the path in gnome-session-properties. This points to /usr/bin/variety, but when you install it manually the chances are big that you’ve unpacked it in a different directory.

    That’s all, have fun!

    Peter, thank you very very much for this extensive/complete/marvelous/etc piece of software!

    • Phew, thanks a lot for this comment. Quite a lot of people were asking about Fedora and I’m very glad that someone with Fedora managed to get it running and posted the instructions here. Now let’s see if anyone is up for building an RPM – I simply don’t have the time to get myself educated on this matter.

    • hey, this worked for me too. Only thing is the dependency python-imagine is actually python-imaging. Otherwise works well. Thanks. :)

    • hey, this worked for me too on Fedora 18. Only thing is the dependency python-imagine is actually python-imaging. Otherwise works well. Thanks. :)

  4. Also installed it on Mint 14 Cinnamon without any problems, using the repository mentioned above.

  5. Hi Peter,
    I apologize for asking again, but i had to re-install Kubuntu again. How do i set wallpaper-kde as as the desktop paper again? was it thru the menu? did i have to copy and paste it somewhere? or make some change in script?


    • Answering here so others see the answer too – you set ~/.config/variety/wallpaper-kde.jpg as your desktop wallpaper in KDE’s settings (NOT in Variety’s preferences) and keep it this way. Then Variety will update this file when changing the wallpaper, KDE will afterwards automatically refresh the desktop.

  6. Hi Peter,
    nevermind, i found my old notes. will try again. thanks


  7. Hi Peter. I have Variety installed in Crunchbang Waldorf, i mean GDebi installs the deb without errors, but i can’t find the app anywhere after install. It’s not in usr/bin and terminal doesn’t know the command “Variety”.

    Is it impossible to use it in Openbox or something like that?

    • Variety installs in /opt/ – try looking for it there. (Run bin/variety in that folder).
      Regarding Openbox – it shouldn’t be a problem as long as there is a way to set the desktop wallpaper from the command line. If it does not work out of the box, you’ll have to edit ~/.config/variety/scripts/set_wallpaper.

      • Thanks, Peter. I found it, but the bin won’t open Variety. Can i still get it to work if i edit that config file? Exactly what should i put there?

        • Do I understand correctly – you still can’t run it?
          Please open a terminal and run “/opt/ -v” and check what you get there. Are there any notable errors?

  8. Yes, can’t run it. “/opt/ -v” gives this error: (variety:3898): GLib-GIO-ERROR **: Settings schema ‘org.gnome.desktop.background’ is not installed

    • Yes, this looks like an unnecessary dependency on GSettings at initialization that will need fixing. If you are up for some editing you may want to comment this line at /opt/
      self.gsettings ='org.gnome.desktop.background') by adding a # at front. This should fix it for you till a proper fix is released.

      • Thanks, Peter. I did that and it did change things a bit, but Variety still won’t run. Variety’s “Welcome window” opens, but nothing else.

        I can’t paste the “/opt/ -v” outcome here, but you can read it in

        • Most of the errors there are not fatal, but you still have to check several things:

          1. After the Welcome dialog Variety only shows in the “system tray”. This means a Unity indicator icon, or, as a fallback – a Gtk.StatusIcon. I don’t know what your environment uses for a “status tray”, but if you don’t see Variety there, then your system tray mechanism is not supported. There are also errors about svg format not supported in the log, that might also be a reason for not seeing the tray icon.

          2. You will have to edit set_wallpaper and get_wallpaper in ~/.config/variety/scripts to work in your specific setup. At the moment get_wallpaper does not work, and we don’t know about set_wallpaper. You can test these separately, without running Variety at all. There are comments inside the files for what they expect as input. get_wallpaper is not really that much needed, but without set_wallpaper working Variety cannot change the wallpaper.

          3. Even if you don’t see Variety in the tray, it can still be operated with via commands.
          Please after you run it, try issuing “/opt/ –preferences” which should open the preferences. “variety –next” should change the wallpaper – as long as the set_wallpaper script works, that is.

          • Ok, Peter. I don’t know how to edit (what to put in there) get_wallpaper or set_wallpaper, but my system is Crunchbang Waldorf 64bit.

            After trying to run Variety by clicking the bin in opt/… i put this “/opt/ –preferences” in terminal, out comes this

          • Please use “dash dash preferences”, not just one “dash”.
            /opt/ --preferences

            Regarding set_wallpaper – I don’t know your system, but there must be some way to set the desktop wallpaper from the terminal, that’s what you need in set_wallpaper. Openbox, as far as I understand, does not provide a standard way for this, so it varies from system to system and I don’t know your specific setup. Google is your friend here. This seems relevant:

            For now you can leave get_wallpaper alone, or make it simply echo the full path to some image on your disk, so it doesn’t log errors, e.g. echo /path/to/some/image as the only command in it.

            I don’t think the rest of errors and warnings in the log are fatal.

  9. Peter

    No longer working in Cinnamon 1.8. Cinnamon appears to use Dconf – org.cinnamon.background and not Gconf – org.gnome.desktop.background.



  10. Got it after a bit of fiddling:
    gsettings set org.cinnamon.background picture-uri “file://$1” 2> /dev/null
    in ~/.config/variety/scripts/set_wallpaper

    All working.

    • Ok, thanks for the info. I’ve reported this as a bug:

      Can you please help with the necessary modification to ~/.config/variety/scripts/get_wallpaper – we need a way to identify that the DE is Cinnamon >= 1.8 so that we use “gsettings get org.cinnamon.background picture-uri” and not the default Gnome way.

      What are the outputs of env | grep -i DESKTOP_SESSION and env | grep -i cinnamon?

  11. Trying to get Variety to work on MATE desktop 1.6. Currently have it working on a machine that’s Xubuntu with Gnome Shell installed and MATE desktop on top of those, but I’m having enough problems I need to do something. On a different machine, tried installing Ubuntu 12.04 server with no options, add MATE desktop, add Variety, no luck. Tried Mint 13, add MATE desktop, nope. Tried Ubuntu Unity (all Ubuntu is 12.04x), first just MATE desktop, second adding Gnome Classic then MATE desktop, uh-uh. Tried all of these again (I’m determined), installed Variety via deb (gdebi) to get dependencies. Nope. Really want the MATE 1.6 desktop with Variety, if not possible, will grit my teeth and go to Gnome Classic desktop. I’m sensing that it’s just a package or two that’s needed (have manually doublechecked dependencies and versions, including python, to no avail). Any further suggestions? I’m barely above being an end-user, but I’ve got time to experiment. :)

    • MATE 1.6 changes the way the wallpaper is set. Edit ~/.config/variety/scripts/set_wallpaper and add this line:
      gsettings set org.mate.background picture-filename “$1” 2> /dev/null

      A fix is already committed, but not yet released:

      • Woo-hoo! Worked beautifully! Thanks very much!

      • BTW, I’m setting up a new box with debian jessie/sid, mate from mate repos, and compiz/emerald from git, and this works out of the box with the same deps mentioned for ubuntu, thanks! Definitely the best wallpaper app, would be 10/10 if made a bit more distro-agnostic and include an option to delete current wallpaper. Keep up the awesomeness!

  12. Output as requested:
    env | grep -i DESKTOP_SESSION
    manjaro@manjaro ~ % env | grep -i cinnamon

    No mention of version, so if DESKTOP_SESSION=Cinnamon, then perhaps cinnamon –version ??
    Apologies for the late reply, I only received an email after Paul’s recent post above.


  13. I am running zsh so:
    DTV=`cinnamon –version`; echo $DTV
    Cinnamon 1.8.2
    Might work.

  14. Hello. sorry for my English.
    I’m testing Ubuntu 13.10 Variety was working fine a few month, but now it crashes when i chose preference with – Error segmentation (made ??memory dump)

    • Try renaming ~/.config/variety so that you start clean. If it still crashes, try reinstalling variety (sudo apt-get install –reinstall variety). If this does not help, this is probably caused by either some file corruption or some other bad state of your python installation.

    • Actually just noticed you talk about 13.10, not 13.04. Well, 13.10 is still very alpha, breakage can happen anywhere, I have not even tried running Variety on it… It could be some new bug in some of the Python modules or in GTK.

  15. Thanks. Renaming ~/.config/variety helped once. preference is shown at first start but when i choose it in menu it is still crashes.
    it’s very alpha i know sorry.
    Other my programs working fine.
    Thanks for helping.

  16. Hello, I have a problem with the Time, in my country when the time is 3:52, variety show me in desktop 20:52…

    How can I fix it ?


  17. Hi

    How to make it work in Full Monty PCLinuxOS?

    • I don’t know. Does it use deb or rpm or something else? If deb – does the deb install? If not – try the instructions for running from source. Also make sure to read the KDE notes above.

  18. Hi, i want to know how can i make a back up my list of image downloads and options, just to keep them safe. Thanks a lot.

  19. Today I updated to the KDE 4.11 Beta 2 in Kubuntu 13.04, and now Variety is not working….the widget in the taskbar doesnt respond to going to next or previous image, and the image doesn’t change automatically anymore…..please help

    • Please confirm you have set ~/.config/variety/wallpaper-kde.jpg as a wallpaper in KDE’s settings. If this is already so, please open a bug report, run with “/opt/ -v”, try to change a couple of times and attach the log file (~/.config/variety/variety.log) to the bug report.

      • I opened the bug report. Reading the logs, all settings are right in Variety, and it does what is supposed, it changes the picture in ~/.config/variety/wallpaper-kde.jpg but for some reason the wallpaper doesn’t change on my screen until I manually go into desktop settings and choose again the wallpaper-kde

  20. Hi
    Has anyone gotten this to work in Fedora 19 with cinnamon 1.9?
    I have used the source, and I think I’ve installed all of the above mentioned dependencies.
    Still it starts, but doesn’t want to change background, or show any of the configured ones.

    • This might be connected to a typo in 0.4.15’s set_wallpaper script which makes it work under Cinnamon 1.8 but not 1.9. Please edit ~/.config/variety/scripts/set_wallpaper and replace the original version of this line in Cinnamon’s section with the following:

      gsettings set org.cinnamon.background picture-uri "file://$WP" 2> /dev/null

      The only difference is in the quotes, so these may look identical to you in your editor, but just paste the above line there. Please report back if this fixes it for you.

      • Thank you that fixes it. It now runs. Thank you.

        There are still some warnings showing up in the terminal:
        ERROR:root:Could not find any typelib for AppIndicator3
        No such schema ‘com.canonical.unity-greeter’
        though I can’t see that they affect the program in any way.



    • Please turn off caps lock and describe in English what OS you are using and how exactly are you trying to install Variety there.




  23. Instalar no Mint 15-Olivia-Cinnamon

    a resposta no terminal ?:

    carlos@carlos-System-Product-Name ~ $ sudo add-apt-repository ppa: peterlevi / ppa
    [sudo] password for carlos:
    Cannot add PPA: ‘No JSON object could be decoded’.

    • Don’t add spaces, don’t change the commands. Just copy and paste the three lines above exactly as you see them in their original format – TURN OFF Google translation before you copy them!

  24. Installed via deb on wheezy. No status indicator icon though? It is running, changes wallpaper, time updates on clock, etc, but cannot manually change the wallpaper without the indicator? I am new to Debian, so I may be missing something simple.

  25. Hi.
    Installed Variety with no problems, adding the ppa method in Mint 15 Olivia (Cinnamon).
    Thank you for this wonderful program.

  26. Hi Peter –

    this is a nice app that seems to run well on Mint 15. Here’s a question: I use my photos and it works well, except for those pictures that were taken in Portrait (versus Landscape). In that case Variety repositions them as Landscape, thus making it an odd display. Is there anything I can do about that?


  27. Hi Peter,

    Thank you so much for making this program. It is absolutely awesome and a must have.

    Is there any way that I can exclude folders? Right now I have added my wallpaper folder into variety which works great. But I have a picture folder inside the wallpaper folder with Christmas wallpapers that I don’t really want to move to a different folder but would like to exclude variety from seeing it in the wallpaper folder until…well Christmas.

    Thanks again for your time that you spend putting into the program

    • Not at the moment, and most probably not in the future. You can either add the individual subfolders, without the Christmas one, or you can physically move the Christmas folder outside of the main folder. None of these is perfect, but adding options for excluding is not worth the UI and code complexity.

      Update: even better, but only if you are not afraid of some light script editing – at the start of ~/.config/variety/scripts/set_wallpaper, you may check the image path and if it does not suit you (e.g. it contains “Christmas”) you simply skip the rest of the script, so that the wallpaper is not updated (and you may want to also call “/opt/ –next”).

  28. Hi Peter,

    Thanks for the help. I am relatively new to linux so I know how to open the script and view it in gedit but as to actually add the code to it, not so much.

    I guess I will just have to move the folder.

    Thanks for the reply

  29. Hi Peter,

    First of all thanks for this awsome app.
    I’ve followed the different steps to get it working on Fedora 19 through bzr (I had a Dbus issue like explained above which I corrected through the command line “dbus-uuidgen > /var/lib/dbus/machine-id”), but now I actually have a weird message when launching the app… It says “variety: error: no such option: -r”.
    I’m a bit lost here. Do you have any idea of what I should do to correct it and launch the app.

    Thanks a lot and as I say above your app is awesome.

    • How do you try to launch it? For some reason your launcher puts a ‘-r’ parameter which should not be there. Try launching it from the terminal without any parameters.

      • Oups sorry, I mean that it says “variety: error: no such option: -c”.
        And when I launch without parameters, I still have again the message
        “NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken” that I had before and which is involving the Dbus.

        • Please create a bug in launchpad about this, we’ll deal with it there. After that run Variety in a terminal with “-vvv” parameter and attach the log file (~/.config/variety/variety.log), as well as the output in the terminal to the bug report.

  30. Hi Peter

    Running Manjaro, just updated to cinnamon 1.9.2 and variety is running, but not changing the wallpaper. A cursory investigation (got to go to bed) is that the $1 variable is not getting set:

    Manually changing wallpaper – dandelion – file:///usr/share/backgrounds/gnome/Chmiri.jpg (dconf-editor)

    Run set_wallpaper – file://

    echo “**************”
    echo $1
    echo “**************”
    to top of set_wallpaper script result


    Cannot see $1 by running set command, but have:
    ex ()
    if [ -f $1 ]; then
    case $1 in
    tar xjf $1
    tar xzf $1
    bunzip2 $1
    unrar x $1
    gunzip $1
    tar xf $1
    tar xjf $1
    tar xzf $1
    unzip $1
    uncompress $1
    7z x $1
    echo “‘$1’ cannot be extracted via ex()”
    echo “‘$1’ is not a valid file”;
    at the bottom – is something new interfering?



    • Those lines at the bottom – did you add them or they were there? This is not code from Variety. Anyway, as a start please rename the ~/.config/variety folder and try again – this should start Variety in a clean state. If it still does not work, please run it with “-v” parameter, try to change the wallpaper a couple of times and send me the log file (~/.config/variety/variety.log).


    I have never noticed the lines at the bottom before, don’t know where they come from, they appear to be in my .bashrc, will delete and report back.

  32. Nope made no difference – must have always been there (now rem’d out):
    # ex – archive extractor
    # usage: ex
    #ex ()
    # if [ -f $1 ] ; then
    # case $1 in
    # *.tar.bz2) tar xjf $1 ;;
    # *.tar.gz) tar xzf $1 ;;
    # *.bz2) bunzip2 $1 ;;
    # *.rar) unrar x $1 ;;
    # *.gz) gunzip $1 ;;
    # *.tar) tar xf $1 ;;
    # *.tbz2) tar xjf $1 ;;
    # *.tgz) tar xzf $1 ;;
    # *.zip) unzip $1 ;;
    # *.Z) uncompress $1;;
    # *.7z) 7z x $1 ;;
    # *) echo “‘$1’ cannot be extracted via ex()” ;;
    # esac
    # else
    # echo “‘$1’ is not a valid file”
    # fi

  33. Sorry, I followed your instructions and renamed the folder, didn’t mention it, before running the -v command.

  34. Right, think I am getting some where – new cinnamon version’s key is org.cinnamon.desktop.background (not org.cinnamon.background). Proved by:

    If I set the wallpaper manually to the dandelion picture supplied, the key is set to:

    If I run the set_wallpaper script from bazaar (copied & pasted), I get:

    I tried to echo $WP it is blank, so I think WP variable is not getting set somehow. Which python script sets this variable? (I am not a python programmer, but I can muddle through!).

    • WP is set by the line “WP=$1” in the beginning of the script. Is the contents of your set_wallpaper script equivalent to the one I linked? After you run the script manually with “set_wallpaper absolute_path_to_some_valid_image” does your wallpaper change? Even if not, what is the output of “gsettings get org.cinnamon.background” afterwards?

  35. Working now, they have changed the key:

    gsettings set org.cinnamon.desktop.background picture-uri “file://$WP” 2> /dev/null

    Added desktop – what confused me is the old key still exists, thank you for all your help and prompt responses.


  36. Hey Peter, are you planning to make Variety full compatible with Openbox? I’m using Crunchbang at the momment.

    • I haven’t used Openbox, but as far as I understand it has no standard way of displaying a wallpaper. If your setup supports setting one from the terminal, just put the relevant commands in ~/.config/variety/scripts/set_wallpaper. The rest of Variety should be working regardless of the DE.

    • I occasionally run Openbox – it is my backup up DE. I run xfdesktop from my autostart file to provide desktop icons, it also manages the background and variety just works.

      You could also install and use feh – uncomment lines in the set_wallpaper script, not tried this though.


  37. I am running Mint 15 and I have two problems.

    1. I cannot control the wallpapers with my scroll wheel.

    2. When I type “variety” into the terminal, it gives me the command not found error. I cannot figure out how to access variety in the terminal.

  38. I run ubuntu 12.04 in my home, and it run very well . thanks for your great work.
    meanwhile in office, no ubuntu/linux only windows exist, can it run in windows?

  39. I got this working under Raspbian (raspberry Pi). Here was my process:

    Install dependencies:

    sudo apt-get install gir1.2-notify-0.7 python-configobj python-pyexiv2 python-pycurl gir1.2-gtk-3.0 python-dbus gir1.2-pango-1.0 gir1.2-glib-2.0 python-imaging python-cairo gir1.2-gdkpixbuf-2.0 python-bs4 gir1.2-webkit-3.0 yelp imagemagick python-lxml gir1.2-appindicator3-0.1

    Install bzr:
    sudo apt-get install bzr

    Checkout from your repository:
    bzr branch lp:variety

    As this is a photo slideshow PC, I also added unclutter to hide my mouse cursor:
    sudo apt-get install unclutter

    Add variety and unclutter to my autostart file: (~/.config/lxsession/LXDE/autostart)


    Thanks for the excellent program. I’ve been meaning to write something similar, and now I don’t have to!

  40. variety installs fine in debian testing with mate desktop, but will not start. it works fine, though under gnome-fallback. what is the problem?

    • Please run it with -v and send me the log (you can also report a bug and attach it there).
      Also, after you run it, please check if it is running with top or “ps fax | grep variety”. There might be a problem creating the indicator / status icon.

  41. when I try to start variety in the terminal under mate in wheezy I get this

    Traceback (most recent call last):
    File “/opt/”, line 46, in
    File “/opt/”, line 111, in main
    File “/opt/”, line 101, in start
    if Gio.SettingsSchemaSource.get_default().lookup(“org.gnome.desktop.background”, True):
    AttributeError: ‘NoneType’ object has no attribute ‘lookup’

    • Ok, just committed a fix for this. You may want to run from development version, instructions on “How to install” page.

      • ran from development version works great.

        thanks a million.

      • Hi,

        With Mate 1.6, on a debian testing (from Mint).
        Same thing with variety:
        lolotte@mirabelle:~$ /opt/ --preferences
        Traceback (most recent call last):
        File "/opt/", line 46, in
        File "/opt/", line 111, in main
        File "/opt/", line 101, in start
        if Gio.SettingsSchemaSource.get_default().lookup("org.gnome.desktop.background", True):
        AttributeError: 'NoneType' object has no attribute 'lookup'

        And with variety_0.4.17_all.deb (reinstall)

        The last trunk is 0.4.17. Did the fix is only on tar.gz ?

        Any other advice ?

        Thanks a lot, great tool here !
        (Work like a charm on a Fedora 20/Mate)

  42. Awesome work. I love this.

  43. Great program, but I have one issue.
    I have it installed on Linux Mint 16, but some images are pixelated (if that is a real word)
    These are my own files that I have used on other wallpaper changers with no issue.
    Any idea why this would happen & how to fix it?

    • Please make sure all effects are turned off in the Effects tab. Also, you may have some thumbnails in the folders that Variety is using instead of the full pictures – you may want to turn on size filtering in Color and size tab.

      • Thanks for the quick reply. None of the images are thumbnails, but setting the Are big to 50% in Colour & size seems to have done it.
        Keep up the good work :-)

  44. How do I install Variety on OpenSuse 13.1 on the Gnome Desktop?I tried using the downloaded RPM, but this doesn’t work.

  45. Hi and THANKS . . . lovely app. It works incredible over ubuntu and elementary, but in fedora, this app start taken more and more ram. I have 8Gb, so I usually don’t care too much, but, with Variery, I used to restart Gnome-Shell around 4 times a day. I recently start a new With Fedora 20, but I don’t want to try yet.
    Is this a know issue in fedora???

    • A known bug of Xorg/compiz is that on some systems they leak RAM on every wallpaper change, with or without Variety. Variety simply makes the bug obvoius because it puts load on the wallpaper subsystem. Have you checked if on your mavhine it is Variety’s process which consumes RAM or some other process?

      • There is the same problem in ElementaryOS, can you guys fix the bug?

        • I can’t. The leak is outside of Variety, and only happens on some users’ machines, because of GPU driver probelms, Compiz misconfigurations, etc. You may try a live CD to see if it would happen on a clean installation on your machine.

  46. I found away to use Variety engine in KDE 4.12 Its simple Create a folder named Wall in your home directory .Show Variety to download wallpapers there. Adjust your download 5min. and downloading space to10Mb.Wait for 15min.Than create a KDE slideshow with the folder Wall and let KDE wallpaper changer to change the wallpapers with the database of Variety.Unfortunately efects and other exstras do not work.

  47. Hi, after a SSD failure I went from Mint 15 MATE to Mint 16 MATE. One of my first actions was to install Variety, but although it appears in the menu, nothing happens. A command in terminal is not recognised. Any idea what to try next?

    • Try “/opt/ -v” and see if you get any informative errors in the log.

      • Many thanks for that Peter! And so quick!
        Yes, I found permission errors. Since my system died from a SSD failure, I had restored my home folder from a backup. Working fine now – thanks again!

  48. thanks Peter! your wallpaper changer works very well on Linux Mint Debian Edition. Actually this is the only one that worked for me.

    *To set Variety on startup, open Control center –> Startup applications –> add –> (find the bin path in: /opt/

  49. Work around for KDE 4.11 and up:
    mkdir .config/variety/kde
    edit ~/.config/variety/scripts/set_wallpaper
    change the line that says:
    cp “$WP” ~/.config/variety/wallpaper-kde.jpg
    cp “$WP” ~/.config/variety/kde/wallpaper-kde.jpg
    save that file and close
    In KDE instead of selecting that image as the wallpaper select the following folder as a slideshow so the wallpaper gets updated.

    ALL effects and other extras work great!!!

  50. Hello Peter,

    I’ve read through all above above, and working on the premise that it has to be down to me(!), even having tried above fixes where i felt applicable to changes to paths etc in the ‘set’ and ‘get_’ wallpaper scripts, I have been unable to get this working on manjaro xfce 0.8.9 32 and 64-bit using the AUR version, and on either laptop – ‘no joy’? I wonder if anyone else has found issue, or maybe there is no-one alse using this in “xfce”. To be honest, i ‘stole’ after seeing it in “makulu” – a real nice application, Peter…
    [Thanks in advance if anyone can help..!]

    • Variety works on XFCE up to version 4.10 (I am yet to add some fixes to make XFCE 4.10+ work too), on most systems – out of the box, on some systems require editing set_wallpaper. Basically you need to find the command that works on your machine to set the wallpaper from the terminal and put it inside set_wallpaper.

  51. Hi! I’m running Variety in Lubuntu 14.04. Since the upgrade to 13.10 Variety no longer starts automathically when the computer starts. I have to start it manually. I’m running Variety in Ubuntu 14.04 and Xubuntu 14.04 as well, but I don’t have the same problem there. It’s just in Lubuntu. I’ve checked the option to autostart in Variety’s preferences, and it’s checked in the autostart section in LXSession configuration. Still it won’t autostart.

    • Please try to uncheck and check again the option to autostart Variety (in Variety’s preferences). This will recreate the autostart desktop file. Afterwards please confirm you have a variety.desktop file in ~/.config/autostart and it points to the correct path where Variety is installed.

      • Yes! I did it eventually! All I had to do was to check “no” on “Disable autostarted applications?” in LXSession configuration. It was per default checked config-only. I hadn’t even seen that until now. It’s not easy to be a newbe :)

  52. Great program..I love it and use it all the time.

  53. Hey peter i have updated launchapd with a bug fill caused by variety that changing wallpaper each time cause the reach of maximum number of xlsclient, that mean unability to open any other application.

  54. Hi,

    I am getting this error msg too :
    AttributeError: ‘NoneType’ object has no attribute ‘lookup’

    Even though I run :
    /opt/ -v
    The exact same error appears.

    I am running Debian Wheezy and Mate 1.6

  55. I followed the instructions from the “Debian Wheezy” section, by downloading this file :

    Everything installed successfully.

  56. Hi,
    thanks for this great piece of software. I installed under Linux Mint 17 (Qiana, x64, Cinnamon) and it runs well.
    Andreas (Germany)

  57. I just installed Variety on Ubuntu 12.04 and it works.
    I installed Variety as it’s shown in the beginning of this page:
    sudo add-apt-repository ppa:peterlevi/ppa
    sudo apt-get update
    sudo apt-get install variety
    Then I started it but id didn’t changed the wallpaper.
    Then after I restarted the computer (for other reasons), Variety was automatically started and the wallpaper was changed and continued changing (i.e. Variety works).

  58. Mint 16 Cinnamon

    Question 1: It seems to be chopping many of my wallpapers off. How do I set it to instead shrink the wallpaper down to fit the screen using each wallpaper’s widest or longest side to accomplish the fit???

    Question 2: I’ve given it 3 folders to randomly pull wallpapers from, but it is only pulling pictures from the first two folders. What do I need to do to get it to also pull from the 3rd or even a 4th file?

  59. Sorry, I forgot to mention I am running Version 0.4.18 – if that helps.

  60. Hi Peter, installed on mint 17 32 bit. works just fine.

    The question i have is how to stop some pics getting rotated, thru 90 deg.
    Other than that awseome

    many thanks

  61. Hey I love the app but I’m having a problem with portrait pictures. When I set a portrait picture as the background it zooms the picture in so that the width of the picture stretches through the entire desktop. Instead I would like it to fit the picture top to bottom and then fill the sides in with a color (black most of the time). Is there any way this can be done?

    • I just discovered that the Wally Wallpaper changer is now working on Mint Cinnamon again, so I have moved back to it since it has the MAXSPECT setting which causes it to display the whole picture in your screen rather than cropping and chopping stuff off, plus it lets you choose the color of any background showing around the picture.

      I will check back with Variety from time to time to see if this problem has been solved yet or not. Other than this one frustrating aspect, Variety seems to a lot better than other wallpaper changers out there, other than Wally.

  62. Yes! Exactly Dan. That is what I was asking also! Sometimes I am looking at only half a picture instead of the whole picture! There surely must be some way to tell the application you want to see the whole picture despite each picture’s dimensional shape…

  63. Thanks Peter!

    I will check it out!

    Since I had made 2 posts and heard no suggestions, I thought maybe there wasn’t a way around this. My problem was, I am trying to learn python and I am creating “FLASH CARDS” of things I don’t want to forget as I work my way through the books on the language, (kind of learning by osmosis as I happen upon empty screens on my desktop) but Variety was chopping them up…..which, I guess, might not have been such a bad thing, as it forced me to remember what wasn’t showing!!! Forcing me to complete the thought…. Ha Ha Ha

    Thanks again!

  64. Hey Peter I appreciate the work! I installed the debian update you made and the settings still do not save when I restart or change wallpapers. Upon rebooting and switching to a wallpaper that is vertically oriented as discussed the wallpaper is still to the bulk center vice scaled down. Not sure what the problem is but if you can figure out a solution I you’d have my gratitude.

    • Dan, the update above affects only Cinnamon. Give me more details about your setup. What is your DE? Have you set your wallpaper display mode in the DE’s Appearance settings?

  65. I am also on mint 17 cinnamon. I’ll post specifics when I get back from work.

  66. Hello! I’m really enjoying Variety, but it’s giving me a little trouble and I wanted to ask about it. I’m trying to add a flickr group to the sources via the preferences. When I try via the GUI, it says “Exception while checking group. Please run with -v and check log.” So I run it from the command line with -v and try adding the group that way.

    /opt/ >> variety_log.txt
    ERROR: 2014-06-29 14:39:15,508: fetch() ‘Exception in process_urls’
    Traceback (most recent call last):
    File “/opt/”, line 2001, in fetch
    AttributeError: ‘VarietyWindow’ object has no attribute ‘options’

    I am running a fresh install of Linux Mint XFCE 17. (I’m also rather new at Linux.)

    I have one other issue that’s really more of an aesthetic quibble than a problem. The Variety icon shows up in my indicator area plugin just like it ought to, but it’s twice as wide as the other icons! I have no idea how to make it smaller or use a different icon for it. I deleted the indicator area once but that also holds my networking and sound plugins, and I would rather not get rid of those. Besides, when I did that, the fall-back icon didn’t display either. It was fine on MATE, so maybe it’s an XFCE thing?

  67. Please! can you tell me how install variety in Mageia 4???? I was searching and found nothing!!!
    (this is google translator)


  68. I’m having, probably not a real issue, something annoying. I’m running Linux Mint 17 (all updates). I installed variety, turned of everything except show the pictures. I don’t use download, effects, nothing.. just change the picture. I did create a folder called pictures under my home directory and put all the pictures I want to display there, dumped in a load of pictures.. and it’s working great. With one exception. In the rotation of pictures, it also display the orgiinal Linux Mint 17 screen that comes right after install Mint. I don’t want *that* picture coming up and have no idea where it gets it from. It is not in my picture directory, and I have unchecked all locations to get pictures from except the pictures directory I created. Any idea as to why it’s including the original Mint desktop picture??

    • Long shot: Maybe it was in your history at some moment (e.g. if this was the wallpaper when Variety first started up) and now you are somehow making Variety to cycle back in the history instead of forward – if you are using the wheel to scroll back and forth you might be hitting this long-standing bug on newer versions of Ubuntu and Mint:

      Cycling back in history or in Recent downloads is basically the only way to go “out” of the scope of your currently enabled image sources.

      If I’m wrong above, try this: When this image pops up again, try to click “Image -> Where is it from?” in the indicator menu – this should open Variety’s preferences with the source this picture is coming from selected, if it is still present in the list at all. Also, open the image (menu item with the filename in Variety’s menu) and use your image viewer’s “Show containing folder” option. These two might give you an idea of what is happening.

  69. I’ve looked at the history file, scrolled through the history pictured.. and I had already looked for the location of the picture when it displayed on the screen using where is it from. It never shows up anywhere… but I don’t seem to have this ‘scroll bug’ you mention. I can scroll from beginning to end when I scroll through the pictures. Are there any log files I can post for you to look at? That mint screen is not listed in history file or anywhere else I can find…

  70. Sorry, I need to make a correction. the “where is it from” option goes to the listing of where all the other pictuers are at. However it is *not* there. I’ve got my pictrues down to 4 in that directory at the moment so it would be easy for me to see the mint picture if it were there… but it does say it’s in the picture directy I created.

    • Directories are searched for pictures recursively – any chance it is in an inner folder?

      For log file – please run with ‘-v’ parameter (/opt/ -v), and send me the log file from ~/.config/variety/variety.log. Actually probably better to report this as a bugreport at and attach the log file to the bugreport. Please keep the folder down to 4 pictures while reproducing the bug – this would make the log easier to understand.

  71. So, as I was waiting to hear back from you, I tried a couple of things. First I did a recursive search under my home directories for linx_mint.png and linux_mint-qiana.png (the two default screens that are used with Linux Mint 17. These pictures do not exist anywhere in my directory. So then, I went to the directory where all of the mint wall papers are kept, and moved these 2 .png files to a location on another hard drive.. then watched.. and found that now, instead of showing the mint screen in the picture mix, it just shows a black screen. Variety, for whatever reason is going to the default mint wallpaper and pulling, only that 1 wallpaper and showing it… This is actually the first time I’ve been in that directory, and have never pointed anything to use that for anything… The only place I have checked, for variety to get pictures from is my picture directory….

    • Ok, please do report the bug in Launchpad and attach the log file after you manage to reproduce it again with logging turned on. Thanks. Btw, Variety’s default settings inlcude ‘/usr/share/backgrounds’ as an enabled source, but I assume you have long ago turned that off?

      Btw, in the bugreport please also attach ~/.config/variety/variety.conf – you may edit out usernames or anything else sensitive you may have there.

  72. Ok, I found a way to fix this. I’ll explain what I found and what I did to correct it: ( I probably should have dug deeper prior to reporting this, my apologies)

    I looked at the variety.conf file and found this:

    # Folder to copy the wallpaper image to and make it world-readable. Provides LightDM support.
    # copyto_enabled = , default is False
    # copyto_folder = , the default is Default

    # Default means to use the XDG Pictures folder when home folder is unencrypted and /usr/share/backgrounds when it is encrypted.
    copyto_enabled = False
    copyto_folder = Default

    My config file siad True to the copyto_enable. According to the notes, when enabled it uses the/usr/share/bckgrounds directory, and when i checked that directory there are links there pointing to the default Linux Mint background pictures. So I changed that setting to False, restarted variety, and now the default Linux background picture no longer comes up in the mix with the rest of my pictures. So my particular issue with this has been resolved…

    Thanks for the help!

  73. Hallo
    In Ubuntu 15.04 Gnome , “unable to locate package variety” . Work fine in Qiana Cinnamon and Ubuntu 14.10 Cinnamon&Unity . It?s not official yet ?

  74. Hi,
    I’m trying to build and install Variety but it’s just crazy.

    I run: build -> it’s OK
    sudo install -> it’s OK
    variety -> and I get variety_lib.varietyconfig.project_path_not_found

    It gets installed into /usr/local/share/variety
    but config points to /usr/share/variety which doesn’t exist.
    Any ideas how to make it work?
    Really, can’t just simple setup work…. uhhhhhhhhhh

    • Variety’s is auto-generated by Quickly and Variety is normally built with Quickly or by Launchpad’s automatic PPA-related build processes. They both work with the current I haven’t investigated what is needed to make work directly.

      So to build Variety currently you either need Quickly, or you may simply forego building completely and launch bin/variety directly from the source folder, it will work just fine without any building, setup or installation, as long as the dependencies are installed.

      You may try to investigate the problem with if you wish, I will be grateful. I’m myself not into spending more time on the build process when there is already a working one.

  75. I have been running Cariety on various versions of Ubuntu for about a year now. Sometime in the last week, my two Ubuntu 14.10 systems have started reporting errors during “apt-get update”. Theerrors are:

    W: Failed to fetch 403 Forbidden

    Any ideas ? Is there a problem with your PPA ? Or, do I need to look elsewhere ?



    • Hm, fetching this link directly works for me, and no one else has complained about this. I suppose it is some temporary issue with Launchpad. I haven’t made any updates to the PPA recently.

  76. Hi, I’ve been using Variety since one year ago and it was fine until 2 or 3 days ago, I updated variety, in the update asked me to change the ppa and sign into your webpage, but now doesn’t work.

    I check the preference and everything look the same, but it doesn’t start, can you help me?!!!!

    • Please run Variety in a terminal with -v option and email me the log to peterlevi at /opt/ -v

      • I tried this and to no effect. It will run variety but it still gives me the same error message when I check the box to autostart it.

      • I also noticed that variety isn’t creating the variety.desktop file.

      • Ok, I stumbled across what might be the issue while troubleshooting another program what wouldn’t let me set it to autostart. It seems that the permissions on the autostart file are set to root and therefore it wasn’t letting any program write to that folder. I changed the folder permissions and added myself as the group and now everything seems to be working fine.

  77. hi! i ‘ using variety very long time but in gnome shell DE (ubuntugnome 14.04) i have found that memory of gnome grows every time background change, is there a way to fix it? I know tha is not variety problem but gnome shell problem.

  78. I am using variety on an old machine, a P2 with 512 MB of memory running Lubuntu 14.04. I have updated the system, but I am unable to solve this problem. I am using this machine just to play mp3 using Audacious, while variety changes the wallpaper every 15 minutes. I also set to display the clock and date on the desktop.
    The problem is that after a while the memory consumption goes high, filling up all the swap space. After that the computer freezes and I have to hard reset it.
    I have set the swappiness to 95% but this didn’t help. It looks like if I leave variety running after a while the PC freezes running out of memory. Can you please help me? Thanks in advance.

    • Can you provide more details which process consumes the RAM? Also, is Variety at play here – what happens if you change manually the wallpaper from Lubuntu’s appearance settings 40-50 times in a row – do you still get a RAM leak or not?

      • Sorry for the delay in the reply but I’m always busy with work and I have time only in the weekends for these kinds of tests. I only start Audacious to play mp3s and leave variety running in the background to change the desktop wallpaper. I tried to close variety and change the wallpaper manually and I get again the same swap memory increase that in time leads to system freeze. If I close Audacious and only change the wallpaper the swap problem doesn’t occur. So it does seem to be the fact the the wallpaper is being changed while Audaciuos is playing songs. Do you have any hints on how to fix this? Thanks in advance for your help.

  79. Installed Variety on a fresh install of Ubuntu 14.10. Wallpaper doesn’t change although the program seems to be running on the bakground. Can you help me?

    • Does the wallpaper change when you change it manually from Ubuntu’s Appearance settings?
      If not, problem is outside of Variety and I can’t help.
      If yes – which DE are you using?

  80. Installed Variety on a Ubuntu 15.04. File manager is Nemo. Nemo always crashes when I run Variety. Variety still working without file manager.
    Sorry for bad English.

    • Does Nemo crash when you change wallpapers manually from Ubuntu’s Appearance settings?
      If yes, the problem is completely out of Variety.
      If not, please exit Variety and run separately the script ~/.config/variety/scripts/set_wallpaper to see if Nemo would crash again. If yes, then you would need to find exactly which part of this script is making it crash – the one for Gnome, for Cinnamon, etc. (you’ll see the comments there).

  81. Variety, Ubuntu 15.04, Kernel 4.0.1, works great.

    After “upgrading” to Ubuntu 15.04 on two systems, wallch worked great on one with the Intel HD graphics chipset, but I could not get it to work on another, with an Nvidia card, despite it working with Ubuntu 14.10. I figured it was a video driver problem, but couldn’t solve it. Fed up, I searched for alternatives, and found Variety. It runs perfectly with Ubuntu 15.04 and the latest 4.0.1 Linux kernel, on a netbook with an underpowered Intel Celeron with Sandybridge graphics, and a hyperthreaded overclocked quad core Intel Xeon with an antique Nvidia Quadro FX 1800 gfx card. Bye-bye wallch, hello Variety! Thanks Peter!

    I am a bit confused by some of the options, though. I have it currently just set up to use earth… what should be my settings for… (I have my current settings which seem to be working in parens)
    Change wallpaper every (30 min)
    Change wallpaper on start (y)
    Download wallpaper every XX minutes (30 min)
    Limit download folder to XX MB (100 MB, I am running both systems on SSDs for the OS/apps)

    Do setting some options nuke others? Override them? If I just want the equivalent of xearth (that I’ve been running for like… 20 years… in some form or another).

    To Sergey, I haven’t used Nemo. The default file manager with Ubuntu 15.04, Nautilus, works fine with Variety, from what I have seen. What types of crashes are you seeing? Maybe I can help? Does Nautilus work? Are the crashes just with Nemo?

    • Downloading new images happens separately from changing the wallpaper, so you specify two intervals. For Earth you want both downloading and regular changing enabled. “Change on start” is an option for those who want a once-a-day wallpaper change. So, no, all options are separate and do not override one another.

  82. I can’t get variety to run on opensuse 13.2. it installed fine but wont start.

  83. Traceback (most recent call last):
    File “/usr/bin/variety”, line 39, in
    import variety
    File “/usr/lib/python2.7/site-packages/variety/”, line 107, in
    from variety import VarietyWindow
    File “/usr/lib/python2.7/site-packages/variety/”, line 25, in
    from gi.repository import Gtk, Gdk, GdkPixbuf, GObject, Gio, Notify # pylint: disable=E0611
    ImportError: cannot import name Notify

  84. Have python-notify installed. it will not start from the shortcut or from variety/bin/variety

    • Try this in a terminal: python -c "from gi.repository import Notify"
      While this line returns errors, this means you are missing the Notify dependency Variety needs, and it won’t run. I don’t know which package provides this for opensuse, normally your package manager should have installed it when you installed Variety. OpenSuse’s forums are a better place to ask, I cannot hep further than this.

      PS. Also, please use the “Reply” link when posting replies to comments here

      • I had the same error message (for a completly different application, but that uses python-notify too).
        Actually having just the library isn’t enough, it is needed to also have the gobject introspection.
        interpreted languages (like python, perl, etc) use that in addition of the binary libraries.

        In my distribution (Mageia5 64bits) that means I had to install the package “lib64notify-gir0.7-0.7.6” in addition to (already installed) “lib64notify4-0.7.6”
        Then it worked correctly.

        For Suse it seems they name it differently; a libfoo needs a typelib-1_0-Foo
        (so, for “libnotify”, he would need to install “typelib-1_0-Notify” package.

        Actually what is important is that the package provides “typelib(Notify)” so if a query on what the packages provide is possible (like in it is possible to search for that (as the package naming seems to be different from distro to distro)

      • This is what I get when running from a terminal in OpenSuse Tumbleweed. I installed it from their repos. Also posted in the forum and there is a bug report for it, but not just for variety. Maybe a python misconfig?

        @linux-1wyf:~> variety
        /usr/lib/python2.7/site-packages/variety/ PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version(‘Gtk’, ‘3.0’) before import to ensure that the right version gets loaded.
        from gi.repository import Gtk, Gdk, GObject # pylint: disable=E0611
        Traceback (most recent call last):
        File “/usr/bin/variety”, line 38, in
        import variety
        File “/usr/lib/python2.7/site-packages/variety/”, line 107, in
        from variety import VarietyWindow
        File “/usr/lib/python2.7/site-packages/variety/”, line 22, in
        from variety.FacebookHelper import FacebookHelper
        File “/usr/lib/python2.7/site-packages/variety/”, line 55, in
        from variety.Util import Util
        File “/usr/lib/python2.7/site-packages/variety/”, line 28, in
        import pyexiv2
        File “/usr/lib64/python2.7/site-packages/pyexiv2/”, line 60, in
        import libexiv2python
        ImportError: /usr/lib64/python2.7/site-packages/ undefined symbol: _ZNK5Exiv27ExifKey8tagLabelEv

        Bug report here:

        • I am getting the same problem when trying to run Variety on Ubuntu 16.04. Variety version 0.6.0-1. Here is the exact output:

          /usr/lib/python2.7/dist-packages/variety/ PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version(‘Gtk’, ‘3.0’) before import to ensure that the right version gets loaded.
          from gi.repository import Gtk, Gdk, GObject # pylint: disable=E0611
          Traceback (most recent call last):
          File “/usr/bin/variety”, line 38, in
          import variety
          File “/usr/lib/python2.7/dist-packages/variety/”, line 107, in
          from variety import VarietyWindow
          File “/usr/lib/python2.7/dist-packages/variety/”, line 22, in
          from variety.FacebookHelper import FacebookHelper
          File “/usr/lib/python2.7/dist-packages/variety/”, line 55, in
          from variety.Util import Util
          File “/usr/lib/python2.7/dist-packages/variety/”, line 28, in
          import pyexiv2
          File “/usr/lib/python2.7/dist-packages/pyexiv2/”, line 60, in
          import libexiv2python
          ImportError: /usr/lib/python2.7/dist-packages/ undefined symbol: _ZNK5Exiv27ExifKey7tagNameB5cxx11Ev

          • I ended up reinstalling OpenSuse (for other reasons) and when I installed Variety again, it worked.
            Perhaps deleting the config file may help as stated below. Just try renaming it or moving it 1st.
            Worth a shot if you don’t want to reinstall the OS.

  85. I too have the problem where I can’t get Variety to autostart when my computer starts up. For some reason it isn’t creating the variety.desktop file in ~./configure/autostart. Every time I check the box for it to autostart I get the following message:

    Could not create autostart entry
    An error occurred while creating the autostart desktop entry
    Please run from the terminal with the -v flag and try again

    How do I run from the terminal with the -v flag?

  86. Buonasera, non parlo molto bene in inglese quindi scrivo in italiano.
    Sul mio pc ho installato Linux Mint 17.1 e avevo il problema che l’ottimo Variety non si avviava con l’accensione del pc.
    Ho risolto cos?:
    – Apro “Applicazioni d’avvio”
    – Faccio modifica sull’icona Variety
    – Modifico il comando:
    sh -c “/opt/ || /usr/bin/variety || /opt/variety/bin/variety”
    sh -c ‘/opt/ || /usr/bin/variety || /opt/variety/bin/variety’

    Ora si avvia perfettamente.

    • Google translation:

      Good evening , I do not speak very good English so I write in Italian .
      On my pc I installed Linux Mint 17.1 and I had the problem that the great Variety was not started with the lighting of the PC.
      I solved cos ?:
      – I open ” Startup Applications ”
      – I change the icon Variety
      – Modifying the command :
      sh -c “/opt/ || /usr/bin/variety || /opt/variety/bin/variety”
      with :
      sh -c ‘/opt/ || /usr/bin/variety || /opt/variety/bin/variety’
      Now it starts perfectly .

    • Thanks for the note, Alessandro!

  87. since today variety just disappeared from my ubunto 15.04. Nothing but always the same picture and the same quote. What happened?

    • You need to provide more context if you want help. How was it installed, what happens when you try to run it from a terminal, are there any errors in the log, did you try reinstalling, does it start and not work, or it does not start at all, etc., etc.

  88. pyexiv2 is deprecated. Let’s create a new version of Variety with GExiv2.

    • GExiv2 is not in Ubuntu 12.04 repositories and this is still a supported and used Ubuntu release. pyexiv2 is deprecated, but still working in every current Ubuntu release. So GExiv2 will wait for now.

  89. I use openbox. I see for second Variety preferences and after that is closed with this error.

    (variety:12650): Gtk-WARNING **: Attempting to read the recently used resources file at `/home/puppy/.local/share/recently-used.xbel’, but the parser failed: Failed to open file ‘/home/puppy/.local/share/recently-used.xbel’: Permission denied.

    (variety:12650): GLib-GIO-ERROR **: attempting to create schema ‘org.gtk.Settings.FileChooser’ without a path
    Trace/breakpoint trap

    • Поздрави за страхотната програма :). На доста дистрота съм я подкарал, но сега в момента на лаптопа останах без хард диск и ползвам puppy linux базиран е на mint 17.1 xfce, но е орязан до 200-на мб с openbox / jwm
      Търсех няколко дена, но не успях да намеря решение, моля за помощ. Грешката при стартиране е следната.

      (variety:13849): GLib-GIO-ERROR **: attempting to create schema ‘org.gtk.Settings.FileChooser’ without a path
      Trace/breakpoint trap

      • Да, явно са орязали повечко неща отколкото трябва. Ами както писах, Гугъл… тук няма да мога да помогна особено. Или нов диск и по-mainstream дистро…

    • The first warning is a permissions-related error. Fix it, it might be causing other issues (e.g. with chown -R).
      The other error is likely due to some Gtk+-related misconfiguration. I cannot help there. Try googling it and see if anything sounds applicable for your system:‘org.gtk.Settings.FileChooser’+without+a+path . E.g:

      • Now i can start Variety after this command

        [code]export GSETTINGS_SCHEMA_DIR=$PREFIX/usr/share/glib-2.0/schemas/[/code]

        but i can change wallpaper

        [code]ERROR: 2015-08-07 13:15:15,487: get_xdg_pictures_folder() ‘Could not get path to Pictures folder. Defaulting to ~/Pictures.’
        Traceback (most recent call last):
        File “/usr/lib/python2.7/dist-packages/variety/”, line 565, in get_xdg_pictures_folder
        raise Exception(“Could not get path to Pictures folder. Defaulting to ~/Pictures.”)
        Exception: Could not get path to Pictures folder. Defaulting to ~/Pictures.
        ERROR: 2015-08-07 13:15:15,489: get_file_icon_name() ‘Exception while obtaining folder icon for /home/puppy/Pictures:’
        Traceback (most recent call last):
        File “/usr/lib/python2.7/dist-packages/variety/”, line 550, in get_file_icon_name
        query_info = f.query_info(“standard::icon”, Gio.FileQueryInfoFlags.NONE, None)
        GError: Error when getting information for file ‘/home/puppy/Pictures’: No such file or directory[/code]

        • None of these errors prevents Variety from running, it fallbacks to some sane defaults, but both indicate you have a pretty broken desktop system at the moment, not conforming to the XDG standards.

          You can’t change the wallpaper because Openbox has no standard way of drawing the desktop, it lets the user, or the distro maintainer choose one. You need to find how to change the wallpaper from the terminal on your system and then put the command in ~/.config/variety/scripts/set_wallpaper.

          • I found how to change wallpaper from terminal. Which line i need to edit in ~/.config/variety/scripts/set_wallpaper?
            hsetroot -fill /path/to/image

          • Gosha got it right for Openbox, but I’m also trying to figure out where to put the command. Any insight would be appreciated

  90. i can’t understand where i need to paste this.

    PREFIX=”$( cd “$( dirname “${BASH_SOURCE[0]}” )” && pwd )”

    export PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig/
    export LD_LIBRARY_PATH=$PREFIX/lib/

    export GSETTINGS_SCHEMA_DIR=$PREFIX/usr/share/glib-2.0/schemas/
    export PATH=$PREFIX/bin:$PATH

  91. I have Xubuntu, I install but doesn’t change my login screen with a wallpaper and the option is activated.

    There’s some command that I can use for fix it.

    • Login screen support works only with LightDM, not sure which login manager your version of Xubuntu is using.
      Also, permissions have to be correct – Variety tries to guide you in this.

  92. How can I restore default values on variety?

  93. Variety run fine on Moksha Desktop in Bodhi Linux. :)

    Just copy or add a line in enlightenment set wallpaper, and “rename” it to Moksha. :)

  94. Lost ability to post/share image to Facebook. Not sure why. I get the error 200 that says app is not authorized. But, I’ve authorized it.

  95. Variety works fine on Chromixium – Openbox, but,

    Chromixium did not provide Desktop Environment Name, so I use Desktop Session Name Instead :)

    # chromixium-wm/Feh.
    if [ “$DESKTOP_SESSION” == “openbox” ]; then
    feh –bg-fill “$WP” 2> /dev/null

  96. Hi Peter,
    You have made great software. The wall paper changer.
    I have tried it on Ghost BSD 10.1 Eva and it is working fine, without any problems.
    Its really great app.
    Don’t you have Variety for windows 10. Actually I am running windows 10 along with elementary os on my 160 gB hard disk.
    Second Hard Disk of 40 GB has been kept as back up disk.

    Thanks for providing such a great software for the distro hopper like me.

    Regards and best of Luck,


  97. The “quote” section was removed? Why?

  98. rpm -K variety-0.5.3-1.fc22.noarch.rpm

    variety-0.5.3-1.fc22.noarch.rpm: RSA sha1 ((MD5) PGP) md5 NOT OK (MISSING KEYS: (MD5) PGP#73edaa09)

  99. Confirm Rasp Pi code also run on Ubuntu Mate Rasp Pi. :)

  100. Hello, i can’t add, i get the error that he doesn’t find wallpapers and i should check the adress

    but it’s awesome thank you :) it works very nice

  101. I recently installed your variety wallpaper changer under ubuntu 15.10 for a customer of mine… While it appears to work just fine… I cannot locate the app or the newly added slideshow “icons’ within the unity menu. I can start the changer in the terminal, but this is not going to work for the customer as they are somewhat limited in their abilities to use let alone understand linux. They have been recently moved off of their also limited exposure to Windows for a simpler and safer OS…

    • Hello, my english is not the best but i try and hope that solution will help you.

      i had this problem too, that i did’nt have the app, because i deleted another app and however the Variety app was connected to the app which I deleted and the variety app was deleted too, try some apps to add them in the unity menu maybe the variety app appears

  102. Hello how to install variety in fedora 23 ??? thanks

  103. I’m using bunsen labs linux. I have feh installed and I’m trying to edit:


    I can’t edit the text because it is in Chinese. Any ideas about working around this?

    • Not sure I understand. Which text exactly is in Chinese? set_wallpaper is a normal bash script.

      • I’m not exactly sure what a bash script is. I’ve installed linux in one form or another usually debian based (Gnome, XFCE, LXDE etc) on a variety of computers for other people. When I do this I always install Variety because it greatly improves the look of the desktop. If the desktop is Openbox or LXDE I install feh (if necessary) then I navigate to “~/.config/variety/scripts/set_wallpaper” and then uncomment the line “# feh –bg-scale “$WP” 2> /dev/null” in “set_wallpaper”. On each occasion when I have done this is the past, the text in “set_wallpaper” is in English. On the last occasion it was in Chinese for some reason (at least I think it was Chinese).

        I hope this explains what I mean.

        • There haven’t been big changes in this aspect in Variety, what you’ve done before should be working. There shouldn’t be Chinese in this file, unless you installed Variety by some obscure means or something is borked. Try to delete the file and rerun Variety, this would generate it from the defaults.

  104. Hi Peter, how to install variety in ubuntu 16.04 ?

  105. Variety is my favorite application , there is just small request for you Peter, that their is facebook for your personnel pictures , no offense but i don’t want to see your family’s pics again and again…

  106. Variety won’t start anymore. Here’s the terminal output

    INFO: 2016-04-14 09:11:04,618: perform_upgrade() ‘Last run version was 0.6.0 or earlier, current version is 0.6.0’
    INFO: 2016-04-14 09:11:04,619: process_command() ‘Received command: []’
    INFO: 2016-04-14 09:11:04,621: load_banned() ‘Missing or invalid banned URLs list, no URLs will be banned’
    INFO: 2016-04-14 09:11:04,627: load() ‘Jumble loading’
    INFO: 2016-04-14 09:11:04,627: _walk_modules() ‘Jumble loading module in __init__ from /usr/share/variety/plugins/’
    INFO: 2016-04-14 09:11:04,627: _walk_modules() ‘Jumble loading module in QuotationsPageSource from /usr/share/variety/plugins/quotes/’
    INFO: 2016-04-14 09:11:04,632: load() ‘Jumble found plugin class: : {‘author’: ‘Peter Levi’, ‘name’: ‘’, ‘version’: ‘0.1’, ‘description’: u’Fetches quotes from’}’
    INFO: 2016-04-14 09:11:04,633: _walk_modules() ‘Jumble loading module in LocalFilesSource from /usr/share/variety/plugins/quotes/’
    INFO: 2016-04-14 09:11:04,634: load() ‘Jumble found plugin class: : {‘author’: ‘Peter Levi’, ‘name’: ‘Local text files’, ‘version’: ‘0.1’, ‘description’: u’Displays quotes, defined in local text files.\nPut your own txt files in: ~/.config/variety/pluginconfig/quotes/.\nThe file format is:\n\nquote — author\n.\nsecond quote — another author\n.\netc…\n\nExample:‘}’
    INFO: 2016-04-14 09:11:04,634: _walk_modules() ‘Jumble loading module in __init__ from /usr/share/variety/plugins/quotes/’
    INFO: 2016-04-14 09:11:04,634: _walk_modules() ‘Jumble loading module in GoodreadsSource from /usr/share/variety/plugins/quotes/’
    INFO: 2016-04-14 09:11:04,635: load() ‘Jumble found plugin class: : {‘author’: ‘Peter Levi’, ‘name’: ‘Goodreads’, ‘version’: ‘0.1’, ‘description’: u’Fetches quotes from’}’
    INFO: 2016-04-14 09:11:04,635: _walk_modules() ‘Jumble loading module in QuotesDaddySource from /usr/share/variety/plugins/quotes/’
    INFO: 2016-04-14 09:11:04,635: load() ‘Jumble found plugin class: : {‘author’: ‘Peter Levi’, ‘name’: ‘QuotesDaddy’, ‘version’: ‘0.1’, ‘description’: u”Fetches quotes from QuotesDaddy’s daily quotes RSS feed.\nDoes not support searching by tags or authors.”}’
    INFO: 2016-04-14 09:11:04,636: load_user() ‘smart: Loaded smart user: qtksst6onj’
    INFO: 2016-04-14 09:11:04,638: makedirs() ‘Creating folder /media/frederic/Bestanden/wallpapers/Downloaded by Variety’
    ERROR: 2016-04-14 09:11:04,638: makedirs() ‘Could not makedirs for /media/frederic/Bestanden/wallpapers/Downloaded by Variety’
    Traceback (most recent call last):
    File “/usr/lib/python2.7/dist-packages/variety/”, line 188, in makedirs
    File “/usr/lib/python2.7/”, line 150, in makedirs
    makedirs(head, mode)
    File “/usr/lib/python2.7/”, line 150, in makedirs
    makedirs(head, mode)
    File “/usr/lib/python2.7/”, line 157, in makedirs
    mkdir(name, mode)
    OSError: [Errno 13] Toegang geweigerd: ‘/media/frederic/Bestanden’
    Traceback (most recent call last):
    File “/usr/bin/variety”, line 39, in
    File “/usr/lib/python2.7/dist-packages/variety/”, line 214, in main
    File “/usr/lib/python2.7/dist-packages/variety/”, line 167, in start
    File “/usr/lib/python2.7/dist-packages/variety/”, line 357, in reload_config
    File “/usr/lib/python2.7/dist-packages/variety/”, line 346, in prepare_download_folder
    with open(dl_folder_file, “w”) as f:
    IOError: [Errno 2] Bestand of map bestaat niet: u’/media/frederic/Bestanden/wallpapers/Downloaded by Variety/.variety_download_folder’

    • You’ve chosen a download folder that is now either on an unmounted drive, or with the wrong permissions and Variety can’t create the “Downloaded by Variety” subfolder inside. Fix this, or manually edit and fix the download folder path in ~/.config/variety/variety.conf.

      • Variety has run before without problems. I reinstalled Variety and the same problem occurred. I removed Variety AND the configuration folder, reinstalled and tataa: everything is back in working order :-)

  107. Please make an OSX version

  108. after instal and execute l variety, appears this error :
    IOError: [Errno 13] Permission denied: u’/home/sergi/.config/variety/variety_latest_default.conf’

Leave a Reply

Required fields are marked *.