Skip to main content

max / alloy

stack: drop zellij The stack already assigns tabs, splits and panes to sway, in two places: rio's config ("No multiplexing, Sway owns tiling") and STACK.md's terminal section ("A terminal that also tiles is duplicated budget"). zellij is the same feature a third time, inside the terminal, and it shipped with no config of its own. Removed from the package list, from the sway bind that launched it, and from CONSOLE.md's description of where users live. Nothing depended on it: nushell, starship and zoxide were verified running together inside a zellij pane before this, and they do not reference it.
Author: Max Johnson <me@maxj.phd> · 2026-07-21 23:18 UTC
Signed with PGP, not checked
Commit: 245f1bd321d59cc427faf3533baf9d4d7ab885dd
Parent: a7e070e
3 files changed, +5 insertions, -6 deletions
M Containerfile +1 -2
@@ -171,9 +171,8 @@
171 171 mako \
172 172 satty \
173 173 swww \
174 - # Terminal, multiplexer, editor, shell, prompt
174 + # Terminal, editor, shell, prompt
175 175 rio \
176 - zellij \
177 176 helix \
178 177 nushell \
179 178 starship \
M docs/CONSOLE.md +1 -1
@@ -167,7 +167,7 @@
167 167
168 168 ## Non-goals
169 169
170 - - **Not a shell replacement.** Users still live in rio + zellij/tmux + helix. The console is invoked for specific tasks, then closed.
170 + - **Not a shell replacement.** Users still live in rio + nu + helix. The console is invoked for specific tasks, then closed.
171 171 - **Not a systemd control panel.** `systemctl` is fine. If a common systemd operation shows up in daily use, add a subcommand; don't build a general systemd UI.
172 172 - **Not a launcher.** Launching is the shell (terminal-driven); there is no graphical launcher. The console is invoked by name, not discovered via search.
173 173 - **Not a store.** The console never browses or searches a catalog. `alloy pkg` shows what is installed, where it lives, and what each surface costs; it does not help you find software you have not named. This non-goal read "not a package manager" until 2026-07-19, which scoped out the wrong half. Browsing is what the line was protecting against. Explaining where a package belongs is MANIFESTO principle 6, and the two are separable.
@@ -102,9 +102,9 @@
102 102 # Binds — session
103 103 # -------------------------------------------------------------------
104 104 bindsym $mod+Return exec $term
105 - # Multiplexed terminal. zellij is not a Wayland client; it runs inside
106 - # $term, so this is the emulator with the multiplexer as its command.
107 - bindsym $mod+Shift+Return exec $term -e zellij
105 + # No multiplexer bind. Tabs, splits and panes are sway's job, and a
106 + # multiplexer inside a tiling compositor is the same feature twice; see
107 + # docs/STACK.md#terminal.
108 108 # Launcher removed with anyrun. Bind a TUI launcher here when chosen,
109 109 # e.g. bindsym $mod+d exec $term -e <picker>
110 110 # bindsym $mod+d exec ...