A(nother) Minimalist Window Manager

For however many Linux distributions there are to choose from, there are perhaps even more window managers that can be paired with them, and some have dramatically different features than the X window systems that most of us are familiar with. There’s a rabbit hole to fall down, as with most Linux-related topics, but while this tiling window manager from [caoluin], called sara, adds to the cacophony, it’s also representative of any pet project that lets us take a deep dive into something personally interesting.

What started as a desire to revive an abandoned window manager called catwm eventually evolved into a fork of sorts of another popular window manager called dwm. dwm is used as a basis or as building blocks for many other window managers, and while [caoluin] was writing sara he found that many of the solutions he found converged on the same things that dwm had already implemented. In a way, it’s reassuring if your solutions are similar to tried-and-true methods already in use. For other things he found interesting solutions, and other features that dwm has he found to be unnecessary and removed them.

Does the world need another window manager? Probably not. But we can all appreciate building something from scratch, just to see how it really works under the hood. As far as that goes, we’d consider sara a success for [caoluin], and if you’re really interested in window managers then you can take a look at his Github page or one of the more esoteric window managers we’ve seen.

31 thoughts on “A(nother) Minimalist Window Manager

    1. There are people that argue Apple has one… some say Microsoft has one. A few wierdos argue IBM had one in the mid 90s. There are die-hards out there that believe SGI had it with 4dwm.

      The concept of a “window manager” is really getting back to the Unix philosophy: do one thing and one thing well.

      So even big “desktop environments”, fundamentally are built on a simpler window manager:
      – Gnome 1 used to use Enlightenment (but could use others)
      – Gnome 2 used Metacity IIRC?
      – KDE has kwm
      – XFCE has xfwm
      – fvwm-crystal uses fvwm
      – lxde uses OpenBox

      XFCE seems to feel a lot like CDE (which I’ve used in SunOS/Solaris). MacOS X is basically evolved from NeXT… which today AfterSTEP would be the closest match to that classical platform.

      There’s a big proportion of people that have never used anything beyond the major players, and so that distorts the view of what is “better” or “popular”. I for one don’t think there’ll ever be a “universal” window manager, any more than there’ll be one “universal” model of computer, or a “universal” personal vehicle (be it a car, bike, truck, whatever).

      We’re individuals, and our choices in desktop environment reflect this.

        1. Because I’m not that familiar with Gnome 3… having not really used it much, thus not so familiar with how it’s constructed.

          Gnome really never grabbed me as a desktop environment, other desktop environments like it (Mate, Unity) don’t really woo me either.

        1. Yes, it does. There is one binary for the PID 0, and several other binaries for each other functionality.

          Systemd is no more a project for replacing init, but an umbrella name for several projects. You should compare it to “GNU”, which comprises a lot of binaries like bash, rm, ls, tar…

          1. I’d argue the philosophy is incomplete, which is why many unix utilities don’t follow.

            Plus the philosophy us geared towards “composable development” – ie cmd utilities: should it equally apply to system functionality such as init/services? Should it apply to the kernel?

      1. KDE is not a desktop environment anymore. It has been split to kde-libs (which are being used in many non-kde apps like smplayer), kde-apps and Plasma desktop environment. They all have separate lifecycle.
        And the Plasma DE does not use kwm, rather it uses kwin which has been completely refactored recently AFAIK.

        1. I understood Plasma was the current incarnation of the KDE desktop… as the project name stands for “K desktop environment”.

          I might’ve mis-remembered the window manager name; kwin does ring a bell. Haven’t used KDE itself since early 4.0 days… it started getting too heavy for the machines I was using at the time.

          Still use the applications from KDE though, as they work fine for what I’m after and seem to get on better than anything GTK+ based.

      2. Commodore had Intuition. That should have ended the whole windows manager war at once. But no. Manufacturers thought they could do better, and thought that more features were necessary. So now we are left with the ruins.


      3. GNOME used Sawfish for some time, before the “users must get no choices” crusade began.

        There is also WindowMaker for the NeXT look, GNUStep for the code part, with Étoilé as DE.

        I wonder why other people below say they miss this or that, instead of just using it. You do not like bash? Fine, use zsh, ksh… whatever. Same for DE, WM, music player, etc. At least until corporations manage to impose their candidates and create a monoculture. They are trying, hard. Just look how some projects don’t like to play nice with others at all, instead asking the rest to adapt to their will: seductive or forced to get in, but hard or impossible to get out. That is no FOSS spirit, but vendor lock-in. Following the imposed ones only will make their position stronger.

  1. Make Sawfish great again!
    It currently coughs a bit… but I’m ommmptimistic that it will recover.
    Someday I’ll be brave enough for EXWM!
    … but as intermediate step I’ll ditch all desktops and switch to Sawfish.

  2. You’re globbing The X Window System together with window managers. The X Window System (usually referred to as X11, to avoid unfortunate confusion with another software package with “window” in its name) is the low-level system that handles sharing a display, keyboard, pointing device, and other shared resources, between independent applications. A window manager is a separate tool that runs under the X Window System, that makes it easier to manipulate multiple X11 windows on a desktop, along with fun things like system menus, icons for starting applications, and other stuff like that.

    If you’re looking at alternatives to X11, you might want to look at Wayland.

    1. Way back in the 90s when as a Windows use I first started dabbling with Linux what was the coolest thing?

      Every program could be easily remote displayed. Or the whole desktop could. Switching to Linux was such a move forward. Why move back?

      Wayland breaks that taking the Linux desktop back to where Windows last was with Millennium Edition.

      Yeah yeah, I know. Remote display can be implemented in the compositor. Which is basically part of the desktop environment So sure, the big guys like Gnome and KDE will probably have remote display. But each will do it in a different way requiring a different client. And when trying some random less mainstream desktop no doubt it will be missing that feature.

      It seems a new generation has taken over Linux desktop environment and they want to relive our past.

    1. I did try it for a few weeks… found the tiling nature of it *too* rigid for my liking.

      I found I could set up FVWM to do manual tiling of windows, and that so far has done the job for me nicely.

    1. I tried them back in the day, but I only had an old Thinkpad at the time. It was amazing what a minimal linux would allow me to do with a machine with a 233MHz Pentium 2 and 96MB of RAM in the era of the multi-GHz multi-GB machines. I ended up using Evilwm with many keyboard shortcuts and focus following the mouse (trackpoint).

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.