lthms' avatar, a hand drawing looking person, wearing a headset, close to a window on a raining night
Thomas Letan
lthms · he/him

Did you come across something which caught your attention? Don’t hesitate to shoot me an email in my public inbox.

 Published on

Spatial Shell 6th Release Might Be the Charm

After a first call for testers that could have been more effective if only the building instructions listed in the README were correct , I am quite happy to announce the 6th release for Spatial Shell that, I believe, is pretty usable for someone who isn’t me.

What’s Spatial Shell Already?

In a nutshell, Spatial Shell implements a spatial model inspired by Material Shell  for i3 and sway. Windows are organized in a grid whose rows are your workspace, and you can navigate this grid (by focusing neighbors windows), move the focused window around, decide how many window you want to see at most in every workspace, etc.

When I first discovered Material Shell in August 2022, I was pretty excited, but the fact that it is a GNOME extension prevented me from switching completely (besides, it was pretty unstable on my laptop for reasons. So when I discovered that Sway (my personal favorite window manager) could be controlled by a third-party program through a Unix socket , I started experimenting. It didn’t take long before I had a working prototype that fit most of my need , but it took a significant amount of time to turn this prototype into something really usable by anyone who isn’t me.

Here is a clunky showcase of what Spatial Shell can doYes, Scott Pilgrim Takes Off is an awesome show that you definitely need to watch. .

For the interested viewers, I am using a forked version of sway called SwayFX  to get these rounded corners and the dim effects on unfocused windows. The status bar is Waybar with a config you can try yourself if you are interested ! There is also a minimal i3blocks config  available if you cannot use WaybarI fully intend to provide an example config as visually pleasing as the one for Waybar, but compatible with i3. .

To be clear, the UI part of Spatial Shell remains lacking to this day. My Waybar configuration works, but is pretty verbose and statically limited. For instance, it will only display the 8th first windows of a workspace. This is because Waybar does not allow one widget to generate multiple blocks. The same goes for the i3blocks configuration example. Also, they assume the availability of a font with iconsOn that matter, I love the Nerd Fonts  project. .

Try It Yourself!

As of today, you can install Spatial Shell using the following methods:

The README  should be a good starting point. If it is lacking key pieces of information, do not hesitate to open an issue. At this point, I am willing to deal with documentation issue as bugs.

Besides its README, Spatial Shell is documented via manpages. For a list of available manpages, you can refer to man -k spatial. Spatial Shell definitely works with sway, and should work with i3 since the former is basically a drop-in replacement for the latter.

Conclusion

The journey from the initial idea up to this moment has definitely been an interesting one. At this point, Spatial Shell provides every feature I need. That being said, it does not mean there is nothing more to tell! I certainly hope this project will catch the eyes of some of you, and soon be used on computers I do not own by folks who are not me.

Contributions are obviously welcome! Typically, if you happen to piece together a neat status bar configuration, I am very interested.