#+OPTIONS: toc:nil date:nil ':t #+TITLE: Debuginfod on Debian #+Author: Sergio Durigan Junior @@latex:\\@@ sergiodj@debian.org #+LANGUAGE: en #+BEAMER_THEME: Rochester #+LaTeX_HEADER: \hypersetup{colorlinks=true,urlcolor=blue} #+LaTeX_HEADER: \lstset{basicstyle=\footnotesize\ttfamily} * What is =debuginfod=? - Relatively young (@@latex:$\sim$@@2019) project started by Red Hat. - It @@latex:\emph{@@"is a client/server [...] that automatically distributes =ELF= / =DWARF= / source-code from servers to clients such as debuggers across HTTP"@@latex:}@@. - The goal is to replace the need for =.dbgsym= files (but it can do more than that). * How does it work? - There's a =debuginfod= server (e.g., at https://debuginfod.debian.net) that indexes all available debuginfo from several distributions (=unstable=, =testing=, =stable=, =experimental=, etc.) #+BEAMER: \pause - Debugger-like tools (e.g., =GDB=) link against =libdebuginfod=, which provides the client support. #+BEAMER: \pause - When the tool needs a certain debuginfo, it will contact the =debuginfod= server (specified via the =DEBUGINFOD_URLS= shell variable) and put a request for the debuginfo's =Build-ID=. #+BEAMER: \pause - If found, the server will then transmit the information over HTTP(S) to the client. * How do I use it? :PROPERTIES: :BEAMER_OPT: fragile :END: - =GDB= on =testing= / =unstable= / =bullseye= supports using =debuginfod= when searching for debuginfo. - Unfortunately, it wasn't possible to include automatic support for our service on =bullseye=. - But don't despair! This is all that the user will have to do: #+ATTR_LATEX: :options frame=single #+begin_src bash export DEBUGINFOD_URLS="https://debuginfod.debian.net" #+end_src * Demo - Fasten your seat belts, please. * Future plans - Make it an official Debian service (ongoing task with the DSA). - Index and serve debuginfo from https://snapshot.debian.org. - Find co-maintainers (current bus factor: 1). * More information - https://wiki.debian.org/Debuginfod - https://sourceware.org/elfutils/Debuginfod.html - =sergiodj= @ =OFTC= - @@latex:\href{mailto:sergiodj@debian.org}{sergiodj@debian.org}@@