DEB declares only libc6: the desktop binary needs the X11/GL runtime stack

Aperta
#39 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
73/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
debian, linux, rust
Ambito
devops, release

Direzione di ricerca

Start by checking the shared libraries resolved by the desktop binary with objdump -T or ldd on a Debian 12 build. Use those results to update the runtime dependencies in packaging/deb/control, then extend the install smoke in .github/workflows/release.yml to run ldd on the desktop binary in a clean Debian 12 container. It is done when the package declares the required runtime packages and that check resolves all libraries.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug release

Found while fixing the glibc floor (issue #38): the DEB's Depends line names libc6 and nothing else, but usr/bin/firecraft is an eframe/egui desktop binary and links against the X11/GL/windowing stack as well.

Consequence on a clean system: the package installs cleanly (the dependency check passes) and the CLI runs, but the desktop binary fails to start with a loader error naming a missing libGL.so.1 / libX11.so.6 — a second instance of the same class of defect the glibc floor was: the package metadata does not describe what the payload actually needs.

Scope of the fix (not yet started):

  • Enumerate the shared libraries the desktop binary actually resolves (objdump -T / ldd on a Debian 12 build).
  • Declare the runtime packages that provide them in packaging/deb/control (libgl1, libx11-6, libxkbcommon0, and whatever else the measurement shows).
  • Extend the install smoke in .github/workflows/release.yml to launch the desktop binary's dependency resolution (ldd) on the clean Debian 12 container, not only the CLI round trip.

Note the two are different failure shapes: the glibc floor is about symbol versions inside libc6, this is about whole libraries that are not installed at all.

Tracking: the same release campaign work package (RP-07 / P2.3). Related: #38.

Lingua principale
Rust
Stelle
11
Fork
1
Merge medio
9h 48m
PR unite (30g)
13

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di aliasfoxkde/FireCraft

Tutte le issue di aliasfoxkde/FireCraft

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.