I: pbuilder: network access will be disabled during build I: Current time: Fri Jan 23 04:37:11 +14 2026 I: pbuilder-time-stamp: 1769092631 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [age_1.2.1-1.dsc] I: copying [./age_1.2.1.orig.tar.gz] I: copying [./age_1.2.1-1.debian.tar.xz] I: Extracting source gpgv: Signature made Thu Dec 19 12:00:09 2024 gpgv: using EDDSA key A3CC9C870B9D310ABAD4CF2F51722B08FE4745A2 gpgv: issuer "simon@josefsson.org" gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./age_1.2.1-1.dsc: no acceptable signature found dpkg-source: info: extracting age in age-1.2.1 dpkg-source: info: unpacking age_1.2.1.orig.tar.gz dpkg-source: info: unpacking age_1.2.1-1.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying 0001-Skip-c2sp.org-CCTV-age-usage-until-packaged.patch I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/3939872/tmp/hooks/D01_modify_environment starting debug: Running on infom02-amd64. I: Changing host+domainname to test build reproducibility I: Adding a custom variable just for the fun of it... I: Changing /bin/sh to bash '/bin/sh' -> '/bin/bash' lrwxrwxrwx 1 root root 9 Jan 22 14:37 /bin/sh -> /bin/bash I: Setting pbuilder2's login shell to /bin/bash I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other I: user script /srv/workspace/pbuilder/3939872/tmp/hooks/D01_modify_environment finished I: user script /srv/workspace/pbuilder/3939872/tmp/hooks/D02_print_environment starting I: set BASH=/bin/sh BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath BASH_ALIASES=() BASH_ARGC=() BASH_ARGV=() BASH_CMDS=() BASH_LINENO=([0]="12" [1]="0") BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") BASH_VERSION='5.2.37(1)-release' BUILDDIR=/build/reproducible-path BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' BUILDUSERNAME=pbuilder2 BUILD_ARCH=amd64 DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' DIRSTACK=() DISTRIBUTION=unstable EUID=0 FUNCNAME=([0]="Echo" [1]="main") GROUPS=() HOME=/root HOSTNAME=i-capture-the-hostname HOSTTYPE=x86_64 HOST_ARCH=amd64 IFS=' ' INVOCATION_ID=a87120f49f14457d9fb3e6fbf3e28f98 LANG=C LANGUAGE=et_EE:et LC_ALL=C MACHTYPE=x86_64-pc-linux-gnu MAIL=/var/mail/root OPTERR=1 OPTIND=1 OSTYPE=linux-gnu PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path PBCURRENTCOMMANDLINEOPERATION=build PBUILDER_OPERATION=build PBUILDER_PKGDATADIR=/usr/share/pbuilder PBUILDER_PKGLIBDIR=/usr/lib/pbuilder PBUILDER_SYSCONFDIR=/etc PIPESTATUS=([0]="0") POSIXLY_CORRECT=y PPID=3939872 PS4='+ ' PWD=/ SHELL=/bin/bash SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix SHLVL=3 SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.lhgGzwv8/pbuilderrc_8PqZ --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.lhgGzwv8/b2 --logfile b2/build.log age_1.2.1-1.dsc' SUDO_GID=109 SUDO_UID=104 SUDO_USER=jenkins TERM=unknown TZ=/usr/share/zoneinfo/Etc/GMT-14 UID=0 USER=root _='I: set' I: uname -a Linux i-capture-the-hostname 6.11.5+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.11.5-1~bpo12+1 (2024-11-11) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin I: user script /srv/workspace/pbuilder/3939872/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: amd64 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper-compat (= 13), dh-golang, golang-any, golang-filippo-edwards25519-dev, golang-github-rogpeppe-go-internal-dev, golang-golang-x-crypto-dev dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19967 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on dh-golang; however: Package dh-golang is not installed. pbuilder-satisfydepends-dummy depends on golang-any; however: Package golang-any is not installed. pbuilder-satisfydepends-dummy depends on golang-filippo-edwards25519-dev; however: Package golang-filippo-edwards25519-dev is not installed. pbuilder-satisfydepends-dummy depends on golang-github-rogpeppe-go-internal-dev; however: Package golang-github-rogpeppe-go-internal-dev is not installed. pbuilder-satisfydepends-dummy depends on golang-golang-x-crypto-dev; however: Package golang-golang-x-crypto-dev is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-golang{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} golang-1.23-go{a} golang-1.23-src{a} golang-any{a} golang-filippo-edwards25519-dev{a} golang-github-rogpeppe-go-internal-dev{a} golang-github-yuin-goldmark-dev{a} golang-go{a} golang-golang-x-crypto-dev{a} golang-golang-x-mod-dev{a} golang-golang-x-net-dev{a} golang-golang-x-sync-dev{a} golang-golang-x-sys-dev{a} golang-golang-x-term-dev{a} golang-golang-x-text-dev{a} golang-golang-x-tools-dev{a} golang-src{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx pkgconf wget 0 packages upgraded, 46 newly installed, 0 to remove and 0 not upgraded. Need to get 75.0 MB of archives. After unpacking 390 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main amd64 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.45-3+b1 [314 kB] Get: 3 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.45-3+b1 [108 kB] Get: 4 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.45-3+b1 [43.3 kB] Get: 5 http://deb.debian.org/debian unstable/main amd64 gettext-base amd64 0.22.5-3 [200 kB] Get: 6 http://deb.debian.org/debian unstable/main amd64 libuchardet0 amd64 0.0.8-1+b2 [68.9 kB] Get: 7 http://deb.debian.org/debian unstable/main amd64 groff-base amd64 1.23.0-6 [1184 kB] Get: 8 http://deb.debian.org/debian unstable/main amd64 bsdextrautils amd64 2.40.2-12 [92.0 kB] Get: 9 http://deb.debian.org/debian unstable/main amd64 libpipeline1 amd64 1.5.8-1 [42.0 kB] Get: 10 http://deb.debian.org/debian unstable/main amd64 man-db amd64 2.13.0-1 [1420 kB] Get: 11 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-4 [287 kB] Get: 12 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian unstable/main amd64 autopoint all 0.22.5-3 [723 kB] Get: 16 http://deb.debian.org/debian unstable/main amd64 libdebhelper-perl all 13.22 [90.5 kB] Get: 17 http://deb.debian.org/debian unstable/main amd64 libtool all 2.4.7-8 [517 kB] Get: 18 http://deb.debian.org/debian unstable/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian unstable/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian unstable/main amd64 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian unstable/main amd64 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian unstable/main amd64 libelf1t64 amd64 0.192-4 [189 kB] Get: 23 http://deb.debian.org/debian unstable/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 24 http://deb.debian.org/debian unstable/main amd64 libicu72 amd64 72.1-5+b1 [9423 kB] Get: 25 http://deb.debian.org/debian unstable/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.2+b1 [699 kB] Get: 26 http://deb.debian.org/debian unstable/main amd64 gettext amd64 0.22.5-3 [1600 kB] Get: 27 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.22 [919 kB] Get: 30 http://deb.debian.org/debian unstable/main amd64 dh-golang all 1.62 [24.7 kB] Get: 31 http://deb.debian.org/debian unstable/main amd64 golang-1.23-src all 1.23.4-1 [19.1 MB] Get: 32 http://deb.debian.org/debian unstable/main amd64 golang-1.23-go amd64 1.23.4-1 [27.0 MB] Get: 33 http://deb.debian.org/debian unstable/main amd64 golang-src all 2:1.23~2 [5088 B] Get: 34 http://deb.debian.org/debian unstable/main amd64 golang-go amd64 2:1.23~2 [44.3 kB] Get: 35 http://deb.debian.org/debian unstable/main amd64 golang-any amd64 2:1.23~2 [5172 B] Get: 36 http://deb.debian.org/debian unstable/main amd64 golang-filippo-edwards25519-dev all 1.0.0~rc1+git20210721-0.1 [32.7 kB] Get: 37 http://deb.debian.org/debian unstable/main amd64 golang-golang-x-mod-dev all 0.19.0-1 [104 kB] Get: 38 http://deb.debian.org/debian unstable/main amd64 golang-golang-x-sys-dev all 0.22.0-1 [431 kB] Get: 39 http://deb.debian.org/debian unstable/main amd64 golang-github-yuin-goldmark-dev all 1.7.4-1 [113 kB] Get: 40 http://deb.debian.org/debian unstable/main amd64 golang-golang-x-term-dev all 0.22.0-1 [14.8 kB] Get: 41 http://deb.debian.org/debian unstable/main amd64 golang-golang-x-text-dev all 0.16.0-1 [4003 kB] Get: 42 http://deb.debian.org/debian unstable/main amd64 golang-golang-x-crypto-dev all 1:0.25.0-1 [1682 kB] Get: 43 http://deb.debian.org/debian unstable/main amd64 golang-golang-x-net-dev all 1:0.27.0-1 [898 kB] Get: 44 http://deb.debian.org/debian unstable/main amd64 golang-golang-x-sync-dev all 0.7.0-1 [19.0 kB] Get: 45 http://deb.debian.org/debian unstable/main amd64 golang-golang-x-tools-dev all 1:0.23.0+ds-1 [1593 kB] Get: 46 http://deb.debian.org/debian unstable/main amd64 golang-github-rogpeppe-go-internal-dev all 1.12.0-3 [103 kB] Fetched 75.0 MB in 1s (50.6 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19967 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3+b1_amd64.deb ... Unpacking libmagic-mgc (1:5.45-3+b1) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3+b1_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.45-3+b1) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3+b1_amd64.deb ... Unpacking file (1:5.45-3+b1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-3_amd64.deb ... Unpacking gettext-base (0.22.5-3) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../05-libuchardet0_0.0.8-1+b2_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-6_amd64.deb ... Unpacking groff-base (1.23.0-6) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-12_amd64.deb ... Unpacking bsdextrautils (2.40.2-12) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../08-libpipeline1_1.5.8-1_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_amd64.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_amd64.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../14-autopoint_0.22.5-3_all.deb ... Unpacking autopoint (0.22.5-3) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.22_all.deb ... Unpacking libdebhelper-perl (13.22) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-8_all.deb ... Unpacking libtool (2.4.7-8) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../21-libelf1t64_0.192-4_amd64.deb ... Unpacking libelf1t64:amd64 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:amd64. Preparing to unpack .../23-libicu72_72.1-5+b1_amd64.deb ... Unpacking libicu72:amd64 (72.1-5+b1) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_amd64.deb ... Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-3_amd64.deb ... Unpacking gettext (0.22.5-3) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.22_all.deb ... Unpacking debhelper (13.22) ... Selecting previously unselected package dh-golang. Preparing to unpack .../29-dh-golang_1.62_all.deb ... Unpacking dh-golang (1.62) ... Selecting previously unselected package golang-1.23-src. Preparing to unpack .../30-golang-1.23-src_1.23.4-1_all.deb ... Unpacking golang-1.23-src (1.23.4-1) ... Selecting previously unselected package golang-1.23-go. Preparing to unpack .../31-golang-1.23-go_1.23.4-1_amd64.deb ... Unpacking golang-1.23-go (1.23.4-1) ... Selecting previously unselected package golang-src. Preparing to unpack .../32-golang-src_2%3a1.23~2_all.deb ... Unpacking golang-src (2:1.23~2) ... Selecting previously unselected package golang-go:amd64. Preparing to unpack .../33-golang-go_2%3a1.23~2_amd64.deb ... Unpacking golang-go:amd64 (2:1.23~2) ... Selecting previously unselected package golang-any:amd64. Preparing to unpack .../34-golang-any_2%3a1.23~2_amd64.deb ... Unpacking golang-any:amd64 (2:1.23~2) ... Selecting previously unselected package golang-filippo-edwards25519-dev. Preparing to unpack .../35-golang-filippo-edwards25519-dev_1.0.0~rc1+git20210721-0.1_all.deb ... Unpacking golang-filippo-edwards25519-dev (1.0.0~rc1+git20210721-0.1) ... Selecting previously unselected package golang-golang-x-mod-dev. Preparing to unpack .../36-golang-golang-x-mod-dev_0.19.0-1_all.deb ... Unpacking golang-golang-x-mod-dev (0.19.0-1) ... Selecting previously unselected package golang-golang-x-sys-dev. Preparing to unpack .../37-golang-golang-x-sys-dev_0.22.0-1_all.deb ... Unpacking golang-golang-x-sys-dev (0.22.0-1) ... Selecting previously unselected package golang-github-yuin-goldmark-dev. Preparing to unpack .../38-golang-github-yuin-goldmark-dev_1.7.4-1_all.deb ... Unpacking golang-github-yuin-goldmark-dev (1.7.4-1) ... Selecting previously unselected package golang-golang-x-term-dev. Preparing to unpack .../39-golang-golang-x-term-dev_0.22.0-1_all.deb ... Unpacking golang-golang-x-term-dev (0.22.0-1) ... Selecting previously unselected package golang-golang-x-text-dev. Preparing to unpack .../40-golang-golang-x-text-dev_0.16.0-1_all.deb ... Unpacking golang-golang-x-text-dev (0.16.0-1) ... Selecting previously unselected package golang-golang-x-crypto-dev. Preparing to unpack .../41-golang-golang-x-crypto-dev_1%3a0.25.0-1_all.deb ... Unpacking golang-golang-x-crypto-dev (1:0.25.0-1) ... Selecting previously unselected package golang-golang-x-net-dev. Preparing to unpack .../42-golang-golang-x-net-dev_1%3a0.27.0-1_all.deb ... Unpacking golang-golang-x-net-dev (1:0.27.0-1) ... Selecting previously unselected package golang-golang-x-sync-dev. Preparing to unpack .../43-golang-golang-x-sync-dev_0.7.0-1_all.deb ... Unpacking golang-golang-x-sync-dev (0.7.0-1) ... Selecting previously unselected package golang-golang-x-tools-dev. Preparing to unpack .../44-golang-golang-x-tools-dev_1%3a0.23.0+ds-1_all.deb ... Unpacking golang-golang-x-tools-dev (1:0.23.0+ds-1) ... Selecting previously unselected package golang-github-rogpeppe-go-internal-dev. Preparing to unpack .../45-golang-github-rogpeppe-go-internal-dev_1.12.0-3_all.deb ... Unpacking golang-github-rogpeppe-go-internal-dev (1.12.0-3) ... Setting up libpipeline1:amd64 (1.5.8-1) ... Setting up libicu72:amd64 (72.1-5+b1) ... Setting up bsdextrautils (2.40.2-12) ... Setting up libmagic-mgc (1:5.45-3+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.22) ... Setting up golang-golang-x-sys-dev (0.22.0-1) ... Setting up libmagic1t64:amd64 (1:5.45-3+b1) ... Setting up gettext-base (0.22.5-3) ... Setting up m4 (1.4.19-4) ... Setting up golang-golang-x-term-dev (0.22.0-1) ... Setting up file (1:5.45-3+b1) ... Setting up libelf1t64:amd64 (0.192-4) ... Setting up autotools-dev (20220109.1) ... Setting up golang-github-yuin-goldmark-dev (1.7.4-1) ... Setting up golang-golang-x-sync-dev (0.7.0-1) ... Setting up golang-golang-x-mod-dev (0.19.0-1) ... Setting up golang-1.23-src (1.23.4-1) ... Setting up autopoint (0.22.5-3) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up golang-golang-x-text-dev (0.16.0-1) ... Setting up libuchardet0:amd64 (0.0.8-1+b2) ... Setting up golang-filippo-edwards25519-dev (1.0.0~rc1+git20210721-0.1) ... Setting up golang-golang-x-crypto-dev (1:0.25.0-1) ... Setting up golang-src (2:1.23~2) ... Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-3) ... Setting up libtool (2.4.7-8) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up golang-1.23-go (1.23.4-1) ... Setting up golang-golang-x-net-dev (1:0.27.0-1) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-6) ... Setting up golang-go:amd64 (2:1.23~2) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up golang-golang-x-tools-dev (1:0.23.0+ds-1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up golang-any:amd64 (2:1.23~2) ... Setting up golang-github-rogpeppe-go-internal-dev (1.12.0-3) ... Setting up debhelper (13.22) ... Setting up dh-golang (1.62) ... Processing triggers for libc-bin (2.40-4) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: user script /srv/workspace/pbuilder/3939872/tmp/hooks/A99_set_merged_usr starting Not re-configuring usrmerge for unstable I: user script /srv/workspace/pbuilder/3939872/tmp/hooks/A99_set_merged_usr finished hostname: Name or service not known I: Running cd /build/reproducible-path/age-1.2.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../age_1.2.1-1_source.changes dpkg-buildpackage: info: source package age dpkg-buildpackage: info: source version 1.2.1-1 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Simon Josefsson dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 debian/rules clean dh clean --builddirectory=_build --buildsystem=golang --with=golang dh_auto_clean -O--builddirectory=_build -O--buildsystem=golang dh_autoreconf_clean -O--builddirectory=_build -O--buildsystem=golang dh_clean -O--builddirectory=_build -O--buildsystem=golang debian/rules binary dh binary --builddirectory=_build --buildsystem=golang --with=golang dh_update_autotools_config -O--builddirectory=_build -O--buildsystem=golang dh_autoreconf -O--builddirectory=_build -O--buildsystem=golang dh_auto_configure -O--builddirectory=_build -O--buildsystem=golang debian/rules override_dh_auto_build make[1]: Entering directory '/build/reproducible-path/age-1.2.1' dh_auto_build -- -buildmode=pie -ldflags "-X main.Version=1.2.1" cd _build && go install -trimpath -v -p 12 -buildmode=pie -ldflags "-X main.Version=1.2.1" filippo.io/age filippo.io/age/agessh filippo.io/age/armor filippo.io/age/cmd/age filippo.io/age/cmd/age-keygen filippo.io/age/internal/bech32 filippo.io/age/internal/format filippo.io/age/internal/stream filippo.io/age/plugin internal/goos internal/coverage/rtcov internal/goarch internal/godebugs internal/race internal/profilerecord internal/goexperiment internal/byteorder internal/cpu internal/runtime/atomic internal/runtime/syscall internal/unsafeheader internal/abi runtime/internal/math sync/atomic unicode unicode/utf8 internal/chacha8rand math/bits runtime/internal/sys crypto/internal/alias crypto/subtle crypto/internal/boring/sig internal/asan internal/itoa internal/msan cmp golang.org/x/crypto/internal/alias unicode/utf16 internal/nettrace vendor/golang.org/x/crypto/cryptobyte/asn1 log/internal internal/runtime/exithook encoding golang.org/x/crypto/cryptobyte/asn1 internal/bytealg math internal/stringslite runtime internal/reflectlite iter sync internal/weak slices internal/bisect internal/singleflight internal/testlog runtime/cgo internal/godebug errors math/rand sort path vendor/golang.org/x/net/dns/dnsmessage math/rand/v2 strconv internal/oserror io crypto/internal/nistec/fiat crypto/internal/edwards25519/field syscall internal/concurrent crypto/internal/edwards25519 reflect bytes strings hash crypto/internal/randutil crypto/rc4 unique crypto golang.org/x/crypto/blowfish crypto/md5 crypto/cipher net/netip bufio regexp/syntax crypto/des crypto/internal/boring internal/syscall/unix time internal/syscall/execenv crypto/hmac crypto/sha256 crypto/sha512 crypto/aes crypto/sha1 regexp golang.org/x/crypto/hkdf golang.org/x/crypto/pbkdf2 golang.org/x/crypto/ssh/internal/bcrypt_pbkdf encoding/binary internal/fmtsort io/fs context internal/poll embed internal/filepathlite encoding/base64 golang.org/x/crypto/chacha20 golang.org/x/crypto/scrypt golang.org/x/crypto/internal/poly1305 filippo.io/edwards25519/field golang.org/x/sys/unix crypto/internal/nistec os encoding/pem filippo.io/edwards25519 crypto/ecdh golang.org/x/crypto/curve25519 path/filepath fmt golang.org/x/sys/cpu os/exec golang.org/x/crypto/chacha20poly1305 golang.org/x/term filippo.io/age/internal/bech32 math/big filippo.io/age/internal/stream net/url encoding/hex log flag golang.org/x/sys/execabs runtime/debug filippo.io/age/internal/format filippo.io/age/armor net crypto/rand crypto/dsa crypto/internal/boring/bbig crypto/elliptic crypto/internal/bigmod encoding/asn1 filippo.io/age crypto/ed25519 crypto/rsa filippo.io/age/plugin filippo.io/age/cmd/age-keygen vendor/golang.org/x/crypto/cryptobyte crypto/x509/pkix golang.org/x/crypto/cryptobyte crypto/ecdsa crypto/x509 golang.org/x/crypto/ssh filippo.io/age/agessh filippo.io/age/cmd/age make[1]: Leaving directory '/build/reproducible-path/age-1.2.1' dh_auto_test -O--builddirectory=_build -O--buildsystem=golang cd _build && go test -vet=off -v -p 12 filippo.io/age filippo.io/age/agessh filippo.io/age/armor filippo.io/age/cmd/age filippo.io/age/cmd/age-keygen filippo.io/age/internal/bech32 filippo.io/age/internal/format filippo.io/age/internal/stream filippo.io/age/plugin ? filippo.io/age/cmd/age-keygen [no test files] === RUN TestEncryptDecryptX25519 --- PASS: TestEncryptDecryptX25519 (0.00s) === RUN TestEncryptDecryptScrypt --- PASS: TestEncryptDecryptScrypt (0.27s) === RUN TestParseIdentities === RUN TestParseIdentities/valid === RUN TestParseIdentities/invalid --- PASS: TestParseIdentities (0.00s) --- PASS: TestParseIdentities/valid (0.00s) --- PASS: TestParseIdentities/invalid (0.00s) === RUN TestLabels --- PASS: TestLabels (4.03s) === RUN TestX25519RoundTrip --- PASS: TestX25519RoundTrip (0.00s) === RUN TestScryptRoundTrip --- PASS: TestScryptRoundTrip (0.24s) === RUN TestVectors testkit_test.go:28: Skip c2sp until package in Debian --- SKIP: TestVectors (0.00s) === RUN TestVectorsRoundTrip testkit_test.go:28: Skip c2sp until package in Debian --- SKIP: TestVectorsRoundTrip (0.00s) === RUN ExampleEncrypt --- PASS: ExampleEncrypt (0.00s) === RUN ExampleDecrypt --- PASS: ExampleDecrypt (0.00s) === RUN ExampleParseIdentities --- PASS: ExampleParseIdentities (0.00s) === RUN ExampleGenerateX25519Identity --- PASS: ExampleGenerateX25519Identity (0.00s) PASS ok filippo.io/age 4.645s === RUN TestSSHRSARoundTrip --- PASS: TestSSHRSARoundTrip (0.09s) === RUN TestSSHEd25519RoundTrip --- PASS: TestSSHEd25519RoundTrip (0.00s) PASS ok filippo.io/age/agessh 0.098s === RUN TestArmor === RUN TestArmor/PartialLine === RUN TestArmor/FullLine --- PASS: TestArmor (0.00s) --- PASS: TestArmor/PartialLine (0.00s) --- PASS: TestArmor/FullLine (0.00s) === RUN FuzzMalleability --- PASS: FuzzMalleability (0.00s) === RUN ExampleNewWriter --- PASS: ExampleNewWriter (0.00s) === RUN ExampleNewReader --- PASS: ExampleNewReader (0.00s) PASS ok filippo.io/age/armor 0.005s === RUN TestScript === RUN TestScript/ed25519 === PAUSE TestScript/ed25519 === RUN TestScript/encrypted_keys === PAUSE TestScript/encrypted_keys === RUN TestScript/output_file === PAUSE TestScript/output_file === RUN TestScript/pkcs8 === PAUSE TestScript/pkcs8 === RUN TestScript/plugin === PAUSE TestScript/plugin === RUN TestScript/rsa === PAUSE TestScript/rsa === RUN TestScript/scrypt === PAUSE TestScript/scrypt === RUN TestScript/terminal === PAUSE TestScript/terminal === RUN TestScript/usage === PAUSE TestScript/usage === RUN TestScript/x25519 === PAUSE TestScript/x25519 === CONT TestScript/ed25519 === CONT TestScript/usage === CONT TestScript/terminal === CONT TestScript/rsa === CONT TestScript/scrypt === CONT TestScript/x25519 === CONT TestScript/pkcs8 === CONT TestScript/plugin === CONT TestScript/output_file === CONT TestScript/encrypted_keys === NAME TestScript/pkcs8 testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= # https://github.com/FiloSottile/age/discussions/428 # encrypt and decrypt a file with an Ed25519 key encoded with PKCS#8 (0.036s) > age -e -i key.pem -o test.age input > age -d -i key.pem test.age [stdout] test > cmp stdout input > ! stderr . PASS === NAME TestScript/usage testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= # -help (0.051s) > age -p -help [stderr] Usage: age [--encrypt] (-r RECIPIENT | -R PATH)... [--armor] [-o OUTPUT] [INPUT] age [--encrypt] --passphrase [--armor] [-o OUTPUT] [INPUT] age --decrypt [-i PATH]... [-o OUTPUT] [INPUT] Options: -e, --encrypt Encrypt the input to the output. Default if omitted. -d, --decrypt Decrypt the input to the output. -o, --output OUTPUT Write the result to the file at path OUTPUT. -a, --armor Encrypt to a PEM encoded format. -p, --passphrase Encrypt with a passphrase. -r, --recipient RECIPIENT Encrypt to the specified RECIPIENT. Can be repeated. -R, --recipients-file PATH Encrypt to recipients listed at PATH. Can be repeated. -i, --identity PATH Use the identity file at PATH. Can be repeated. INPUT defaults to standard input, and OUTPUT defaults to standard output. If OUTPUT exists, it will be overwritten. RECIPIENT can be an age public key generated by age-keygen ("age1...") or an SSH public key ("ssh-ed25519 AAAA...", "ssh-rsa AAAA..."). Recipient files contain one or more recipients, one per line. Empty lines and lines starting with "#" are ignored as comments. "-" may be used to read recipients from standard input. Identity files contain one or more secret keys ("AGE-SECRET-KEY-1..."), one per line, or an SSH key. Empty lines and lines starting with "#" are ignored as comments. Passphrase encrypted age files can be used as identity files. Multiple key files can be provided, and any unused ones will be ignored. "-" may be used to read identities from standard input. When --encrypt is specified explicitly, -i can also be used to encrypt to an identity file symmetrically, instead or in addition to normal recipients. Example: $ age-keygen -o key.txt Public key: age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p $ tar cvz ~/data | age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p > data.tar.gz.age $ age --decrypt -i key.txt -o data.tar.gz data.tar.gz.age > ! stdout . > stderr 'Usage:' # -h (0.013s) > age -p -h [stderr] Usage: age [--encrypt] (-r RECIPIENT | -R PATH)... [--armor] [-o OUTPUT] [INPUT] age [--encrypt] --passphrase [--armor] [-o OUTPUT] [INPUT] age --decrypt [-i PATH]... [-o OUTPUT] [INPUT] Options: -e, --encrypt Encrypt the input to the output. Default if omitted. -d, --decrypt Decrypt the input to the output. -o, --output OUTPUT Write the result to the file at path OUTPUT. -a, --armor Encrypt to a PEM encoded format. -p, --passphrase Encrypt with a passphrase. -r, --recipient RECIPIENT Encrypt to the specified RECIPIENT. Can be repeated. -R, --recipients-file PATH Encrypt to recipients listed at PATH. Can be repeated. -i, --identity PATH Use the identity file at PATH. Can be repeated. INPUT defaults to standard input, and OUTPUT defaults to standard output. If OUTPUT exists, it will be overwritten. RECIPIENT can be an age public key generated by age-keygen ("age1...") or an SSH public key ("ssh-ed25519 AAAA...", "ssh-rsa AAAA..."). Recipient files contain one or more recipients, one per line. Empty lines and lines starting with "#" are ignored as comments. "-" may be used to read recipients from standard input. Identity files contain one or more secret keys ("AGE-SECRET-KEY-1..."), one per line, or an SSH key. Empty lines and lines starting with "#" are ignored as comments. Passphrase encrypted age files can be used as identity files. Multiple key files can be provided, and any unused ones will be ignored. "-" may be used to read identities from standard input. When --encrypt is specified explicitly, -i can also be used to encrypt to an identity file symmetrically, instead or in addition to normal recipients. Example: $ age-keygen -o key.txt Public key: age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p $ tar cvz ~/data | age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p > data.tar.gz.age $ age --decrypt -i key.txt -o data.tar.gz data.tar.gz.age > ! stdout . > stderr 'Usage:' # unknown flag (0.019s) > ! age -p -this-flag-does-not-exist [stderr] flag provided but not defined: -this-flag-does-not-exist Usage: age [--encrypt] (-r RECIPIENT | -R PATH)... [--armor] [-o OUTPUT] [INPUT] age [--encrypt] --passphrase [--armor] [-o OUTPUT] [INPUT] age --decrypt [-i PATH]... [-o OUTPUT] [INPUT] Options: -e, --encrypt Encrypt the input to the output. Default if omitted. -d, --decrypt Decrypt the input to the output. -o, --output OUTPUT Write the result to the file at path OUTPUT. -a, --armor Encrypt to a PEM encoded format. -p, --passphrase Encrypt with a passphrase. -r, --recipient RECIPIENT Encrypt to the specified RECIPIENT. Can be repeated. -R, --recipients-file PATH Encrypt to recipients listed at PATH. Can be repeated. -i, --identity PATH Use the identity file at PATH. Can be repeated. INPUT defaults to standard input, and OUTPUT defaults to standard output. If OUTPUT exists, it will be overwritten. RECIPIENT can be an age public key generated by age-keygen ("age1...") or an SSH public key ("ssh-ed25519 AAAA...", "ssh-rsa AAAA..."). Recipient files contain one or more recipients, one per line. Empty lines and lines starting with "#" are ignored as comments. "-" may be used to read recipients from standard input. Identity files contain one or more secret keys ("AGE-SECRET-KEY-1..."), one per line, or an SSH key. Empty lines and lines starting with "#" are ignored as comments. Passphrase encrypted age files can be used as identity files. Multiple key files can be provided, and any unused ones will be ignored. "-" may be used to read identities from standard input. When --encrypt is specified explicitly, -i can also be used to encrypt to an identity file symmetrically, instead or in addition to normal recipients. Example: $ age-keygen -o key.txt Public key: age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p $ tar cvz ~/data | age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p > data.tar.gz.age $ age --decrypt -i key.txt -o data.tar.gz data.tar.gz.age [exit status 2] > ! stdout . > stderr 'flag provided but not defined' > stderr 'Usage:' # no arguments (0.012s) > ! age [stderr] Usage: age [--encrypt] (-r RECIPIENT | -R PATH)... [--armor] [-o OUTPUT] [INPUT] age [--encrypt] --passphrase [--armor] [-o OUTPUT] [INPUT] age --decrypt [-i PATH]... [-o OUTPUT] [INPUT] Options: -e, --encrypt Encrypt the input to the output. Default if omitted. -d, --decrypt Decrypt the input to the output. -o, --output OUTPUT Write the result to the file at path OUTPUT. -a, --armor Encrypt to a PEM encoded format. -p, --passphrase Encrypt with a passphrase. -r, --recipient RECIPIENT Encrypt to the specified RECIPIENT. Can be repeated. -R, --recipients-file PATH Encrypt to recipients listed at PATH. Can be repeated. -i, --identity PATH Use the identity file at PATH. Can be repeated. INPUT defaults to standard input, and OUTPUT defaults to standard output. If OUTPUT exists, it will be overwritten. RECIPIENT can be an age public key generated by age-keygen ("age1...") or an SSH public key ("ssh-ed25519 AAAA...", "ssh-rsa AAAA..."). Recipient files contain one or more recipients, one per line. Empty lines and lines starting with "#" are ignored as comments. "-" may be used to read recipients from standard input. Identity files contain one or more secret keys ("AGE-SECRET-KEY-1..."), one per line, or an SSH key. Empty lines and lines starting with "#" are ignored as comments. Passphrase encrypted age files can be used as identity files. Multiple key files can be provided, and any unused ones will be ignored. "-" may be used to read identities from standard input. When --encrypt is specified explicitly, -i can also be used to encrypt to an identity file symmetrically, instead or in addition to normal recipients. Example: $ age-keygen -o key.txt Public key: age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p $ tar cvz ~/data | age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p > data.tar.gz.age $ age --decrypt -i key.txt -o data.tar.gz data.tar.gz.age [exit status 1] > ! stdout . > stderr 'Usage:' PASS === NAME TestScript/ed25519 testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= # encrypt and decrypt a file with -R (0.023s) > age -R key.pem.pub -o test.age input > age -d -i key.pem test.age [stdout] test > cmp stdout input > ! stderr . # encrypt and decrypt a file with -i (0.059s) > age -e -i key.pem -o test.age input > age -d -i key.pem test.age [stdout] test > cmp stdout input > ! stderr . # encrypt and decrypt a file with the wrong key (0.112s) > age -R otherkey.pem.pub -o test.age input > ! age -d -i key.pem test.age [stderr] age: error: no identity matched any of the recipients age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'no identity matched any of the recipients' > ! stdout . PASS === NAME TestScript/scrypt testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= > [!linux] [!darwin] skip # no pty support > [darwin] [go1.20] skip # https://go.dev/issue/61779 # encrypt with a provided passphrase (0.050s) > stdin input > ttyin terminal > age -p -o test.age > ttyout 'Enter passphrase' > ! stderr . > ! stdout . # decrypt with a provided passphrase (0.020s) > ttyin terminal > age -d test.age [stdout] test > ttyout 'Enter passphrase' > ! stderr . > cmp stdout input # decrypt with the wrong passphrase (0.017s) > ttyin wrong > ! age -d test.age [stderr] age: error: incorrect passphrase age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'incorrect passphrase' # encrypt with a generated passphrase (0.122s) > stdin input > ttyin empty > age -p -o test.age > ! stderr . > ! stdout . > ttyin autogenerated > age -d test.age [stdout] test > cmp stdout input # fail when -i is present (0.011s) > ttyin terminal > ! age -d -i key.txt test.age [stderr] age: error: file is passphrase-encrypted but identities were specified with -i/--identity or -j age: hint: remove all -i/--identity/-j flags to decrypt passphrase-encrypted files age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'file is passphrase-encrypted but identities were specified' # fail when passphrases don't match (0.009s) > ttyin wrong > ! age -p -o fail.age [stderr] age: error: passphrases didn't match age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'passphrases didn''t match' > ! exists fail.age PASS === NAME TestScript/plugin testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= # encrypt and decrypt a file with a test plugin (0.075s) > age -r age1test10qdmzv9q -o test.age input > age -d -i key.txt test.age [stdout] test > cmp stdout input > ! stderr . # very long identity and recipient (0.136s) > age -R long-recipient.txt -o test.age input > age -d -i long-key.txt test.age [stdout] test > cmp stdout input > ! stderr . # check that path separators are rejected (0.020s) > chmod 755 age-plugin-pwn/pwn > mkdir $TMPDIR/age-plugin-pwn > cp age-plugin-pwn/pwn $TMPDIR/age-plugin-pwn/pwn > ! age -r age1pwn/pwn19gt89dfz input [stderr] age: error: invalid plugin name: "pwn/pwn" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! age -d -i pwn-identity.txt test.age [stderr] age: error: reading "pwn-identity.txt": failed to read "pwn-identity.txt": error at line 1: invalid plugin name: "pwn/pwn" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! age -d -j pwn/pwn test.age [stderr] age: error: initializing "pwn/pwn": invalid plugin name: "pwn/pwn" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! exists pwn PASS === NAME TestScript/x25519 testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= # encrypt and decrypt a file with -r (0.066s) > age -r age1xmwwc06ly3ee5rytxm9mflaz2u56jjj36s0mypdrwsvlul66mv4q47ryef -o test.age input > age -d -i key.txt test.age [stdout] test > cmp stdout input > ! stderr . # encrypt and decrypt a file with -i (0.126s) > age -e -i key.txt -o test.age input > age -d -i key.txt test.age [stdout] test > cmp stdout input > ! stderr . # encrypt and decrypt a file with the wrong key (0.107s) > age -r age12phkzssndd5axajas2h74vtge62c86xjhd6u9anyanqhzvdg6sps0xthgl -o test.age input > ! age -d -i key.txt test.age [stderr] age: error: no identity matched any of the recipients age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'no identity matched any of the recipients' PASS === NAME TestScript/rsa testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= # encrypt and decrypt a file with -R (0.077s) > age -R key.pem.pub -o test.age input > age -d -i key.pem test.age [stdout] test > cmp stdout input > ! stderr . # encrypt and decrypt a file with -i (0.119s) > age -e -i key.pem -o test.age input > age -d -i key.pem test.age [stdout] test > cmp stdout input > ! stderr . # encrypt and decrypt a file with the wrong key (0.105s) > age -R otherkey.pem.pub -o test.age input > ! age -d -i key.pem test.age [stderr] age: error: no identity matched any of the recipients age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'no identity matched any of the recipients' PASS === NAME TestScript/terminal testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= > [!linux] [!darwin] skip # no pty support > [darwin] [go1.20] skip # https://go.dev/issue/61779 # controlling terminal is used instead of stdin/stderr (0.052s) > ttyin terminal > age -p -o test.age input > ! stderr . # autogenerated passphrase is printed to terminal (0.019s) > ttyin empty > age -p -o test.age input > ttyout 'autogenerated passphrase' > ! stderr . # with no controlling terminal, stdin terminal is used ## TODO: enable once https://golang.org/issue/53601 is fixed ## and Noctty is added to testscript. # noctty # ttyin -stdin terminal # age -p -o test.age input # ! stderr . # no terminal causes an error ## TODO: enable once https://golang.org/issue/53601 is fixed ## and Noctty is added to testscript. # noctty # ! age -p -o test.age input # stderr 'standard input is not a terminal' # prompt for password before plaintext if stdin is the terminal (0.105s) > exec cat terminal input # concatenated password + input [stdout] password password test > ttyin -stdin stdout > age -p -a -o test.age > ttyout 'Enter passphrase' > ! stderr . # check the file was encrypted correctly (0.017s) > ttyin terminal > age -d test.age [stdout] test > cmp stdout input # buffer armored ciphertext before prompting if stdin is the terminal (0.122s) > ttyin terminal > age -p -a -o test.age input > exec cat test.age terminal # concatenated ciphertext + password [stdout] -----BEGIN AGE ENCRYPTED FILE----- YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNjcnlwdCBBRE1lN3d5dHZpSklTVU9C S284Q1N3IDEwCnJxWGh4a1ZpYmgzKy9US2t0M3JoSDg5YXZoczFhOEJsVnU3ekpE SkpUdkUKLS0tIEEvOHlnV0RsRmpWSXI1ZFNwU0NkRmh6Q3N0TGFWamVidXg4OGhD dFUzMGMK9wcAL5WAWvk+AqVx6cxFe8pNA7iSFf/JLi5FXjozKWWz8B9nKA== -----END AGE ENCRYPTED FILE----- password password > ttyin -stdin stdout > age -d [stdout] test > ttyout 'Enter passphrase' > ! stderr . > cmp stdout input PASS === NAME TestScript/output_file testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= # https://github.com/FiloSottile/age/issues/57 (0.100s) > age -r age1xmwwc06ly3ee5rytxm9mflaz2u56jjj36s0mypdrwsvlul66mv4q47ryef -o test.age input > ! age -o test.out -d -i wrong.txt test.age [stderr] age: error: no identity matched any of the recipients age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! exists test.out > ! age -o test.out -d test.age [stderr] age: error: no identity matched any of the recipients age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! exists test.out > ! age -o test.out -d -i notexist test.age [stderr] age: error: reading "notexist": failed to open file: open notexist: no such file or directory age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! exists test.out > ! age -o test.out -d -i wrong.txt notexist [stderr] age: error: failed to open input file "notexist": open notexist: no such file or directory age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! exists test.out > ! age -o test.out -r BAD [stderr] age: error: unknown recipient type: "BAD" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! exists test.out > ! age -o test.out -r age1xmwwc06ly3ee5rytxm9mflaz2u56jjj36s0mypdrwsvlul66mv4q47ryef notexist [stderr] age: error: failed to open input file "notexist": open notexist: no such file or directory age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! exists test.out > ! age -o test.out -p notexist [stderr] age: error: failed to open input file "notexist": open notexist: no such file or directory age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ! exists test.out # https://github.com/FiloSottile/age/issues/555 (0.014s) > age -r age1xmwwc06ly3ee5rytxm9mflaz2u56jjj36s0mypdrwsvlul66mv4q47ryef -o empty.age empty > exists empty.age > age -d -i key.txt empty.age > ! stdout . > ! stderr . > age -d -i key.txt -o new empty.age > ! stderr . > cmp new empty # https://github.com/FiloSottile/age/issues/491 (0.084s) > cp input inputcopy > ! age -r age1xmwwc06ly3ee5rytxm9mflaz2u56jjj36s0mypdrwsvlul66mv4q47ryef -o inputcopy inputcopy [stderr] age: error: input and output file are the same: "inputcopy" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'input and output file are the same' > cmp inputcopy input > ! age -r age1xmwwc06ly3ee5rytxm9mflaz2u56jjj36s0mypdrwsvlul66mv4q47ryef -o ./inputcopy inputcopy [stderr] age: error: input and output file are the same: "./inputcopy" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'input and output file are the same' > cmp inputcopy input > mkdir foo > ! age -r age1xmwwc06ly3ee5rytxm9mflaz2u56jjj36s0mypdrwsvlul66mv4q47ryef -o inputcopy foo/../inputcopy [stderr] age: error: input and output file are the same: "inputcopy" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'input and output file are the same' > cmp inputcopy input > cp key.txt keycopy > age -e -i keycopy -o test.age input > ! age -d -i keycopy -o keycopy test.age [stderr] age: error: input and output file are the same: "keycopy" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'input and output file are the same' > cmp key.txt keycopy > [!linux] [!darwin] skip # no pty support > [darwin] [go1.20] skip # https://go.dev/issue/61779 > ttyin terminal > ! age -p -o inputcopy inputcopy [stderr] age: error: input and output file are the same: "inputcopy" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'input and output file are the same' > cmp inputcopy input # https://github.com/FiloSottile/age/issues/159 (0.115s) > ttyin terminal > age -p -a -o test.age input > ttyin terminalwrong > ! age -o test.out -d test.age [stderr] age: error: incorrect passphrase age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > ttyout 'Enter passphrase' > stderr 'incorrect passphrase' > ! exists test.out PASS === NAME TestScript/encrypted_keys testscript.go:558: WORK=$WORK PATH=/tmp/testscript-main3364674901/bin:/usr/lib/go-1.23/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path GOTRACEBACK=system HOME=/no-home TMPDIR=$WORK/.tmp devnull=/dev/null /=/ :=: $=$ exe= # TODO: age-encrypted private keys, multiple identities, -i ordering, -e -i, # age file password prompt during encryption (0.000s) > [!linux] [!darwin] skip # no pty support > [darwin] [go1.20] skip # https://go.dev/issue/61779 # use an encrypted OpenSSH private key without .pub file (0.299s) > age -R key_ed25519.pub -o ed25519.age input > rm key_ed25519.pub > ttyin terminal > age -d -i key_ed25519 ed25519.age [stdout] test > cmp stdout input > ! stderr . # -e -i with an encrypted OpenSSH private key (0.204s) > age -e -i key_ed25519 -o ed25519.age input > ttyin terminal > age -d -i key_ed25519 ed25519.age [stdout] test > cmp stdout input # a file encrypted to the wrong key does not ask for the password (0.010s) > age -R key_ed25519_other.pub -o ed25519_other.age input > ! age -d -i key_ed25519 ed25519_other.age [stderr] age: error: no identity matched any of the recipients age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'no identity matched any of the recipients' # use an encrypted legacy PEM private key with a .pub file (0.026s) > age -R key_rsa_legacy.pub -o rsa_legacy.age input > ttyin terminal > age -d -i key_rsa_legacy rsa_legacy.age [stdout] test > cmp stdout input > ! stderr . > age -R key_rsa_other.pub -o rsa_other.age input > ! age -d -i key_rsa_legacy rsa_other.age [stderr] age: error: no identity matched any of the recipients age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'no identity matched any of the recipients' # -e -i with an encrypted legacy PEM private key (0.039s) > age -e -i key_rsa_legacy -o rsa_legacy.age input > ttyin terminal > age -d -i key_rsa_legacy rsa_legacy.age [stdout] test > cmp stdout input # legacy PEM private key without a .pub file causes an error (0.009s) > rm key_rsa_legacy.pub > ! age -d -i key_rsa_legacy rsa_legacy.age [stderr] age: error: reading "key_rsa_legacy": failed to obtain public key for "key_rsa_legacy" SSH key: open key_rsa_legacy.pub: no such file or directory Ensure "key_rsa_legacy.pub" exists, or convert the private key "key_rsa_legacy" to a modern format with "ssh-keygen -p -m RFC4716" age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'key_rsa_legacy.pub' # mismatched .pub file causes an error (0.006s) > cp key_rsa_legacy key_rsa_other > ttyin terminal > ! age -d -i key_rsa_other rsa_other.age [stderr] age: error: mismatched private and public SSH key age: report unexpected or unhelpful errors at https://filippo.io/age/report [exit status 1] > stderr 'mismatched private and public SSH key' # buffer armored ciphertext before prompting if stdin is the terminal (0.198s) > ttyin terminal > age -e -i key_ed25519 -a -o test.age input > exec cat test.age terminal # concatenated ciphertext + password [stdout] -----BEGIN AGE ENCRYPTED FILE----- YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IHNzaC1lZDI1NTE5IG5zRGRiZyBhVjBl SWN0emg3UkJmTm1zaDUxNVhHdEtXY1gwTjB4R2FnSkdQRVkvbWpJCm5nUE5qMnA5 NENDaXJrQ2l1WmVmSFA1UVYrY0QwcjdHS3R5czl1bGowSDQKLS0tIGRTaGtlWmlM UXJPb2lSRTJkOUptS3puVGRhTExZNkZxeFFTZlUrbkwwK1UKnHcrpgco63UL+0sh KBj8vhjWxU2G4Ck/MMyNr+1RAEYTrWjghw== -----END AGE ENCRYPTED FILE----- password > ttyin -stdin stdout > age -d -i key_ed25519 [stdout] test > ttyout 'Enter passphrase' > ! stderr . > cmp stdout input PASS --- PASS: TestScript (0.00s) --- PASS: TestScript/pkcs8 (0.04s) --- PASS: TestScript/usage (0.10s) --- PASS: TestScript/ed25519 (0.20s) --- PASS: TestScript/scrypt (0.23s) --- PASS: TestScript/plugin (0.23s) --- PASS: TestScript/x25519 (0.30s) --- PASS: TestScript/rsa (0.30s) --- PASS: TestScript/terminal (0.32s) --- PASS: TestScript/output_file (0.34s) --- PASS: TestScript/encrypted_keys (0.79s) PASS ok filippo.io/age/cmd/age 0.809s === RUN TestBech32 --- PASS: TestBech32 (0.00s) PASS ok filippo.io/age/internal/bech32 0.006s === RUN TestStanzaMarshal --- PASS: TestStanzaMarshal (0.00s) === RUN FuzzMalleability --- PASS: FuzzMalleability (0.00s) PASS ok filippo.io/age/internal/format 0.012s === RUN TestRoundTrip === RUN TestRoundTrip/len=0,step=512 stream_test.go:72: buffer size: 16 === RUN TestRoundTrip/len=1000,step=512 stream_test.go:72: buffer size: 1016 === RUN TestRoundTrip/len=65536,step=512 stream_test.go:72: buffer size: 65552 === RUN TestRoundTrip/len=65636,step=512 stream_test.go:72: buffer size: 65668 === RUN TestRoundTrip/len=0,step=600 stream_test.go:72: buffer size: 16 === RUN TestRoundTrip/len=1000,step=600 stream_test.go:72: buffer size: 1016 === RUN TestRoundTrip/len=65536,step=600 stream_test.go:72: buffer size: 65552 === RUN TestRoundTrip/len=65636,step=600 stream_test.go:72: buffer size: 65668 === RUN TestRoundTrip/len=0,step=1000 stream_test.go:72: buffer size: 16 === RUN TestRoundTrip/len=1000,step=1000 stream_test.go:72: buffer size: 1016 === RUN TestRoundTrip/len=65536,step=1000 stream_test.go:72: buffer size: 65552 === RUN TestRoundTrip/len=65636,step=1000 stream_test.go:72: buffer size: 65668 === RUN TestRoundTrip/len=0,step=65536 stream_test.go:72: buffer size: 16 === RUN TestRoundTrip/len=1000,step=65536 stream_test.go:72: buffer size: 1016 === RUN TestRoundTrip/len=65536,step=65536 stream_test.go:72: buffer size: 65552 === RUN TestRoundTrip/len=65636,step=65536 stream_test.go:72: buffer size: 65668 --- PASS: TestRoundTrip (0.01s) --- PASS: TestRoundTrip/len=0,step=512 (0.00s) --- PASS: TestRoundTrip/len=1000,step=512 (0.00s) --- PASS: TestRoundTrip/len=65536,step=512 (0.00s) --- PASS: TestRoundTrip/len=65636,step=512 (0.00s) --- PASS: TestRoundTrip/len=0,step=600 (0.00s) --- PASS: TestRoundTrip/len=1000,step=600 (0.00s) --- PASS: TestRoundTrip/len=65536,step=600 (0.00s) --- PASS: TestRoundTrip/len=65636,step=600 (0.00s) --- PASS: TestRoundTrip/len=0,step=1000 (0.00s) --- PASS: TestRoundTrip/len=1000,step=1000 (0.00s) --- PASS: TestRoundTrip/len=65536,step=1000 (0.00s) --- PASS: TestRoundTrip/len=65636,step=1000 (0.00s) --- PASS: TestRoundTrip/len=0,step=65536 (0.00s) --- PASS: TestRoundTrip/len=1000,step=65536 (0.00s) --- PASS: TestRoundTrip/len=65536,step=65536 (0.00s) --- PASS: TestRoundTrip/len=65636,step=65536 (0.00s) PASS ok filippo.io/age/internal/stream 0.023s === RUN TestLabels --- PASS: TestLabels (0.05s) PASS ok filippo.io/age/plugin 0.054s create-stamp debian/debhelper-build-stamp dh_testroot -O--builddirectory=_build -O--buildsystem=golang dh_prep -O--builddirectory=_build -O--buildsystem=golang dh_auto_install -O--builddirectory=_build -O--buildsystem=golang cd _build && mkdir -p /build/reproducible-path/age-1.2.1/debian/tmp/usr cd _build && cp -r bin /build/reproducible-path/age-1.2.1/debian/tmp/usr dh_install -O--builddirectory=_build -O--buildsystem=golang dh_installdocs -O--builddirectory=_build -O--buildsystem=golang dh_installchangelogs -O--builddirectory=_build -O--buildsystem=golang dh_installman -O--builddirectory=_build -O--buildsystem=golang dh_installsystemduser -O--builddirectory=_build -O--buildsystem=golang dh_lintian -O--builddirectory=_build -O--buildsystem=golang dh_perl -O--builddirectory=_build -O--buildsystem=golang dh_link -O--builddirectory=_build -O--buildsystem=golang dh_strip_nondeterminism -O--builddirectory=_build -O--buildsystem=golang dh_compress -O--builddirectory=_build -O--buildsystem=golang dh_fixperms -O--builddirectory=_build -O--buildsystem=golang dh_missing -O--builddirectory=_build -O--buildsystem=golang dh_strip -a -O--builddirectory=_build -O--buildsystem=golang dh_strip: warning: Could not find the BuildID in debian/age/usr/bin/age-keygen dh_makeshlibs -a -O--builddirectory=_build -O--buildsystem=golang dh_shlibdeps -a -O--builddirectory=_build -O--buildsystem=golang dpkg-shlibdeps: warning: couldn't parse dynamic symbol definition: no symbols dh_installdeb -O--builddirectory=_build -O--buildsystem=golang dh_golang -O--builddirectory=_build -O--buildsystem=golang dh_gencontrol -O--builddirectory=_build -O--buildsystem=golang dpkg-gencontrol: warning: package age: substitution variable ${misc:Static-Built-Using} unused, but is defined dpkg-gencontrol: warning: package age: substitution variable ${misc:Static-Built-Using} unused, but is defined dh_md5sums -O--builddirectory=_build -O--buildsystem=golang dh_builddeb -O--builddirectory=_build -O--buildsystem=golang dpkg-deb: building package 'age-dbgsym' in '../age-dbgsym_1.2.1-1_amd64.deb'. dpkg-deb: building package 'age' in '../age_1.2.1-1_amd64.deb'. dpkg-deb: building package 'golang-filippo-age-dev' in '../golang-filippo-age-dev_1.2.1-1_all.deb'. dpkg-genbuildinfo --build=binary -O../age_1.2.1-1_amd64.buildinfo dpkg-genchanges --build=binary -O../age_1.2.1-1_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: including full source code in upload I: copying local configuration I: user script /srv/workspace/pbuilder/3939872/tmp/hooks/B01_cleanup starting I: user script /srv/workspace/pbuilder/3939872/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/3939872 and its subdirectories I: Current time: Fri Jan 23 04:39:49 +14 2026 I: pbuilder-time-stamp: 1769092789