dapper: a desktop applications autostarter
A little while ago, XFCE released a new version, 4.10, and with it a few changes
were introduced. Amongst which is the moving of the starting script
(startxfce4
), which used to belong to xfce4-util
, a package that no longer
exists.
So the script got moved to xfce4-session
, which is a little problem for me
because I don't have that one installed, and I don't want to install it. It's
possible I don't know exactly all that a session manager has to offer, but as
far as I know what it would provide me is the ability to shutdown/restart the
computer from XFCE, which I don't care for since I can/would rather do it from
my login shell, or restart whatever applications were running last time I logged
out, something I absolutely don't want at all.
So, I don't use a session manager. But because startxfce4
moved to that
package, I needed to do something. The easiest thing would have obviously been
to just copy that file and keep using it, outside of any packages.
But I wasn't too inclined to do so, because this script does quite a few things, or tries to do them at least, and I figured if I make it my own and need to maintain it, I might as well keep things as simple as possible.
One thing this script did, although not very well, was take care of the
autostarting of desktop applications. I say not very well, because it would only
look in one folder for .desktop
files, thus ignoring quite a few things.
This resulted in things not being autostarted for me (e.g. the PolicyKit authentication agent) unless I manually added it.
A Desktop Applications Autostarter
So I started looking for a simple application autostarter, one that would do
just that: as per the FreeDesktop
specifications, look up for .desktop
files in
the different folders, and start whatever needs to be started.
Unfortunately I couldn't find what I was looking for, and that's how dapper was born. dapper does just that, nothing else, and tries to follow the FreeDesktop specifictions.
I say "tries to," only because there are a couple things not implemented (because I don't have a need for them, and am lazy) :
Keys
StartupNotify
andStartupWMClass
are not supported.When parsing command line in
Exec
, field code%c
is not supported, and simply removed.
Other than that it will start all that should be started pretty fast, and you
can define which desktop to start applications for (e.g. GNOME, XFCE, etc) in
configuration file (~/.config/dapper.conf
) or from command line.
Download
Maybe this might be useful to some of you, though note that autostarting desktop applications is probably already taken care of if you do use a desktop environment/session manager.
dapper is released under GNU GPL v3+ The source code is available on this BitBucket repository.
You can also find a PKGBUILD in the AUR.
And of course bug reports, suggestions or any other form of constructive criticism is very much welcome.