20 ms·
XMonad 0.13 released
- ahstro 10y agoI've been thinking of trying XMonad for a while, and looks like this is the opportune time. Anyone know if there's an easy "switch to last used window" functionality?
- djfm 10y agoHallelujah the [1]missing dropdowns are fixed! Long live the best WM ever! [1] https://github.com/xmonad/xmonad/issues/42 https://github.com/xmonad/xmonad/issues/42
- awirth 10y agoWow this rabbit hole is impressive. I'll summarize to the best of my understanding (I'm no expert in X). Basically, chrome uses an X property called _NET_WORKAREA (which is basically supposed to be a rectangle that includes all the parts of the screen that aren't the toolbars) to clip popup menus for dropdowns, so they don't draw over your taskbar or whatever.[1] Earlier this year, they fixed a race condition so that now they listen for updates to _NET_WORKAREA changes[2], which fixed an issue where the clip area would be wrong for users who hot (un/)plugged extra monitors on relatively "standard" distros like Linux Mint. Basically, you could only see the drop downs on your primary monitor, because _NET_WORKAREA was out of date. Once this change finally landed in stable, XMonad users noticed that now they couldn't see dropdowns on ANY monitor if they were changing workspaces and had multiple monitors. It turns out that this is because Chrome reads _NET_WORKAREA from the root window, and XMonad (unlike mainstream WMs) uses separate root windows per monitor. Now that Chrome was watching for changes, Xmonad and chrome were miscommunicating with each other about the current clip area. Chrome works around-ish this by only doing the clipping on the primary display[3] "Since that is where the 'desktop chrome' usually lives, this works ok in practice." The workaround on the XMonad side is to just stop setting _NET_WORKAREA altogether[4], which is the same thing that i3, awesome and qtile do. Note that they had originally set this property in the first place because not having it caused Gtk and Qt malfunctions. To further complicate things, some Display Managers like LightDM set _NET_WORKAREA itself, so XMonad has to actively delete this property when it starts instead of ignoring it altogether. Anyway, it was a pretty interesting read. [1] https://bugs.chromium.org/p/chromium/issues/detail?id=510079 https://bugs.chromium.org/p/chromium/issues/detail?id=510079 [2] https://bugs.chromium.org/p/chromium/issues/detail?id=510079#c52 https://bugs.chromium.org/p/chromium/issues/detail?id=510079... [3] https://bugs.chromium.org/p/chromium/issues/detail?id=510079#c80 https://bugs.chromium.org/p/chromium/issues/detail?id=510079... [4] https://github.com/xmonad/xmonad-contrib/pull/79#issuecomment-277853703 https://github.com/xmonad/xmonad-contrib/pull/79#issuecommen...
- digi_owl 10y agoSeparate root windows, hmm. Wonder what effect that has one security...
- kornish 10y agoUnreal – never knew XMonad was so small. It's only 1650 lines of code! tedkornish : dev/xmonad @ master :: cloc src 8 text files. 8 unique files. 0 files ignored. http://cloc.sourceforge.net v 1.64 T=0.03 s (244.6 files/s, 95612.1 lines/s) ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- Haskell 8 446 1028 1653 ------------------------------------------------------------------------------- SUM: 8 446 1028 1653 -------------------------------------------------------------------------------
- wz1000 10y agoThat is only the base library. Contrib and extras, where a lot of the useful stuff is defined are here: https://github.com/xmonad/xmonad-contrib https://github.com/xmonad/xmonad-contrib https://github.com/xmonad/xmonad-extras https://github.com/xmonad/xmonad-extras
- pvdebbe 10y agoOn the other hand, xmonad has a remarkably well defined set of defaults so I for one am able to be very productive with them very well. My personal config provides stuff that I use maybe 3 % of the time.
- aseipp 10y agoThat's extremely bloated. ;) For several years early on in its life, the entire XMonad core codebase was just under 500 lines of code. Of course, I believe the Zipper rewrite (many moons ago) was what increased the size somewhat, and it was for the best... It's even small enough someone did a formalized Coq proof of the core data structures (i.e. they proved that XMonad cannot 'crash' in several ways.) :) I have used it very fondly almost for a decade now (since 0.0!) and it is a good piece of software. I don't think I've changed my config more than 10 lines in like 7 years...
- binaryapparatus 10y agoIn the past I have tried various tiling window managers but always reverted back to xmonad. I haven't looked elsewhere for some time now. Documentation is extraordinary and really easy to follow once I understood how to read it, years ago. The only sore spot is monstrous GHC size, that compiler needs to get much smaller to be really good from all angles.
- sevensor 10y agoI switched to i3 a couple of years ago, after using XMonad for about two years. Hopefully things have improved since then, but I kept falling into Cabal hell every time I tried to make a configuration change and I got fed up. At the time I concluded that XMonad was for people who use Haskell regularly and know how to navigate its package system.
- wz1000 10y agoMy favorite part of XMonad is XMonad.Actions.Navigation2D[0], which allows you you use direction navigation via keybinding to switch between windows. A proof that the technique for this allows you to visit any window, no matter how they are arranged is given in this paper[1]. [0]- http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Actions-Navigation2D.html http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Actions-... [1]- https://web.cs.dal.ca/~nzeh/xmonad/Navigation2D.pdf https://web.cs.dal.ca/~nzeh/xmonad/Navigation2D.pdf
- chrissnell 10y agofvwm2 has this and I miss it dearly since I switched to i3 a while back. It was fantastic. I would arrange my screens in a 3x3 grid and put my most commonly used one in the center. That gave me four other screens that were only one keystroke combo away. It's just not the same in i3. I can do meta+screen# but it's nowhere near as easy.
- fmos 10y agoWhile only working in 1D (up/down for workspaceswitch; left/right for monitor switch), I use a similar "geometric navigation" from within i3 in place of the Meta+Number default shortcuts. Here is how I solved this for me: https://fmos.at/2016/06/30/my-i3-dual-screen-workflow/ https://fmos.at/2016/06/30/my-i3-dual-screen-workflow/
- timlyo 10y agoWhy did you switch to i3? I'm an i3 user looking at other window managers.
- chrissnell 10y agoI wanted a tiling WM.
- jiehong 10y agoUnfortunately, with Wayland growing, XMonad may no longer be possible[1]. [1]: https://github.com/xmonad/xmonad/issues/38 https://github.com/xmonad/xmonad/issues/38
- LeoPanthera 10y agoSurely it will always be possible to remove wayland and put xorg back.
- djfm 10y agoSurely some folks will re-implement it :) I for one am willing to contribute the day wayland becomes too mainstream.
- baldfat 10y agoNot happening according to github repo. https://github.com/xmonad/xmonad/issues/38 https://github.com/xmonad/xmonad/issues/38 "Not happening, because xmonad is too tightly tied to X11. No matter how hard you try, the result would not be compatible with xmonad, its contribs, or any configs. Significant parts of xmonad are also not applicable to Weston because they are no longer part of the window manager component; they were moved to the compositor or application level themes, etc." i3 has sway http://swaywm.org/ http://swaywm.org/ Sway is a drop-in replacement for the i3 window manager, but for Wayland instead of X11. It works with your existing i3 configuration and supports most of i3's features, and a few extras.
- k__ 10y agoIs there a good tiling manager for heavy mouse users? I tried i3 and found the basic concept nice, but it required keyboard shortcuts en masse.
- Veedrac 10y agoI found Awesome slightly more mouse friendly than i3, but I still wouldn't go with it if you're not willing to use the keyboard a lot. I have a friend who used Awesome on a tablet, so it's clearly feasible.
- monsieurbanana 10y agoNow that's something I'd be interesting in seeing, because I can't even imagine how that would work.
- digi_owl 10y agoCan't be that much different from using Windows 10 in tablet mode, or any random Android tablet.
- deleted 10y ago[deleted]
- jpgvm 10y agoXMonad isn't too bad for mouse users but I wouldn't say there are any tiling WM that focus on using the mouse.
- yoodenvranx 10y agoYes, back when I used Xmonad I also used the mouse a lot. You can use Super+Left mouse button to move windows around and Super+Right mouse button to resize windows.
- pjmlp 10y agoOberon OS and its derivatives.
- kasbah 10y agoJekor's videos on the XMonad source code really helped me get into Haskell: https://www.youtube.com/watch?v=63MpfyZUcrU&index=3&list=PLxj9UAX4Em-IBXkvcC3MycLlcxyoi7v8B https://www.youtube.com/watch?v=63MpfyZUcrU&index=3&list=PLx...
- ahstro 10y agoThat looks very interesting. Thank you for sharing!
- Sembiance 10y agoI used XMonad for many, many years. During these years it served me well and I really loved it. However I switched to AwesomeWM about 2 years ago and couldn't be happier. I was able to easily make Awesome behave just like xmonad for parts I cared about, so the transition was pretty painless. Top 3 reasons I switched: 1. Multi monitor support is far better with awesome and it worked perfectly out of the box with my 3 displays. 2. Programs that were a bit glitchy under xmonad had no such glitches under awesome. 3. LUA configuration files make it far easier for me to customize behavior and extended it. With Xmonad's Haskell I always felt like a noob.
- jon-wood 10y agoIn what way is multi monitor support better? In my opinion nothing comes close, I've not used anything else which considers each display an independent workspace and let's you move those workspaces between displays.
- monsieurbanana 10y agoIt's been years since I used AwesomeWM and haven't tried xmonad (yet). But if I remember correctly, those are the exacts features why I liked awesomewm, independent workspaces that you can move between displays.
- dualogy 10y ago> Programs that were a bit glitchy under xmonad had no such glitches under awesome What sorts of programs, what kinds of glitches?
- Symmetry 10y agoFor certain Java apps you have to set an environment variable to tell them that your window manager has a different name for them to run properly. Mostly things based off of old versions of Eclipse.
- Symmetry 10y agoI used to run AwesomeWM and liked it a lot. But I decided I wanted to go back to running a desktop environment and run a tiling WM within one. There are things I miss but I actually like XMonad's approach to multiple displays better.
- megawatthours 10y agoXMonad hits a sweet spot no other window manager does for me: import XMonad.Config.Mate main = xmonad mateConfig and just like that I have XMonad running inside my mate desktop, without the need to manually configure a status bar for volume, wifi, keyboard input language, clock, etc. I don't even use tiling that much as I prefer to have one app per workspace, but just having focus-follows-mouse and the option to tile if I need it is really sweet.
- Symmetry 10y agoI do the same thing with Gnome. There's an Ubuntu PPA at ppa:gekkio/xmonad that takes care of creating a desktop session for me and then it's just a matter of adding the same thing with s/mate/gnome/ and then away I go.
- zem 10y agosame here. it's the only tiling window manager i've found that works well within a desktop environment.
- ekidd 10y agoI'm glad to see a new release of XMonad! Two questions: 1. Is there any way to use XMonad but keep the standard Ubuntu menu bar for access to desktop menus? This used to be possible with older Gnome desktops, but it had gotten increasingly harder in recent years. 2. Does XMonad work well on Retina/HiDPI displays? A year or two ago, it still had lots of rough edges.
- megawatthours 10y agoIt's really easy with Mate or gnome-flashback. sudo apt-get install mate-desktop gets you a really nice desktop, almost identical to Ubuntu pre-Unity. Then you just need to use main = xmonad mateConfig in xmonad.hs and change the window manager using gconf-editor. Unity 3D is a Compiz plugin so you can't use XMonad with it. Gnome 3.8 and later only support gnome-shell as a window manager; it is not possible to integrate xmonad or any other window manager with it
- Symmetry 10y ago1) I don't think it's possible to keep the standard Ubuntu menu but you can use XMonad in other desktop environments like Mate or Gnome. You'll have to do a bit of configuration but it's not bad, see my other comment. 2) I run XMonad in gnome and it mostly works without problem. The only thing I had to change was set my browser launching keybinding to run spawn "google-chrome --force-device-scale-factor=1.4
- davidbanham 10y agoXubuntu + xmonad is a really simple combo. I get xmonad window management with xfce tray, bar, etc.
- wiiittttt 10y agoDoes anyone know of a good tiling WM for Windows?
- sevensor 10y agoWindows 7 has really basic tiling -- super-left and super-right will put windows in a vertical split arrangement. Windows 10 adds another split so you can have four quadrants. Nowhere near i3, but the Windows user experience is forever lagging Linux.
- ufo 10y agoA similar feature can also be found on most regular non-tiling Linux WMs
- NoGravitas 10y agoI can give two options. If you want purely manual tiling, with windows being arranged normally until you tile them, there is WinSplit Revolution (can't find the canonical link right now). It basically does the same thing the tiling keyboard shortcuts in Windows 7+ do, but with more options and granularity. If you want automatic, dwm-style tiling, there is a project called [bug.n][1]. I am currently using it, mainly because besides offering tiling windows, it is also the least-bad way to get multiple workspaces on Windows that I could find. [1]: https://github.com/fuhsjr00/bug.n https://github.com/fuhsjr00/bug.n
- flurdy 10y agoI'm a heavy user of Amethyst, the Xmonad-inspired tiling for OSX/MacOS (https://github.com/ianyh/Amethyst https://github.com/ianyh/Amethyst) on my laptops. And are disappointed when using my Ubuntu desktop of the lack of simple tiling inside Unity. In my ancient fvwm and kde days there were more options. I don't want to change my whole windows manager to Xmonad or i3, as I try to keep my setups fairly vanilla (as I use a lot of different machines/VMs and need a quick setup), but adding an unintrusive simple tiling option would be nice. I have tried X Tile which is ok, but crashes too often and also moves full screened windows from my 2nd monitor onto my main monitor which is annoying.
- jameskegel 10y agoUse xmonad with them. I use Xmonad with XFCE on my office computer.
- samdoshi 10y agoThere is a (recent) video from Ethan Schoonover demonstrating his config. https://www.youtube.com/watch?v=70IxjLEmomg https://www.youtube.com/watch?v=70IxjLEmomg
- archgoon 10y agoAn additional joke, likely unintentional (but who knows), is that the original Monads of Leibniz, were viewed as completely independent, 'windowless', objects that only seemed to interact with one another via God's elaborate choreography, which he termed the 'pre-established harmony' of the universe. https://en.wikipedia.org/wiki/Pre-established_harmony https://en.wikipedia.org/wiki/Pre-established_harmony XMonad of course, has windows. And now for an actually funny joke about Leibniz: http://existentialcomics.com/comic/108 http://existentialcomics.com/comic/108
- abhixec 10y agoXMonad is moving really fast. It was on 0.11 for quiet sometime and now it it 0.13. Love/Miss XMonad, since I use mac work. One of the reason s I want to get a Linux machine for personal use.