Bug#989203: apt-cacher-ng: Fix for reproducible build: --build-id differs

Roland Clobus rclobus at rclobus.nl
Fri May 28 12:45:40 BST 2021


Package: apt-cacher-ng
Version: 3.6.3-1
Severity: wishlist
Tags: patch
User: reproducible-builds at lists.alioth.debian.org
Usertags: buildpath
X-Debbugs-Cc: reproducible-builds at lists.alioth.debian.org


Hello Eduard,

I'm rebuilding apt-cacher-ng with reprotest, see #988976:

$ reprotest apt-cacher-ng_3.6.3-1.1.dsc --variations=+all

The package is now fully reproducible with the attached patch.

See https://reproducible-builds.org/docs/deterministic-build-systems/.

Before the patch:
* CMake instructs the linker to include the rpath for the current build
directory
* The build-id is calculate
* CMake replaces the rpath with '\0'

When using CMAKE_SKIP_RPATH=ON, CMake will no longer attempt to insert an rpath
in the binaries after linking, therefore the build-id is now a stable (and
correct) value.

With kind regards,
Roland Clobus


-- Package-specific info:

-- System Information:
Debian Release: 11.0
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'testing-security'), (500, 'testing-debug'), (50, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.10.0-6-amd64 (SMP w/8 CPU threads)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages apt-cacher-ng depends on:
ii  adduser                  3.118
ii  debconf [debconf-2.0]    1.5.75
ii  dpkg                     1.20.9
ii  libbz2-1.0               1.0.8-4
ii  libc6                    2.31-12
ii  libevent-2.1-7           2.1.12-stable-1
ii  libevent-pthreads-2.1-7  2.1.12-stable-1
ii  libgcc-s1                10.2.1-6
ii  liblzma5                 5.2.5-2
ii  libssl1.1                1.1.1k-1
ii  libstdc++6               10.2.1-6
ii  libsystemd0              247.3-5
ii  libwrap0                 7.6.q-31
ii  lsb-base                 11.1.0
ii  zlib1g                   1:1.2.11.dfsg-2

Versions of packages apt-cacher-ng recommends:
ii  ca-certificates  20210119

Versions of packages apt-cacher-ng suggests:
ii  avahi-daemon  0.8-5
pn  doc-base      <none>
ii  libfuse2      2.9.9-5

-- Configuration Files:
/etc/apt-cacher-ng/acng.conf changed:
CacheDir: /media/data/apt-cacher-ng
LogDir: /var/log/apt-cacher-ng
SupportDir: /usr/lib/apt-cacher-ng
Remap-debrep: file:deb_mirror*.gz /debian ; file:backends_debian # Debian Archives
Remap-uburep: file:ubuntu_mirrors /ubuntu ; file:backends_ubuntu # Ubuntu Archives
Remap-klxrep: file:kali_mirrors /kali ; file:backends_kali # Kali Linux Archives
Remap-cygwin: file:cygwin_mirrors /cygwin # ; file:backends_cygwin # incomplete, please create this file or specify preferred mirrors here
Remap-sfnet:  file:sfnet_mirrors # ; file:backends_sfnet # incomplete, please create this file or specify preferred mirrors here
Remap-alxrep: file:archlx_mirrors /archlinux # ; file:backend_archlx # Arch Linux
Remap-fedora: file:fedora_mirrors # Fedora Linux
Remap-epel:   file:epel_mirrors # Fedora EPEL
Remap-slrep:  file:sl_mirrors # Scientific Linux
Remap-gentoo: file:gentoo_mirrors.gz /gentoo ; file:backends_gentoo # Gentoo Archives
Remap-secdeb: security.debian.org security.debian.org/debian-security deb.debian.org/debian-security /debian-security ; deb.debian.org/debian-security security.debian.org
ReportPage: acng-report.html
ExThreshold: 4
VfilePatternEx: /project/trace/ftp-master\.debian\.org$
LocalDirs: acng-doc /usr/share/doc/apt-cacher-ng

/etc/apt-cacher-ng/security.conf [Errno 13] Permission denied: '/etc/apt-cacher-ng/security.conf'

-- debconf information:
* apt-cacher-ng/proxy: keep
* apt-cacher-ng/bindaddress: keep
* apt-cacher-ng/port: keep
* apt-cacher-ng/tunnelenable: false
* apt-cacher-ng/gentargetmode: Set up now and update later
* apt-cacher-ng/cachedir: /media/data/apt-cacher-ng

-- debsums errors found:
debsums: changed file /lib/systemd/system/apt-cacher-ng.service (from apt-cacher-ng package)
-------------- next part --------------
diff --git a/debian/rules b/debian/rules
index b552b19..6a48911 100755
--- a/debian/rules
+++ b/debian/rules
@@ -27,7 +27,7 @@ EXTRA_LIBS += -DUSE_GOLD=off -DUSE_GOLD_MT=off
 	dh $@
 
 override_dh_auto_configure:
-	dh_auto_configure -- -DSDINSTALL=on -DACNG_CACHE_DIR=/var/cache/apt-cacher-ng -DACNG_LOG_DIR=/var/log/apt-cacher-ng -DUSE_LTO=off $(EXTRA_LIBS)
+	dh_auto_configure -- -DSDINSTALL=on -DACNG_CACHE_DIR=/var/cache/apt-cacher-ng -DACNG_LOG_DIR=/var/log/apt-cacher-ng -DUSE_LTO=off $(EXTRA_LIBS) -DCMAKE_SKIP_RPATH=ON
 
 # needs extra build deps and internet -> ignore
 override_dh_auto_test:


More information about the Reproducible-builds mailing list