Friday, 18 May 2018

Re: Symbols files for C++ libraries for Ubuntu main

On Fri, May 18, 2018 at 04:32:29PM +0100, Ian Bruntlett wrote:
> Having access to the source code for packages would be helpful because
> sometimes, when chasing down a bug, access to source code is desirable.

If you add "deb-src" lines to your apt sources, you can download the
source for a package to your current working directory with:

apt-get source source-package-name

for example..

sarnold@hunt:/tmp$ grep 'deb-src.*bionic' /etc/apt/sources.list
deb-src http://wopr/ubuntu/ bionic main restricted universe multiverse
deb-src http://wopr/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://wopr/ubuntu/ bionic-security main restricted universe multiverse
deb-src bionic-security main restricted
deb-src bionic-security universe
deb-src bionic-security multiverse
sarnold@hunt:/tmp$ apt-get source bash
Reading package lists... Done
NOTICE: 'bash' packaging is maintained in the 'Bzr' version control system at:
Please use:
bzr branch
to retrieve the latest (possibly unreleased) updates to the package.
Need to get 5,103 kB of source archives.
Get:1 http://wopr/ubuntu cosmic/main bash 4.4.18-2ubuntu2 (dsc) [2,428 B]
Get:2 http://wopr/ubuntu cosmic/main bash 4.4.18-2ubuntu2 (tar) [5,036 kB]
Get:3 http://wopr/ubuntu cosmic/main bash 4.4.18-2ubuntu2 (diff) [64.0 kB]
Fetched 5,103 kB in 0s (30.0 MB/s)
dpkg-source: info: extracting bash in bash-4.4.18
dpkg-source: info: unpacking bash_4.4.18.orig.tar.xz
dpkg-source: info: unpacking bash_4.4.18-2ubuntu2.debian.tar.xz
dpkg-source: info: applying bash44-019.diff
dpkg-source: info: applying bashbug-editor.diff
dpkg-source: info: applying deb-bash-config.diff
dpkg-source: info: applying deb-examples.diff
dpkg-source: info: applying man-arithmetic.diff
dpkg-source: info: applying man-fignore.diff
dpkg-source: info: applying man-bashrc.diff
dpkg-source: info: applying man-bashlogout.diff
dpkg-source: info: applying man-nocaseglob.diff
dpkg-source: info: applying man-test.diff
dpkg-source: info: applying man-test2.diff
dpkg-source: info: applying rbash-manpage.diff
dpkg-source: info: applying bash-default-editor.diff
dpkg-source: info: applying pgrp-pipe.diff
dpkg-source: info: applying input-err.diff
dpkg-source: info: applying exec-redirections-doc.diff
dpkg-source: info: applying bash-aliases-repeat.diff
dpkg-source: info: applying use-system-texi2html.diff
dpkg-source: info: applying bzero.diff
dpkg-source: info: applying man-macro-warnings.diff
dpkg-source: info: applying po-de-fix.diff
dpkg-source: info: applying man-vx-opts.diff
sarnold@hunt:/tmp$ cd bash-4.4.18/
sarnold@hunt:/tmp/bash-4.4.18$ ls
ABOUT-NLS bashline.c conftypes.h externs.h jobs.h parser.h redir.h trap.h
aclocal.m4 bashline.h copy_cmd.c findcmd.c lib parse.y shell.c unwind_prot.c
alias.c bashtypes.h COPYING findcmd.h list.c patchlevel.h shell.h unwind_prot.h
alias.h bracecomp.c cross-build flags.c locale.c pathexp.c sig.c variables.c
array.c braces.c CWRU flags.h m4 pathexp.h sig.h variables.h
arrayfunc.c builtins debian general.c mailcheck.c siglist.c version.c
arrayfunc.h builtins.h dispose_cmd.c general.h mailcheck.h pcomplete.c siglist.h xmalloc.c
array.h ChangeLog dispose_cmd.h hashcmd.c make_cmd.c pcomplete.h stringlib.c xmalloc.h
assoc.c CHANGES doc hashcmd.h make_cmd.h pcomplib.c subst.c Y2K
assoc.h command.h error.c hashlib.c po subst.h
AUTHORS COMPAT error.h hashlib.h MANIFEST POSIX support
bashansi.h config-bot.h eval.c include mksyntax.c print_cmd.c syntax.h
bashhist.c examples input.c NEWS quit.h test.c
bashhist.h config-top.h execute_cmd.c input.h nojobs.c RBASH test.h
bashintl.h configure execute_cmd.h INSTALL NOTES README tests
bashjmp.h expr.c jobs.c parser-built redir.c trap.c

(Observant readers may have noticed the download came from cosmic rather
than bionic. Security team members have fairly unique apt sources to
support our tooling. Just ignore that detail. :)