Skip to content

Conversation

@dramforever
Copy link
Contributor

@dramforever dramforever commented Dec 16, 2025

QEMU doesn't yet implement termios 2 (TCGETS2 etc), but glibc 2.42+ require on archs that have it for various terminal operations like isatty(). This causes, for example, programs like bash to mistakenly run in non-interactive mode.

Apply patch series for this from the mailing list.

Patch series was tested by @Icenowy (thank you), including various cursed combinations like ppc64le host + riscv64 guest.

Known issue: Setting non-standard baud rates on ppc guest and non-ppc host doesn't work. It didn't work before anyway and it's a rather minor problem compared to isatty() being broken.

Things done

  • Built on platform:
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • Tested, as applicable:
  • Ran nixpkgs-review on this PR. See nixpkgs-review usage.
  • Tested basic functionality of all binary files, usually in ./result/bin/.
  • Nixpkgs Release Notes
    • Package update: when the change is major or breaking.
  • NixOS Release Notes
    • Module addition: when adding a new NixOS module.
    • Module update: when the change is significant.
  • Fits CONTRIBUTING.md, pkgs/README.md, maintainers/README.md and other READMEs.

Add a 👍 reaction to pull requests you find important.

@dramforever dramforever mentioned this pull request Dec 16, 2025
17 tasks
@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-nixos-tests This PR causes rebuilds for all NixOS tests and should normally target the staging branches. labels Dec 16, 2025
@dramforever dramforever marked this pull request as ready for review December 16, 2025 12:57
@alyssais
Copy link
Member

I am nervous about applying patches before they have been accepted upstream, because that can mean we never get rid of them. Do we know why these have not progressed further?

@dramforever dramforever marked this pull request as draft December 30, 2025 15:52
@dramforever
Copy link
Contributor Author

Marking back as draft as it's not really that urgent. We'll see.

@dramforever
Copy link
Contributor Author

Someone from Gentoo actually bothered to send the entire series to the mailing list, properly, so we now have nice links to fetch patches from. Nice.

For patches with hash changes I've manually confirmed that there are only line number changes. fetchpatch my beloved.

QEMU doesn't yet implement termios 2 (TCGETS2 etc), but glibc 2.42+
require on archs that have it for various terminal operations like
isatty(). This causes, for example, programs like bash to mistakenly run
in non-interactive mode.

Apply patch series for this from the mailing list.
@Ma27
Copy link
Member

Ma27 commented Jan 6, 2026

I am nervous about applying patches before they have been accepted upstream, because that can mean we never get rid of them. Do we know why these have not progressed further?

Hmm, does this apply here though?
This is merely a compat fix that will have to happen upstream sooner or later as well given the rollout of glibc 2.42.

@fabianhjr
Copy link
Member

Seems like upstream does have a tracking isssue were @dramforever already bumped/asked about upstreaming: https://gitlab.com/qemu-project/qemu/-/issues/3065

Patchset has already been sent via the indicated channel: https://mail.gnu.org/archive/html/qemu-devel/2026-01/msg00129.html

@alyssais
Copy link
Member

alyssais commented Jan 7, 2026

This is merely a compat fix that will have to happen upstream sooner or later as well given the rollout of glibc 2.42.

One would hope so, but without somebody actively driving that to happen upstream (which seemed to be the case here), there's no guarantee of that.

With it having now been submitted upstream properly it's probably reached the usual standards though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. 10.rebuild-nixos-tests This PR causes rebuilds for all NixOS tests and should normally target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants