Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: What's your favorite window manager for X11?
42 points by adulau on Oct 1, 2010 | hide | past | favorite | 68 comments
Ask HN: What's your favorite window manager for X11?

Do you prefer keyboard-driven window manager? and how do you arrange your windows to be more efficient?



Xmonad, one of the best tiling window managers out there. It is very easy to grasp for beginners[1], has a comprehensive documentation and is extremely powerful under the hood. The configuration is in Haskell, which makes it Turing-complete, but you can customize Xmonad even if you are not familiar with the language.

[1] http://xmonad.org/tour.html


Xmonad is what finally made me decide to switch to Linux from OS X. I'd tried other window managers but none of them acted quite how I wanted them to. Xmonad with Xmobar and dmenu is an amazing combination.


Another vote for xmonad. I have been using xmonad on my desktop for most of this year, and it has worked amazingly well, and definitely has one of the best multi-monitor setups I've ever used.

One of the most impressive things is how well it has worked out of the box, so well that I basically forgot to come back and customize, its just been working for quite a while now.


Xmonad works so well that I even rejected to work with a second monitor. At least for me its currently faster switching to another desktop using capslock-<0-9> than physically adjusting my eyes to another display.


I'll third a vote for Xmonad. To be honest though, I consider it a failure if I find myself interacting with X Windows at all.


I've tried a dozen window managers for weeks at a time. For over a decade I always returned to my old reliable WindowMaker. In the past couple years I started using Metacity (default in Gnome now).

All I care about is having separate workspaces and a few keyboard shortcuts. I have 7 work spaces: Main (local terminal), Browsing (Chrome/Firefox), Communications (Pidgin/XChat/Skype), Development (GVim/terminal), Email (Thunderbird/GMail), Shells (tabbed remote terminals), Misc (usually shells/music player).

Each workspace is dedicate to a single task. Everything is fully maximized in each workspace (for the most part). I switch between them with Alt+{1,7}. Ctrl+M Maximizes a window. I have a few monitoring applets (CPU/network) in the taskbar thingie. Over time I've found that is all I need to be happy and productive.


I also used Windowmaker for a really long time, but stopped when a few years ago it was incompatible with a few of the applications I use (e.g. gaim (now pidgin) would crash very often, and some more annoyances I forgot about).

I especially liked docking applications/icons, its good support for virtual desktops and especially the many wmXXX applications that did one job well, in the space of a 64x64 pixel tile.

These days, I mostly resort to the "standard" gnome desktop with whatever it uses and resort to something very lightweight such as fluxbox on resource constrained machines.


Somewhat customized Openbox. Six workspaces, everything keybound. I make heavy use of alt-drag and alt-middle-drag to move and resize windows without needing to find their targets. Control-fkeys for frequently opened apps like gnome-term, chromium, etc. Each workspace is a discrete task: writing code, testing, email/IM, etc. Helps keep me focused.

What I love about OB is that everything is configurable. A lot of WMs (ahem, metacity) give you no control over the basic operations because they can't imagine any other way to do it. If you find faster ways to do things, e.g. workspace warping with mousewheel, or reordering windows with win+middle click) OB actually lets you achieve them. It's all there in XML--and the defaults are well thought out, too.

I know several people who swear by xmonad, but I've never been able to deal with it for graphical work.


I was surprised to find that no one else has recommended dwm[1], which is what Xmonad (and others) are based on[2].

It's tiling, keyboard-driven, small and lightweight. I've been using it for years now. It's a little hairy to start with, but I love it.

Instead of workspaces it uses "tags" which you can treat just like workspaces, but you can also combine, on-the-fly, to form a mashup of different tasks. For example, sometimes I want my editor & web browser next to each other, when I'm looking something up, but most of the time I just want to focus on the code.

[1]: http://dwm.suckless.org/

[2]: http://en.wikipedia.org/wiki/Dwm


I've found that if you set up devilspie and xbindkeys, it doesn't really matter what WM you use.

devilspie is a rules engine for windows--new windows for this application go to this desktop and are always maximized; browser windows always go to workspace 1, all windows are always undecorated, etc.

xbindkeys is a scheme app that just handles mapping key bindings to shell commands.

Both of these are configured with files full of s-expression that you can check into your version control. Put them together and you can kinda ignore the fact that you're still using brain-dead metacity.


I use wmii with some minor customizations. I have one 30" full of 256-color rxvt-unicode windows and a smaller monitor running chromium. Generally communications (mutt, irssi) runs down the right edge of the 30" and then there are 2-3 columns of terminals running vim or zsh.

One killer feature of wmii is its use of 'tags' instead of virtual desktops. Windows can be assigned to multiple tags. I tend to have tags per task, so task switching is as simple as switching desktop tags.


+1 for wmii ! I was using ion3 until 2008 and migrate to wmii at this time.

I'm mainly using OSX now but I always have my wmii open in a virtual box.


I miss Ion3. But I use dwm now!


I love wmii but it's a pity it's such a pita to build the plan9 stuff on osx. I prefer dwm that way - no pesky dependencies


I used to love wmii, but I use xmonad now for the better multi-head support. I wish xmonad did tags like wmii though.


I read that as "(256) (color rxvt-unicode windows)". Good god, man! ;-)


I use Awesome WM. It was my first foray into the tiling WM world, and I am currently loving it. I have two monitors. I usually have whatever main task I'm working with on my main widescreen, and then a bunch of terminals with various programs (ncmpcpp, irssi, etc) on my old 17 inch monitor.

Awesome is great because of its use of the keyboard and tag system. Also, it is named after one of Barney Stinson's catchphrases.


Awesome is great partly because it's small, nimble and fast. It's one of those rare pieces of software that manages to feel infinitely useful while combating bloat at the same time.


The problem I have with awesome is that it likes to make you write new configs every other release. That's why I'm still stuck with a fairly old version.

Now that they kicked xcb out of cairo (which awesome needs) which resulted in awesome getting kicked out of the arch linux community repository I think I'll just switch to i3 like all of my buddies.


I didn't even realize awesome wasn't in the Arch Linux repositories any more. I installed it from there a month ago.


Another vote for Awesome WM. Like you, it was my first (and, so far, only) foray into tiling WMs, and I'm using it on dual 21" monitors.

I usually have Chrome on my right screen, several tabs worth of terminals on my left screen, and Komodo Edit will float back and forth between the two, depending on what I'm doing.


I am using dwm with the bottomstack, gridmode and pertag patches and my own modifications.

Currently I am using a notebook in front of an external display and I added a function to dwm with which I can essentially "push" all clients (windows) to the external display, which in turn sends all its clients to my notebook's display (or in other words it swaps all clients of one display with all clients of the other).

When I am coding I am always using bstack mode with vim on top and one or two terminals at the bottom. The external monitor is displaying documentation. If I have to look something up I just have to push vim + terminals away. If I am finished I pull them back. So my notebook display becomes my working display.


I find that dwm always gets dismissed by users of awesome or xmonad. I've run all three for long periods of time and always go back to dwm, most likely due to my hatred of "bloat". It's stable, small (28kb binary), fun to hack and nice and snappy.

http://suckless.org has some other really cool stuff as well.

ii is a FIFO based IRC client, slock, wmii etc...

http://hg.suckless.org/ is their HG repo.


I've been using blackbox for many years ( after using afterstep and windowmaker) but recently turned to stumpwm, a tiling wm written in lisp[http://www.nongnu.org/stumpwm/]. Getting used to it but i think i'll keep it, i like tiling wm . Never been a fan of gnome or kde, and never need all things they carry i prefer a simple window manager.


After using windowmaker, I switched to awesome and I am not looking back. The install is tiny, and it starts instantly, unlike KDE. The tiling is very nice. The configuration is in lua but I haven't been annoyed by anything enough to bother modifying it.


As I work with dual screen linux connected to a remote windows XP/7 desktop running in VMWare/HyperV, I have a screen for tiled urxvt terminals connected to the servers running the processes I manage, with a floating rdesktop session hiding it most of the time. The other screen is set to 'floating' for emails, web browsing and local terminals sessions.


I've used Fluxbox and Blackbox basically since I was in diapers, but I recently decided that it's really way past time to try a tiling WM, and settled on xmonad after initially trying awesome. I like it a lot so far; it's lightweight, flexible, and very easy to configure, and I'm surprised how little I miss dragging windows around (although I still float some frequently used applications, Chrome and Audacious primary among them.)

I usually have a workspace for shell & filesystem stuff, one for emacs, one for documentation, one for running servers and monitors and other misc. utils for whatever I'm doing, and one floating one for web browser and music.


Why do you float Chrome windows? Web browsers and terminals are the easiest applications to tile.


Honestly, there's no good reason at all. I'm just so used to resizing my web browser with the mouse all the time to read things better. I should probably break that habit.


I do occasionally get weirdness with tiling Chrome (though I still do it), when websites try to resize their windows and my window manager won't let it. Some crazy websites depend on multiple sized/moved windows as well, e.g. this thing won't work unless I float the browser: http://news.ycombinator.com/item?id=1646430


I use awesome, it's ... awesome. Try and get away from any floating windows at all, when it's set up correctly there's no need. Also get away from the mouse if you can, mouse free working with Awesome WM is where it shines. shameless plug If anyone's interested in a guide to getting Awesome WM installed and set up with Ubuntu I made one here. http://8bit.co/?p=39


I use sawfish. It is very lightweight, configurable, supports plenty of keyboard shortcuts and generally stays out of my way.

I have keyboard shortcuts for most simple operations (change workspace, change window, send to back, etc.) and use the mouse when that sort of thing makes sense. I try to stick to 'one task-type per workspace' which helps keep things somewhat organized (plus it keeps my browser in hiding while I'm trying to code).

Link: http://sawfish.wikia.com/wiki/Main_Page


I use this as well. I have a bunch of self-written mods that I really should push out somewhere.

I started using it when it was the default WM for gnome, and had so many customizations that I couldn't switch away when metacity came out.

Things like windows7-ish tiling (I had it before windows 7, when someone using another WM could do it).


I like fvwm - http://fvwm.org/ - I can change the size of windows on all sides, and the width of the borders is easily configurable.

(Everything else is as well, but those are the things I particularly like over other window managers I have seen.)

I would like to try running Xmonad on a second monitor, and use that monitor for xterms primarily - I don't want my browser window-size to change with how many windows I have open - but I haven't had time/monitors to experiment.


Another vote for fvwm. I've customized it pretty heavily over the years:

I have a single config file that detects which host its running on and modifies fvwm's behavior accordingly. This way I can have the same configuration work well on the desktop and the netbook.

It works well on the netbook, too, as its very resource-friendly.

I have it set up with a 3x3 virtual desktop space and no edge resistance. The "Windows" key pops up the virtual desktop manager.

Also, I have it configured so that when I hit the "Menu" key or CTRL-Windows I get the root menu, so it's reasonably keyboard friendly. (e.g. CTRL-Windows,T gets me a terminal; CTRL-Windows,N,W gives a browser.)

Not that I use those, really, since I have F1 on the root window bound to "launch terminal", and F2 to "launch browser".

FVMW doesn't work as well as others out-of-the-box, but you can pretty much make it do anything if you tweak the config enough. But that's work, so you gotta wannit.

I really wish it was a compositing window manager, but it's not, and it doesn't seem likely to be.


Windows XP.

I have used Linux almost daily for the last 12 years; a good chunk of them via putty/ssh from XP. I headless Slackware box without X; ssh or serial is just fine by me.

At the risk of being mauled to death, I also have a Mac that I just got used, and I only ssh to it. Couldn't be bothered to figure its quirks; will come handy when I get into iphone dev though.

Also, I will not use a non Thinkpad machine if it was given to me for free. My current setup is an R51; Pentium M, 1GB RAM, and 33GB disk.


Openbox for me - extremely customizable, standards compliant, and very keyboard friendly. Good theming, well written code.


The tiling, keyboard-driven Xmonad on Linux, but then I got fed up of the look and feel of Linux in general and bailed to OS X completely (with a more basic helper, SizeUp).

I like a main window taking the left 60% of the screen and the remainder for 2 aux windows stacked vertically.


WindowMaker. I wish it were more keyboard driven, but I find it's window arrangement and Xinerama support to be the crucial features.

I've also been meaning to give a modern tiling window manager (I've used ratpoison in the past) e.g., Xmonad a try.


I go with the (distribution) flow and use KDE/kwin. I dumped Gnome/metacity a while ago as it wouldn't do more than 12 desktops, while kwin gives me 20. F1-F12 for the first 12, Alt+F1-F8 for the rest. Every major window is fullscreen on its own desktop and can thus be switched with one keypress (I like desktops over some sort of window-focus hotkey as it gives me a spatial metaphor to how keys are assigned). For example, I'll bounce between web (F7) or pdf (F6) while editing code (F1/F2), negating the need to have two windows side-by-side with the management/tradeoffs that incurs.


I can have 36 desktops with the gnome in ubuntu 10.04 (not that I do, I just use 6 ;-)


Sure... however last time I checked, you can only assign hotkeys to 12 of them.


Hum, you're probably right. A hack would be to use something like wmctrl and custom hotkeys.


Does anyone by any chance know of a Zooming UI (ZUI) WM for linux ? I've been looking to replace my Gnome desktop I've otherwise been running for years. I'm no fan of tiling WMs so a ZUI seem a good next step.


XFCE, a rather minimal window manager I find perfect for my desktop and development machine. http://www.xfce.org


ratpoison, because it actually manages those pesky windows.


I use ratpoison on a ThinkPad X201. I basically only have one xterm with tmux and one browser open. Ratpoison is the least annoying window manager for that.


> I basically only have one xterm with tmux and one browser open.

What more could one ask for?


i use ratpoison on a thinkpad x301. they must go well together.


ratpoison was my first tiling wm. i remember how it made me feeling like a total newbie =) its lack of a floating mode (needed for gimp and others) made me switch to more advanced wms though.


StumpWM.

Tiled and programmable in Common Lisp. It's fun to config/hack.


Evilwm: http://www.6809.org.uk/evilwm/

It can spawn a terminal with one keystroke, can move and resize windows, and has virtual desktops. Other than that, it gets the hell out of my way -- no extraneous bars / panels / whatever, and one-pixel-wide window borders. That's all I ever want a WM to do.


I currently use awesome wm but I run slim so I can login to any number of window managers. I was using xfce4 for a few months and still think it's a great environment. I also mess around with fluxbox. After seeing so many people rave about xmonad I'm going to give it a try as well.


I'm one of the several people here who uses awesome. It's rather nice.


WindowMaker, it was the first windowmanager that I liked, and haven't moved since, but it is beginning to feel its age. I am missing some of the new stuff from gnome/kde a litte bit.


I use scrotwm - don't be put off by the silly name, it's a great window manager: think dwm with a plain text, human-readable config file.

That said, most of my 'window' management is handled by tmux.


I prefer WMII in VirtualBox as development enviroment. http://wmii.suckless.org/


And i forgot to mention a Vimperator project. It's really useful peace of software. It let you to surf the web with keyboard only. http://vimperator.org/vimperator


Used it before I switched to awesome. Suckless stuff is always neat.


Depending on my mood; if i`m looking for no distractions I will work in AwesomeWM. Otherwise, I just default to Gnome.


I use awesome (http://awesome.naquadah.org/), a tiling wm.


kwin because it has such great configuration options. You can customize everything by window class/title etc, like which desktop it goes to, is it always on top/bottom, maximized horizontally/vertically, skip the taskbar etc.

The compositing effects Present Windows Desktop Grid are actually useful


I have two favorites: Ratpoison (tiling) and Evilwm (non-tiling).


I'm sad to see so little love for ion and ratpoison. Ion2 ftw.


Awesome WM at the moment. Looking at xmonad too though


twm ;)



rio




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: