Is it possible to set start-up applications to initialize in certain workspaces? I'd like to not have to manually distribute my start-up applications across my numerous workspaces every time I boot up my machine. I'm running Ubuntu 12.04 .

Any Help ?

3 Answers 3


Yes , thats possible using gdevilspie ( GUI of devilspie) :

Open Terminal and type the following coommand :

sudo apt-get install gdevilspie

Now open gdevilspie with (Alt + F2, gdevilspie, Enter).

Click start daemon and automatically on login .

Example here is Skype ( you should set it to run on startup ) :

enter image description here

devilspie Here

enter image description here

enter image description here

Now restart daemon and try .

  • This is exactly what I was looking for, thank you.
    – Dodgie
    Commented Mar 8, 2014 at 2:14
  • hope it fits your needs , any time my friend
    – nux
    Commented Mar 8, 2014 at 2:15
  • This looks great, but it crashes on my 13.10, and the same happens on 13.04 too. There's also an Arch bug report. I'll see if there's a more recent version of gDevilspie than stock Ubuntu provides.
    – halfer
    Commented Apr 13, 2014 at 12:08
  • Ah,the bug tracker looks abandoned, but someone has provided a patch, and someone else reports that it works.
    – halfer
    Commented Apr 13, 2014 at 12:17
  • also run sudo apt-get install devilspie
    – once
    Commented Mar 22, 2019 at 2:54

Additionally, this can also be done with CompizConfig (and in fact, if your workspaces are generated by CompizConfig, then the devilspie solution doesn't seem to work):

CompizConfig > Window Management > Place Windows > Fixed Window Placement > Windows with Fixed Viewport

Make sure that "Place Windows" is enabled (CompizConfig > Window Management).


Install wmctrl

sudo apt install wmctrl

And create a script (in this example thunderbird on the second workspace (-t 1)):

(thunderbird &)  & sleep 5 && 
sh -c "wmctrl -i -r `wmctrl -l | grep Thunderbird` -t 1"

To know your application name on wmctrl you can view it by taping on your terminal :

wmctrl -l

And replace it with the correct name in the script.

Be carrefull with the capital letter ("Thunderbird" not "thunderbird") !!

Other example with firefox on the 3d workspace (-t 2):

(firefox &)  & sleep 5 && 
sh -c "wmctrl -i -r `wmctrl -l | grep Firefox` -t 2"

Work on Debain 10 with Cinnamon. But should work for all

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .