What is Devilspie?
Devil's pie is a non-gui utility that let you make applications according to their names start in specified workplaces, in specified sizes and placements, minimized or maximized and much more based on simple config files. The homepage can be found [http://www.burtonini.com/blog/computers/devilspie here]
How can I get it?
There is a precompiled deb package in Ubuntu repository for Breezy which you of course can get via Synaptic or apt-get but it is only the 0.10 version. However, Devil's pie was totally rewrited since version 0.13 so I recommend in order of future compatibility and easier configuration you compile the latest version yourself. It is a piece of cake since it is an lightweighted application without gui. In order to get the latest version (0.16 at the time of writing this document), follow these steps:
1. Download the latest source from the [http://www.burtonini.com/blog/computers/devilspie homepage] in your favourite download location.
2. Unpack it using the following command:
tar -xvf dev<TabKey>.tar.gz
3. Go to the directory where you unpacked the source.
cd devil<TabKey>
4. Prepare for compiling, you should not need any additional options.
./configure
Hopefully you got something like:
configure: creating ./config.status config.status: creating devilspie.spec config.status: creating Makefile config.status: creating src/Makefile config.status: creating po/Makefile.in config.status: creating tests/Makefile config.status: creating src/config.h config.status: executing depfiles commands config.status: executing intltool commands config.status: executing default-1 commands
If not, read the output and install the packages you need. They should be indicated as dev in Synaptic.
5. If everything went fine, let us compile.
make
6. If the compilation went fine and you did not get any errors (possible warnings should not probably concern you), it is time to install.
sudo make install
How do I set it up?
- Devil's pie is configured with s-expressions stored in files ending with ".ds".
- Syntax is not difficult and is much more effective than it was in versions previous to 0.13, which used .xml files.
- For details, see:
README, which should be placed in the directory where you unpacked the source (see above)
Forum [http://www.ubuntuforums.org/showthread.php?t=98071 thread] with list of logical operations and many examples
Another forum [http://ubuntuforums.org/showthread.php?t=75749 thread] which is mainly about the 0.10 version but begins with great HowTo which also includes some very useful stuff about later versions.
Great non-Ubuntu wiki [http://wiki.foosel.net/linux/devilspie page] which can be a great reference.
How do I use it?
- You can start Devil's pie with simple
devilspie
in gnome-terminal.
- It will read all the s-expressions stored in those two directories:
$HOME/.devilspie/ which should be /home/<YourUserName>/.devilspie on Ubuntu
- $SYSCONFDIR/devilspie which should be on Ubuntu /etc/devilspie
- The former will apply just when you start devilspie, the latter will apply to all users.
- You can use several options:
-d or --debug for debuging purposes, when run in terminal, it will print some useful information
-a or --apply-to-existing should apply Devil's pie also to existing windows. However, it seems that it applies regardless this option.
<file.ds> or <file1.ds> <file2.ds> etc will explicitly specify which config files should be used.
However, after setting it up, you will probably want to run it on start up, so that every window you open will open the way you want it to. For further info as to how to do that, read [https://wiki.ubuntu.com/AddingProgramToSessionStartup this] nice wiki page.
- If you were to experience freezes down after adding devilspie to your startup programs with a low number (such as 30 or 50), try to higher it up so that devilspie starts as the last application. You may want to start it with -a option that applies the rules to already existing windows then. However, it may not be necessary.
How other people use it?
Feel free to add you working config files with explanation.
How can I improve this wiki page?
Simply add any useful stuff! Especially the section about setting up should be improved so that it more then just linking somewhere else, also some examples would be greatly appreciated. Also feel free to correct anything wrong.
- Does anybody know how to make a list not italize first sentence of new item? If so, could you please correct it and then remove this note? Thanks.
- I am not sure if devil spie reads files stored in /etc/devilspie/. It seems so, because other people say so, but when I checked, it did not work for me. Could someone please check it, correct it and then delete this note?