tenox7 / ttyplot

a realtime plotting utility for terminal/console with data input from stdin

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

static ttyplot-amd64-linux aborts with error "Error opening terminal: xterm-256color."

emk2203 opened this issue · comments

ttyplot-amd64-linux aborts with "Error opening terminal: xterm-256color."

The system has xterm-256color only at /usr/lib/terminfo/x/xterm-256color (Lubuntu install).

A strings /usr/local/bin/ttyplot | grep terminfo shows that the static binary expects it to be at /etc/terminfo:/lib/terminfo:/usr/share/terminfo or ~/.terminfo.

Workaround is to copy it to one of these locations.

Proposed fix: Please add usr/lib/terminfo to the path where ncurses looks for the terminal definition.

Interesting. I think the only way to permanently solve it, is to link against a custom build of ncurses with added extra data directories (--datadir or --with-terminfo-dirs).

For a workaround I think simpler may be to specify TERMINFO variable setting it to the correct terminfo folder.

Setting TERMINFO does not seem to affect the issue at all, whether through tmux or not, and it does not appear to even be checking those hard-coded locations.
I attempted to both set valid TERMINFO and provide valid files at the sourced locations, even xterm-256color triggers the error.

This appears (?) to be because ncurses assumes TERMINFO is "broken".

From https://invisible-island.net/ncurses/ncurses-slang.html#env_TERMINFO_DIRS :

While slang's configure script has (since 2007) used the --terminfo option of ncurses scripts ncurses5-config or ncursesw5-config to obtain a suitable default for TERMINFO, it still relies upon a hard-coded set of directories rather using the corresponding --terminfo-dirs option to specify additional directories that ncurses's packager may have found necessary.

Been trying to use this for months, but get same error on Debian 10 stable, Sid, MXLinux, Ubuntu 18 and now Ubuntu 20. Any way to resolve this?

Sorry I thought this issue was specific to Lubuntu. I have just tried it on Ubuntu 18, 20 and it works fine. But it doesn't work on Debian. Let me see what can be done about it.

whats the location of terminfo database on kubuntu?

Can you try this build? You need to gzip -d and chmod +x:

ttyplot-linux-test.gz

I have abandoned Lubuntu, but on Kubuntu 21.04 (dev version), it works as expected. terminfo database is at /etc/terminfo and /usr/lib/terminfo, by the way.

Just in case you didn't see the delete and edit of previous post via email I'll send another reply.

ttyplot-linux-test is working. I had a conflict with the older version I tried 2 days ago when did previous post, but it's working on Kubuntu 20.10 now.

okay I will make a release with this, thanks for testing!

I have updated the release with static build, can you please test again? thanks a lot

Actually if you could test the binary from 1.4 release would be even better:

https://github.com/tenox7/ttyplot/releases/download/1.4/ttyplot-amd64-linux

Thanks a lot for testing! In this case lets close the bug. Please feel free to re-open if needed.

Kubuntu 21.04 also OK here.

again thanks a lot for all the testing and reporting the issue :)