Skip to content(if available)orjump to list(if available)

Exwm: Emacs X Window Manager

Exwm: Emacs X Window Manager

35 comments

·April 13, 2025

aradox66

I had a fun fling with EXWM, but having your window manager sharing its single-thread with emacs just doesn't really make any sense.

aradox66

If it seems interesting to you or you're experimenting with keyboard-driven tiling WMs, though, I would highly recommend this particular fling.

dargscisyhp

Been using it for a couple of years, and in practice it does not cause me much trouble, at least not for me.

Dibby053

Can you share more about your particular setup? I use a pretty vanilla setup of Doom emacs on Linux, and while I really wish to give exwm a try my experience with emacs has been too unstable so far. E.g. it sometimes crashes when it gets an I/O error trying to write a file (which happens when a USB drive is removed by accident). A more common annoyance is the entire program freezing while waiting for plugins that should be asynchronous, like Tramp or some LSP servers.

quotemstr

Single-threaded? Not anymore!

bitwize

The commonly accepted solution, if this is an issue for you, is to run two instances of Emacs: one to edit in, and one to run EXWM. The days of "Eight Megs And Constantly Swapping" are well behind us; one can easily afford to run two (or many more) emacsen. And it can't be that much more bloated than, say, kwin...

hermitsings

I created this custom keymap that goes well with EXWM: https://codeberg.org/hermitsings/Kmonad_ISO_keymap_for_minim...

This is to reduce lateral wrist movement (to protect from Carpal Tunnel) and general finger movement. Just posting here if folks wanna check it out.

yjftsjthsd-h

Is there a visualization of the layout somewhere?

hermitsings

Yup, the files in the repo--the layout is in there.

It's currently for ISO keyboards (I have ISO), but you can modify it for ANSI!

BobbyTables2

I’m surprised there aren’t Emacs packages for the X server itself and a bootloader…

hulitu

Emacs hasn't evolved. The browser took further the idea of Emacs becoming the OS.

jmclnx

I played with this decades ago (maybe another Emacs based WM?). It was fun for a while but I moved on. I thought it was abandoned.

I will need to give it another go and glad to see it back among the living :)

zhengyi13

The other emacs-based WM I'm aware of is stumpwm: https://github.com/stumpwm/stumpwm

kqr

...which is not Emacs based but written in Common Lisp. It is equally hackable, though.

penguin_booze

I wished PuTTY offered some kind of tiling window manager for my SSH sessions. Does anyone know something of that sort?

Shared404

For sessions on the same target host you could use tmux.

looofooo0

You can ssh from emacs.

GuinansEyebrows

PuTTY, probably not. But if you're using Windows, the built-in Terminal supposedly supports panes: https://learn.microsoft.com/en-us/windows/terminal/panes

Combine that with the built-in ssh client, that might be good enough for you. Personally, I have to run Windows at work but I'm allowed a local linux VM, so I run that headless, ssh into it, and run tmux for pane/window support.

null

[deleted]

SuperNinKenDo

Really enjoyed my time using EXWM. Had to move to Wayland for a number of reasons, and really miss it. KDE Plasma has been fantastic, but I do miss the integrated scripting environment. Ironically I now use a heavily frames-based Emacs set up, and eschew most of Emacs internal window management capabilities.

spudlyo

Pfft, I'll be impressed when Emacs runs as pid 1, has an inittab.el, mounts filesystems, sets up swap, starts daemons, launches X, reaps zombines, and deals with shutdown. I'm sort of surprised nobody's done that yet.

rahen

Try Guix System. The entire system, including PID 1, is configured in Scheme (Guile) and has a very nice Emacs-like hackability.

Y_Y

That's old news: https://web.archive.org/web/20190118221826/https://www.infor...

Fwiw I use EXWM in Guix and only interact with the computer through emacs (though I do need to use terminal and eshell).

spudlyo

Handling SIGCHLD and doing the right thing is table-stakes for a functioning init, IMHO. This isn't that.

codr7

Sounds like SystemD to me, all it's missing is a good editor.

hulitu

> Sounds like SystemD to me, all it's missing is a good editor.

Please, don't give Poettering ideas. He has enough, already. /s

quotemstr

I seriously considered making Emacs a wlroots compositor last time I had a chunk of free time.

djaouen

I hesitated to post here (because it seems like I have been flagged as only posting on troll topics), but decided to anyway because I don't want anyone else to know about this overpowered setup!

Alive-in-2025

What does this mean, especially in reference to this story

djaouen

Basically, whenever I post to a thread, that thread gets buried by HN's algorithm. Thus, the intention of me posting means that I can keep Guix and EXWM under wraps and all to myself. Edit: Forgot to add: MUAHAHAHAHAHA

Edit 2: Pikachu uses GROWL. It's ULTRA EFFECTIVE!

hsbauauvhabzb

I’m going to guess that a lot of your posts are of similarly low quality.