Live data from Hacker News

Show HN: Shpool, a Lightweight Tmux Alternative

github.com

111–120 of 201 posts

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#111

Earlier quoted context omitted.

You definitely don't need the in-memory terminal emulator to handle resizes or allow attaching with multiple local terminal emulators, since dtach does both and does not have an in-memory terminal emulator. > I'm actually confused about why they'd go to the effort of implementing a VT100 emulator, write the code to redraw the screen from it Well, we kinda cheated here. shpool_vt100 is just the already existing vt100…

I’m not sure what the popular use case is for multiple connections to one multiplexer. But, two (niche seeming) ones could be: if you have a desktop, you want to be able to SSH to it and use it locally at the same time. Or, if you have two people ssh-ing to one system, and letting them share a terminal might be nice (although in that case it would really be nice to give them independent cursors, which starts to becom…

Or one person ssh'ing to the same remote from two or more devices. If I don't feel like sitting in the office (desktop) and grab the laptop and go to the sitting room or back deck I can continue my session without issue, and then transition back later. I don't want to have to disconnect/detach a session when I do this, I want it to be seamless so both connections (actually three typically, an iPad as well) are running continuously.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#112

Earlier quoted context omitted.

You definitely don't need the in-memory terminal emulator to handle resizes or allow attaching with multiple local terminal emulators, since dtach does both and does not have an in-memory terminal emulator. > I'm actually confused about why they'd go to the effort of implementing a VT100 emulator, write the code to redraw the screen from it Well, we kinda cheated here. shpool_vt100 is just the already existing vt100…

I’m not sure what the popular use case is for multiple connections to one multiplexer. But, two (niche seeming) ones could be: if you have a desktop, you want to be able to SSH to it and use it locally at the same time. Or, if you have two people ssh-ing to one system, and letting them share a terminal might be nice (although in that case it would really be nice to give them independent cursors, which starts to becom…

I usually have a drop down terminal that I use the most, then a full screen window on some other space. I can switch between them quickly and connect to any of my sessions from either.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#113

A lightweight tmux alternative? Tmux is already an incredibly lightweight C program in terms of binary size and resource usage.

Yeah that's a good point, "lightweight" was probably not the best term. I meant lightweight in terms of the cognitive overhead of picking up a new tool, not really in terms of performance. I would expect that shpool will perform better on some workloads and tmux will perform better on others (though in both cases they are probably good enough). The main difference is that tmux is a power user tool that you generally…

Does this mean you don't plan on taking any ideas from screen/tmux and implementing them in your tool?

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#114

Years ago I had a boss who gave me a hard time for how much resources tmux was using on linux and said that it performed fine where it's developed natively (openbsd) but something in it was making it eat resources compared to screen on constrained linux systems. I wonder if this is still the case?

If he was an OpenBSD fan he might have been overly anti-Linux.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#115
post #96
post #92

I used to use tmux, but then switched completely jupyter terminals. my browser is my terminal now, and I can easily upload/download files via browser (dont type SCP anymore) with a mouse click, open terminal windows, open Python notebook and do stuff. life has never been easier after I completely switched to jupyter notebooks+terminals plus, because it is browser based, I can roam from multiple devices.

Doesn't the notebook store outputs locally? Wouldn't it get out of sync when changing device? Also cells can be out of order and overwritten and such. Seems like a questionable fit.

I use remote notebook and just connect to it.

The key to out of order problem is simple: once a piece of code works - save it in .py module and import it. Very little discipline is required to achieve significant productivity gain.

That way notebook is always clean and tidy and always resembles a “pseudo code”, with implementation detail hidden in modules (that were tested and are working).

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#116
post #46

This is awesome! I hate the way tmux hijacks so much of my terminal's behavior (scrollback, seaching with escape-/, etc.) and I've been looking for something like this that will manage persistent sessions without any extra nonsense. BTW I think your readme shouldn't just characterize it as a resumeable ssh tool. I often need to start a long running process that I want to reconnect to later, or I want to put some alwa…

I once had a VPN utility that HAD to be closed with a Keyboard Interrupt in order for it to shut-off properly, so my systemd setup for it didn’t work. I ended up making bash aliases for tmux commands to run it and send the keyboard interrupt signal into it to stop it. I’m sure there was a way to do this with systemd, but tmux was easy, if a bit jank.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#117
post #96

Earlier quoted context omitted.

Doesn't the notebook store outputs locally? Wouldn't it get out of sync when changing device? Also cells can be out of order and overwritten and such. Seems like a questionable fit.

I use remote notebook and just connect to it. The key to out of order problem is simple: once a piece of code works - save it in .py module and import it. Very little discipline is required to achieve significant productivity gain. That way notebook is always clean and tidy and always resembles a “pseudo code”, with implementation detail hidden in modules (that were tested and are working).

You were talking about replacing the terminal with notebooks, I assumed you meant for terminal tasks.

If you are using notebooks for notebook coding tasks then fine but what does that have to do with tmux?

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#118
For me tmux is everything. But I have been looking for 2 utilities they may not exist.

- tty keystroke router: A program that lets you send keystrokes to different tty's (ideally tmux sessions) but not taking over the actual terminal (so sort of a background application , a daemon that listen to a certain key bind and upon pressing it will route all the keypresses to a certain tty/tmux session.

- tty screen real estate extender: Basically be able to link one tty (tmux-window) (attach to it) from two different terminals. These two terminals one of them will be displaying the first N columns second terminal attached will be displaying from N till width of the tty (so you can hook up two monitors and widden your ttys)

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#119
post #81
post #70

Earlier quoted context omitted.

There's a "debian" folder, I suspect it's trivial to build a Deb and manually install? Seems to have pretty modest install dependencies? https://github.com/shell-pool/shpool/blob/master/debian/cont...

I had to do this: git clone https://github.com/shell-pool/shpool.git cd shpool sudo apt install libpam0g-dev # you may need to install build-essential and other packages too as the # build-depends field in debian/control is incomplete dpkg-buildpackage -b sudo apt install ../shpool_0.6.2_amd64.deb systemctl --user enable shpool systemctl --user start shpool

And the most demanding part of that listing can be done on a build machine.

This benefit of compiled languages is often overlooked by folks who are (mostly/only) familiar with dynamic languages like PHP, Python or Js/Ts

Post reply on HN