Hi there. Long time no write!
This last Tuesday, February 23, 2021, I made an announcement at
debian-devel-announce
about a new service that I configured for Debian: a debuginfod
server.
This post serves two purposed: pay the promise I made to Jonathan
Carter that I would write a blog post
about the service, and go into a bit more detail about it.
What’s debuginfod?
From the announcement above:
debuginfod is a new-ish project whose purpose is to serve
ELF/DWARF/source-code information over HTTP. It is developed under the
elfutils umbrella. You can find more information about it here:
https://sourceware.org/elfutils/Debuginfod.html
In a nutshell, by using a debuginfod service you will not need to
install debuginfo (a.k.a. dbgsym) files anymore; the symbols will be
served to GDB (or any other debuginfo consumer that supports debuginfod)
over the network. Ultimately, this makes the debugging experience much
smoother (I myself never remember the full URL of our debuginfo
repository when I need it).
Perhaps not everybody knows this, but until last year I was a Debugger
Engineer (a.k.a. GDB hacker) at Red Hat. I was not involved with
the creation of debuginfod directly, but I witnessed discussions
about “having way to serve debug symbols over the internet” multiple
times during my tenure at the company. So this is not a new idea, and
it’s not even the first implementation, but it’s the first time that
some engineers actually got their hands dirty enough to have something
concrete in hands.