#1148483 aptitude: Exit after 'Building view' "Uncaught exception: Unable to read from stdin: Invalid argument" in testing on arm64

Package:
aptitude
Source:
aptitude
Description:
terminal-based package manager
Submitter:
Derek Dongray
Date:
2026-09-19 23:25:02 UTC
Severity:
normal
#1148483#5
Date:
2026-09-19 23:22:14 UTC
From:
To:
Dear Maintainer,

Package: aptitude
Version: 0.8.13-7

System:
- Raspberry Pi arm64
- Linux 6.18.39+rpt-rpi-v8
- glibc 2.43
- ncurses 6.6

The aptitude curses interface exits immediately with:

Uncaught exception: Unable to read from stdin: Invalid argument

The failure is reproducible from:
- SSH sessions
- PuTTY
- Console terminal /dev/tty1
- script(1)

Non-interactive aptitude commands work:

aptitude search '~i'
aptitude update

The interface starts, builds the package view and displays package groups, then exits.

GDB catchpoint on the final exception shows:

cwidget::toplevel::input_thread::fatal_input_error::dispatch()
cwidget::toplevel::mainloop()

Relevant debugging performed:
- Tested aptitude 0.8.13-8.1 and 0.8.13-7
- Tested libcwidget4 0.5.18-6+b3 and 0.5.18-6+b2
- Tested apt/libapt-pkg 3.3.3 and 3.0.3
- Tested TERM=putty, xterm and vt100
- Tested via SSH and script(1)
- Python curses applications work correctly

strace of input operations shows repeated:

ppoll([{fd=0, events=POLLIN}], ...) = 0

and no failing read(), poll(), or ioctl() returning EINVAL was observed.

I also tried a fresh install of the current Debian image (trixie)

1. Copy Pi image (trixie) to SD, boot and login
2. Install aptitude
3. Check it works
4. Change all references from trixie to testing in /etc/apt/sources.list.d/debian.sources so it's using the testing repository
5. sudo apt update
6. Update aptitude from 0.8.13-7 to 0.8.13-8.1 which is the current version in testing (sudo apt install aptitude=0.8.13-8.1)
7. Check aptitude still works
8. Update libc6 from 2.41-12+rpt1+deb13u4 to 2.43-5, current version in testing (sudo apt install libc6=2.43-5)
9. aptitude is now broken and fails as above.