This page documents, in a spirit of sharing known recipes, my current and older desktop setups. You can also read a narrative of the history behind all this an more in history.

  1. desktop
  2. Current setup
    1. Window manager: xmonad
    2. Web browser: Firefox
    3. Emails: notmuch
    4. News: feed2imap
    5. Editor: emacs or vim
    6. Backups: borg and bup
    7. Color theme: solarized
    8. Other apps
    9. The Gnome exception
  3. Older setups

Current setup

Window manager: xmonad

I have a well-customized xmonad config file. Tab 1 is email, 2 is chat, 3 is web, 4 to 6 is probably a bunch of terminals, 7 and 8 are special and 9 is the music player.

I don't remember why I started using Xmonad. I remember being annoyed at Awesome for forcing me to rewrite my configs at major upgrades and noticing my friends were using a cool Haskell-based WM.

My main gripe with Xmonad is the lack of good floating windows support.

I may switch to i3 when I get bored, because it seems all the cool kids are switching to that. Or maybe Gnome, or KDE, because that's what Mr. Robot says is cool. Right? Right.

Web browser: Firefox

I always have a web browser opened, so that is a key tool for me since, unfortunately, everything seems to be moving inside a browser window... After using chromium for a few years, I am now back to using Firefox, see the firefox page for more details.

Emails: notmuch

Boy oh boy that one is crazy. Not enough space for this here, but let's just say I have piles of lisp code that allow me to have 83k mails in my inbox and not notice, which makes the sysadmin in me quite angry.

I have improved on that setup and documented it in 2016-05-12-email-setup.

News: feed2imap

I tried Liferea and Tiny Tiny RSS, both would take up too much resources - how hard can RSS be really?? Unbelievable. I ended up using a simple cron job and feed2imap:

@hourly nice feed2imap

The config is fairly simple, and I imported an old OPML feed I had lying around from Liferea. Here's my probably outdated ?.feed2imaprc.

Editor: emacs or vim

I am not a religious zealot, except when it's about fighting religion. Therefore, I use vim for quick edits on server, but Emacs for everything else. I have a long history of emacs programming that I have only begun to document in emacs. See also the Emacs wiki.

Backups: borg and bup

I used to have a custom script to do a rsync to a crypted drive regularly - but it was not that regular, and i was worried about not having an incremental history.

I started to work on using Bup and ended up writing a whole wrapper around it named bup-cron. Then I found out about attic, tried to help, which ended up creating a fork called borg which ended up being used by everyone and more active, so I'm using that now.

I contributed to borg for a while (see borg for reports) as well.

I also considered Obnam but it seems it doesn't scale so well.

Color theme: solarized

That is just crazy - I started using Solarized, mostly because it makes by desktop usable in plain daylight. But it's a huge pain in the butt. I wonder if I shouldn't go back to my regular color theme and just use redshift instead. Quite confusing that thing. If you are in montreal, this is the magic formula: redshift -l 45.5:-73.7.

Other apps

My session also automatically starts a few more tools, either through .xsession or, more recently, through my xmonad-session-rc file - a special feature of the xmonad Debian package that i found quite useful.

Here are the other tools that are generally running in my session:

The Gnome exception

When I don't want to go through the hassle of doing a special configuration, since I don't have time to play around with all this, I just used the default Gnome environment, with a few tweaks:

Older setups

Created . Edited .