Bug#870750: marked as done (reproducibly build packages where possible)
"Debian Bug Tracking System" <[email protected]> Mon, 20 Apr 2026 00:51:02 +0000
| Newsgroups | gmane.linux.debian.devel.dpkg.bugs |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format... ------------=_1776646262-761249-0 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your message dated Mon, 20 Apr 2026 00:48:47 +0000 with message-id <[email protected]> and subject line Bug#870750: fixed in dpkg-repack 1.55 has caused the Debian Bug report #870750, regarding reproducibly build packages where possible to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) --=20 870750: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=3D870750 Debian Bug Tracking System Contact [email protected] with problems ------------=_1776646262-761249-0 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by bugs.debian.org; 4 Aug 2017 18:52:01 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.0-bugs.debian.org_2005_01_02 (2014-02-07) on buxtehude.debian.org X-Spam-Level: X-Spam-Status: No, score=-12.4 required=4.0 tests=BAYES_00,DIGITS_LETTERS, FOURLA,HAS_PACKAGE,MURPHY_DRUGS_REL8,PGPSIGNATURE,URIBL_CNKR autolearn=ham autolearn_force=no version=3.4.0-bugs.debian.org_2005_01_02 X-Spam-Bayes: score:0.0000 Tokens: new, 15; hammy, 150; neutral, 270; spammy, 0. spammytokens: hammytokens:0.000-+--H*c:pgp-sha256, 0.000-+--H*UA:NeoMutt, 0.000-+--H*u:NeoMutt, 0.000-+--unstabledebug, 0.000-+--unstable-debug Return-path: <[email protected]> Received: from alt.prometheus.amsuess.com ([2a01:4f8:190:3064::3] helo=prometheus.amsuess.com) by buxtehude.debian.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <[email protected]>) id 1ddhhZ-0001M4-JZ for [email protected]; Fri, 04 Aug 2017 18:52:01 +0000 Received: from poseidon-mailhub.amsuess.com (unknown [IPv6:2a02:b18:c13b:8010:a800:ff:fede:b1bd]) by prometheus.amsuess.com (Postfix) with ESMTPS id EB2EB47606; Fri, 4 Aug 2017 20:51:56 +0200 (CEST) Received: from poseidon-mailbox.amsuess.com (poseidon-mailbox.amsuess.com [10.13.13.231]) by poseidon-mailhub.amsuess.com (Postfix) with ESMTP id C114836; Fri, 4 Aug 2017 20:51:55 +0200 (CEST) Received: from hephaistos.amsuess.com (unknown [206.167.44.205]) by poseidon-mailbox.amsuess.com (Postfix) with ESMTPSA id 1AC37389; Fri, 4 Aug 2017 20:51:54 +0200 (CEST) Received: (nullmailer pid 14641 invoked by uid 1000); Fri, 04 Aug 2017 18:51:52 -0000 Date: Fri, 4 Aug 2017 20:51:52 +0200 From: chrysn <[email protected]> To: Debian Bug Tracking System <[email protected]> Subject: reproducibly build packages where possible Message-ID: <[email protected]> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="htjivtjhijmdxxw4" Content-Disposition: inline X-Reportbug-Version: 7.1.7 User-Agent: NeoMutt/20170609 (1.8.3) Delivered-To: [email protected] --htjivtjhijmdxxw4 Content-Type: multipart/mixed; boundary="kfsppbtp4w2pqiuf" Content-Disposition: inline --kfsppbtp4w2pqiuf Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Package: dpkg-repack Version: 1.43 Severity: wishlist Tags: patch Playing around with dpkg-repack I noticed that even in the case of packages where there is no modification that'd make it impossible, dpkg-repack never generates perfect replicas of the original packages. With the attached patch, dpkg-repack inspects the installed package's changelog file for a suitable timestamp for SOURCE_DATE_EPOCH and sets it if appropriate. With --tag=3Dnone, this gives byte-perfect replicas of the packages I've tested it against unless they had local / config / post-inst modifications. I'd envision that a --tag=3Dauto feature go well with that (that adds a version tag if the md5sums indicate that the package changed), but that's not implemented in the current patch and I don't know if the md5sums criterion would be sufficient (eg. to see whether file ownership was changed in postinst). -- System Information: Debian Release: buster/sid APT prefers unstable-debug APT policy: (500, 'unstable-debug'), (500, 'unstable'), (1, 'experimental= -debug'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.12.0 (SMP w/4 CPU cores) Locale: LANG=3Den_GB.UTF-8, LC_CTYPE=3Den_GB.UTF-8 (charmap=3DUTF-8), LANGU= AGE=3Den_GB.UTF-8 (charmap=3DUTF-8) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init) Versions of packages dpkg-repack depends on: ii libdpkg-perl 1.18.24 ii perl 5.26.0-5 dpkg-repack recommends no packages. Versions of packages dpkg-repack suggests: ii fakeroot 1.21-3.1 -- no debconf information --=20 To use raw power is to make yourself infinitely vulnerable to greater power= s. -- Bene Gesserit axiom --kfsppbtp4w2pqiuf Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="0001-dpkg-calls-Respond-to-error-codes.patch" Content-Transfer-Encoding: quoted-printable =46rom 782b2e9c90fb6f9ab682bb91b179af46a72f605b Mon Sep 17 00:00:00 2001 =46rom: chrysn <[email protected]> Date: Fri, 4 Aug 2017 17:38:30 +0200 Subject: [PATCH] dpkg calls: Respond to error codes Contributes-To: https://bugs.debian.org/870724 --- dpkg-repack | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/dpkg-repack b/dpkg-repack index 920f434..6f65499 100755 --- a/dpkg-repack +++ b/dpkg-repack @@ -131,9 +131,9 @@ sub Extract_Status { my $inst =3D Dpkg::Control->new(type =3D> CTRL_FILE_STATUS); =20 open my $fh, '-|', 'dpkg', "--root=3D$rootdir/", '-s', $pkgname - or Die "Unable to locate $pkgname in the package list."; + or Die "Failed to fork dpkg."; $inst->parse($fh, "dpkg status for $pkgname"); - close $fh; + close $fh or Die "`dpkg -s` failed (status " . ($? >> 8) . ")."; =20 if ($inst->{Status} !~ m/^\S+\s+\S+\s+installed$/) { Die "Package $pkgname not fully installed: $inst->{Status}"; @@ -184,12 +184,12 @@ sub Install_DEBIAN { =20 my @control_files; open my $q_fh, '-|', "dpkg-query --admindir=3D$rootdir/var/lib/dpkg --= control-path $inst->{Package} 2>/dev/null" - or Die "dpkg-query failed: $!"; + or Die "Failed to fork dpkg."; while (my $fn =3D <$q_fh>) { chomp $fn; push @control_files, $fn; } - close $q_fh; + close $q_fh or Die "`dpkg-query` failed (status " . ($? >> 8) . ")."; =20 foreach my $fn (@control_files) { my ($basename) =3D $fn =3D~ m/^.*\.(.*?)$/; @@ -233,7 +233,11 @@ sub Install_Files { # it runs with English language output. my $lc_all =3D $ENV{LC_ALL}; $ENV{LC_ALL} =3D 'C'; - my @filelist =3D split /\n/, qx{dpkg --root=3D$rootdir/ -L $inst->{Pac= kage}}; + my $filelist =3D qx{dpkg --root=3D$rootdir/ -L $inst->{Package}:$inst-= >{Architecture}}; + if ($? !=3D 0) { + Die "`dpkg -L` failed (status " . ($? >> 8) . ")."; + } + my @filelist =3D split /\n/, $filelist; $ENV{LC_ALL} =3D $lc_all if defined $lc_all; # important to reset it. =20 # Set up a hash for easy lookups. --=20 2.13.2 --kfsppbtp4w2pqiuf-- --htjivtjhijmdxxw4 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEECM1tElX6OodcH7CWOY0REtOkveEFAlmEwkUACgkQOY0REtOk veEp3RAAmhBbYyXJr7vnWVC60FJAcgivjXhVLLSDAWLebuBZYuxEu2QXQ22hVC+O vKBlbN6ZEI4rYIpAa7BEOdMFUu5INTxrwi+0SrH4PAHu59jV+aIQAs/+vJZka0zk hMDQwthDc3g8smBNDq1R1cqgM/LYm9asEudfpssQTFus0mB/4dmAEEzeVjuQPDAg E8DXGGCvSN3JZ3z7n3NQFSlQJp/XnU38VS73uJnFx5i6i0DlHJDhr+cWtDZgvL+Q JBVyL3uQqmgxzKw7BQXx2Z0pkVEJGJsY9UdcUBM51qTvwLq+E62XhVMDsRLHvE9a haE8P0u01pGX4Ndq8P7CL0xXhkz7o/fSK7p/5vjGQqbhuB1znz3LZWt7l+zJIe2T T/rErL1QXV9peMixmgq0oNUWyMmPQebkRJPQXIPLKhLK/wlnkBYWdPKBAsOsLI3k yVCkU0G5H1s2BXZKfPLyU7COlF4od1n+FI4IGaXeSE+nZaN1VyOxXnpUyhrnTziI grR0DSNB1wJ9EiFMpud3BAO0ZRZmsV+782/KKrHMXVRR0v1EvSTpCdnCUcDRj8p6 o4a8O2rBwWdAIYwYjxuO0ibATBR6tctNtGTc8mug7b6aWjfmOxuUeJ0MqpIp80qa jZiZqzR9OJqNcrLc8uqZyeqNl1UJ5ub4JlPlynE7HWRtOuvP63o= =QKwA -----END PGP SIGNATURE----- --htjivtjhijmdxxw4-- ------------=_1776646262-761249-0 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 870750-close) by bugs.debian.org; 20 Apr 2026 00:48:49 +0000 X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02 (2024-03-25) on buxtehude.debian.org X-Spam-Level: X-Spam-Status: No, score=-114.2 required=4.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FVGT_m_MULTI_ODD, HAS_BUG_NUMBER,MD5_SHA1_SUM,PGPSIGNATURE,USER_IN_DKIM_WELCOMELIST autolearn=ham autolearn_force=no version=4.0.1-bugs.debian.org_2005_01_02 X-Spam-Bayes: score:0.0000 Tokens: new, 90; hammy, 150; neutral, 193; spammy, 0. spammytokens: hammytokens:0.000-+--HX-Debian:DAK, 0.000-+--H*rp:D*ftp-master.debian.org, 0.000-+--HX-DAK:process-upload, 0.000-+--H*r:sk:fasolo., 0.000-+--H*MI:fasolo Return-path: <[email protected]> Received: from muffat.debian.org ([2607:f8f0:614:1::1274:33]:43746) by buxtehude.debian.org with esmtps (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.96) (envelope-from <[email protected]>) id 1wEcoi-003Bfp-27 for [email protected]; Mon, 20 Apr 2026 00:48:49 +0000 Received: via submission from C=NA,ST=NA,L=Ankh Morpork,O=Debian SMTP,OU=Debian SMTP CA,CN=fasolo.debian.org,[email protected] (verified) by muffat.debian.org with esmtps (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.96) (envelope-from <[email protected]>) id 1wEcoh-009QdR-2s for [email protected]; Mon, 20 Apr 2026 00:48:47 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=ftp-master.debian.org; s=smtpauto.fasolo; h=Date:Message-Id:Content-Type: Subject:MIME-Version:To:Reply-To:From:Cc:Content-Transfer-Encoding:Content-ID :Content-Description:In-Reply-To:References; bh=5oY9olPSrhGdY7xx5EPzek2zBG3NkLNjchB6zSfgySQ=; b=Zuw9PJlCZKsFZ72mn9ccQTTXEQ VptdLOoGKxD678tbqv/bOeNRmfBwNYDdjB7MfyZgBMuLPu79iLlM0NMLXGP7/IdT0/3XxkJQp7xzf n8UO/cZhU0r/RopV6sPB2cMcyei2Lqo64EdUi85HcY7Sama+mDTD37gV1JXRc+XVp8poEnhoJH42O XplSRE80C9OzkOlRb08v6qes4AB6IhR/rwqgOFHE9uzpo7G4Moi09fKbb2zITchWdGLufoTWWzkAS FJWQqC8WUTulZeELRDn+RJE+71ylO8hhOz3PwC69fAbKfYHEsjMHO88i+K3JKLMP7c3M3S5SBlWS4 DWSOkOyg==; Received: from dak by fasolo.debian.org with local (Exim 4.98.2) (envelope-from <[email protected]>) id 1wEcoh-00000004vYB-06f2; Mon, 20 Apr 2026 00:48:47 +0000 From: Debian FTP Masters <[email protected]> Reply-To: Guillem Jover <[email protected]> To: [email protected] X-DAK: dak process-upload X-Debian: DAK X-Debian-Package: dpkg-repack Debian: DAK Debian-Changes: dpkg-repack_1.55_amd64.changes Debian-Source: dpkg-repack Debian-Version: 1.55 Debian-Architecture: source Debian-Suite: unstable Debian-Archive-Action: accept MIME-Version: 1.0 Subject: Bug#870750: fixed in dpkg-repack 1.55 Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="===============5435854823780346430==" Message-Id: <[email protected]> Date: Mon, 20 Apr 2026 00:48:47 +0000 --===============5435854823780346430== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Source: dpkg-repack Source-Version: 1.55 Done: Guillem Jover <[email protected]> We believe that the bug you reported is fixed in the latest version of dpkg-repack, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [email protected], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Guillem Jover <[email protected]> (supplier of updated dpkg-repack package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [email protected]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 1.8 Date: Mon, 20 Apr 2026 02:27:42 +0200 Source: dpkg-repack Architecture: source Version: 1.55 Distribution: unstable Urgency: medium Maintainer: Dpkg Developers <[email protected]> Changed-By: Guillem Jover <[email protected]> Closes: 870750 Changes: dpkg-repack (1.55) unstable; urgency=3Dmedium . * Rework --help output to list option descriptions on the next line. * Infer the SOURCE_DATE_EPOCH from the md5sums file. Closes: #870750 * Documentation: - man: Mention that version tagging might invalidate dependencies. - man: Use L<> instead of B<>(N) to refer to external man pages. * Code internals: - Switch to =C2=ABuse v5.40=C2=BB instead of =C2=ABuse strict=C2=BB and = =C2=ABuse warnings=C2=BB. - Switch to use sub signatures. - Use try/catch instead of eval/or-do. - Update copyright years. * Packaging: - Remove =C2=ABRules-Requires-Root: no=C2=BB, which is the current defau= lt. - Remove =C2=ABPriority: optional=C2=BB, which is the current default. - Remove build dependency on debhelper (>=3D 13.10), implied by debhelper-compat (=3D 13) since Debian bookworm. - Remove versioned Build-Depends on dpkg-dev, satisfied since Debian trixie. - Switch to Standards-Version 4.7.4 (no changed needed). - Refactor common description into a source stanza Description field. Checksums-Sha1: 35506a5d18d2de3c2b413b61558e692f08307993 2391 dpkg-repack_1.55.dsc aba8dc36dc30a98666a1fe8ec984875156622a03 23688 dpkg-repack_1.55.tar.xz f060568053bf5eafe3975b64dee960ccd088e197 5779 dpkg-repack_1.55_amd64.buildin= fo Checksums-Sha256: 564b53f4572352d9e9e11bc1249bb308cefa1d2cd9188ea23689a45018c580ed 2391 dpkg-r= epack_1.55.dsc 9b1aade323671a0e1109afe9739c43cada7395023087e105c4c9efc3b4eb852c 23688 dpkg-= repack_1.55.tar.xz d1dc00b34d58ee164b07d60c8900b2668fb53cd10a3994c936b7ca08a5a14347 5779 dpkg-r= epack_1.55_amd64.buildinfo Files: 617dffe5de0beb9c2b4784ed373a1c47 2391 admin optional dpkg-repack_1.55.dsc ff2567cd97256a61e5dfe7403f57b122 23688 admin optional dpkg-repack_1.55.tar.xz fe2ba37f24225b7d1f7c40fc9d37fc64 5779 admin optional dpkg-repack_1.55_amd64.= buildinfo -----BEGIN PGP SIGNATURE----- wsG7BAEBCgBvBYJp5XRECRC5cr8+pK5Xo0cUAAAAAAAeACBzYWx0QG5vdGF0aW9u cy5zZXF1b2lhLXBncC5vcmf5tWSTaEaaxkHg1CC1HIakkXmMAtBOwuE6X8mxtkeS YhYhBE8+dPQ2BQwQ9WlldLlyvz6krlejAADkvw/8DLRLXMoQy8C7MmAXNSOdhNQn G3hZnbMlgzPc9PH/luHGx3GM6Q9k1IjzmjDdkJe9uHGEu6sgs00FHID1iIhrgBpx ddmRtoyHVCLnyx2QUazpOzYAQfiLGVSxUTmkhoTckC6OgvHdoQWfFOGiSj5Jfxz7 2xWR4iOK5YLbag+R75x+yuvdSPqqYJT1Vgu+X4JzKoDKHjzg/q7ksOIaRDKhPxvY WTzajQ4qIgRwSU27tx+zAKsxPODiXphA6tnTQcYIe2/f9GeiFH+Roj7kjoVDYzZ2 v3SpOBB2vHs1vCe6LFjGrBNnz8g6mBKqboCS75IZuGINKTifSq4glNkFa3c57XYd dd2IOMxg3Kr2Bj0RFsskPxs1H1KudQTIB4XKr5qQykK912eKpRGnIBh/W/9Qak2o 7e4Ldv9DpckX2YjlVehn+ZwAvu5f0fAuyZoYcQEKNoFqo23ujgbPMQQWcvIpc3wC mx7TPiH6GUQ1TlU02rMKK4umKGnU7+K9Iofh7xhabiZW5A5ZV18FUKMwaMQz3V5l PbemKXA3g9eGDWDD9GjsW2o3r+pHP/2igqFxt1Tx0n42EaRzKQmsuinduxGBG7KJ 7diNJwmAAAd9L1937mEgGLUcNrDxXVhPdqOXHpMZXrpJNDiUxElmZUUIh6gbjEJG rbdgx2h9Al6p1UsU9+w=3D =3DpGiy -----END PGP SIGNATURE----- --===============5435854823780346430== Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQTziqJOuF8J+ZI8pJSb9qggYcy5IQUCaeV37gAKCRCb9qggYcy5 IT7QAP4/gx/nivHEXZ9jJXuxD9ho1K8OBqy+vbdsEmnm6ZFnnQD/QpajkqPDopcN Og3EStwT/kdZqsInvQNJYFDk34bHzAs= =qKtA -----END PGP SIGNATURE----- --===============5435854823780346430==-- ------------=_1776646262-761249-0--