debuginfod server
Related issue: Provide debuginfod server
Most of the debuginfod work is implemented. See debian:debug-symbols, debian:suite, debian:archive, Sbuild, package_publish, Package repositories, and Use Debusine archives as a debuginfod source.
This blueprint retains only remaining design that is not implemented yet.
Archive option to control debug-symbol builds
The debian:archive collection should expose a per-archive
configuration option (similar to Launchpad’s build_debug_symbols,
default true) controlling whether debug symbols are extracted for that
archive. When disabled, DEB_BUILD_OPTIONS=noautodbgsym should be passed
to sbuild to suppress -dbgsym package generation entirely.
Until this exists, extraction always runs when a -dbgsym package is
present in the build output.
Possible future work
These items were explicitly out of scope for the initial implementation and remain unimplemented:
Source file serving (
/buildid/<id>/source): the debuginfod(8) man page notes that, due to Debian and Ubuntu packaging policies, debuginfod often cannot resolve source files for.deband.ddebpackages. debuginfod.debian.net has the same limitation.Executable serving (
/buildid/<id>/executable): debian:binary-package stores the whole.debas a single file rather than broken-out binaries.DWZ supplement ingestion:
-dbgsympackages built with DWZ compression ship a shared supplement under/usr/lib/debug/.dwz/. Until those are ingested, requests for the supplement’s build-ID return404; debugging still works, but DWZ-using debug info may lack the alternate strings table.Metrics (
/metrics), metadata search (/metadata), IMA signatures, and upstream federation to servers such asdebuginfod.debian.net.