I've switched from a highly-customized AwesomeWM setup to a keep-most-defaults Xubuntu desktop. This page describes how to replicate what I did. Note that much of my work is in Emacs, which I have customized extensively in my configuration repository.
I've used many different operating systems and sub-components such as window managers.
This page describes the system I currently1 use, and intend to use into the near future, which fulfils three criteria:
the system is quick to set up (guideline time: < 3 hours) and easy to re-install
it allows productive and efficient work (i.e. never gets in the way of doing actual stuff)
it is resilient, not relying on chains of breakable components
The system uses:
the latest Xubuntu (13.10 at current time, although the version is unimportant)
an install git repository, hosted on Github, automating common install tasks
a configuration git repository of configuration dotfiles
intelligent keybindings, using the Super key, largely taken from Awesome WM
dmenu, Guake, making panels autohide and other visuals
Chosen for being stable, maintained, having up-to-date packages available with a lightweight and nice looking UI. No more worrying about package versions or messing with aesthetic stuff to make it look nice: it already does.
In here is:
a plaintext list of Ubuntu packages that can be installed via
cat apt-package-list | xargs sudo apt-get install
a similar list of Ruby Gems
an update script to produce the above two lists (of explicitly installed packages, excluding dependencies)
a synopsis of what I did upon install:
A git repo of most of my important dotfiles (including my emacs.d/) and scripts to add new files and create the appropriate symlinks.
Most importantly, I add
/etc/default/keyboard to make Emacs and command line much easier to use.
Through Settings -> Keyboard I setup keybindings to launch Emacs (Super+E), Anki (super+A), etc.
I also have Super+d to launch dmenu_run, Super+s to toggle the Guake terminal, a lock key to start xscreensaver and the PrintScreen key to run
Through Settings -> Window Manager I change window management keybindings to resemble Awesome's:
I recommend everyone tries dmenu (Ubuntu package: suckless-tools), and Guake is fantastic as an always-accessible terminal (add to autostart applications).
I leave the bottom panel settings as default, and add my most common app launchers to it.
The top panel I set to 18px and autohide. This gives me 100% of screen real estate for applications themselves.
I install the
chromium-browser Ubuntu package via the above, and sign in to my Google Apps account to sync everything.
Extensions: AdBlock Plus, FastestFox, Pocket, RSS Subcription
I have a pretty strict bookmarks hierarchy, the most important folders being: Inbox, R/W/L, Sites and Pin
The idea is that everything goes into Inbox initially, making bookmarking a page being as easy as Ctrl+d, then processing Inbox weekly
R/W/L contains stuff to read, watch and listen to. I think this idea came from Getting Things Done.
Sites contains sites I like to browse regularly: LifeHacker, Less Wrong, etc.
Pin contains my pinned pages. When you close the main Chrome browser window before a non-toolbar one, you lose all your pinned tabs. I think this design choice sucks, and it certainly does not reflect the way I use pinned tabs (permanently), but I get around this by maintaining this folder. If/when you lose your pinned tabs, just open all tabs in this folder and right-click pin each.
Pinned tabs are: Gmail, Google Calendar, Beeminder, Google Keep
Keyword search engines are very important for me. A partial list is:
a: amazon UK
wa: WolframAlpha query
fe: WordReference English-French
ff2: Google Translate French-English
r: Ruby Documentation