commit 28f9cc7e90895f47c5558b38c05ee5f65ff74022 Author: Sergio Durigan Junior Date: Tue Nov 8 04:55:39 2022 -0500 Initial commit diff --git a/debuginfod-us.org b/debuginfod-us.org new file mode 100644 index 0000000..25430c8 --- /dev/null +++ b/debuginfod-us.org @@ -0,0 +1,60 @@ +#+OPTIONS: toc:nil date:nil ':t +#+TITLE: Debuginfod on Ubuntu +#+Author: Sergio Durigan Junior @@latex:\\@@ sergiodj@ubuntu.com +#+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 =.ddeb= files (but it can do + more than that). + +* How does it work? +- There's a =debuginfod= server (e.g., at + https://debuginfod.ubuntu.com) that indexes all available debuginfo + from several supported Ubuntu releases. +#+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 Jammy and Kinetic support using =debuginfod= to fetch debug + information. +- From Kinetic onward, there is no need for manual intervention: the + system will automatically use Ubuntu's =debuginfod= service. +- On Jammy, you can configure your system to use the service by doing: + +#+ATTR_LATEX: :options frame=single +#+begin_src bash +export DEBUGINFOD_URLS="https://debuginfod.ubuntu.com" +#+end_src + +* Demo +- Fasten your seat belts, please. + +* Future plans +- Work on source code indexing (more demo!). +- Index debug information from other producers (snaps, special PPAs). +- Provide =debuginfod=-capable =GDBs= via =-backports= to previous + supported Ubuntu releases. + +* More information +- https://ubuntu.com/server/docs/service-debuginfod +- https://sourceware.org/elfutils/Debuginfod.html +- =sergiodj= @ =libera.chat= +- @@latex:\href{mailto:sergiodj@ubuntu.com}{sergiodj@ubuntu.com}@@ diff --git a/debuginfod-us.pdf b/debuginfod-us.pdf new file mode 100644 index 0000000..5cc7e23 Binary files /dev/null and b/debuginfod-us.pdf differ