Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Fix "Cannot read termcap database;"#215

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Closed
orent wants to merge1 commit intoastral-sh:mainfromorent:patch-1

Conversation

@orent
Copy link

./configure with defaults search path compatible with both FHS and the soon-to-be-deprecated Debian path

https://refspecs.linuxfoundation.org/FHS_3.0/fhs-3.0.html#idm236087499712

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1028202

Copy link
Collaborator

@indygregindygreg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

I support the intent of the change.

But the diff as authored is changing the temporary host build of terminfo, not the final build we actually use.

If you go look later in the file, you'll see that we set the following:

--with-terminfo-dirs=/usr/share/terminfo--with-default-terminfo-dir=/usr/share/terminfo

I think the problem here is that older Debian versions are putting stuff in/lib/terminfo.

Looking at the code in PyOxidizer, I think/etc/terminfo:/lib/terminfo:/usr/share/terminfo might be a reasonably safe default, as that should be compatible with both Debian and RedHat flavored distros.

I'll cherry pick and amend this commit to make the changes.

indygreg added a commit that referenced this pull requestFeb 24, 2024
Before, ncurses on Linux was built to look for the terminfo database ina location that only existed in the build environmentAfter, it looks for the database in `/etc/terminfo`, `/lib/terminfo`,and `/usr/share/terminfo`. These are the directory locations thatwork on a superset of Debian and RedHat. This hopefully means thatterminfo database resolution "just works" in a lot of common Linuxenvironments.As part of this, we add the terminfo database to the ncurses packageartifacts. Then we copy the terminfo database into`install/share/terminfo` in the CPython distribution if a terminfodatabase is present. macOS doesn't distribute a terminfo databasebecause the system terminfo database should be "good enough."Closes#215.
indygreg added a commit that referenced this pull requestFeb 25, 2024
Before, ncurses on Linux was built to look for the terminfo database ina location that only existed in the build environmentAfter, it looks for the database in `/etc/terminfo`, `/lib/terminfo`,and `/usr/share/terminfo`. These are the directory locations thatwork on a superset of Debian and RedHat. This hopefully means thatterminfo database resolution "just works" in a lot of common Linuxenvironments.As part of this, we add the terminfo database to the ncurses packageartifacts. Then we copy the terminfo database into`install/share/terminfo` in the CPython distribution if a terminfodatabase is present. macOS doesn't distribute a terminfo databasebecause the system terminfo database should be "good enough."Closes#215.
indygreg added a commit that referenced this pull requestFeb 25, 2024
Before, ncurses on Linux was built to look for the terminfo database ina location that only existed in the build environmentAfter, it looks for the database in `/etc/terminfo`, `/lib/terminfo`,and `/usr/share/terminfo`. These are the directory locations thatwork on a superset of Debian and RedHat. This hopefully means thatterminfo database resolution "just works" in a lot of common Linuxenvironments.As part of this, we add the terminfo database to the ncurses packageartifacts. Then we copy the terminfo database into`install/share/terminfo` in the CPython distribution if a terminfodatabase is present. macOS doesn't distribute a terminfo databasebecause the system terminfo database should be "good enough."Closes#215.
indygreg added a commit that referenced this pull requestFeb 25, 2024
Before, ncurses on Linux was built to look for the terminfo database ina location that only existed in the build environmentAfter, it looks for the database in `/etc/terminfo`, `/lib/terminfo`,and `/usr/share/terminfo`. These are the directory locations thatwork on a superset of Debian and RedHat. This hopefully means thatterminfo database resolution "just works" in a lot of common Linuxenvironments.As part of this, we add the terminfo database to the ncurses packageartifacts. Then we copy the terminfo database into`install/share/terminfo` in the CPython distribution if a terminfodatabase is present. macOS doesn't distribute a terminfo databasebecause the system terminfo database should be "good enough." Pluswe don't build ncurses on macOS distributions.Closes#215.
@orent
Copy link
Author

RHEL, MacOS, and any other unix descentant other than Debian and its derivatives install terminfo data in /usr/share/terminfo. That is the standard location.

The /etc/terminfo is supposedly for letting administrators locally install a custom termcap entry. This is a truly ancient relic from the time you might have wanted to connect a nonstandard serial terminal to your system that was missing from the terminfo database. I haven't seen it used in 3 decades. In fact, you rarely see any terminal other than xterm these days.

The only purpose served by /etc/termcap is to convince people that setting the default terminfo search path is more complicated than it really is.

geofft added a commit to geofft/python-build-standalone that referenced this pull requestJul 11, 2025
Inastral-sh#215 we started setting the standard terminfo directories by defaultand inastral-sh#421 we taught Tcl to find its own install directory withoutsetting environment variables. Stop setting these environment variablesin tests to more closely match how users will use our builds.
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

@indygregindygregindygreg left review comments

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

2 participants

@orent@indygreg

[8]ページ先頭

©2009-2025 Movatter.jp