With pinentry-curses the passphrase prompt needs a terminal, so a
signed commit made from an editor or any tool without one fails with
"gpg: signing failed: No such file or directory". pinentry-gnome3
asks in a GNOME dialog instead (and still falls back to curses
without a display).
Assisted-by: Claude:opus-5
meta_wayland_touch_cancel() clears focus_surface on active touches
but keeps their serials until the finger lifts. A client asking for
a move/resize grab with such a serial (anotherim-js's resize edges
by touch) makes touch_can_grab_surface() dereference NULL and takes
down gnome-shell (four crashes on 2026-10-13, same address).
Carry a one-line NULL check until nixpkgs' mutter has a fix; it is
not upstream as of mutter 50.2 / main.
Assisted-by: Claude:opus-5
gnome-shell keeps segfaulting in libmutter, and with the PAM core
limit at 0 systemd-coredump threw every dump away, so there was no
backtrace to work from. Raise the limit to unlimited; dumps land
root-owned in /var/lib/systemd/coredump, readable only by their
owner. Enable nixseparatedebuginfod2 so gdb/coredumpctl can fetch
symbols for store paths on demand.
The user manager inherits the limit at its first login, so it takes
a reboot (or a full logout) to apply.
Assisted-by: Claude:opus-5
Add modules/hostel-wifi.nix: per-SSID MAC randomization (iwd), disable
mDNS/LLMNR/NetBIOS, reject hostile IPv6 RAs, firewall LAN-side probing,
an nftables killswitch target allowing only tunnel egress + captive-portal
endpoints, NTS-secured time via chrony, and a captive-portal helper.
Import left commented out; toggle via 'untrusted on|off'.
acpi.ec_no_wakeup=1 stops EC interrupts from thrashing s2idle, and a
dconf system-db override disables gsd-power's sleep handlers so logind
owns all sleep/idle policy (gsd was re-waking before HibernateDelaySec).
Split lid/suspend policy by power source (s-t-h on battery, plain suspend
on AC), map power key to hibernate, drop HibernateDelaySec to 15min while
re-validating thermals, and disable USB-device wakeup via udev.
Add opensc (PKCS#11) and pcsc-tools, enable pcscd, and add a udev rule
granting access to the built-in reader (2ce3:9563), which the shipped
CCID rules miss (pcscd hit LIBUSB_ERROR_ACCESS). Configure Firefox to
load the OpenSC PKCS#11 module for TLS client-cert auth and force-install
the Web eID extension.
Add nix-flatpak flake input and modules/gaming.nix managing Flatpak
remotes/packages declaratively: Bolt (Jagex launcher for RS3/OSRS) and
Sober (Roblox). Add Heroic and hyperplay-ext, plus Proton-GE for Steam.
Drops the old imperative runescape-launcher.