Hacker News new | ask | show | jobs
by dgnemo 3 hours ago
can you share more on the tmux model vs boo?
2 comments

Tmux is n clients to 1 server.

Screen is 1 server to 1 client.

In screen each client session is a fork of the screen server. In tmux there's one server and many client forks iirc.

this is incorrect. you can have multiple clients using screen -x instead of screen -a
I didn't say you couldn't have multiple clients, I said clients and servers are the same process forked. Or did someone add distinct client/server support to screen finally? I know theres a lot of stuff bolted onto screen over the years but I wasn't aware they dropped forked servers for the tmux model...
Did a bit of digging; the first client gets forked to create the "server". The forked server then detaches and runs in the background. You're right that -x creates an entirely new, separate client process, unrelated to the OG client or the forked server.

Without -x though it works as originally described.

Edit: gnu screen 1.0 was originally released in 1987. The -x flag was released in screen 3.0 in the 90s. TIL

I want boo to be a screen replacement, not a tmux replacement. tmux gives you a whole workspace: layout, scrollback, copy mode, a status bar. screen's appeal was that it did almost none of that: sessions, a prefix key, done. boo keeps that model and swaps the emulation for libghostty so reattach actually redraws correctly.

They also compose: a boo session is just a PTY running a program, so you can run tmux inside one if you want.

Can you please not post AI-generated or AI-edited comments to HN? It's not allowed here - see https://news.ycombinator.com/newsguidelines.html#generated and https://news.ycombinator.com/item?id=47340079.

Of course, it's impossible to know for sure what was LLM processed or not, but some of your posts (like this one) are getting classified that way.

Apologies, half of this indeed was. As I was iterating on the README this seemed apt, but I will refrain!