0s autopkgtest [23:26:39]: starting date and time: 2025-01-02 23:26:39+0000 0s autopkgtest [23:26:39]: git checkout: 325255d2 Merge branch 'pin-any-arch' into 'ubuntu/production' 0s autopkgtest [23:26:39]: host juju-7f2275-prod-proposed-migration-environment-20; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.2iv4vw6n/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:debhelper --apt-upgrade debputy --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=debhelper/13.23ubuntu1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-20@bos03-arm64-41.secgroup --name adt-plucky-arm64-debputy-20250102-224136-juju-7f2275-prod-proposed-migration-environment-20-d8953201-a476-46be-bf5c-f5070ff85b4b --image adt/ubuntu-plucky-arm64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-20 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com,radosgw.ps5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 96s autopkgtest [23:28:15]: testbed dpkg architecture: arm64 96s autopkgtest [23:28:15]: testbed apt version: 2.9.18 96s autopkgtest [23:28:15]: @@@@@@@@@@@@@@@@@@@@ test bed setup 96s autopkgtest [23:28:15]: testbed release detected to be: None 97s autopkgtest [23:28:16]: updating testbed package index (apt update) 97s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 98s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 98s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 98s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 98s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [10.1 kB] 98s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [58.3 kB] 98s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [9708 B] 98s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [648 kB] 98s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [82.4 kB] 98s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 Packages [57.8 kB] 98s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [520 kB] 98s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 Packages [8824 B] 98s Fetched 1469 kB in 1s (1405 kB/s) 99s Reading package lists... 100s Reading package lists... 100s Building dependency tree... 100s Reading state information... 101s Calculating upgrade... 101s The following packages will be upgraded: 101s base-passwd bash-completion 101s 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 101s Need to get 267 kB of archives. 101s After this operation, 143 kB of additional disk space will be used. 101s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 base-passwd arm64 3.6.6 [53.6 kB] 101s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 bash-completion all 1:2.16.0-1 [214 kB] 102s Preconfiguring packages ... 102s Fetched 267 kB in 0s (575 kB/s) 102s (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 ... 80060 files and directories currently installed.) 102s Preparing to unpack .../base-passwd_3.6.6_arm64.deb ... 102s Unpacking base-passwd (3.6.6) over (3.6.5) ... 102s Setting up base-passwd (3.6.6) ... 103s (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 ... 80060 files and directories currently installed.) 103s Preparing to unpack .../bash-completion_1%3a2.16.0-1_all.deb ... 103s Unpacking bash-completion (1:2.16.0-1) over (1:2.14.0-2) ... 103s Setting up bash-completion (1:2.16.0-1) ... 103s Processing triggers for man-db (2.13.0-1) ... 104s Reading package lists... 105s Building dependency tree... 105s Reading state information... 105s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 105s autopkgtest [23:28:24]: upgrading testbed (apt dist-upgrade and autopurge) 106s Reading package lists... 106s Building dependency tree... 106s Reading state information... 106s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 106s Starting 2 pkgProblemResolver with broken count: 0 106s Done 107s Entering ResolveByKeep 107s 108s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 108s Reading package lists... 109s Building dependency tree... 109s Reading state information... 110s Starting pkgProblemResolver with broken count: 0 110s Starting 2 pkgProblemResolver with broken count: 0 110s Done 112s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 114s autopkgtest [23:28:33]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 16 14:19:41 UTC 2024 115s autopkgtest [23:28:34]: @@@@@@@@@@@@@@@@@@@@ apt-source debputy 117s Get:1 http://ftpmaster.internal/ubuntu plucky/universe debputy 0.1.58 (dsc) [2145 B] 117s Get:2 http://ftpmaster.internal/ubuntu plucky/universe debputy 0.1.58 (tar) [661 kB] 117s gpgv: Signature made Sun Dec 29 13:47:09 2024 UTC 117s gpgv: using RSA key F5E7199AEF5E5C67E555873F740D68888365D289 117s gpgv: issuer "niels@thykier.net" 117s gpgv: Can't check signature: No public key 117s dpkg-source: warning: cannot verify inline signature for ./debputy_0.1.58.dsc: no acceptable signature found 117s autopkgtest [23:28:36]: testing package debputy version 0.1.58 117s autopkgtest [23:28:36]: build not needed 118s autopkgtest [23:28:37]: test debputy-py.test: preparing testbed 118s Reading package lists... 119s Building dependency tree... 119s Reading state information... 119s Starting pkgProblemResolver with broken count: 0 120s Starting 2 pkgProblemResolver with broken count: 0 120s Done 121s The following NEW packages will be installed: 121s autoconf automake autopoint autotools-dev cpp cpp-14 121s cpp-14-aarch64-linux-gnu cpp-aarch64-linux-gnu debhelper debugedit 121s dh-autoreconf dh-debputy dh-strip-nondeterminism dwz gcc gcc-14 121s gcc-14-aarch64-linux-gnu gcc-aarch64-linux-gnu gettext intltool-debian 121s libarchive-zip-perl libasan8 libcc1-0 libdebhelper-perl 121s libfile-stripnondeterminism-perl libgcc-14-dev libgomp1 libhwasan0 libisl23 121s libitm1 liblsan0 libmpc3 libpython3.13-minimal libpython3.13-stdlib libtool 121s libtsan2 libubsan1 m4 po-debconf python3-all python3-cattr python3-colored 121s python3-colorlog python3-debian python3-iniconfig python3-lsprotocol 121s python3-packaging python3-pluggy python3-pytest python3-ruyaml python3.13 121s python3.13-minimal strip-nondeterminism 121s 0 upgraded, 53 newly installed, 0 to remove and 0 not upgraded. 121s Need to get 56.8 MB of archives. 121s After this operation, 193 MB of additional disk space will be used. 121s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 libpython3.13-minimal arm64 3.13.1-2 [879 kB] 121s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 python3.13-minimal arm64 3.13.1-2 [2262 kB] 122s Get:3 http://ftpmaster.internal/ubuntu plucky/main arm64 m4 arm64 1.4.19-4build1 [240 kB] 122s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 autoconf all 2.72-3 [382 kB] 122s Get:5 http://ftpmaster.internal/ubuntu plucky/main arm64 autotools-dev all 20220109.1 [44.9 kB] 122s Get:6 http://ftpmaster.internal/ubuntu plucky/main arm64 automake all 1:1.16.5-1.3ubuntu1 [558 kB] 122s Get:7 http://ftpmaster.internal/ubuntu plucky/main arm64 autopoint all 0.22.5-3 [616 kB] 122s Get:8 http://ftpmaster.internal/ubuntu plucky/main arm64 libisl23 arm64 0.27-1 [676 kB] 122s Get:9 http://ftpmaster.internal/ubuntu plucky/main arm64 libmpc3 arm64 1.3.1-1build2 [56.8 kB] 122s Get:10 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-14-aarch64-linux-gnu arm64 14.2.0-12ubuntu1 [10.6 MB] 123s Get:11 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-14 arm64 14.2.0-12ubuntu1 [1032 B] 123s Get:12 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-aarch64-linux-gnu arm64 4:14.1.0-2ubuntu1 [5452 B] 123s Get:13 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp arm64 4:14.1.0-2ubuntu1 [22.5 kB] 123s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 libdebhelper-perl all 13.23ubuntu1 [95.1 kB] 123s Get:15 http://ftpmaster.internal/ubuntu plucky/main arm64 libcc1-0 arm64 14.2.0-12ubuntu1 [49.6 kB] 123s Get:16 http://ftpmaster.internal/ubuntu plucky/main arm64 libgomp1 arm64 14.2.0-12ubuntu1 [145 kB] 123s Get:17 http://ftpmaster.internal/ubuntu plucky/main arm64 libitm1 arm64 14.2.0-12ubuntu1 [27.7 kB] 123s Get:18 http://ftpmaster.internal/ubuntu plucky/main arm64 libasan8 arm64 14.2.0-12ubuntu1 [2896 kB] 124s Get:19 http://ftpmaster.internal/ubuntu plucky/main arm64 liblsan0 arm64 14.2.0-12ubuntu1 [1283 kB] 124s Get:20 http://ftpmaster.internal/ubuntu plucky/main arm64 libtsan2 arm64 14.2.0-12ubuntu1 [2687 kB] 124s Get:21 http://ftpmaster.internal/ubuntu plucky/main arm64 libubsan1 arm64 14.2.0-12ubuntu1 [1152 kB] 124s Get:22 http://ftpmaster.internal/ubuntu plucky/main arm64 libhwasan0 arm64 14.2.0-12ubuntu1 [1598 kB] 124s Get:23 http://ftpmaster.internal/ubuntu plucky/main arm64 libgcc-14-dev arm64 14.2.0-12ubuntu1 [2596 kB] 124s Get:24 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-14-aarch64-linux-gnu arm64 14.2.0-12ubuntu1 [20.9 MB] 125s Get:25 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-14 arm64 14.2.0-12ubuntu1 [522 kB] 125s Get:26 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-aarch64-linux-gnu arm64 4:14.1.0-2ubuntu1 [1200 B] 125s Get:27 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc arm64 4:14.1.0-2ubuntu1 [4994 B] 125s Get:28 http://ftpmaster.internal/ubuntu plucky/main arm64 libtool all 2.4.7-8 [166 kB] 125s Get:29 http://ftpmaster.internal/ubuntu plucky/main arm64 dh-autoreconf all 20 [16.1 kB] 125s Get:30 http://ftpmaster.internal/ubuntu plucky/main arm64 libarchive-zip-perl all 1.68-1 [90.2 kB] 125s Get:31 http://ftpmaster.internal/ubuntu plucky/main arm64 libfile-stripnondeterminism-perl all 1.14.0-1 [20.1 kB] 125s Get:32 http://ftpmaster.internal/ubuntu plucky/main arm64 dh-strip-nondeterminism all 1.14.0-1 [5058 B] 125s Get:33 http://ftpmaster.internal/ubuntu plucky/main arm64 debugedit arm64 1:5.1-1 [45.9 kB] 125s Get:34 http://ftpmaster.internal/ubuntu plucky/main arm64 dwz arm64 0.15-1build6 [113 kB] 125s Get:35 http://ftpmaster.internal/ubuntu plucky/main arm64 gettext arm64 0.22.5-3 [932 kB] 125s Get:36 http://ftpmaster.internal/ubuntu plucky/main arm64 intltool-debian all 0.35.0+20060710.6 [23.2 kB] 125s Get:37 http://ftpmaster.internal/ubuntu plucky/main arm64 po-debconf all 1.0.21+nmu1 [233 kB] 125s Get:38 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 debhelper all 13.23ubuntu1 [895 kB] 125s Get:39 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-colored all 2.2.4-1 [14.2 kB] 125s Get:40 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-colorlog all 6.9.0-1 [21.6 kB] 125s Get:41 http://ftpmaster.internal/ubuntu plucky/main arm64 python3-debian all 0.1.49ubuntu3 [116 kB] 125s Get:42 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-ruyaml all 0.91.0-3 [107 kB] 125s Get:43 http://ftpmaster.internal/ubuntu plucky/universe arm64 strip-nondeterminism all 1.14.0-1 [5552 B] 125s Get:44 http://ftpmaster.internal/ubuntu plucky/universe arm64 dh-debputy all 0.1.58 [466 kB] 125s Get:45 http://ftpmaster.internal/ubuntu plucky/main arm64 libpython3.13-stdlib arm64 3.13.1-2 [2061 kB] 125s Get:46 http://ftpmaster.internal/ubuntu plucky/main arm64 python3.13 arm64 3.13.1-2 [729 kB] 125s Get:47 http://ftpmaster.internal/ubuntu plucky/main arm64 python3-all arm64 3.12.8-1 [892 B] 125s Get:48 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-cattr all 23.2.3-1ubuntu1 [38.3 kB] 125s Get:49 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-iniconfig all 1.1.1-2 [6024 B] 125s Get:50 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-lsprotocol all 2023.0.1-1 [58.3 kB] 125s Get:51 http://ftpmaster.internal/ubuntu plucky/main arm64 python3-packaging all 24.2-1 [51.5 kB] 125s Get:52 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-pluggy all 1.5.0-1 [21.0 kB] 125s Get:53 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-pytest all 8.3.3-1 [251 kB] 126s Fetched 56.8 MB in 4s (13.0 MB/s) 126s Selecting previously unselected package libpython3.13-minimal:arm64. 126s (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 ... 80185 files and directories currently installed.) 126s Preparing to unpack .../00-libpython3.13-minimal_3.13.1-2_arm64.deb ... 126s Unpacking libpython3.13-minimal:arm64 (3.13.1-2) ... 126s Selecting previously unselected package python3.13-minimal. 126s Preparing to unpack .../01-python3.13-minimal_3.13.1-2_arm64.deb ... 126s Unpacking python3.13-minimal (3.13.1-2) ... 126s Selecting previously unselected package m4. 126s Preparing to unpack .../02-m4_1.4.19-4build1_arm64.deb ... 126s Unpacking m4 (1.4.19-4build1) ... 126s Selecting previously unselected package autoconf. 126s Preparing to unpack .../03-autoconf_2.72-3_all.deb ... 126s Unpacking autoconf (2.72-3) ... 126s Selecting previously unselected package autotools-dev. 126s Preparing to unpack .../04-autotools-dev_20220109.1_all.deb ... 126s Unpacking autotools-dev (20220109.1) ... 126s Selecting previously unselected package automake. 126s Preparing to unpack .../05-automake_1%3a1.16.5-1.3ubuntu1_all.deb ... 126s Unpacking automake (1:1.16.5-1.3ubuntu1) ... 126s Selecting previously unselected package autopoint. 126s Preparing to unpack .../06-autopoint_0.22.5-3_all.deb ... 126s Unpacking autopoint (0.22.5-3) ... 126s Selecting previously unselected package libisl23:arm64. 126s Preparing to unpack .../07-libisl23_0.27-1_arm64.deb ... 126s Unpacking libisl23:arm64 (0.27-1) ... 126s Selecting previously unselected package libmpc3:arm64. 126s Preparing to unpack .../08-libmpc3_1.3.1-1build2_arm64.deb ... 126s Unpacking libmpc3:arm64 (1.3.1-1build2) ... 126s Selecting previously unselected package cpp-14-aarch64-linux-gnu. 126s Preparing to unpack .../09-cpp-14-aarch64-linux-gnu_14.2.0-12ubuntu1_arm64.deb ... 126s Unpacking cpp-14-aarch64-linux-gnu (14.2.0-12ubuntu1) ... 126s Selecting previously unselected package cpp-14. 126s Preparing to unpack .../10-cpp-14_14.2.0-12ubuntu1_arm64.deb ... 126s Unpacking cpp-14 (14.2.0-12ubuntu1) ... 126s Selecting previously unselected package cpp-aarch64-linux-gnu. 126s Preparing to unpack .../11-cpp-aarch64-linux-gnu_4%3a14.1.0-2ubuntu1_arm64.deb ... 126s Unpacking cpp-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 126s Selecting previously unselected package cpp. 126s Preparing to unpack .../12-cpp_4%3a14.1.0-2ubuntu1_arm64.deb ... 126s Unpacking cpp (4:14.1.0-2ubuntu1) ... 126s Selecting previously unselected package libdebhelper-perl. 126s Preparing to unpack .../13-libdebhelper-perl_13.23ubuntu1_all.deb ... 126s Unpacking libdebhelper-perl (13.23ubuntu1) ... 127s Selecting previously unselected package libcc1-0:arm64. 127s Preparing to unpack .../14-libcc1-0_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking libcc1-0:arm64 (14.2.0-12ubuntu1) ... 127s Selecting previously unselected package libgomp1:arm64. 127s Preparing to unpack .../15-libgomp1_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking libgomp1:arm64 (14.2.0-12ubuntu1) ... 127s Selecting previously unselected package libitm1:arm64. 127s Preparing to unpack .../16-libitm1_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking libitm1:arm64 (14.2.0-12ubuntu1) ... 127s Selecting previously unselected package libasan8:arm64. 127s Preparing to unpack .../17-libasan8_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking libasan8:arm64 (14.2.0-12ubuntu1) ... 127s Selecting previously unselected package liblsan0:arm64. 127s Preparing to unpack .../18-liblsan0_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking liblsan0:arm64 (14.2.0-12ubuntu1) ... 127s Selecting previously unselected package libtsan2:arm64. 127s Preparing to unpack .../19-libtsan2_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking libtsan2:arm64 (14.2.0-12ubuntu1) ... 127s Selecting previously unselected package libubsan1:arm64. 127s Preparing to unpack .../20-libubsan1_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking libubsan1:arm64 (14.2.0-12ubuntu1) ... 127s Selecting previously unselected package libhwasan0:arm64. 127s Preparing to unpack .../21-libhwasan0_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking libhwasan0:arm64 (14.2.0-12ubuntu1) ... 127s Selecting previously unselected package libgcc-14-dev:arm64. 127s Preparing to unpack .../22-libgcc-14-dev_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking libgcc-14-dev:arm64 (14.2.0-12ubuntu1) ... 127s Selecting previously unselected package gcc-14-aarch64-linux-gnu. 127s Preparing to unpack .../23-gcc-14-aarch64-linux-gnu_14.2.0-12ubuntu1_arm64.deb ... 127s Unpacking gcc-14-aarch64-linux-gnu (14.2.0-12ubuntu1) ... 128s Selecting previously unselected package gcc-14. 128s Preparing to unpack .../24-gcc-14_14.2.0-12ubuntu1_arm64.deb ... 128s Unpacking gcc-14 (14.2.0-12ubuntu1) ... 128s Selecting previously unselected package gcc-aarch64-linux-gnu. 128s Preparing to unpack .../25-gcc-aarch64-linux-gnu_4%3a14.1.0-2ubuntu1_arm64.deb ... 128s Unpacking gcc-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 128s Selecting previously unselected package gcc. 128s Preparing to unpack .../26-gcc_4%3a14.1.0-2ubuntu1_arm64.deb ... 128s Unpacking gcc (4:14.1.0-2ubuntu1) ... 128s Selecting previously unselected package libtool. 128s Preparing to unpack .../27-libtool_2.4.7-8_all.deb ... 128s Unpacking libtool (2.4.7-8) ... 128s Selecting previously unselected package dh-autoreconf. 128s Preparing to unpack .../28-dh-autoreconf_20_all.deb ... 128s Unpacking dh-autoreconf (20) ... 128s Selecting previously unselected package libarchive-zip-perl. 128s Preparing to unpack .../29-libarchive-zip-perl_1.68-1_all.deb ... 128s Unpacking libarchive-zip-perl (1.68-1) ... 128s Selecting previously unselected package libfile-stripnondeterminism-perl. 128s Preparing to unpack .../30-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... 128s Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... 128s Selecting previously unselected package dh-strip-nondeterminism. 128s Preparing to unpack .../31-dh-strip-nondeterminism_1.14.0-1_all.deb ... 128s Unpacking dh-strip-nondeterminism (1.14.0-1) ... 128s Selecting previously unselected package debugedit. 128s Preparing to unpack .../32-debugedit_1%3a5.1-1_arm64.deb ... 128s Unpacking debugedit (1:5.1-1) ... 128s Selecting previously unselected package dwz. 128s Preparing to unpack .../33-dwz_0.15-1build6_arm64.deb ... 128s Unpacking dwz (0.15-1build6) ... 128s Selecting previously unselected package gettext. 128s Preparing to unpack .../34-gettext_0.22.5-3_arm64.deb ... 128s Unpacking gettext (0.22.5-3) ... 128s Selecting previously unselected package intltool-debian. 128s Preparing to unpack .../35-intltool-debian_0.35.0+20060710.6_all.deb ... 128s Unpacking intltool-debian (0.35.0+20060710.6) ... 128s Selecting previously unselected package po-debconf. 128s Preparing to unpack .../36-po-debconf_1.0.21+nmu1_all.deb ... 128s Unpacking po-debconf (1.0.21+nmu1) ... 128s Selecting previously unselected package debhelper. 128s Preparing to unpack .../37-debhelper_13.23ubuntu1_all.deb ... 128s Unpacking debhelper (13.23ubuntu1) ... 128s Selecting previously unselected package python3-colored. 128s Preparing to unpack .../38-python3-colored_2.2.4-1_all.deb ... 128s Unpacking python3-colored (2.2.4-1) ... 128s Selecting previously unselected package python3-colorlog. 128s Preparing to unpack .../39-python3-colorlog_6.9.0-1_all.deb ... 128s Unpacking python3-colorlog (6.9.0-1) ... 128s Selecting previously unselected package python3-debian. 128s Preparing to unpack .../40-python3-debian_0.1.49ubuntu3_all.deb ... 128s Unpacking python3-debian (0.1.49ubuntu3) ... 128s Selecting previously unselected package python3-ruyaml. 128s Preparing to unpack .../41-python3-ruyaml_0.91.0-3_all.deb ... 128s Unpacking python3-ruyaml (0.91.0-3) ... 128s Selecting previously unselected package strip-nondeterminism. 128s Preparing to unpack .../42-strip-nondeterminism_1.14.0-1_all.deb ... 128s Unpacking strip-nondeterminism (1.14.0-1) ... 128s Selecting previously unselected package dh-debputy. 128s Preparing to unpack .../43-dh-debputy_0.1.58_all.deb ... 128s Unpacking dh-debputy (0.1.58) ... 129s Selecting previously unselected package libpython3.13-stdlib:arm64. 129s Preparing to unpack .../44-libpython3.13-stdlib_3.13.1-2_arm64.deb ... 129s Unpacking libpython3.13-stdlib:arm64 (3.13.1-2) ... 129s Selecting previously unselected package python3.13. 129s Preparing to unpack .../45-python3.13_3.13.1-2_arm64.deb ... 129s Unpacking python3.13 (3.13.1-2) ... 129s Selecting previously unselected package python3-all. 129s Preparing to unpack .../46-python3-all_3.12.8-1_arm64.deb ... 129s Unpacking python3-all (3.12.8-1) ... 129s Selecting previously unselected package python3-cattr. 129s Preparing to unpack .../47-python3-cattr_23.2.3-1ubuntu1_all.deb ... 129s Unpacking python3-cattr (23.2.3-1ubuntu1) ... 129s Selecting previously unselected package python3-iniconfig. 129s Preparing to unpack .../48-python3-iniconfig_1.1.1-2_all.deb ... 129s Unpacking python3-iniconfig (1.1.1-2) ... 129s Selecting previously unselected package python3-lsprotocol. 129s Preparing to unpack .../49-python3-lsprotocol_2023.0.1-1_all.deb ... 129s Unpacking python3-lsprotocol (2023.0.1-1) ... 129s Selecting previously unselected package python3-packaging. 129s Preparing to unpack .../50-python3-packaging_24.2-1_all.deb ... 129s Unpacking python3-packaging (24.2-1) ... 129s Selecting previously unselected package python3-pluggy. 129s Preparing to unpack .../51-python3-pluggy_1.5.0-1_all.deb ... 129s Unpacking python3-pluggy (1.5.0-1) ... 129s Selecting previously unselected package python3-pytest. 129s Preparing to unpack .../52-python3-pytest_8.3.3-1_all.deb ... 129s Unpacking python3-pytest (8.3.3-1) ... 129s Setting up python3-iniconfig (1.1.1-2) ... 129s Setting up python3-colorlog (6.9.0-1) ... 129s Setting up libarchive-zip-perl (1.68-1) ... 129s Setting up libdebhelper-perl (13.23ubuntu1) ... 129s Setting up m4 (1.4.19-4build1) ... 129s Setting up libgomp1:arm64 (14.2.0-12ubuntu1) ... 129s Setting up libpython3.13-minimal:arm64 (3.13.1-2) ... 129s Setting up autotools-dev (20220109.1) ... 129s Setting up python3-packaging (24.2-1) ... 130s Setting up python3-cattr (23.2.3-1ubuntu1) ... 130s Setting up python3-debian (0.1.49ubuntu3) ... 130s Setting up libmpc3:arm64 (1.3.1-1build2) ... 130s Setting up autopoint (0.22.5-3) ... 130s Setting up autoconf (2.72-3) ... 130s Setting up python3-pluggy (1.5.0-1) ... 130s Setting up libubsan1:arm64 (14.2.0-12ubuntu1) ... 130s Setting up dwz (0.15-1build6) ... 130s Setting up libhwasan0:arm64 (14.2.0-12ubuntu1) ... 130s Setting up libasan8:arm64 (14.2.0-12ubuntu1) ... 130s Setting up debugedit (1:5.1-1) ... 130s Setting up python3.13-minimal (3.13.1-2) ... 131s Setting up python3-colored (2.2.4-1) ... 131s Setting up libtsan2:arm64 (14.2.0-12ubuntu1) ... 131s Setting up libisl23:arm64 (0.27-1) ... 131s Setting up python3-ruyaml (0.91.0-3) ... 132s Setting up libpython3.13-stdlib:arm64 (3.13.1-2) ... 132s Setting up libcc1-0:arm64 (14.2.0-12ubuntu1) ... 132s Setting up liblsan0:arm64 (14.2.0-12ubuntu1) ... 132s Setting up libitm1:arm64 (14.2.0-12ubuntu1) ... 132s Setting up automake (1:1.16.5-1.3ubuntu1) ... 132s update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode 132s Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... 132s Setting up gettext (0.22.5-3) ... 132s Setting up python3-lsprotocol (2023.0.1-1) ... 132s Setting up python3.13 (3.13.1-2) ... 133s Setting up python3-pytest (8.3.3-1) ... 134s Setting up python3-all (3.12.8-1) ... 134s Setting up strip-nondeterminism (1.14.0-1) ... 134s Setting up intltool-debian (0.35.0+20060710.6) ... 134s Setting up dh-strip-nondeterminism (1.14.0-1) ... 134s Setting up cpp-14-aarch64-linux-gnu (14.2.0-12ubuntu1) ... 134s Setting up libgcc-14-dev:arm64 (14.2.0-12ubuntu1) ... 134s Setting up po-debconf (1.0.21+nmu1) ... 134s Setting up cpp-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 134s Setting up cpp-14 (14.2.0-12ubuntu1) ... 134s Setting up cpp (4:14.1.0-2ubuntu1) ... 134s Setting up gcc-14-aarch64-linux-gnu (14.2.0-12ubuntu1) ... 134s Setting up gcc-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 134s Setting up gcc-14 (14.2.0-12ubuntu1) ... 134s Setting up libtool (2.4.7-8) ... 134s Setting up gcc (4:14.1.0-2ubuntu1) ... 134s Setting up dh-autoreconf (20) ... 134s Setting up debhelper (13.23ubuntu1) ... 134s Setting up dh-debputy (0.1.58) ... 134s Processing triggers for libc-bin (2.40-4ubuntu1) ... 135s Processing triggers for systemd (257-2ubuntu1) ... 135s Processing triggers for man-db (2.13.0-1) ... 135s Processing triggers for install-info (7.1.1-1) ... 136s autopkgtest [23:28:55]: test debputy-py.test: [----------------------- 137s + mkdir /tmp/autopkgtest.2lqCdS/autopkgtest_tmp/debian 137s + cp -r pyproject.toml tests/ /tmp/autopkgtest.2lqCdS/autopkgtest_tmp 137s + cp -a debian/control /tmp/autopkgtest.2lqCdS/autopkgtest_tmp/debian 137s + export PYTHONWARNINGS=d 137s + export DEBPUTY_TEST_AGAINST_INSTALLED_PLUGINS=uninstalled 137s + DEBPUTY_PYTHONPATH=/usr/share/dh-debputy 137s + PYTHOHPATH= 137s + [ ] 137s + PYTHOHPATH=/usr/share/dh-debputy 137s + export DEBPUTY_REQUIRE_LIBCAP=1 137s + cd /tmp/autopkgtest.2lqCdS/autopkgtest_tmp/ 137s + py3versions -s 137s ---------------------------------------------- 137s Testing with python3.13 137s ---------------------------------------------- 137s + echo ---------------------------------------------- 137s + echo Testing with python3.13 137s + echo ---------------------------------------------- 137s + PYTHONPATH=/usr/share/dh-debputy LC_ALL=C python3.13 -m pytest 139s ============================= test session starts ============================== 139s platform linux -- Python 3.13.1, pytest-8.3.3, pluggy-1.5.0 139s rootdir: /tmp/autopkgtest.2lqCdS/autopkgtest_tmp 139s configfile: pyproject.toml 139s testpaths: src, tests, self-hosting-plugins 139s plugins: typeguard-4.4.1 139s collected 421 items 139s 139s tests/lint_tests/test_lint_changelog.py .... [ 0%] 139s tests/lint_tests/test_lint_dcpy.py ..... [ 2%] 140s tests/lint_tests/test_lint_dctrl.py .ss.................s.s............. [ 10%] 140s .....s. [ 12%] 140s tests/lint_tests/test_lint_debputy.py ..s... [ 13%] 140s tests/lint_tests/test_lint_dpatches_series.py ... [ 14%] 140s tests/lint_tests/test_lint_dtctrl.py .s [ 14%] 140s tests/lint_tests/test_lint_upstream_metadata.py . [ 15%] 140s tests/lsp_tests/test_debpkg_metadata.py ........... [ 17%] 140s tests/lsp_tests/test_lsp_dctrl.py ssssssssssssssss [ 21%] 140s tests/lsp_tests/test_lsp_debputy_manifest_completer.py sssssssss [ 23%] 140s tests/lsp_tests/test_lsp_debputy_manifest_hover.py ssssssssss [ 26%] 140s tests/lsp_tests/test_lsp_dpatches_series.py s [ 26%] 140s tests/plugin_tests/gnome_test.py .... [ 27%] 140s tests/plugin_tests/grantlee_test.py . [ 27%] 140s tests/plugin_tests/numpy3_test.py .. [ 28%] 140s tests/plugin_tests/perl-openssl_test.py . [ 28%] 140s tests/test_alternatives.py . [ 28%] 140s tests/test_apply_compression.py . [ 28%] 140s tests/test_architecture.py . [ 28%] 140s tests/test_cross_check_precheck.py ............... [ 32%] 140s tests/test_deb_packaging_support.py .......... [ 34%] 141s tests/test_debputy_plugin.py ........................................... [ 45%] 141s .. [ 45%] 141s tests/test_declarative_parser.py ............ [ 48%] 142s tests/test_fs_metadata.py .................. [ 52%] 142s tests/test_install_rules.py ............ [ 55%] 142s tests/test_interpreter.py ............. [ 58%] 142s tests/test_migrations.py .................................. [ 66%] 142s tests/test_output_filename.py ...... [ 68%] 142s tests/test_packager_provided_files.py ....................s.s [ 73%] 142s tests/test_packer_pack.py . [ 73%] 142s tests/test_parser.py ............................................. [ 84%] 142s tests/test_path.py . [ 84%] 142s tests/test_plugin_tester.py ....................... [ 90%] 142s tests/test_style.py ....x....... [ 93%] 142s tests/test_substitute.py ...... [ 94%] 142s tests/test_symbolic_mode.py ........ [ 96%] 142s tests/test_symlink_normalization.py .......... [ 98%] 142s tests/test_utils.py ..... [100%] 142s 142s ================== 375 passed, 45 skipped, 1 xfailed in 4.51s ================== 143s + PYTHONPATH=/usr/share/dh-debputy LC_ALL=C.UTF-8 python3.13 -m pytest 144s ============================= test session starts ============================== 144s platform linux -- Python 3.13.1, pytest-8.3.3, pluggy-1.5.0 144s rootdir: /tmp/autopkgtest.2lqCdS/autopkgtest_tmp 144s configfile: pyproject.toml 144s testpaths: src, tests, self-hosting-plugins 144s plugins: typeguard-4.4.1 144s collected 421 items 144s 144s tests/lint_tests/test_lint_changelog.py .... [ 0%] 144s tests/lint_tests/test_lint_dcpy.py ..... [ 2%] 145s tests/lint_tests/test_lint_dctrl.py .ss.................s.s............. [ 10%] 145s .....s. [ 12%] 145s tests/lint_tests/test_lint_debputy.py ..s... [ 13%] 145s tests/lint_tests/test_lint_dpatches_series.py ... [ 14%] 145s tests/lint_tests/test_lint_dtctrl.py .s [ 14%] 145s tests/lint_tests/test_lint_upstream_metadata.py . [ 15%] 145s tests/lsp_tests/test_debpkg_metadata.py ........... [ 17%] 145s tests/lsp_tests/test_lsp_dctrl.py ssssssssssssssss [ 21%] 145s tests/lsp_tests/test_lsp_debputy_manifest_completer.py sssssssss [ 23%] 145s tests/lsp_tests/test_lsp_debputy_manifest_hover.py ssssssssss [ 26%] 145s tests/lsp_tests/test_lsp_dpatches_series.py s [ 26%] 146s tests/plugin_tests/gnome_test.py .... [ 27%] 146s tests/plugin_tests/grantlee_test.py . [ 27%] 146s tests/plugin_tests/numpy3_test.py .. [ 28%] 146s tests/plugin_tests/perl-openssl_test.py . [ 28%] 146s tests/test_alternatives.py . [ 28%] 146s tests/test_apply_compression.py . [ 28%] 146s tests/test_architecture.py . [ 28%] 146s tests/test_cross_check_precheck.py ............... [ 32%] 146s tests/test_deb_packaging_support.py .......... [ 34%] 147s tests/test_debputy_plugin.py ........................................... [ 45%] 147s .. [ 45%] 147s tests/test_declarative_parser.py ............ [ 48%] 147s tests/test_fs_metadata.py .................. [ 52%] 147s tests/test_install_rules.py ............ [ 55%] 147s tests/test_interpreter.py ............. [ 58%] 147s tests/test_migrations.py .................................. [ 66%] 147s tests/test_output_filename.py ...... [ 68%] 147s tests/test_packager_provided_files.py ....................s.s [ 73%] 147s tests/test_packer_pack.py . [ 73%] 147s tests/test_parser.py ............................................. [ 84%] 147s tests/test_path.py . [ 84%] 148s tests/test_plugin_tester.py ....................... [ 90%] 148s tests/test_style.py ....x....... [ 93%] 148s tests/test_substitute.py ...... [ 94%] 148s tests/test_symbolic_mode.py ........ [ 96%] 148s tests/test_symlink_normalization.py .......... [ 98%] 148s tests/test_utils.py ..... [100%] 148s 148s ================== 375 passed, 45 skipped, 1 xfailed in 3.82s ================== 148s ---------------------------------------------- 148s Testing with python3.12 148s ---------------------------------------------- 148s + echo ---------------------------------------------- 148s + echo Testing with python3.12 148s + echo ---------------------------------------------- 148s + PYTHONPATH=/usr/share/dh-debputy LC_ALL=C python3.12 -m pytest 150s ============================= test session starts ============================== 150s platform linux -- Python 3.12.8, pytest-8.3.3, pluggy-1.5.0 150s rootdir: /tmp/autopkgtest.2lqCdS/autopkgtest_tmp 150s configfile: pyproject.toml 150s testpaths: src, tests, self-hosting-plugins 150s plugins: typeguard-4.4.1 150s collected 421 items 150s 150s tests/lint_tests/test_lint_changelog.py .... [ 0%] 150s tests/lint_tests/test_lint_dcpy.py ..... [ 2%] 151s tests/lint_tests/test_lint_dctrl.py .ss.................s.s............. [ 10%] 151s .....s. [ 12%] 151s tests/lint_tests/test_lint_debputy.py ..s... [ 13%] 151s tests/lint_tests/test_lint_dpatches_series.py ... [ 14%] 151s tests/lint_tests/test_lint_dtctrl.py .s [ 14%] 151s tests/lint_tests/test_lint_upstream_metadata.py . [ 15%] 151s tests/lsp_tests/test_debpkg_metadata.py ........... [ 17%] 151s tests/lsp_tests/test_lsp_dctrl.py ssssssssssssssss [ 21%] 151s tests/lsp_tests/test_lsp_debputy_manifest_completer.py sssssssss [ 23%] 152s tests/lsp_tests/test_lsp_debputy_manifest_hover.py ssssssssss [ 26%] 152s tests/lsp_tests/test_lsp_dpatches_series.py s [ 26%] 152s tests/plugin_tests/gnome_test.py .... [ 27%] 152s tests/plugin_tests/grantlee_test.py . [ 27%] 152s tests/plugin_tests/numpy3_test.py .. [ 28%] 152s tests/plugin_tests/perl-openssl_test.py . [ 28%] 152s tests/test_alternatives.py . [ 28%] 152s tests/test_apply_compression.py . [ 28%] 152s tests/test_architecture.py . [ 28%] 152s tests/test_cross_check_precheck.py ............... [ 32%] 152s tests/test_deb_packaging_support.py .......... [ 34%] 153s tests/test_debputy_plugin.py ........................................... [ 45%] 153s .. [ 45%] 153s tests/test_declarative_parser.py ............ [ 48%] 153s tests/test_fs_metadata.py .................. [ 52%] 153s tests/test_install_rules.py ............ [ 55%] 153s tests/test_interpreter.py ............. [ 58%] 153s tests/test_migrations.py .................................. [ 66%] 153s tests/test_output_filename.py ...... [ 68%] 153s tests/test_packager_provided_files.py ....................s.s [ 73%] 153s tests/test_packer_pack.py . [ 73%] 154s tests/test_parser.py ............................................. [ 84%] 154s tests/test_path.py . [ 84%] 154s tests/test_plugin_tester.py ....................... [ 90%] 154s tests/test_style.py ....x....... [ 93%] 154s tests/test_substitute.py ...... [ 94%] 154s tests/test_symbolic_mode.py ........ [ 96%] 154s tests/test_symlink_normalization.py .......... [ 98%] 154s tests/test_utils.py ..... [100%] 154s 154s ================== 375 passed, 45 skipped, 1 xfailed in 4.93s ================== 154s + PYTHONPATH=/usr/share/dh-debputy LC_ALL=C.UTF-8 python3.12 -m pytest 155s ============================= test session starts ============================== 155s platform linux -- Python 3.12.8, pytest-8.3.3, pluggy-1.5.0 155s rootdir: /tmp/autopkgtest.2lqCdS/autopkgtest_tmp 155s configfile: pyproject.toml 155s testpaths: src, tests, self-hosting-plugins 155s plugins: typeguard-4.4.1 155s collected 421 items 155s 155s tests/lint_tests/test_lint_changelog.py .... [ 0%] 156s tests/lint_tests/test_lint_dcpy.py ..... [ 2%] 157s tests/lint_tests/test_lint_dctrl.py .ss.................s.s............. [ 10%] 157s .....s. [ 12%] 157s tests/lint_tests/test_lint_debputy.py ..s... [ 13%] 157s tests/lint_tests/test_lint_dpatches_series.py ... [ 14%] 157s tests/lint_tests/test_lint_dtctrl.py .s [ 14%] 157s tests/lint_tests/test_lint_upstream_metadata.py . [ 15%] 157s tests/lsp_tests/test_debpkg_metadata.py ........... [ 17%] 157s tests/lsp_tests/test_lsp_dctrl.py ssssssssssssssss [ 21%] 157s tests/lsp_tests/test_lsp_debputy_manifest_completer.py sssssssss [ 23%] 157s tests/lsp_tests/test_lsp_debputy_manifest_hover.py ssssssssss [ 26%] 157s tests/lsp_tests/test_lsp_dpatches_series.py s [ 26%] 157s tests/plugin_tests/gnome_test.py .... [ 27%] 157s tests/plugin_tests/grantlee_test.py . [ 27%] 157s tests/plugin_tests/numpy3_test.py .. [ 28%] 157s tests/plugin_tests/perl-openssl_test.py . [ 28%] 157s tests/test_alternatives.py . [ 28%] 157s tests/test_apply_compression.py . [ 28%] 157s tests/test_architecture.py . [ 28%] 157s tests/test_cross_check_precheck.py ............... [ 32%] 157s tests/test_deb_packaging_support.py .......... [ 34%] 158s tests/test_debputy_plugin.py ........................................... [ 45%] 158s .. [ 45%] 158s tests/test_declarative_parser.py ............ [ 48%] 158s tests/test_fs_metadata.py .................. [ 52%] 158s tests/test_install_rules.py ............ [ 55%] 158s tests/test_interpreter.py ............. [ 58%] 158s tests/test_migrations.py .................................. [ 66%] 158s tests/test_output_filename.py ...... [ 68%] 159s tests/test_packager_provided_files.py ....................s.s [ 73%] 159s tests/test_packer_pack.py . [ 73%] 159s tests/test_parser.py ............................................. [ 84%] 159s tests/test_path.py . [ 84%] 159s tests/test_plugin_tester.py ....................... [ 90%] 159s tests/test_style.py ....x....... [ 93%] 159s tests/test_substitute.py ...... [ 94%] 159s tests/test_symbolic_mode.py ........ [ 96%] 159s tests/test_symlink_normalization.py .......... [ 98%] 159s tests/test_utils.py ..... [100%] 159s 159s ================== 375 passed, 45 skipped, 1 xfailed in 3.92s ================== 160s autopkgtest [23:29:19]: test debputy-py.test: -----------------------] 160s debputy-py.test PASS 160s autopkgtest [23:29:19]: test debputy-py.test: - - - - - - - - - - results - - - - - - - - - - 160s autopkgtest [23:29:19]: test debputy-cli: preparing testbed 249s autopkgtest [23:30:48]: testbed dpkg architecture: arm64 249s autopkgtest [23:30:48]: testbed apt version: 2.9.18 249s autopkgtest [23:30:48]: @@@@@@@@@@@@@@@@@@@@ test bed setup 250s autopkgtest [23:30:49]: testbed release detected to be: plucky 250s autopkgtest [23:30:49]: updating testbed package index (apt update) 251s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 251s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 251s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 251s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 251s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [58.3 kB] 251s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [648 kB] 251s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [10.1 kB] 251s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [9708 B] 251s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [82.4 kB] 251s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 Packages [57.8 kB] 251s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [520 kB] 251s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 Packages [8824 B] 251s Fetched 1469 kB in 1s (1720 kB/s) 252s Reading package lists... 253s Reading package lists... 253s Building dependency tree... 253s Reading state information... 254s Calculating upgrade... 254s The following packages will be upgraded: 254s base-passwd bash-completion 254s 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 254s Need to get 267 kB of archives. 254s After this operation, 143 kB of additional disk space will be used. 254s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 base-passwd arm64 3.6.6 [53.6 kB] 254s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 bash-completion all 1:2.16.0-1 [214 kB] 255s Preconfiguring packages ... 255s Fetched 267 kB in 0s (569 kB/s) 255s (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 ... 80060 files and directories currently installed.) 255s Preparing to unpack .../base-passwd_3.6.6_arm64.deb ... 255s Unpacking base-passwd (3.6.6) over (3.6.5) ... 255s Setting up base-passwd (3.6.6) ... 255s (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 ... 80060 files and directories currently installed.) 255s Preparing to unpack .../bash-completion_1%3a2.16.0-1_all.deb ... 255s Unpacking bash-completion (1:2.16.0-1) over (1:2.14.0-2) ... 255s Setting up bash-completion (1:2.16.0-1) ... 255s Processing triggers for man-db (2.13.0-1) ... 257s Reading package lists... 257s Building dependency tree... 257s Reading state information... 258s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 258s autopkgtest [23:30:57]: upgrading testbed (apt dist-upgrade and autopurge) 258s Reading package lists... 258s Building dependency tree... 258s Reading state information... 259s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 259s Starting 2 pkgProblemResolver with broken count: 0 259s Done 259s Entering ResolveByKeep 260s 260s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 260s Reading package lists... 260s Building dependency tree... 260s Reading state information... 261s Starting pkgProblemResolver with broken count: 0 261s Starting 2 pkgProblemResolver with broken count: 0 261s Done 262s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 264s Reading package lists... 264s Building dependency tree... 264s Reading state information... 265s Starting pkgProblemResolver with broken count: 0 265s Starting 2 pkgProblemResolver with broken count: 0 265s Done 265s The following NEW packages will be installed: 265s autoconf automake autopoint autotools-dev cpp cpp-14 265s cpp-14-aarch64-linux-gnu cpp-aarch64-linux-gnu debhelper debugedit 265s dh-autoreconf dh-debputy dh-strip-nondeterminism dwz gcc gcc-14 265s gcc-14-aarch64-linux-gnu gcc-aarch64-linux-gnu gettext intltool-debian 265s libarchive-zip-perl libasan8 libcc1-0 libdebhelper-perl 265s libfile-stripnondeterminism-perl libgcc-14-dev libgomp1 libhwasan0 libisl23 265s libitm1 liblsan0 libmpc3 libtool libtsan2 libubsan1 m4 po-debconf 265s python3-colored python3-colorlog python3-debian python3-ruyaml 265s strip-nondeterminism 266s 0 upgraded, 42 newly installed, 0 to remove and 0 not upgraded. 266s Need to get 50.5 MB of archives. 266s After this operation, 166 MB of additional disk space will be used. 266s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 m4 arm64 1.4.19-4build1 [240 kB] 266s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 autoconf all 2.72-3 [382 kB] 266s Get:3 http://ftpmaster.internal/ubuntu plucky/main arm64 autotools-dev all 20220109.1 [44.9 kB] 266s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 automake all 1:1.16.5-1.3ubuntu1 [558 kB] 266s Get:5 http://ftpmaster.internal/ubuntu plucky/main arm64 autopoint all 0.22.5-3 [616 kB] 266s Get:6 http://ftpmaster.internal/ubuntu plucky/main arm64 libisl23 arm64 0.27-1 [676 kB] 266s Get:7 http://ftpmaster.internal/ubuntu plucky/main arm64 libmpc3 arm64 1.3.1-1build2 [56.8 kB] 266s Get:8 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-14-aarch64-linux-gnu arm64 14.2.0-12ubuntu1 [10.6 MB] 266s Get:9 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-14 arm64 14.2.0-12ubuntu1 [1032 B] 266s Get:10 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-aarch64-linux-gnu arm64 4:14.1.0-2ubuntu1 [5452 B] 266s Get:11 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp arm64 4:14.1.0-2ubuntu1 [22.5 kB] 266s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 libdebhelper-perl all 13.23ubuntu1 [95.1 kB] 266s Get:13 http://ftpmaster.internal/ubuntu plucky/main arm64 libcc1-0 arm64 14.2.0-12ubuntu1 [49.6 kB] 266s Get:14 http://ftpmaster.internal/ubuntu plucky/main arm64 libgomp1 arm64 14.2.0-12ubuntu1 [145 kB] 266s Get:15 http://ftpmaster.internal/ubuntu plucky/main arm64 libitm1 arm64 14.2.0-12ubuntu1 [27.7 kB] 266s Get:16 http://ftpmaster.internal/ubuntu plucky/main arm64 libasan8 arm64 14.2.0-12ubuntu1 [2896 kB] 267s Get:17 http://ftpmaster.internal/ubuntu plucky/main arm64 liblsan0 arm64 14.2.0-12ubuntu1 [1283 kB] 267s Get:18 http://ftpmaster.internal/ubuntu plucky/main arm64 libtsan2 arm64 14.2.0-12ubuntu1 [2687 kB] 267s Get:19 http://ftpmaster.internal/ubuntu plucky/main arm64 libubsan1 arm64 14.2.0-12ubuntu1 [1152 kB] 267s Get:20 http://ftpmaster.internal/ubuntu plucky/main arm64 libhwasan0 arm64 14.2.0-12ubuntu1 [1598 kB] 267s Get:21 http://ftpmaster.internal/ubuntu plucky/main arm64 libgcc-14-dev arm64 14.2.0-12ubuntu1 [2596 kB] 267s Get:22 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-14-aarch64-linux-gnu arm64 14.2.0-12ubuntu1 [20.9 MB] 267s Get:23 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-14 arm64 14.2.0-12ubuntu1 [522 kB] 267s Get:24 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-aarch64-linux-gnu arm64 4:14.1.0-2ubuntu1 [1200 B] 267s Get:25 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc arm64 4:14.1.0-2ubuntu1 [4994 B] 267s Get:26 http://ftpmaster.internal/ubuntu plucky/main arm64 libtool all 2.4.7-8 [166 kB] 267s Get:27 http://ftpmaster.internal/ubuntu plucky/main arm64 dh-autoreconf all 20 [16.1 kB] 267s Get:28 http://ftpmaster.internal/ubuntu plucky/main arm64 libarchive-zip-perl all 1.68-1 [90.2 kB] 267s Get:29 http://ftpmaster.internal/ubuntu plucky/main arm64 libfile-stripnondeterminism-perl all 1.14.0-1 [20.1 kB] 267s Get:30 http://ftpmaster.internal/ubuntu plucky/main arm64 dh-strip-nondeterminism all 1.14.0-1 [5058 B] 267s Get:31 http://ftpmaster.internal/ubuntu plucky/main arm64 debugedit arm64 1:5.1-1 [45.9 kB] 267s Get:32 http://ftpmaster.internal/ubuntu plucky/main arm64 dwz arm64 0.15-1build6 [113 kB] 267s Get:33 http://ftpmaster.internal/ubuntu plucky/main arm64 gettext arm64 0.22.5-3 [932 kB] 267s Get:34 http://ftpmaster.internal/ubuntu plucky/main arm64 intltool-debian all 0.35.0+20060710.6 [23.2 kB] 267s Get:35 http://ftpmaster.internal/ubuntu plucky/main arm64 po-debconf all 1.0.21+nmu1 [233 kB] 267s Get:36 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 debhelper all 13.23ubuntu1 [895 kB] 267s Get:37 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-colored all 2.2.4-1 [14.2 kB] 267s Get:38 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-colorlog all 6.9.0-1 [21.6 kB] 267s Get:39 http://ftpmaster.internal/ubuntu plucky/main arm64 python3-debian all 0.1.49ubuntu3 [116 kB] 267s Get:40 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-ruyaml all 0.91.0-3 [107 kB] 267s Get:41 http://ftpmaster.internal/ubuntu plucky/universe arm64 strip-nondeterminism all 1.14.0-1 [5552 B] 267s Get:42 http://ftpmaster.internal/ubuntu plucky/universe arm64 dh-debputy all 0.1.58 [466 kB] 268s Fetched 50.5 MB in 2s (26.5 MB/s) 268s Selecting previously unselected package m4. 268s (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 ... 80185 files and directories currently installed.) 268s Preparing to unpack .../00-m4_1.4.19-4build1_arm64.deb ... 268s Unpacking m4 (1.4.19-4build1) ... 268s Selecting previously unselected package autoconf. 268s Preparing to unpack .../01-autoconf_2.72-3_all.deb ... 268s Unpacking autoconf (2.72-3) ... 268s Selecting previously unselected package autotools-dev. 268s Preparing to unpack .../02-autotools-dev_20220109.1_all.deb ... 268s Unpacking autotools-dev (20220109.1) ... 268s Selecting previously unselected package automake. 268s Preparing to unpack .../03-automake_1%3a1.16.5-1.3ubuntu1_all.deb ... 268s Unpacking automake (1:1.16.5-1.3ubuntu1) ... 268s Selecting previously unselected package autopoint. 268s Preparing to unpack .../04-autopoint_0.22.5-3_all.deb ... 268s Unpacking autopoint (0.22.5-3) ... 268s Selecting previously unselected package libisl23:arm64. 268s Preparing to unpack .../05-libisl23_0.27-1_arm64.deb ... 268s Unpacking libisl23:arm64 (0.27-1) ... 268s Selecting previously unselected package libmpc3:arm64. 268s Preparing to unpack .../06-libmpc3_1.3.1-1build2_arm64.deb ... 268s Unpacking libmpc3:arm64 (1.3.1-1build2) ... 268s Selecting previously unselected package cpp-14-aarch64-linux-gnu. 268s Preparing to unpack .../07-cpp-14-aarch64-linux-gnu_14.2.0-12ubuntu1_arm64.deb ... 268s Unpacking cpp-14-aarch64-linux-gnu (14.2.0-12ubuntu1) ... 268s Selecting previously unselected package cpp-14. 268s Preparing to unpack .../08-cpp-14_14.2.0-12ubuntu1_arm64.deb ... 268s Unpacking cpp-14 (14.2.0-12ubuntu1) ... 268s Selecting previously unselected package cpp-aarch64-linux-gnu. 268s Preparing to unpack .../09-cpp-aarch64-linux-gnu_4%3a14.1.0-2ubuntu1_arm64.deb ... 268s Unpacking cpp-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 268s Selecting previously unselected package cpp. 268s Preparing to unpack .../10-cpp_4%3a14.1.0-2ubuntu1_arm64.deb ... 268s Unpacking cpp (4:14.1.0-2ubuntu1) ... 268s Selecting previously unselected package libdebhelper-perl. 268s Preparing to unpack .../11-libdebhelper-perl_13.23ubuntu1_all.deb ... 268s Unpacking libdebhelper-perl (13.23ubuntu1) ... 268s Selecting previously unselected package libcc1-0:arm64. 268s Preparing to unpack .../12-libcc1-0_14.2.0-12ubuntu1_arm64.deb ... 268s Unpacking libcc1-0:arm64 (14.2.0-12ubuntu1) ... 268s Selecting previously unselected package libgomp1:arm64. 268s Preparing to unpack .../13-libgomp1_14.2.0-12ubuntu1_arm64.deb ... 268s Unpacking libgomp1:arm64 (14.2.0-12ubuntu1) ... 268s Selecting previously unselected package libitm1:arm64. 268s Preparing to unpack .../14-libitm1_14.2.0-12ubuntu1_arm64.deb ... 268s Unpacking libitm1:arm64 (14.2.0-12ubuntu1) ... 269s Selecting previously unselected package libasan8:arm64. 269s Preparing to unpack .../15-libasan8_14.2.0-12ubuntu1_arm64.deb ... 269s Unpacking libasan8:arm64 (14.2.0-12ubuntu1) ... 269s Selecting previously unselected package liblsan0:arm64. 269s Preparing to unpack .../16-liblsan0_14.2.0-12ubuntu1_arm64.deb ... 269s Unpacking liblsan0:arm64 (14.2.0-12ubuntu1) ... 269s Selecting previously unselected package libtsan2:arm64. 269s Preparing to unpack .../17-libtsan2_14.2.0-12ubuntu1_arm64.deb ... 269s Unpacking libtsan2:arm64 (14.2.0-12ubuntu1) ... 269s Selecting previously unselected package libubsan1:arm64. 269s Preparing to unpack .../18-libubsan1_14.2.0-12ubuntu1_arm64.deb ... 269s Unpacking libubsan1:arm64 (14.2.0-12ubuntu1) ... 269s Selecting previously unselected package libhwasan0:arm64. 269s Preparing to unpack .../19-libhwasan0_14.2.0-12ubuntu1_arm64.deb ... 269s Unpacking libhwasan0:arm64 (14.2.0-12ubuntu1) ... 269s Selecting previously unselected package libgcc-14-dev:arm64. 269s Preparing to unpack .../20-libgcc-14-dev_14.2.0-12ubuntu1_arm64.deb ... 269s Unpacking libgcc-14-dev:arm64 (14.2.0-12ubuntu1) ... 269s Selecting previously unselected package gcc-14-aarch64-linux-gnu. 269s Preparing to unpack .../21-gcc-14-aarch64-linux-gnu_14.2.0-12ubuntu1_arm64.deb ... 269s Unpacking gcc-14-aarch64-linux-gnu (14.2.0-12ubuntu1) ... 269s Selecting previously unselected package gcc-14. 269s Preparing to unpack .../22-gcc-14_14.2.0-12ubuntu1_arm64.deb ... 269s Unpacking gcc-14 (14.2.0-12ubuntu1) ... 269s Selecting previously unselected package gcc-aarch64-linux-gnu. 269s Preparing to unpack .../23-gcc-aarch64-linux-gnu_4%3a14.1.0-2ubuntu1_arm64.deb ... 269s Unpacking gcc-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 269s Selecting previously unselected package gcc. 269s Preparing to unpack .../24-gcc_4%3a14.1.0-2ubuntu1_arm64.deb ... 269s Unpacking gcc (4:14.1.0-2ubuntu1) ... 269s Selecting previously unselected package libtool. 269s Preparing to unpack .../25-libtool_2.4.7-8_all.deb ... 269s Unpacking libtool (2.4.7-8) ... 269s Selecting previously unselected package dh-autoreconf. 269s Preparing to unpack .../26-dh-autoreconf_20_all.deb ... 269s Unpacking dh-autoreconf (20) ... 269s Selecting previously unselected package libarchive-zip-perl. 269s Preparing to unpack .../27-libarchive-zip-perl_1.68-1_all.deb ... 269s Unpacking libarchive-zip-perl (1.68-1) ... 270s Selecting previously unselected package libfile-stripnondeterminism-perl. 270s Preparing to unpack .../28-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... 270s Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... 270s Selecting previously unselected package dh-strip-nondeterminism. 270s Preparing to unpack .../29-dh-strip-nondeterminism_1.14.0-1_all.deb ... 270s Unpacking dh-strip-nondeterminism (1.14.0-1) ... 270s Selecting previously unselected package debugedit. 270s Preparing to unpack .../30-debugedit_1%3a5.1-1_arm64.deb ... 270s Unpacking debugedit (1:5.1-1) ... 270s Selecting previously unselected package dwz. 270s Preparing to unpack .../31-dwz_0.15-1build6_arm64.deb ... 270s Unpacking dwz (0.15-1build6) ... 270s Selecting previously unselected package gettext. 270s Preparing to unpack .../32-gettext_0.22.5-3_arm64.deb ... 270s Unpacking gettext (0.22.5-3) ... 270s Selecting previously unselected package intltool-debian. 270s Preparing to unpack .../33-intltool-debian_0.35.0+20060710.6_all.deb ... 270s Unpacking intltool-debian (0.35.0+20060710.6) ... 270s Selecting previously unselected package po-debconf. 270s Preparing to unpack .../34-po-debconf_1.0.21+nmu1_all.deb ... 270s Unpacking po-debconf (1.0.21+nmu1) ... 270s Selecting previously unselected package debhelper. 270s Preparing to unpack .../35-debhelper_13.23ubuntu1_all.deb ... 270s Unpacking debhelper (13.23ubuntu1) ... 270s Selecting previously unselected package python3-colored. 270s Preparing to unpack .../36-python3-colored_2.2.4-1_all.deb ... 270s Unpacking python3-colored (2.2.4-1) ... 270s Selecting previously unselected package python3-colorlog. 270s Preparing to unpack .../37-python3-colorlog_6.9.0-1_all.deb ... 270s Unpacking python3-colorlog (6.9.0-1) ... 270s Selecting previously unselected package python3-debian. 270s Preparing to unpack .../38-python3-debian_0.1.49ubuntu3_all.deb ... 270s Unpacking python3-debian (0.1.49ubuntu3) ... 270s Selecting previously unselected package python3-ruyaml. 270s Preparing to unpack .../39-python3-ruyaml_0.91.0-3_all.deb ... 270s Unpacking python3-ruyaml (0.91.0-3) ... 270s Selecting previously unselected package strip-nondeterminism. 270s Preparing to unpack .../40-strip-nondeterminism_1.14.0-1_all.deb ... 270s Unpacking strip-nondeterminism (1.14.0-1) ... 270s Selecting previously unselected package dh-debputy. 270s Preparing to unpack .../41-dh-debputy_0.1.58_all.deb ... 270s Unpacking dh-debputy (0.1.58) ... 270s Setting up python3-colorlog (6.9.0-1) ... 270s Setting up libarchive-zip-perl (1.68-1) ... 270s Setting up libdebhelper-perl (13.23ubuntu1) ... 270s Setting up m4 (1.4.19-4build1) ... 270s Setting up libgomp1:arm64 (14.2.0-12ubuntu1) ... 270s Setting up autotools-dev (20220109.1) ... 270s Setting up python3-debian (0.1.49ubuntu3) ... 270s Setting up libmpc3:arm64 (1.3.1-1build2) ... 270s Setting up autopoint (0.22.5-3) ... 270s Setting up autoconf (2.72-3) ... 270s Setting up libubsan1:arm64 (14.2.0-12ubuntu1) ... 270s Setting up dwz (0.15-1build6) ... 270s Setting up libhwasan0:arm64 (14.2.0-12ubuntu1) ... 270s Setting up libasan8:arm64 (14.2.0-12ubuntu1) ... 270s Setting up debugedit (1:5.1-1) ... 270s Setting up python3-colored (2.2.4-1) ... 271s Setting up libtsan2:arm64 (14.2.0-12ubuntu1) ... 271s Setting up libisl23:arm64 (0.27-1) ... 271s Setting up python3-ruyaml (0.91.0-3) ... 271s Setting up libcc1-0:arm64 (14.2.0-12ubuntu1) ... 271s Setting up liblsan0:arm64 (14.2.0-12ubuntu1) ... 271s Setting up libitm1:arm64 (14.2.0-12ubuntu1) ... 271s Setting up automake (1:1.16.5-1.3ubuntu1) ... 271s update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode 271s Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... 271s Setting up gettext (0.22.5-3) ... 271s Setting up strip-nondeterminism (1.14.0-1) ... 271s Setting up intltool-debian (0.35.0+20060710.6) ... 271s Setting up dh-strip-nondeterminism (1.14.0-1) ... 271s Setting up cpp-14-aarch64-linux-gnu (14.2.0-12ubuntu1) ... 271s Setting up libgcc-14-dev:arm64 (14.2.0-12ubuntu1) ... 271s Setting up po-debconf (1.0.21+nmu1) ... 271s Setting up cpp-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 271s Setting up cpp-14 (14.2.0-12ubuntu1) ... 271s Setting up cpp (4:14.1.0-2ubuntu1) ... 271s Setting up gcc-14-aarch64-linux-gnu (14.2.0-12ubuntu1) ... 271s Setting up gcc-aarch64-linux-gnu (4:14.1.0-2ubuntu1) ... 271s Setting up gcc-14 (14.2.0-12ubuntu1) ... 271s Setting up libtool (2.4.7-8) ... 271s Setting up gcc (4:14.1.0-2ubuntu1) ... 271s Setting up dh-autoreconf (20) ... 271s Setting up debhelper (13.23ubuntu1) ... 271s Setting up dh-debputy (0.1.58) ... 272s Processing triggers for libc-bin (2.40-4ubuntu1) ... 272s Processing triggers for man-db (2.13.0-1) ... 272s Processing triggers for install-info (7.1.1-1) ... 274s autopkgtest [23:31:13]: test debputy-cli: [----------------------- 275s + debputy --no-pager --help 275s usage: debputy [-h] [--version] [--debputy-manifest DEBPUTY_MANIFEST] [-d] 275s [--no-pager] [--plugin REQUIRED_PLUGINS] 275s COMMAND ... 275s 275s The `debputy` program is a Debian packaging tool. 275s 275s It serves multiple roles in the Debian packaging stack: 275s 275s 1) It is a maintainer support tool that can help maintain packages by providing 275s editor support (LSP), batch linting and style/file formatting for Debian 275s packaging files. This is covers subcommands like `debputy lint`, 275s `debputy lsp server`, `debputy reformat` 275s 275s 2) It is a manifest-based Debian package builder aiming to replace existing 275s package helper tools such as `debhelper . In this role, `debputy` is used 275s as a part of compiling a source package and transforming it into one 275s or more binary (.deb) packages. 275s 275s If you are using a screen reader, consider exporting setting the environment variable 275s OPTIMIZE_FOR_SCREEN_READER=1. This will remove some of the visual formatting and some 275s commands will render the output in a purely textual manner rather than visual layout. 275s 275s positional arguments: 275s COMMAND 275s internal-command Commands used for internal purposes. These are 275s implementation details and subject to change 275s tool-support Tool integration commands. These are intended to have 275s stable output and behavior 275s check-manifest Check the manifest for obvious errors, but do not run 275s anything 275s autopkgtest-test-runner 275s Detect tests in the debian dir and run them against 275s installed plugins 275s migrate-from-dh Generate/update manifest from a "dh $@" using package 275s plugin Interact with debputy plugins 275s lsp Language server related subcommands 275s lint Provide diagnostics for the packaging (like `lsp 275s server` except no editor is needed) 275s reformat Reformat the packaging files based on the 275s packaging/maintainer rules 275s 275s options: 275s -h, --help show this help message and exit 275s --version show program's version number and exit 275s --debputy-manifest DEBPUTY_MANIFEST 275s Specify another `debputy` manifest (default: 275s debian/debputy.manifest) 275s -d, --debug Enable debug logging and raw stack traces on errors. 275s Some warnings become errors as a consequence. 275s --no-pager For subcommands that can use a pager, disable the use 275s of pager. Some output formats implies --no-pager 275s --plugin REQUIRED_PLUGINS 275s Request the plugin to be loaded. Can be used multiple 275s time. Ignored for some commands (such as autopkgtest- 275s test-runner) 275s 275s Bug tracker: https://salsa.debian.org/debian/debputy/-/issues 275s + debputy --no-pager check-manifest 275s + debputy --no-pager plugin --help 276s usage: debputy plugin [-h] [--debputy-manifest DEBPUTY_MANIFEST] [-d] 276s [--no-pager] [--plugin REQUIRED_PLUGINS] 276s command ... 276s 276s positional arguments: 276s command 276s list List plugins or things provided by plugins (unstable 276s format). Pass `--help` *after* `list` get a topic 276s listing 276s show Show details about a plugin or things provided by 276s plugins (unstable format). Pass `--help` *after* 276s `show` get a topic listing 276s 276s options: 276s -h, --help show this help message and exit 276s --debputy-manifest DEBPUTY_MANIFEST 276s Specify another `debputy` manifest (default: 276s debian/debputy.manifest) 276s -d, --debug Enable debug logging and raw stack traces on errors. 276s Some warnings become errors as a consequence. 276s --no-pager For subcommands that can use a pager, disable the use 276s of pager. Some output formats implies --no-pager 276s --plugin REQUIRED_PLUGINS 276s Request the plugin to be loaded. Can be used multiple 276s time. Ignored for some commands (such as autopkgtest- 276s test-runner) 276s + debputy --no-pager plugin list --help 276s usage: debputy plugin list [-h] [--debputy-manifest DEBPUTY_MANIFEST] [-d] 276s [--no-pager] [--plugin REQUIRED_PLUGINS] 276s topic ... 276s 276s positional arguments: 276s topic 276s plugins List known plugins 276s used-packager-provided-files (uppf, u-p-p-f) 276s List packager provided files used by this package 276s (debian/pkg.foo) 276s packager-provided-files (ppf, p-p-f) 276s List packager provided file definitions 276s (debian/pkg.foo) 276s metadata-detectors List metadata detectors 276s manifest-variables List plugin provided manifest variables (such as 276s `{{path:FOO}}`) 276s pluggable-manifest-rules (p-m-r, pmr) 276s Pluggable manifest rules (such as install rules) 276s automatic-discard-rules (a-d-r) 276s List automatic discard rules 276s type-mappings Registered type mappings/descriptions 276s 276s options: 276s -h, --help show this help message and exit 276s --debputy-manifest DEBPUTY_MANIFEST 276s Specify another `debputy` manifest (default: 276s debian/debputy.manifest) 276s -d, --debug Enable debug logging and raw stack traces on errors. 276s Some warnings become errors as a consequence. 276s --no-pager For subcommands that can use a pager, disable the use 276s of pager. Some output formats implies --no-pager 276s --plugin REQUIRED_PLUGINS 276s Request the plugin to be loaded. Can be used multiple 276s time. Ignored for some commands (such as autopkgtest- 276s test-runner) 276s + debputy --no-pager plugin list 276s +-------------------------+-----------------------------------------------------------------+ 276s | Plugin Name | Plugin Path | 276s +-------------------------+-----------------------------------------------------------------+ 276s | debputy | | 276s | grantlee | /usr/share/debputy/debputy/plugins/grantlee.json | 276s | debputy-documentation | /usr/share/debputy/debputy/plugins/debputy-documentation.json | 276s | debhelper-documentation | /usr/share/debputy/debputy/plugins/debhelper-documentation.json | 276s | perl-openssl | /usr/share/debputy/debputy/plugins/perl-openssl.json | 276s | numpy3 | /usr/share/debputy/debputy/plugins/numpy3.json | 276s | gnome | /usr/share/debputy/debputy/plugins/gnome.json | 276s +-------------------------+-----------------------------------------------------------------+ 276s + debputy --no-pager plugin list plugins 277s +-------------------------+-----------------------------------------------------------------+ 277s | Plugin Name | Plugin Path | 277s +-------------------------+-----------------------------------------------------------------+ 277s | debputy | | 277s | grantlee | /usr/share/debputy/debputy/plugins/grantlee.json | 277s | debputy-documentation | /usr/share/debputy/debputy/plugins/debputy-documentation.json | 277s | debhelper-documentation | /usr/share/debputy/debputy/plugins/debhelper-documentation.json | 277s | perl-openssl | /usr/share/debputy/debputy/plugins/perl-openssl.json | 277s | numpy3 | /usr/share/debputy/debputy/plugins/numpy3.json | 277s | gnome | /usr/share/debputy/debputy/plugins/gnome.json | 277s +-------------------------+-----------------------------------------------------------------+ 277s + debputy --no-pager plugin list ppf 277s +-----------------------------+-------------------------------------------------------------------+------+------------------------+-------------+ 277s | Stem | Installed As | Mode | Features | Provided by | 277s +-----------------------------+-------------------------------------------------------------------+------+------------------------+-------------+ 277s | @path | /usr/lib/systemd/system/{name}@.path | 0644 | named | debputy | 277s | @service | /usr/lib/systemd/system/{name}@.service | 0644 | named | debputy | 277s | @socket | /usr/lib/systemd/system/{name}@.socket | 0644 | named | debputy | 277s | @target | /usr/lib/systemd/system/{name}@.target | 0644 | named | debputy | 277s | @timer | /usr/lib/systemd/system/{name}@.timer | 0644 | named | debputy | 277s | NEWS | /usr/share/doc/{name}/NEWS.Debian | 0644 | main-all-fallback | debputy | 277s | README.Debian | /usr/share/doc/{name}/README.Debian | 0644 | | debputy | 277s | TODO | /usr/share/doc/{name}/TODO.Debian | 0644 | | debputy | 277s | alternatives | /DEBIAN/alternatives | 0644 | arch | debputy | 277s | bash-completion | /usr/share/bash-completion/completions/{name} | 0644 | named | debputy | 277s | bug-control | /usr/share/bug/{name}/control | 0644 | | debputy | 277s | bug-presubj | /usr/share/bug/{name}/presubj | 0644 | | debputy | 277s | bug-script | /usr/share/bug/{name}/script | 0755 | | debputy | 277s | changelog | /usr/share/doc/{name}/changelog.Debian | 0644 | main-all-fallback | debputy | 277s | copyright | /usr/share/doc/{name}/copyright | 0644 | main-all-fallback | debputy | 277s | cron.d | /etc/cron.d/{name} | 0644 | named | debputy | 277s | cron.daily | /etc/cron.daily/{name} | 0755 | named | debputy | 277s | cron.hourly | /etc/cron.hourly/{name} | 0755 | named | debputy | 277s | cron.monthly | /etc/cron.monthly/{name} | 0755 | named | debputy | 277s | cron.weekly | /etc/cron.weekly/{name} | 0755 | named | debputy | 277s | cron.yearly | /etc/cron.yearly/{name} | 0755 | named | debputy | 277s | default | /etc/default/{name} | 0644 | named | debputy | 277s | doc-base | /usr/share/doc-base/{owning_package}.{name} | 0644 | named | debputy | 277s | fish-completion | /usr/share/fish/vendor_completions.d/{name} | 0644 | named | debputy | 277s | gsettings-override | /usr/share/glib-2.0/schemas/{priority:02}_{name}.gschema.override | 0644 | named,priority=10 | debputy | 277s | if-down | /etc/network/if-down.d/{name} | 0755 | named | debputy | 277s | if-post-down | /etc/network/if-post-down.d/{name} | 0755 | named | debputy | 277s | if-pre-up | /etc/network/if-pre-up.d/{name} | 0755 | named | debputy | 277s | if-up | /etc/network/if-up.d/{name} | 0755 | named | debputy | 277s | init | /etc/init.d/{name} | 0755 | named | debputy | 277s | initramfs-hook | /usr/share/initramfs-tools/hooks/{name} | 0755 | named | debputy | 277s | lintian-overrides | /usr/share/lintian/overrides/{name} | 0644 | | debputy | 277s | logcheck.cracking | /etc/logcheck/cracking.d/{name} | 0644 | named,post-format-hook | debputy | 277s | logcheck.ignore.paranoid | /etc/logcheck/ignore.d.paranoid/{name} | 0644 | named,post-format-hook | debputy | 277s | logcheck.ignore.server | /etc/logcheck/ignore.d.server/{name} | 0644 | named,post-format-hook | debputy | 277s | logcheck.ignore.workstation | /etc/logcheck/ignore.d.workstation/{name} | 0644 | named,post-format-hook | debputy | 277s | logcheck.violations | /etc/logcheck/violations.d/{name} | 0644 | named,post-format-hook | debputy | 277s | logcheck.violations.ignore | /etc/logcheck/violations.ignore.d/{name} | 0644 | named,post-format-hook | debputy | 277s | logrotate | /etc/logrotate.d/{name} | 0644 | named | debputy | 277s | mime | /usr/lib/mime/packages/{name} | 0644 | named | debputy | 277s | modprobe | /etc/modprobe.d/{name}.conf | 0644 | named | debputy | 277s | mount | /usr/lib/systemd/system/{name}.mount | 0644 | named | debputy | 277s | pam | /usr/lib/pam.d/{name} | 0644 | named | debputy | 277s | path | /usr/lib/systemd/system/{name}.path | 0644 | named | debputy | 277s | ppp.ip-down | /etc/ppp/ip-down.d/{name} | 0755 | named | debputy | 277s | ppp.ip-up | /etc/ppp/ip-up.d/{name} | 0755 | named | debputy | 277s | service | /usr/lib/systemd/system/{name}.service | 0644 | named | debputy | 277s | sharedmimeinfo | /usr/share/mime/packages/{name}.xml | 0644 | named | debputy | 277s | shlibs | /DEBIAN/shlibs | 0644 | | debputy | 277s | socket | /usr/lib/systemd/system/{name}.socket | 0644 | named | debputy | 277s | symbols | /DEBIAN/symbols | 0644 | arch | debputy | 277s | sysusers | /usr/lib/sysusers.d/{name}.conf | 0644 | named | debputy | 277s | target | /usr/lib/systemd/system/{name}.target | 0644 | named | debputy | 277s | templates | /DEBIAN/templates | 0644 | | debputy | 277s | timer | /usr/lib/systemd/system/{name}.timer | 0644 | named | debputy | 277s | tmpfiles | /usr/lib/tmpfiles.d/{name}.conf | 0644 | named | debputy | 277s | zsh-completion | /usr/share/zsh/vendor-completions/{name} | 0644 | named | debputy | 277s +-----------------------------+-------------------------------------------------------------------+------+------------------------+-------------+ 277s 277s Hint: You can use `debputy plugin list used-packager-provided-files` to have `debputy` 277s list all the files in debian/ that matches these definitions. 277s + debputy --no-pager plugin list uppf 277s +------------------+--------------+----------------+--------------------------------------------+ 277s | File | Matched Stem | Installed Into | Installed As | 277s +------------------+--------------+----------------+--------------------------------------------+ 277s | debian/changelog | changelog | dh-debputy | /usr/share/doc/dh-debputy/changelog.Debian | 277s | debian/copyright | copyright | dh-debputy | /usr/share/doc/dh-debputy/copyright | 277s +------------------+--------------+----------------+--------------------------------------------+ 278s + debputy --no-pager plugin list manifest-variables 278s +----------------------------------+----------------------------------------+------+-------------+ 278s | Variable (use via: `{{ NAME }}`) | Value | Flag | Provided by | 278s +----------------------------------+----------------------------------------+------+-------------+ 278s | DEB_HOST_ARCH | arm64 | | debputy | 278s | DEB_HOST_ARCH_ABI | base | | debputy | 278s | DEB_HOST_ARCH_BITS | 64 | | debputy | 278s | DEB_HOST_ARCH_CPU | arm64 | | debputy | 278s | DEB_HOST_ARCH_ENDIAN | little | | debputy | 278s | DEB_HOST_ARCH_LIBC | gnu | | debputy | 278s | DEB_HOST_ARCH_OS | linux | | debputy | 278s | DEB_HOST_GNU_CPU | aarch64 | | debputy | 278s | DEB_HOST_GNU_SYSTEM | linux-gnu | | debputy | 278s | DEB_HOST_GNU_TYPE | aarch64-linux-gnu | | debputy | 278s | DEB_HOST_MULTIARCH | aarch64-linux-gnu | | debputy | 278s | DEB_SOURCE | debputy | | debputy | 278s | DEB_VERSION | 0.1.58 | | debputy | 278s | DEB_VERSION_EPOCH_UPSTREAM | 0.1.58 | | debputy | 278s | DEB_VERSION_UPSTREAM | 0.1.58 | | debputy | 278s | DEB_VERSION_UPSTREAM_REVISION | 0.1.58 | | debputy | 278s | PACKAGE | | | debputy | 278s | SOURCE_DATE_EPOCH | 1735479764 | | debputy | 278s | path:BASH_COMPLETION_DIR | /usr/share/bash-completion/completions | | debputy | 278s | path:FISH_COMPLETION_DIR | /usr/share/fish/vendor_completions.d | | debputy | 278s | path:GNU_INFO_DIR | /usr/share/info | | debputy | 278s | path:ZSH_COMPLETION_DIR | /usr/share/zsh/vendor-completions | | debputy | 278s +----------------------------------+----------------------------------------+------+-------------+ 278s 278s +-----------------------+--------+-------------------------------------------------------+ 278s | Variable type | Value | Option | 278s +-----------------------+--------+-------------------------------------------------------+ 278s | Token variables | hidden | --show-token-variables OR --show-all-variables | 278s | Special use variables | hidden | --show-special-case-variables OR --show-all-variables | 278s +-----------------------+--------+-------------------------------------------------------+ 278s + debputy --no-pager plugin list manifest-variables --show-all-variables 278s +-------------------------------------+----------------------------------------+------------------+-------------+ 278s | Variable (use via: `{{ NAME }}`) | Value | Flag | Provided by | 278s +-------------------------------------+----------------------------------------+------------------+-------------+ 278s | DEB_BUILD_ARCH | arm64 | special-use-case | debputy | 278s | DEB_BUILD_ARCH_ABI | base | special-use-case | debputy | 278s | DEB_BUILD_ARCH_BITS | 64 | special-use-case | debputy | 278s | DEB_BUILD_ARCH_CPU | arm64 | special-use-case | debputy | 278s | DEB_BUILD_ARCH_ENDIAN | little | special-use-case | debputy | 278s | DEB_BUILD_ARCH_LIBC | gnu | special-use-case | debputy | 278s | DEB_BUILD_ARCH_OS | linux | special-use-case | debputy | 278s | DEB_BUILD_GNU_CPU | aarch64 | special-use-case | debputy | 278s | DEB_BUILD_GNU_SYSTEM | linux-gnu | special-use-case | debputy | 278s | DEB_BUILD_GNU_TYPE | aarch64-linux-gnu | special-use-case | debputy | 278s | DEB_BUILD_MULTIARCH | aarch64-linux-gnu | special-use-case | debputy | 278s | DEB_HOST_ARCH | arm64 | | debputy | 278s | DEB_HOST_ARCH_ABI | base | | debputy | 278s | DEB_HOST_ARCH_BITS | 64 | | debputy | 278s | DEB_HOST_ARCH_CPU | arm64 | | debputy | 278s | DEB_HOST_ARCH_ENDIAN | little | | debputy | 278s | DEB_HOST_ARCH_LIBC | gnu | | debputy | 278s | DEB_HOST_ARCH_OS | linux | | debputy | 278s | DEB_HOST_GNU_CPU | aarch64 | | debputy | 278s | DEB_HOST_GNU_SYSTEM | linux-gnu | | debputy | 278s | DEB_HOST_GNU_TYPE | aarch64-linux-gnu | | debputy | 278s | DEB_HOST_MULTIARCH | aarch64-linux-gnu | | debputy | 278s | DEB_SOURCE | debputy | | debputy | 278s | DEB_TARGET_ARCH | arm64 | special-use-case | debputy | 278s | DEB_TARGET_ARCH_ABI | base | special-use-case | debputy | 278s | DEB_TARGET_ARCH_BITS | 64 | special-use-case | debputy | 278s | DEB_TARGET_ARCH_CPU | arm64 | special-use-case | debputy | 278s | DEB_TARGET_ARCH_ENDIAN | little | special-use-case | debputy | 278s | DEB_TARGET_ARCH_LIBC | gnu | special-use-case | debputy | 278s | DEB_TARGET_ARCH_OS | linux | special-use-case | debputy | 278s | DEB_TARGET_GNU_CPU | aarch64 | special-use-case | debputy | 278s | DEB_TARGET_GNU_SYSTEM | linux-gnu | special-use-case | debputy | 278s | DEB_TARGET_GNU_TYPE | aarch64-linux-gnu | special-use-case | debputy | 278s | DEB_TARGET_MULTIARCH | aarch64-linux-gnu | special-use-case | debputy | 278s | DEB_VERSION | 0.1.58 | | debputy | 278s | DEB_VERSION_EPOCH_UPSTREAM | 0.1.58 | | debputy | 278s | DEB_VERSION_UPSTREAM | 0.1.58 | | debputy | 278s | DEB_VERSION_UPSTREAM_REVISION | 0.1.58 | | debputy | 278s | PACKAGE | | | debputy | 278s | SOURCE_DATE_EPOCH | 1735479764 | | debputy | 278s | _DEBPUTY_INTERNAL_NON_BINNMU_SOURCE | 0.1.58 | internal | debputy | 278s | _DEBPUTY_SND_SOURCE_DATE_EPOCH | 1735479764 | internal | debputy | 278s | path:BASH_COMPLETION_DIR | /usr/share/bash-completion/completions | | debputy | 278s | path:FISH_COMPLETION_DIR | /usr/share/fish/vendor_completions.d | | debputy | 278s | path:GNU_INFO_DIR | /usr/share/info | | debputy | 278s | path:ZSH_COMPLETION_DIR | /usr/share/zsh/vendor-completions | | debputy | 278s | token:CLOSE_CURLY_BRACE | } | | debputy | 278s | token:DOUBLE_CLOSE_CURLY_BRACE | }} | | debputy | 278s | token:DOUBLE_OPEN_CURLY_BRACE | {{ | | debputy | 278s | token:NEWLINE | \n | | debputy | 278s | token:NL | \n | | debputy | 278s | token:OPEN_CURLY_BRACE | { | | debputy | 278s | token:TAB | \t | | debputy | 278s +-------------------------------------+----------------------------------------+------------------+-------------+ 278s 278s +-----------------------+-------+-------------------------------------------------------+ 278s | Variable type | Value | Option | 278s +-----------------------+-------+-------------------------------------------------------+ 278s | Token variables | shown | --show-token-variables OR --show-all-variables | 278s | Special use variables | shown | --show-special-case-variables OR --show-all-variables | 278s +-----------------------+-------+-------------------------------------------------------+ 278s + debputy --no-pager plugin list pmr 279s +-------------------------------+------------------------------+-------------+ 279s | Rule Name | Rule Type | Provided By | 279s +-------------------------------+------------------------------+-------------+ 279s | install | InstallRule | debputy | 279s | install-docs | InstallRule | debputy | 279s | install-doc | InstallRule | debputy | 279s | install-examples | InstallRule | debputy | 279s | install-example | InstallRule | debputy | 279s | install-man | InstallRule | debputy | 279s | discard | InstallRule | debputy | 279s | multi-dest-install | InstallRule | debputy | 279s | move | TransformationRule | debputy | 279s | remove | TransformationRule | debputy | 279s | create-symlink | TransformationRule | debputy | 279s | path-metadata | TransformationRule | debputy | 279s | create-directories | TransformationRule | debputy | 279s | remove | DpkgMaintscriptHelperCommand | debputy | 279s | rename | DpkgMaintscriptHelperCommand | debputy | 279s | cross-compiling | ManifestCondition | debputy | 279s | can-execute-compiled-binaries | ManifestCondition | debputy | 279s | run-build-time-tests | ManifestCondition | debputy | 279s | not | ManifestCondition | debputy | 279s | any-of | ManifestCondition | debputy | 279s | all-of | ManifestCondition | debputy | 279s | arch-matches | ManifestCondition | debputy | 279s | source-context-arch-matches | ManifestCondition | debputy | 279s | package-context-arch-matches | ManifestCondition | debputy | 279s | build-profiles-matches | ManifestCondition | debputy | 279s | autoconf | BuildRule | debputy | 279s | make | BuildRule | debputy | 279s | perl-build | BuildRule | debputy | 279s | perl-makemaker | BuildRule | debputy | 279s | debhelper | BuildRule | debputy | 279s | cmake | BuildRule | debputy | 279s | meson | BuildRule | debputy | 279s | qmake | BuildRule | debputy | 279s | qmake6 | BuildRule | debputy | 279s | manifest-version | | debputy | 279s | definitions | | debputy | 279s | installations | | debputy | 279s | packages | | debputy | 279s | build-environments | | debputy | 279s | default-build-environment | | debputy | 279s | builds | | debputy | 279s | variables | definitions | debputy | 279s | binary-version | packages.{{PACKAGE}} | debputy | 279s | transformations | packages.{{PACKAGE}} | debputy | 279s | conffile-management | packages.{{PACKAGE}} | debputy | 279s | services | packages.{{PACKAGE}} | debputy | 279s | clean-after-removal | packages.{{PACKAGE}} | debputy | 279s | installation-search-dirs | packages.{{PACKAGE}} | debputy | 279s +-------------------------------+------------------------------+-------------+ 279s + debputy --no-pager plugin list automatic-discard-rules 279s +-----------------------+-------------+ 279s | Name | Provided By | 279s +-----------------------+-------------+ 279s | python-cache-files | debputy | 279s | la-files | debputy | 279s | backup-files | debputy | 279s | version-control-paths | debputy | 279s | gnu-info-dir-file | debputy | 279s | debian-dir | debputy | 279s | doxygen-cruft-files | debputy | 279s +-----------------------+-------------+ 279s + debputy --no-pager plugin list a-d-r 279s +-----------------------+-------------+ 279s | Name | Provided By | 279s +-----------------------+-------------+ 279s | python-cache-files | debputy | 279s | la-files | debputy | 279s | backup-files | debputy | 279s | version-control-paths | debputy | 279s | gnu-info-dir-file | debputy | 279s | debian-dir | debputy | 279s | doxygen-cruft-files | debputy | 279s +-----------------------+-------------+ 279s + debputy --no-pager plugin show ppf changelog 280s Packager Provided File: changelog 280s ================================= 280s 280s This file is the changelog of the package and is mandatory. 280s 280s The changelog contains the version of the source package and is mandatory for all 280s packages. 280s 280s Use `dch --create` to create the changelog. 280s 280s In theory, the binary package can have a different changelog than the source 280s package (by having `debian/binary-package.changelog`). However, it is generally 280s not useful and leads to double administration. It has not been used in practice. 280s 280s Features: 280s * debian/changelog is used for *ALL* packages 280s * No naming support; at most one per package and it is named after the package. 280s * No architecture specific variants. 280s 280s Examples matches: 280s +-----------------------------+--------------------------------------------+ 280s | Source file | Installed As | 280s +-----------------------------+--------------------------------------------+ 280s | debian/changelog | /usr/share/doc/dh-debputy/changelog.Debian | 280s | debian/dh-debputy.changelog | /usr/share/doc/dh-debputy/changelog.Debian | 280s +-----------------------------+--------------------------------------------+ 280s 280s Documentation URIs: 280s * man:deb-changelog(5) 280s * https://www.debian.org/doc/debian-policy/ch-source.html#debian-changelog-debian-changelog 280s * man:dch(1) 280s 280s Install Mode: 0644 280s Provided by plugin: debputy 280s + debputy --no-pager plugin show ppf debian/changelog 280s Packager Provided File: changelog 280s ================================= 280s 280s This file is the changelog of the package and is mandatory. 280s 280s The changelog contains the version of the source package and is mandatory for all 280s packages. 280s 280s Use `dch --create` to create the changelog. 280s 280s In theory, the binary package can have a different changelog than the source 280s package (by having `debian/binary-package.changelog`). However, it is generally 280s not useful and leads to double administration. It has not been used in practice. 280s 280s Features: 280s * debian/changelog is used for *ALL* packages 280s * No naming support; at most one per package and it is named after the package. 280s * No architecture specific variants. 280s 280s Examples matches: 280s +-----------------------------+--------------------------------------------+ 280s | Source file | Installed As | 280s +-----------------------------+--------------------------------------------+ 280s | debian/changelog | /usr/share/doc/dh-debputy/changelog.Debian | 280s | debian/dh-debputy.changelog | /usr/share/doc/dh-debputy/changelog.Debian | 280s +-----------------------------+--------------------------------------------+ 280s 280s Documentation URIs: 280s * man:deb-changelog(5) 280s * https://www.debian.org/doc/debian-policy/ch-source.html#debian-changelog-debian-changelog 280s * man:dch(1) 280s 280s Install Mode: 0644 280s Provided by plugin: debputy 280s + debputy --no-pager plugin show ppf service 280s Packager Provided File: service 280s =============================== 280s 280s Sorry, no description provided by the plugin debputy. 280s 280s Features: 280s * debian/service is used for only for the "main" package 280s * Supports naming segment (multiple files and custom naming). 280s * No architecture specific variants. 280s 280s Examples matches: 280s +------------------------------------------+------------------------------------------------+ 280s | Source file | Installed As | 280s +------------------------------------------+------------------------------------------------+ 280s | debian/service | /usr/lib/systemd/system/dh-debputy.service | 280s | debian/dh-debputy.service | /usr/lib/systemd/system/dh-debputy.service | 280s | debian/dh-debputy.my.custom.name.service | /usr/lib/systemd/system/my.custom.name.service | 280s +------------------------------------------+------------------------------------------------+ 280s 280s Documentation URIs: 280s * man:systemd.service(5) 280s 280s Install Mode: 0644 280s Provided by plugin: debputy 281s + debputy --no-pager plugin show pmr --help 281s usage: debputy plugin show pluggable-manifest-rules [-h] 281s [--debputy-manifest DEBPUTY_MANIFEST] 281s [-d] [--no-pager] 281s [--plugin REQUIRED_PLUGINS] 281s rule-name 281s 281s positional arguments: 281s rule-name Name of the rule (such as `install`) to display 281s details about 281s 281s options: 281s -h, --help show this help message and exit 281s --debputy-manifest DEBPUTY_MANIFEST 281s Specify another `debputy` manifest (default: 281s debian/debputy.manifest) 281s -d, --debug Enable debug logging and raw stack traces on errors. 281s Some warnings become errors as a consequence. 281s --no-pager For subcommands that can use a pager, disable the use 281s of pager. Some output formats implies --no-pager 281s --plugin REQUIRED_PLUGINS 281s Request the plugin to be loaded. Can be used multiple 281s time. Ignored for some commands (such as autopkgtest- 281s test-runner) 281s Checking installations manifest rules 281s + echo Checking installations manifest rules 281s + debputy --no-pager plugin show pmr install 281s Generic install (`install`) 281s =========================== 281s 281s The generic `install` rule can be used to install arbitrary paths into packages 281s and is *similar* to how `dh_install` from debhelper works. It is a two "primary" uses. 281s 281s 1) The classic "install into directory" similar to the standard `dh_install` 281s 2) The "install as" similar to `dh-exec`'s `foo => bar` feature. 281s 281s The `install` rule installs a path exactly once into each package it acts on. In 281s the rare case that you want to install the same source *multiple* times into the 281s *same* packages, please have a look at `multi-dest-install`. 281s 281s Attributes: 281s - `source` (conditional): FileSystemMatchRule 281s `sources` (conditional): List of string 281s 281s A path match (`source`) or a list of path matches (`sources`) defining the 281s source path(s) to be installed. The path match(es) can use globs. Each match 281s is tried against default search directories. 281s - When a symlink is matched, then the symlink (not its target) is installed 281s as-is. When a directory is matched, then the directory is installed along 281s with all the contents that have not already been installed somewhere. 281s 281s - `dest-dir` (optional): FileSystemExactMatchRule 281s 281s A path defining the destination *directory*. The value *cannot* use globs, but can 281s use substitution. If neither `as` nor `dest-dir` is given, then `dest-dir` defaults 281s to the directory name of the `source`. 281s 281s - `into` (optional): string or a list of string 281s 281s Either a package name or a list of package names for which these paths should be 281s installed. This key is conditional on whether there are multiple binary packages listed 281s in `debian/control`. When there is only one binary package, then that binary is the 281s default for `into`. Otherwise, the key is required. 281s 281s - `as` (optional): FileSystemExactMatchRule 281s 281s A path defining the path to install the source as. This is a full path. This option 281s is mutually exclusive with `dest-dir` and `sources` (but not `source`). When `as` is 281s given, then `source` must match exactly one "not yet matched" path. 281s 281s - `when` (optional): ManifestCondition 281s 281s A condition as defined in [Conditional rules](https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#Conditional rules). 281s 281s The conditional will disable the entire rule when the conditional evaluates to false. 281s 281s 281s This rule enforces the following restrictions: 281s - The rule must use exactly one of: `sources`, `source` 281s - The attribute `as` cannot be used with any of: `sources`, `dest-dir` 281s 281s Non-mapping format: string or a list of string 281s When the input is a string or a list of string, then that value is used as shorthand 281s for `source` or `sources` (respectively). This form can only be used when `into` is 281s not required. 281s 281s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#generic-install-install 281s Used in: installations 281s Rule reference: InstallRule::install 281s Plugin: debputy 281s 281s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 281s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 281s + debputy --no-pager plugin show pmr install-docs 281s Install documentation (`install-docs`) 281s ====================================== 281s 281s This install rule resemble that of `dh_installdocs`. It is a shorthand over the generic 281s `install` rule with the following key features: 281s 281s 1) The default `dest-dir` is to use the package's documentation directory (usually something 281s like `/usr/share/doc/{PACKAGE}`, though it respects the "main documentation package" 281s recommendation from Debian Policy). The `dest-dir` or `as` can be set in case the 281s documentation in question goes into another directory or with a concrete path. In this 281s case, it is still "better" than `install` due to the remaining benefits. 281s 2) The rule comes with pre-defined conditional logic for skipping the rule under 281s `DEB_BUILD_OPTIONS=nodoc`, so you do not have to write that conditional yourself. 281s 3) The `into` parameter can be omitted as long as there is a exactly one non-`udeb` 281s package listed in `debian/control`. 281s 281s With these two things in mind, it behaves just like the `install` rule. 281s 281s Note: It is often worth considering to use a more specialized version of the `install-docs` 281s rule when one such is available. If you are looking to install an example or a man page, 281s consider whether `install-examples` or `install-man` might be a better fit for your 281s use-case. 281s 281s Attributes: 281s - `source` (conditional): FileSystemMatchRule 281s `sources` (conditional): List of string 281s 281s A path match (`source`) or a list of path matches (`sources`) defining the 281s source path(s) to be installed. The path match(es) can use globs. Each match 281s is tried against default search directories. 281s - When a symlink is matched, then the symlink (not its target) is installed 281s as-is. When a directory is matched, then the directory is installed along 281s with all the contents that have not already been installed somewhere. 281s 281s - **CAVEAT**: Specifying `source: examples` where `examples` resolves to a 281s directory for `install-examples` will give you an `examples/examples` 281s directory in the package, which is rarely what you want. Often, you 281s can solve this by using `examples/*` instead. Similar for `install-docs` 281s and a `doc` or `docs` directory. 281s 281s - `dest-dir` (optional): FileSystemExactMatchRule 281s 281s A path defining the destination *directory*. The value *cannot* use globs, but can 281s use substitution. If neither `as` nor `dest-dir` is given, then `dest-dir` defaults 281s to the relevant package documentation directory (a la `/usr/share/doc/{PACKAGE}`). 281s 281s - `into` (optional): string or a list of string 281s 281s Either a package name or a list of package names for which these paths should be 281s installed as documentation. This key is conditional on whether there are multiple 281s (non-`udeb`) binary packages listed in `debian/control`. When there is only one 281s (non-`udeb`) binary package, then that binary is the default for `into`. Otherwise, 281s the key is required. 281s 281s - `as` (optional): FileSystemExactMatchRule 281s 281s A path defining the path to install the source as. This is a full path. This option 281s is mutually exclusive with `dest-dir` and `sources` (but not `source`). When `as` is 281s given, then `source` must match exactly one "not yet matched" path. 281s 281s - `when` (optional): ManifestCondition 281s 281s A condition as defined in [Conditional rules](https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#Conditional rules). 281s This condition will be combined with the built-in condition provided by these rules 281s (rather than replacing it). 281s 281s 281s This rule enforces the following restrictions: 281s - The rule must use exactly one of: `sources`, `source` 281s - The attribute `as` cannot be used with any of: `sources`, `dest-dir` 281s 281s Non-mapping format: string or a list of string 281s When the input is a string or a list of string, then that value is used as shorthand 281s for `source` or `sources` (respectively). This form can only be used when `into` is 281s not required. 281s 281s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#install-documentation-install-docs 281s Used in: installations 281s Rule reference: InstallRule::install-docs 281s Plugin: debputy 281s 281s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 281s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 282s + debputy --no-pager plugin show pmr install-man 282s Install man pages (`install-man`) 282s ================================= 282s 282s Install rule for installing man pages similar to `dh_installman`. It is a shorthand 282s over the generic `install` rule with the following key features: 282s 282s 1) The rule can only match files (notably, symlinks cannot be matched by this rule). 282s 2) The `dest-dir` is computed per source file based on the man page's section and 282s language. 282s 3) The `into` parameter can be omitted as long as there is a exactly one non-`udeb` 282s package listed in `debian/control`. 282s 4) The rule comes with man page specific attributes such as `language` and `section` 282s for when the auto-detection is insufficient. 282s 5) The rule comes with pre-defined conditional logic for skipping the rule under 282s `DEB_BUILD_OPTIONS=nodoc`, so you do not have to write that conditional yourself. 282s 282s With these things in mind, the rule behaves similar to the `install` rule. 282s 282s Attributes: 282s - `source` (conditional): FileSystemMatchRule 282s `sources` (conditional): List of string 282s 282s A path match (`source`) or a list of path matches (`sources`) defining the 282s source path(s) to be installed. The path match(es) can use globs. Each match 282s is tried against default search directories. 282s - When a symlink is matched, then the symlink (not its target) is installed 282s as-is. When a directory is matched, then the directory is installed along 282s with all the contents that have not already been installed somewhere. 282s 282s - `into` (optional): string or a list of string 282s 282s Either a package name or a list of package names for which these paths should be 282s installed as man pages. This key is conditional on whether there are multiple (non-`udeb`) 282s binary packages listed in `debian/control`. When there is only one (non-`udeb`) binary 282s package, then that binary is the default for `into`. Otherwise, the key is required. 282s 282s - `section` (optional): integer 282s 282s If provided, it must be an integer between 1 and 9 (both inclusive), defining the 282s section the man pages belong overriding any auto-detection that `debputy` would 282s have performed. 282s 282s - `language` (optional): string 282s 282s If provided, it must be either a 2 letter language code (such as `de`), a 5 letter 282s language + dialect code (such as `pt_BR`), or one of the special keywords `C`, 282s `derive-from-path`, or `derive-from-basename`. The default is `derive-from-path`. 282s - When `language` is `C`, then the man pages are assumed to be "untranslated". 282s - When `language` is a language code (with or without dialect), then all man pages 282s matched will be assumed to be translated to that concrete language / dialect. 282s - When `language` is `derive-from-path`, then `debputy` attempts to derive the 282s language from the path (`man//man
`). This matches the 282s default of `dh_installman`. When no language can be found for a given source, 282s `debputy` behaves like language was `C`. 282s - When `language` is `derive-from-basename`, then `debputy` attempts to derive 282s the language from the basename (`foo..1`) similar to `dh_installman` 282s previous default. When no language can be found for a given source, `debputy` 282s behaves like language was `C`. Note this is prone to false positives where 282s `.pl`, `.so` or similar two-letter extensions gets mistaken for a language code 282s (`.pl` can both be "Polish" or "Perl Script", `.so` can both be "Somali" and 282s "Shared Object" documentation). In this configuration, such extensions are 282s always assumed to be a language. 282s 282s - `when` (optional): ManifestCondition 282s 282s A condition as defined in [Conditional rules](https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#Conditional rules). 282s 282s The conditional will disable the entire rule when the conditional evaluates to false. 282s 282s 282s This rule enforces the following restrictions: 282s - The rule must use exactly one of: `sources`, `source` 282s 282s Non-mapping format: string or a list of string 282s When the input is a string or a list of string, then that value is used as shorthand 282s for `source` or `sources` (respectively). This form can only be used when `into` is 282s not required. 282s 282s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#install-manpages-install-man 282s Used in: installations 282s Rule reference: InstallRule::install-man 282s Plugin: debputy 282s 282s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 282s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 282s + debputy --no-pager plugin show pmr discard 282s Discard (or exclude) upstream provided paths (`discard`) 282s ======================================================== 282s 282s When installing paths from `debian/tmp` into packages, it might be useful to ignore 282s some paths that you never need installed. This can be done with the `discard` rule. 282s 282s Once a path is discarded, it cannot be matched by any other install rules. A path 282s that is discarded, is considered handled when `debputy` checks for paths you might 282s have forgotten to install. The `discard` feature is therefore *also* replaces the 282s `debian/not-installed` file used by `debhelper` and `cdbs`. 282s 282s Attributes: 282s - `path` (conditional): FileSystemMatchRule 282s `paths` (conditional): List of string 282s 282s A path match (`path`) or a list of path matches (`paths`) defining the source 282s path(s) that should not be installed anywhere. The path match(es) can use globs. 282s - When a symlink is matched, then the symlink (not its target) is discarded as-is. 282s When a directory is matched, then the directory is discarded along with all the 282s contents that have not already been installed somewhere. 282s 282s - `search-dir` (optional): FileSystemExactMatchRule 282s `search-dirs` (optional): List of string 282s 282s A path (`search-dir`) or a list to paths (`search-dirs`) that defines 282s which search directories apply to. This attribute is primarily useful 282s for source packages that uses "per package search dirs", and you want 282s to restrict a discard rule to a subset of the relevant search dirs. 282s Note all listed search directories must be either an explicit search 282s requested by the packager or a search directory that `debputy` 282s provided automatically (such as `debian/tmp`). Listing other paths 282s will make `debputy` report an error. 282s - Note that the `path` or `paths` must match at least one entry in 282s any of the search directories unless *none* of the search directories 282s exist (or the condition in `required-when` evaluates to false). When 282s none of the search directories exist, the discard rule is silently 282s skipped. This special-case enables you to have discard rules only 282s applicable to certain builds that are only performed conditionally. 282s 282s - `required-when` (optional): ManifestCondition 282s 282s A condition as defined in [Conditional rules](#conditional-rules). The discard 282s rule is always applied. When the conditional is present and evaluates to false, 282s the discard rule can silently match nothing.When the condition is absent, *or* 282s it evaluates to true, then each pattern provided must match at least one path. 282s 282s 282s This rule enforces the following restrictions: 282s - The rule must use exactly one of: `path`, `paths` 282s - The following attributes are mutually exclusive: `search-dirs`, `search-dir` 282s 282s Non-mapping format: string or a list of string 282s When the input is a string or a list of string, then that value is used as shorthand 282s for `path` or `paths` (respectively). 282s 282s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#discard-or-exclude-upstream-provided-paths-discard 282s Used in: installations 282s Rule reference: InstallRule::discard 282s Plugin: debputy 282s 282s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 282s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 282s Checking binary package transformations manifest rules 282s + echo Checking binary package transformations manifest rules 282s + debputy --no-pager plugin show pmr TransformationRule::remove 283s Remove transformation rule (`remove`) 283s ===================================== 283s 283s The remove transformation rule is mostly only useful for single binary source packages, 283s where everything from upstream's build system is installed automatically into the package. 283s In those case, you might find yourself with some files that are _not_ relevant for the 283s Debian package (but would be relevant for other distros or for non-distro local builds). 283s Common examples include `INSTALL` files or `LICENSE` files (when they are just a subset 283s of `debian/copyright`). 283s 283s In the manifest, you can ask `debputy` to remove paths from the debian package by using 283s the `remove` transformation rule. 283s 283s Note that `remove` removes paths from future glob matches and transformation rules. 283s 283s Attributes: 283s - `path` (conditional): FileSystemMatchRule 283s `paths` (conditional): List of string 283s 283s A path match (`path`) or a list of path matches (`paths`) defining the 283s path(s) inside the package that should be removed. The path match(es) 283s can use globs. 283s - When a symlink is matched, then the symlink (not its target) is removed 283s as-is. When a directory is matched, then the directory is removed 283s along with all the contents. 283s 283s - `keep-empty-parent-dirs` (optional): boolean 283s 283s A boolean determining whether to prune parent directories that become 283s empty as a consequence of this rule. When provided and `true`, this 283s rule will leave empty directories behind. Otherwise, if this rule 283s causes a directory to become empty that directory will be removed. 283s 283s - `when` (optional): ManifestCondition 283s 283s A condition as defined in [Conditional rules](https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#Conditional rules). 283s This condition will be combined with the built-in condition provided by these rules 283s (rather than replacing it). 283s 283s 283s This rule enforces the following restrictions: 283s - The rule must use exactly one of: `paths`, `path` 283s 283s Non-mapping format: string or a list of string 283s When the input is a string or a list of string, then that value is used as shorthand 283s for `path` or `paths` (respectively). 283s 283s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#remove-transformation-rule-remove 283s Used in: packages.{{PACKAGE}}.transformations 283s Rule reference: TransformationRule::remove 283s Plugin: debputy 283s 283s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 283s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 283s + debputy --no-pager plugin show pmr move 283s Move transformation rule (`move`) 283s ================================= 283s 283s The move transformation rule is mostly only useful for single binary source packages, 283s where everything from upstream's build system is installed automatically into the package. 283s In those case, you might find yourself with some files that need to be renamed to match 283s Debian specific requirements. 283s 283s This can be done with the `move` transformation rule, which is a rough emulation of the 283s `mv` command line tool. 283s 283s Attributes: 283s - `source` (required): FileSystemMatchRule 283s 283s A path match defining the source path(s) to be renamed. The value can use globs 283s and substitutions. 283s 283s - `target` (required): FileSystemExactMatchRule 283s 283s A path defining the target path. The value *cannot* use globs, but can use 283s substitution. If the target ends with a literal `/` (prior to substitution), 283s the target will *always* be a directory. 283s 283s - `when` (optional): ManifestCondition 283s 283s A condition as defined in [Conditional rules](https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#Conditional rules). 283s 283s The conditional will disable the entire rule when the conditional evaluates to false. 283s 283s 283s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#move-transformation-rule-move 283s Used in: packages.{{PACKAGE}}.transformations 283s Rule reference: TransformationRule::move 283s Plugin: debputy 283s 283s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 283s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 283s + debputy --no-pager plugin show pmr create-symlink 283s Create symlinks transformation rule (`create-symlink`) 283s ====================================================== 283s 283s Often, the upstream build system will provide the symlinks for you. However, 283s in some cases, it is useful for the packager to define distribution specific 283s symlinks. This can be done via the `create-symlink` transformation rule. 283s 283s Attributes: 283s - `path` (required): FileSystemExactMatchRule 283s 283s The path that should be a symlink. The path may contain substitution 283s variables such as `{DEB_HOST_MULTIARCH}` but _cannot_ use globs. 283s Parent directories are implicitly created as necessary. 283s * Note that if `path` already exists, the behavior of this 283s transformation depends on the value of `replacement-rule`. 283s 283s - `target` (required): SymlinkTarget 283s 283s Where the symlink should point to. The target may contain substitution 283s variables such as `{DEB_HOST_MULTIARCH}` but _cannot_ use globs. 283s The link target is _not_ required to exist inside the package. 283s * The `debputy` tool will normalize the target according to the rules 283s of the Debian Policy. Use absolute or relative target at your own 283s preference. 283s 283s - `replacement-rule` (optional): One of the following literal values: "error-if-exists", "error-if-directory", "abort-on-non-empty-directory", "discard-existing" 283s 283s This attribute defines how to handle if `path` already exists. It can 283s be set to one of the following values: 283s - `error-if-exists`: When `path` already exists, `debputy` will 283s stop with an error. This is similar to `ln -s` semantics. 283s - `error-if-directory`: When `path` already exists, **and** it is 283s a directory, `debputy` will stop with an error. Otherwise, 283s remove the `path` first and then create the symlink. This is 283s similar to `ln -sf` semantics. 283s - `abort-on-non-empty-directory` (default): When `path` already 283s exists, then it will be removed provided it is a non-directory 283s **or** an *empty* directory and the symlink will then be 283s created. If the path is a *non-empty* directory, `debputy` 283s will stop with an error. 283s - `discard-existing`: When `path` already exists, it will be 283s removed. If the `path` is a directory, all its contents will 283s be removed recursively along with the directory. Finally, 283s the symlink is created. This is similar to having an explicit 283s `remove` rule just prior to the `create-symlink` that is 283s conditional on `path` existing (plus the condition defined in 283s `when` if any). 283s 283s Keep in mind, that `replacement-rule` only applies if `path` exists. 283s If the symlink cannot be created, because a part of `path` exist and 283s is *not* a directory, then `create-symlink` will fail regardless of 283s the value in `replacement-rule`. 283s 283s - `when` (optional): ManifestCondition 283s 283s A condition as defined in [Conditional rules](https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#Conditional rules). 283s 283s The conditional will disable the entire rule when the conditional evaluates to false. 283s 283s 283s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#create-symlinks-transformation-rule-create-symlink 283s Used in: packages.{{PACKAGE}}.transformations 283s Rule reference: TransformationRule::create-symlink 283s Plugin: debputy 283s 283s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 283s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 283s + debputy --no-pager plugin show pmr path-metadata 284s Change path owner/group or mode (`path-metadata`) 284s ================================================= 284s 284s The `debputy` command normalizes the path metadata (such as ownership and mode) similar 284s to `dh_fixperms`. For most packages, the default is what you want. However, in some 284s cases, the package has a special case or two that `debputy` does not cover. In that 284s case, you can tell `debputy` to use the metadata you want by using the `path-metadata` 284s transformation. 284s 284s Common use-cases include setuid/setgid binaries (such `usr/bin/sudo`) or/and static 284s ownership (such as /usr/bin/write). 284s 284s Attributes: 284s - `path` (conditional): FileSystemMatchRule 284s `paths` (conditional): List of string 284s 284s A path match (`path`) or a list of path matches (`paths`) defining the path(s) 284s inside the package that should be affected. The path match(es) can use globs 284s and substitution variables. Special-rules for matches: 284s - Symlinks are never followed and will never be matched by this rule. 284s - Directory handling depends on the `recursive` attribute. 284s 284s - `owner` (optional): one-of: integer, string 284s 284s Denotes the owner of the paths matched by `path` or `paths`. When omitted, 284s no change of owner is done. 284s 284s - `group` (optional): one-of: integer, string 284s 284s Denotes the group of the paths matched by `path` or `paths`. When omitted, 284s no change of group is done. 284s 284s - `mode` (optional): FileSystemMode 284s 284s Denotes the mode of the paths matched by `path` or `paths`. When omitted, 284s no change in mode is done. Note that numeric mode must always be given as 284s a string (i.e., with quotes). Symbolic mode can be used as well. If 284s symbolic mode uses a relative definition (e.g., `o-rx`), then it is 284s relative to the matched path's current mode. 284s 284s - `capabilities` (optional): Capability 284s 284s Denotes a Linux capability that should be applied to the path. When provided, 284s `debputy` will cause the capability to be applied to all *files* denoted by 284s the `path`/`paths` attribute on install (via `postinst configure`) provided 284s that `setcap` is installed on the system when the `postinst configure` is 284s run. 284s - If any non-file paths are matched, the `capabilities` will *not* be applied 284s to those paths. 284s 284s 284s - `capability-mode` (optional): FileSystemMode 284s 284s Denotes the mode to apply to the path *if* the Linux capability denoted in 284s `capabilities` was successfully applied. If omitted, it defaults to `a-s` as 284s generally capabilities are used to avoid "setuid"/"setgid" binaries. The 284s `capability-mode` is relative to the *final* path mode (the mode of the path 284s in the produced `.deb`). The `capability-mode` attribute cannot be used if 284s `capabilities` is omitted. 284s 284s - `recursive` (optional): boolean 284s 284s When a directory is matched, then the metadata changes are applied to the 284s directory itself. When `recursive` is `true`, then the transformation is 284s *also* applied to all paths beneath the directory. The default value for 284s this attribute is `false`. 284s 284s - `when` (optional): ManifestCondition 284s 284s A condition as defined in [Conditional rules](https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#Conditional rules). 284s 284s The conditional will disable the entire rule when the conditional evaluates to false. 284s 284s 284s This rule enforces the following restrictions: 284s - The rule must use exactly one of: `paths`, `path` 284s 284s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#change-path-ownergroup-or-mode-path-metadata 284s Used in: packages.{{PACKAGE}}.transformations 284s Rule reference: TransformationRule::path-metadata 284s Plugin: debputy 284s 284s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 284s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 284s + debputy --no-pager plugin show pmr create-directories 284s Create directories transformation rule (`create-directories`) 284s ============================================================= 284s 284s NOTE: This transformation is only really needed if you need to create an empty 284s directory somewhere in your package as an integration point. All `debputy` 284s transformations will create directories as required. 284s 284s In most cases, upstream build systems and `debputy` will create all the relevant 284s directories. However, in some rare cases you may want to explicitly define a path 284s to be a directory. Maybe to silence a linter that is warning you about a directory 284s being empty, or maybe you need an empty directory that nothing else is creating for 284s you. This can be done via the `create-directories` transformation rule. 284s 284s Unless you have a specific need for the mapping form, you are recommended to use the 284s shorthand form of just listing the directories you want created. 284s 284s Attributes: 284s - `path` (conditional): FileSystemExactMatchRule 284s `paths` (conditional): List of string 284s 284s A path (`path`) or a list of path (`paths`) defining the path(s) inside the 284s package that should be created as directories. The path(es) _cannot_ use globs 284s but can use substitution variables. Parent directories are implicitly created 284s (with owner `root:root` and mode `0755` - only explicitly listed directories 284s are affected by the owner/mode options) 284s 284s - `owner` (optional): one-of: integer, string 284s 284s Denotes the owner of the directory (but _not_ what is inside the directory). 284s Default is "root". 284s 284s - `group` (optional): one-of: integer, string 284s 284s Denotes the group of the directory (but _not_ what is inside the directory). 284s Default is "root". 284s 284s - `mode` (optional): FileSystemMode 284s 284s Denotes the mode of the directory (but _not_ what is inside the directory). 284s Note that numeric mode must always be given as a string (i.e., with quotes). 284s Symbolic mode can be used as well. If symbolic mode uses a relative 284s definition (e.g., `o-rx`), then it is relative to the directory's current mode 284s (if it already exists) or `0755` if the directory is created by this 284s transformation. The default is "0755". 284s 284s - `when` (optional): ManifestCondition 284s 284s A condition as defined in [Conditional rules](https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#Conditional rules). 284s 284s The conditional will disable the entire rule when the conditional evaluates to false. 284s 284s 284s This rule enforces the following restrictions: 284s - The rule must use exactly one of: `path`, `paths` 284s 284s Non-mapping format: string or a list of string 284s When the input is a string or a list of string, then that value is used as shorthand 284s for `path` or `paths` (respectively). 284s 284s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#create-directories-transformation-rule-directories 284s Used in: packages.{{PACKAGE}}.transformations 284s Rule reference: TransformationRule::create-directories 284s Plugin: debputy 284s 284s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 284s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 284s + debputy --no-pager plugin show pmr run-build-time-tests 284s Whether build time tests should be run `run-build-time-tests` 284s ============================================================= 284s 284s The `run-build-time-tests` condition is used to determine whether (build 284s time) tests should be run for this build. This condition roughly 284s translates into whether `nocheck` is present in `DEB_BUILD_OPTIONS`. 284s 284s In general, the manifest *should not* prevent build time tests from being 284s run during cross-builds. 284s 284s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#whether-build-time-tests-should-be-run-run-build-time-tests-string 284s Used in: *.when 284s Rule reference: ManifestCondition::run-build-time-tests 284s Plugin: debputy 284s 284s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 284s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 284s + debputy --no-pager plugin show pmr arch-matches 285s Architecture match condition `arch-matches` 285s =========================================== 285s 285s Sometimes, a rule needs to be conditional on the architecture. 285s This can be done by using the `arch-matches` rule. In 99.99% 285s of the cases, `arch-matches` will be form you are looking for 285s and practically behaves like a comparison against 285s `dpkg-architecture -qDEB_HOST_ARCH`. 285s 285s For the cross-compiling specialists or curious people: The 285s `arch-matches` rule behaves like a `package-context-arch-matches` 285s in the context of a binary package and like 285s `source-context-arch-matches` otherwise. The details of those 285s are covered in their own keywords. 285s 285s Non-mapping format: string 285s The value must be a string in the form of a space separated list 285s architecture names or architecture wildcards (same syntax as the 285s architecture restriction in Build-Depends in debian/control except 285s there is no enclosing `[]` brackets). The names/wildcards can 285s optionally be prefixed by `!` to negate them. However, either 285s *all* names / wildcards must have negation or *none* of them may 285s have it. 285s 285s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#architecture-match-condition-arch-matches-mapping 285s Used in: *.when 285s Rule reference: ManifestCondition::arch-matches 285s Plugin: debputy 285s 285s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 285s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 285s + debputy --no-pager plugin show pmr not 285s Negated condition `not` (mapping) 285s ================================= 285s 285s It is possible to negate a condition via the `not` condition. 285s 285s As an example: 285s 285s packages: 285s util-linux: 285s transformations: 285s - create-symlink 285s path: sbin/getty 285s target: /sbin/agetty 285s when: 285s # On Hurd, the package "hurd" ships "sbin/getty". 285s # This example happens to also be alternative to `arch-marches: '!hurd-any` 285s not: 285s arch-matches: 'hurd-any' 285s 285s The `not` condition is specified as a mapping, where the key is `not` and the 285s value is a nested condition. 285s 285s Attributes: 285s - `not` (required): ManifestCondition 285s 285s The condition to be negated. 285s 285s 285s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#whether-build-time-tests-should-be-run-run-build-time-tests-string 285s Used in: *.when 285s Rule reference: ManifestCondition::not 285s Plugin: debputy 285s 285s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 285s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 285s + debputy --no-pager plugin show pmr build-profiles-matches 285s Active build profile match condition `build-profiles-matches` 285s ============================================================= 285s 285s The `build-profiles-matches` condition is used to assert whether the 285s active build profiles (`DEB_BUILD_PROFILES` / `dpkg-buildpackage -P`) 285s matches a given build profile restriction. 285s 285s Non-mapping format: string 285s The value is a string using the same syntax as the `Build-Profiles` 285s field from `debian/control` (i.e., a space separated list of 285s `<[!]profile ...>` groups). 285s 285s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#active-build-profile-match-condition-build-profiles-matches-mapping 285s Used in: *.when 285s Rule reference: ManifestCondition::build-profiles-matches 285s Plugin: debputy 285s 285s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 285s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 286s + debputy --no-pager plugin show pmr cross-compiling 286s Cross-Compiling condition `cross-compiling` 286s =========================================== 286s 286s The `cross-compiling` condition is used to determine if the current build is 286s performing a cross build (i.e., `DEB_BUILD_GNU_TYPE` != `DEB_HOST_GNU_TYPE`). 286s Often this has consequences for what is possible to do. 286s 286s Note if you specifically want to know: 286s 286s * whether build-time tests should be run, then please use the 286s `run-build-time-tests` condition. 286s * whether compiled binaries can be run as if it was a native binary, please 286s use the `can-execute-compiled-binaries` condition instead. That condition 286s accounts for cross-building in its evaluation. 286s 286s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#cross-compiling-condition-cross-compiling-string 286s Used in: *.when 286s Rule reference: ManifestCondition::cross-compiling 286s Plugin: debputy 286s 286s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 286s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 286s + debputy --no-pager plugin show pmr binary-version 286s Custom binary version (`binary-version`) 286s ======================================== 286s 286s In the *rare* case that you need a binary package to have a custom version, you can use 286s the `binary-version:` key to describe the desired package version. An example being: 286s 286s packages: 286s foo: 286s # The foo package needs a different epoch because we took it over from a different 286s # source package with higher epoch version 286s binary-version: '1:{DEB_VERSION_UPSTREAM_REVISION}' 286s 286s Use this feature sparingly as it is generally not possible to undo as each version must be 286s monotonously higher than the previous one. This feature translates into `-v` option for 286s `dpkg-gencontrol`. 286s 286s The value for the `binary-version` key is a string that defines the binary version. Generally, 286s you will want it to contain one of the versioned related substitution variables such as 286s `{DEB_VERSION_UPSTREAM_REVISION}`. Otherwise, you will have to remember to bump the version 286s manually with each upload as versions cannot be reused and the package would not support binNMUs 286s either. 286s 286s Non-mapping format: string 286s 286s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#custom-binary-version-binary-version 286s Used in: packages.{{PACKAGE}} 286s Rule reference: packages.{{PACKAGE}}::binary-version 286s Plugin: debputy 286s 286s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 286s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 286s + debputy --no-pager plugin show pmr definitions 287s Packager provided definitions 287s ============================= 287s 287s Reusable packager provided definitions such as manifest variables. 287s 287s Attributes: 287s - `variables` (optional): Mapping of string 287s 287s It is possible to provide custom manifest variables via the `variables` attribute. An example: 287s 287s manifest-version: '0.1' 287s definitions: 287s variables: 287s LIBPATH: "/usr/lib/{DEB_HOST_MULTIARCH}" 287s SONAME: "1" 287s installations: 287s - install: 287s source: build/libfoo.so.{SONAME}* 287s # The quotes here is for the YAML parser's sake. 287s dest-dir: "{LIBPATH}" 287s into: libfoo{SONAME} 287s 287s The value of the `variables` key must be a mapping, where each key is a new variable name and 287s the related value is the value of said key. The keys must be valid variable name and not shadow 287s existing variables (that is, variables such as `PACKAGE` and `DEB_HOST_MULTIARCH` *cannot* be 287s redefined). The value for each variable *can* refer to *existing* variables as seen in the 287s example above. 287s 287s As usual, `debputy` will insist that all declared variables must be used. 287s 287s Limitations: 287s * When declaring variables that depends on another variable declared in the manifest, the 287s order is important. The variables are resolved from top to bottom. 287s * When a manifest variable depends on another manifest variable, the existing variable is 287s currently always resolved in source context. As a consequence, some variables such as 287s `{PACKAGE}` cannot be used when defining a variable. This restriction may be 287s lifted in the future. 287s 287s 287s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#packager-provided-definitions 287s Used in: The manifest root 287s Rule reference: ::definitions 287s Plugin: debputy 287s 287s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 287s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 287s + debputy --no-pager plugin show pmr variables 287s Manifest Variables (`variables`) 287s ================================ 287s 287s It is possible to provide custom manifest variables via the `variables` attribute. An example: 287s 287s manifest-version: '0.1' 287s definitions: 287s variables: 287s LIBPATH: "/usr/lib/{DEB_HOST_MULTIARCH}" 287s SONAME: "1" 287s installations: 287s - install: 287s source: build/libfoo.so.{SONAME}* 287s # The quotes here is for the YAML parser's sake. 287s dest-dir: "{LIBPATH}" 287s into: libfoo{SONAME} 287s 287s The value of the `variables` key must be a mapping, where each key is a new variable name and 287s the related value is the value of said key. The keys must be valid variable name and not shadow 287s existing variables (that is, variables such as `PACKAGE` and `DEB_HOST_MULTIARCH` *cannot* be 287s redefined). The value for each variable *can* refer to *existing* variables as seen in the 287s example above. 287s 287s As usual, `debputy` will insist that all declared variables must be used. 287s 287s Limitations: 287s * When declaring variables that depends on another variable declared in the manifest, the 287s order is important. The variables are resolved from top to bottom. 287s * When a manifest variable depends on another manifest variable, the existing variable is 287s currently always resolved in source context. As a consequence, some variables such as 287s `{PACKAGE}` cannot be used when defining a variable. This restriction may be 287s lifted in the future. 287s 287s Non-mapping format: Mapping of string 287s 287s Reference documentation: No reference documentation link provided by the plugin 287s Used in: definitions 287s Rule reference: definitions::variables 287s Plugin: debputy 287s 287s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 287s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 287s + debputy --no-pager plugin show pmr ::definitions 287s Packager provided definitions 287s ============================= 287s 287s Reusable packager provided definitions such as manifest variables. 287s 287s Attributes: 287s - `variables` (optional): Mapping of string 287s 287s It is possible to provide custom manifest variables via the `variables` attribute. An example: 287s 287s manifest-version: '0.1' 287s definitions: 287s variables: 287s LIBPATH: "/usr/lib/{DEB_HOST_MULTIARCH}" 287s SONAME: "1" 287s installations: 287s - install: 287s source: build/libfoo.so.{SONAME}* 287s # The quotes here is for the YAML parser's sake. 287s dest-dir: "{LIBPATH}" 287s into: libfoo{SONAME} 287s 287s The value of the `variables` key must be a mapping, where each key is a new variable name and 287s the related value is the value of said key. The keys must be valid variable name and not shadow 287s existing variables (that is, variables such as `PACKAGE` and `DEB_HOST_MULTIARCH` *cannot* be 287s redefined). The value for each variable *can* refer to *existing* variables as seen in the 287s example above. 287s 287s As usual, `debputy` will insist that all declared variables must be used. 287s 287s Limitations: 287s * When declaring variables that depends on another variable declared in the manifest, the 287s order is important. The variables are resolved from top to bottom. 287s * When a manifest variable depends on another manifest variable, the existing variable is 287s currently always resolved in source context. As a consequence, some variables such as 287s `{PACKAGE}` cannot be used when defining a variable. This restriction may be 287s lifted in the future. 287s 287s 287s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md#packager-provided-definitions 287s Used in: The manifest root 287s Rule reference: ::definitions 287s Plugin: debputy 287s 287s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 287s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 287s + debputy --no-pager plugin show pmr definitions::variables 288s Manifest Variables (`variables`) 288s ================================ 288s 288s It is possible to provide custom manifest variables via the `variables` attribute. An example: 288s 288s manifest-version: '0.1' 288s definitions: 288s variables: 288s LIBPATH: "/usr/lib/{DEB_HOST_MULTIARCH}" 288s SONAME: "1" 288s installations: 288s - install: 288s source: build/libfoo.so.{SONAME}* 288s # The quotes here is for the YAML parser's sake. 288s dest-dir: "{LIBPATH}" 288s into: libfoo{SONAME} 288s 288s The value of the `variables` key must be a mapping, where each key is a new variable name and 288s the related value is the value of said key. The keys must be valid variable name and not shadow 288s existing variables (that is, variables such as `PACKAGE` and `DEB_HOST_MULTIARCH` *cannot* be 288s redefined). The value for each variable *can* refer to *existing* variables as seen in the 288s example above. 288s 288s As usual, `debputy` will insist that all declared variables must be used. 288s 288s Limitations: 288s * When declaring variables that depends on another variable declared in the manifest, the 288s order is important. The variables are resolved from top to bottom. 288s * When a manifest variable depends on another manifest variable, the existing variable is 288s currently always resolved in source context. As a consequence, some variables such as 288s `{PACKAGE}` cannot be used when defining a variable. This restriction may be 288s lifted in the future. 288s 288s Non-mapping format: Mapping of string 288s 288s Reference documentation: No reference documentation link provided by the plugin 288s Used in: definitions 288s Rule reference: definitions::variables 288s Plugin: debputy 288s 288s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 288s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 288s + debputy --no-pager plugin show pmr :: 288s Auto-generated reference documentation for the manifest root 288s ============================================================ 288s 288s This is an automatically generated reference documentation for the manifest root. It is generated 288s from input provided by debputy via the debputy API. 288s 288s (If you are the provider of the debputy plugin, you can replace this text with 288s your own documentation by providing the `inline_reference_documentation` when registering 288s the manifest rule.) 288s 288s Attributes: 288s - `manifest-version` (optional): One of the following literal values: "0.1" 288s 288s All `debputy` manifests must include a `debputy` manifest version, which will enable the 288s format to change over time. For now, there is only one version (`"0.1"`) and you have 288s to include the line: 288s 288s manifest-version: "0.1" 288s 288s On its own, the manifest containing only `manifest-version: "..."` will not do anything. So if you 288s end up only having the `manifest-version` key in the manifest, you can just remove the manifest and 288s rely entirely on the built-in rules. 288s 288s - `definitions` (optional): Object (see `::definitions`) 288s 288s Reusable packager provided definitions such as manifest variables. 288s 288s - `installations` (optional): 288s 288s For source packages building a single binary, the `dh_auto_install` from debhelper will default to 288s providing everything from upstream's install in the binary package. The `debputy` tool matches this 288s behavior and accordingly, the `installations` feature is only relevant in this case when you need to 288s manually specify something upstream's install did not cover. 288s 288s For sources, that build multiple binaries, where `dh_auto_install` does not detect anything to install, 288s or when `dh_auto_install --destdir debian/tmp` is used, the `installations` section of the manifest is 288s used to declare what goes into which binary package. An example: 288s 288s installations: 288s - install: 288s sources: "usr/bin/foo" 288s into: foo 288s - install: 288s sources: "usr/*" 288s into: foo-extra 288s 288s All installation rules are processed in order (top to bottom). Once a path has been matched, it can 288s no longer be matched by future rules. In the above example, then `usr/bin/foo` would be in the `foo` 288s package while everything in `usr` *except* `usr/bin/foo` would be in `foo-extra`. If these had been 288s ordered in reverse, the `usr/bin/foo` rule would not have matched anything and caused `debputy` 288s to reject the input as an error on that basis. This behavior is similar to "DEP-5" copyright files, 288s except the order is reversed ("DEP-5" uses "last match wins", where here we are doing "first match wins") 288s 288s In the rare case that some path need to be installed into two packages at the same time, then this is 288s generally done by changing `into` into a list of packages. 288s 288s All installations are currently run in *source* package context. This implies that: 288s 288s 1) No package specific substitutions are available. Notably `{PACKAGE}` cannot be resolved. 288s 2) All conditions are evaluated in source context. For 99.9% of users, this makes no difference, 288s but there is a cross-build feature that changes the "per package" architecture which is affected. 288s 288s This is a limitation that should be fixed in `debputy`. 288s 288s **Attention debhelper users**: Note the difference between `dh_install` (etc.) vs. `debputy` on 288s overlapping matches for installation. 288s 288s - `packages` (optional): PackageContext (chains to `::packages`) 288s 288s Inside the manifest, the `packages` mapping can be used to define requests for the binary packages 288s you want `debputy` to produce. Each key inside `packages` must be the name of a binary package 288s defined in `debian/control`. The value is a dictionary defining which features that `debputy` 288s should apply to that binary package. An example could be: 288s 288s packages: 288s foo: 288s transformations: 288s - create-symlink: 288s path: usr/share/foo/my-first-symlink 288s target: /usr/share/bar/symlink-target 288s - create-symlink: 288s path: usr/lib/{DEB_HOST_MULTIARCH}/my-second-symlink 288s target: /usr/lib/{DEB_HOST_MULTIARCH}/baz/symlink-target 288s bar: 288s transformations: 288s - create-directories: 288s - some/empty/directory.d 288s - another/empty/integration-point.d 288s - create-directories: 288s path: a/third-empty/directory.d 288s owner: www-data 288s group: www-data 288s 288s In this case, `debputy` will create some symlinks inside the `foo` package and some directories for 288s the `bar` package. The following subsections define the keys you can use under each binary package. 288s 288s - `build-environments` (optional): 288s 288s Define named environments to set the environment for any build commands that needs 288s a non-default environment. 288s 288s The environment definitions can be used to tweak the environment variables used by the 288s build commands. An example: 288s 288s build-environments: 288s - name: custom-env 288s set: 288s ENV_VAR: foo 288s ANOTHER_ENV_VAR: bar 288s builds: 288s - autoconf: 288s environment: custom-env 288s 288s The environment definition has multiple attributes for setting environment variables 288s which determines when the definition is applied. The resulting environment is the 288s result of the following order of operations. 288s 288s 1. The environment `debputy` received from its parent process. 288s 2. Apply all the variable definitions from `set` (if the attribute is present) 288s 3. Apply all computed variables (such as variables from `dpkg-buildflags`). 288s 4. Apply all the variable definitions from `override` (if the attribute is present) 288s 5. Remove all variables listed in `unset` (if the attribute is present). 288s 288s Accordingly, both `override` and `unset` will overrule any computed variables while 288s `set` will be overruled by any computed variables. 288s 288s Note that these variables are not available via manifest substitution (they are only 288s visible to build commands). They are only available to build commands. 288s 288s - `default-build-environment` (optional): 288s 288s Define the environment variables used in all build commands that uses the default 288s environment. 288s 288s The environment definition can be used to tweak the environment variables used by the 288s build commands. An example: 288s 288s default-build-environment: 288s set: 288s ENV_VAR: foo 288s ANOTHER_ENV_VAR: bar 288s 288s The environment definition has multiple attributes for setting environment variables 288s which determines when the definition is applied. The resulting environment is the 288s result of the following order of operations. 288s 288s 1. The environment `debputy` received from its parent process. 288s 2. Apply all the variable definitions from `set` (if the attribute is present) 288s 3. Apply all computed variables (such as variables from `dpkg-buildflags`). 288s 4. Apply all the variable definitions from `override` (if the attribute is present) 288s 5. Remove all variables listed in `unset` (if the attribute is present). 288s 288s Accordingly, both `override` and `unset` will overrule any computed variables while 288s `set` will be overruled by any computed variables. 288s 288s Note that these variables are not available via manifest substitution (they are only 288s visible to build commands). They are only available to build commands. 288s 288s - `builds` (optional): 288s 288s Define how to build the upstream part of the package. Usually this is done via "build systems", 288s which also defines the clean rules. 288s 288s 288s Reference documentation: https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md 288s Rule reference: :: 288s 288s PS: If you want to know more about a non-trivial type of an attribute such as `FileSystemMatchRule`, 288s you can use `debputy plugin show type-mappings FileSystemMatchRule` to look it up 288s + debputy --no-pager plugin show manifest-variables DEB_SOURCE 288s Variable: DEB_SOURCE 288s ==================== 288s 288s Documentation: Name of the source package (`dpkg-parsechangelog -SSource`) 288s Resolved: debputy 288s Plugin: debputy 288s + debputy --no-pager plugin show manifest-variables token:TAB 289s Variable: token:TAB 289s =================== 289s 289s Documentation: Literal tab character 289s Resolved: \t 289s Plugin: debputy 289s + debputy --no-pager plugin show manifest-variables DEB_HOST_ARCH 289s Variable: DEB_HOST_ARCH 289s ======================= 289s 289s Documentation: Debian's name for the architecture (installed on) 289s This variable describes machine information used when the package is compiled and assembled. 289s * Machine type: The package will be **installed** on this type of machine / system 289s * Value description: Debian's name for the architecture 289s 289s The value is the output of: `dpkg-architecture -qDEB_HOST_ARCH` 289s Resolved: arm64 289s + debputy --no-pager plugin show manifest-variables DEB_BUILD_ARCH 289s Variable: DEB_BUILD_ARCH 289s ======================== 289s 289s Documentation: Debian's name for the architecture (compiled on) 289s This variable describes machine information used when the package is compiled and assembled. 289s * Machine type: The compilation of this package will be performed **on** this kind of machine / system 289s * Value description: Debian's name for the architecture 289s 289s The value is the output of: `dpkg-architecture -qDEB_BUILD_ARCH` 289s Resolved: arm64 289s Special-case: The variable has been marked as a "special-case"-only variable. 290s + debputy --no-pager plugin show automatic-discard-rules python-cache-files 290s Automatic Discard Rule: python-cache-files 290s ========================================== 290s 290s Discards any *.pyc, *.pyo files and any __pycache__ directories 290s 290s Example 290s ------- 290s 290s Consider the following source paths matched by a glob or directory match: 290s 290s /.../__pycache__/ << Discarded (directly by the rule) 290s /.../__pycache__/... << Discarded (directory was discarded) 290s /.../foo.py 290s /.../foo.pyc << Discarded (directly by the rule) 290s /.../foo.pyo << Discarded (directly by the rule) 290s + debputy --no-pager plugin show automatic-discard-rules la-files 290s Automatic Discard Rule: la-files 290s ================================ 290s 290s Discards any file with the extension .la beneath the directory /usr/lib 290s 290s Example 290s ------- 290s 290s Consider the following source paths matched by a glob or directory match: 290s 290s /usr/lib/libfoo.la << Discarded (directly by the rule) 290s /usr/lib/libfoo.so.1.0.0 290s + debputy --no-pager plugin show automatic-discard-rules backup-files 291s Automatic Discard Rule: backup-files 291s ==================================== 291s 291s Discards common back up files such as foo~, foo.bak or foo.orig 291s 291s Example 291s ------- 291s 291s Consider the following source paths matched by a glob or directory match: 291s 291s /.../.foo.sw. << Discarded (directly by the rule) 291s /.../DEADJOE << Discarded (directly by the rule) 291s /.../foo.orig << Discarded (directly by the rule) 291s /.../foo.rej << Discarded (directly by the rule) 291s /.../foo~ << Discarded (directly by the rule) 291s + debputy --no-pager plugin show automatic-discard-rules version-control-paths 291s Automatic Discard Rule: version-control-paths 291s ============================================= 291s 291s Discards common version control paths such as .git, .gitignore, CVS, etc. 291s 291s Example 291s ------- 291s 291s Consider the following source paths matched by a glob or directory match: 291s 291s /.../.git/ << Discarded (directly by the rule) 291s /.../.git/... << Discarded (directory was discarded) 291s /.../.gitattributes << Discarded (directly by the rule) 291s /.../.gitignore << Discarded (directly by the rule) 291s /.../CVS/ << Discarded (directly by the rule) 291s /.../CVS/... << Discarded (directory was discarded) 291s /tools/foo 291s + debputy --no-pager plugin show automatic-discard-rules gnu-info-dir-file 291s Automatic Discard Rule: gnu-info-dir-file 291s ========================================= 291s 291s Discards the /usr/share/info/dir file (causes package file conflicts) 291s 291s Example 291s ------- 291s 291s Consider the following source paths matched by a glob or directory match: 291s 291s /usr/share/info/dir << Discarded (directly by the rule) 291s /usr/share/info/dir.info 291s /usr/share/info/foo.info 291s /usr/share/random/case/dir 291s + debputy --no-pager plugin show automatic-discard-rules debian-dir 292s Automatic Discard Rule: debian-dir 292s ================================== 292s 292s (Implementation detail) Discards any DEBIAN directory to avoid it from appearing literally in the file listing 292s 292s Example 292s ------- 292s 292s Consider the following source paths matched by a glob or directory match: 292s 292s /DEBIAN/ << Discarded (directly by the rule) 292s /DEBIAN/control << Discarded (directory was discarded) 292s /usr/bin/foo 292s /usr/share/DEBIAN/foo 292s + debputy --no-pager plugin show automatic-discard-rules doxygen-cruft-files 292s Automatic Discard Rule: doxygen-cruft-files 292s =========================================== 292s 292s Discards cruft files generated by doxygen 292s 292s Example 292s ------- 292s 292s Consider the following source paths matched by a glob or directory match: 292s 292s /usr/share/doc/foo/api/.../cruft.map << Discarded (directly by the rule) 292s /usr/share/doc/foo/api/.../cruft.md5 << Discarded (directly by the rule) 292s /usr/share/doc/foo/api/doxygen.css 292s /usr/share/doc/foo/api/doxygen.svg 292s /usr/share/doc/foo/api/index.html 292s + debputy --no-pager tool-support annotate-debian-directory 293s {"result": [{"path": "debian/changelog", "pkgfile-stem": "changelog", "pkgfile-is-active-in-build": true, "pkgfile-explicit-package-name": false, "binary-package": "dh-debputy", "file-categories": ["ppf-file"], "documentation-uris": ["man:dh_installchangelogs(1)"]}, {"path": "debian/copyright", "pkgfile-stem": "copyright", "pkgfile-is-active-in-build": true, "pkgfile-explicit-package-name": false, "binary-package": "dh-debputy", "install-path": "/usr/share/doc/dh-debputy/copyright", "install-pattern": "usr/share/doc/{owning_package}/copyright", "file-categories": ["ppf-file"], "documentation-uris": ["man:dh_installdocs(1)"]}, {"path": "debian/control", "file-categories": ["pkg-metadata"], "documentation-uris": ["man:deb-src-control(5)", "https://www.debian.org/doc/debian-policy/ch-controlfields.html#source-package-control-files-debian-control"]}, {"path": "debian/debputy.manifest", "file-categories": ["pkg-helper-config"], "documentation-uris": ["https://salsa.debian.org/debian/debputy/-/blob/debian/0.1.58/MANIFEST-FORMAT.md"], "debputy-cmd-templates": ["debputy plugin list p-m-r", "debputy plugin show p-m-r {{TOPIC}}"]}, {"path": "debian/gbp.conf", "file-categories": ["maint-config"], "documentation-uris": ["man:gbp.conf(5)"]}, {"path": "debian/rules", "documentation-uris": ["man:deb-src-rules(5)", "https://www.debian.org/doc/debian-policy/ch-source.html#main-building-script-debian-rules"]}, {"path": "debian/source/format", "file-categories": ["pkg-metadata"], "documentation-uris": ["man:dpkg-source(1)"]}, {"path": "debian/tests/control", "file-categories": ["testing"], "documentation-uris": ["https://salsa.debian.org/ci-team/autopkgtest/raw/master/doc/README.package-tests.rst", "https://ci.debian.net/doc/file.TUTORIAL.html"]}], "reference-datasets": ["config-features", "file-categories"]}+ debputy --no-pager tool-support export-reference-data --output-format=json 293s {"reference-data": {"config-features": {"dh-filearray": {"description": "The file will be read as a list of space/newline separated tokens"}, "dh-filedoublearray": {"description": "Each line in the file will be read as a list of space-separated tokens"}, "dh-hash-subst": {"description": "Supports debhelper #PACKAGE# style substitutions (udebs often excluded)"}, "dh-dollar-subst": {"description": "Supports debhelper ${PACKAGE} style substitutions (usually requires compat 13+)"}, "dh-glob": {"description": "Supports standard debhelper globing"}, "dh-partial-glob": {"description": "Supports standard debhelper globing but only to a subset of the values (implies dh-late-glob)"}, "dh-late-glob": {"description": "Globbing is done separately instead of using the built-in function"}, "dh-glob-after-execute": {"description": "When the dh config file is executable, the generated output will be subject to globbing"}, "dh-executable-config": {"description": "If marked executable, debhelper will execute the file and read its output"}, "dh-custom-format": {"description": "The dh tool will or may have a custom parser for this file"}, "dh-file-list": {"description": "The dh file contains a list of paths to be processed"}, "dh-install-list": {"description": "The dh file contains a list of paths/globs to be installed but the tool specific knowledge required to understand the file cannot be conveyed via this interface."}, "dh-install-list-dest-dir-like-dh_install": {"description": "The dh file is processed similar to dh_install (notably dest-dir handling derived from the path or the last token on the line)"}, "dh-install-list-fixed-dest-dir": {"description": "The dh file is an install list and the dest-dir is always the same for all patterns (when `install-pattern` or `install-path` are provided, they identify the directory - not the file location)"}, "dh-exec-rename": {"description": "When `dh-exec` is the interpreter of this dh config file, its renaming (=>) feature can be requested/used"}, "dh-docs-only": {"description": "The dh config file is used for documentation only. Implicit Build-Profiles support"}}, "file-categories": {"generated": {"description": "The file is (likely) generated from another file"}, "generic-template": {"description": "The file is (likely) a generic template that generates a known packaging file. While the file is annotated as if it was the target file, the file might uses a custom template language inside it."}, "ppf-file": {"description": "Packager provided file to be installed on the file system - usually as-is. When `install-pattern` or `install-path` are provided, this is where the file is installed."}, "ppf-control-file": {"description": "Packager provided file that becomes a control file - possible after processing. If `install-pattern` or `install-path` are provided, they denote where the is placed (generally, this will be of the form `DEBIAN/`)"}, "maint-config": {"description": "Maintenance configuration for a specific tool that the maintainer uses (tool / style preferences)"}, "pkg-metadata": {"description": "The file is related to standard package metadata (usually documented in Debian Policy)"}, "pkg-helper-config": {"description": "The file is packaging helper configuration or instruction file"}, "testing": {"description": "The file is related to automated testing (autopkgtests, salsa/gitlab CI)."}, "lint-config": {"description": "The file is related to a linter (such as overrides for false-positives or style preferences)"}}}}+ debputy --no-pager tool-support export-reference-data file-categories 293s +-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 293s | key | description | 293s +-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 293s | generated | The file is (likely) generated from another file | 293s | generic-template | The file is (likely) a generic template that generates a known packaging file. While the file is annotated as if it was the target file, the file might uses a custom template language inside it. | 293s | ppf-file | Packager provided file to be installed on the file system - usually as-is. When `install-pattern` or `install-path` are provided, this is where the file is installed. | 293s | ppf-control-file | Packager provided file that becomes a control file - possible after processing. If `install-pattern` or `install-path` are provided, they denote where the is placed (generally, this will be of the form `DEBIAN/`) | 293s | maint-config | Maintenance configuration for a specific tool that the maintainer uses (tool / style preferences) | 293s | pkg-metadata | The file is related to standard package metadata (usually documented in Debian Policy) | 293s | pkg-helper-config | The file is packaging helper configuration or instruction file | 293s | testing | The file is related to automated testing (autopkgtests, salsa/gitlab CI). | 293s | lint-config | The file is related to a linter (such as overrides for false-positives or style preferences) | 293s +-------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 293s 293s If you wanted this as JSON, please use --output-format=json 294s autopkgtest [23:31:33]: test debputy-cli: -----------------------] 294s debputy-cli PASS (superficial) 294s autopkgtest [23:31:33]: test debputy-cli: - - - - - - - - - - results - - - - - - - - - - 295s autopkgtest [23:31:34]: test debputy-cli-lint-lsp: preparing testbed 295s Reading package lists... 295s Building dependency tree... 295s Reading state information... 295s Starting pkgProblemResolver with broken count: 0 295s Starting 2 pkgProblemResolver with broken count: 0 295s Done 296s The following NEW packages will be installed: 296s python3-cattr python3-lsprotocol 296s 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. 296s Need to get 96.6 kB of archives. 296s After this operation, 763 kB of additional disk space will be used. 296s Get:1 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-cattr all 23.2.3-1ubuntu1 [38.3 kB] 296s Get:2 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-lsprotocol all 2023.0.1-1 [58.3 kB] 297s Fetched 96.6 kB in 0s (263 kB/s) 297s Selecting previously unselected package python3-cattr. 297s (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 ... 81879 files and directories currently installed.) 297s Preparing to unpack .../python3-cattr_23.2.3-1ubuntu1_all.deb ... 297s Unpacking python3-cattr (23.2.3-1ubuntu1) ... 297s Selecting previously unselected package python3-lsprotocol. 297s Preparing to unpack .../python3-lsprotocol_2023.0.1-1_all.deb ... 297s Unpacking python3-lsprotocol (2023.0.1-1) ... 297s Setting up python3-cattr (23.2.3-1ubuntu1) ... 297s Setting up python3-lsprotocol (2023.0.1-1) ... 298s autopkgtest [23:31:37]: test debputy-cli-lint-lsp: [----------------------- 298s + debputy lint --linter-exit-code 300s debputy: info: Note: Due to a limitation in the linter, debian/debputy.manifest is 300s debputy: info: only **partially** checked by this command at the time of writing. 300s debputy: info: Please use `debputy check-manifest` to fully check the manifest. 300s + debputy lint --no-linter-exit-code 301s debputy: info: Note: Due to a limitation in the linter, debian/debputy.manifest is 301s debputy: info: only **partially** checked by this command at the time of writing. 301s debputy: info: Please use `debputy check-manifest` to fully check the manifest. 301s + debputy reformat --no-linter-exit-code --no-auto-fix 303s + debputy lsp editor-config 303s This version of debputy has instructions or editor config snippets for the following editors: 303s 303s * emacs (short for: emacs+eglot) 303s * emacs+eglot 303s * vim (short for: vim+youcompleteme) 303s * vim+youcompleteme 303s * vim+vim9lsp 303s * neovim (short for: neovim+nvim-lspconfig) 303s * neovim+nvim-lspconfig 303s 303s Use `debputy editor-config vim` (as an example) to see the instructions for a concrete editor. 303s + debputy lsp editor-config emacs 304s ;; `deputy lsp server` glue for emacs eglot (eglot is built-in these days) 304s ;; 304s ;; Add to ~/.emacs or ~/.emacs.d/init.el and then activate via `M-x eglot`. 304s ;; 304s ;; Requires: apt install elpa-dpkg-dev-el elpa-yaml-mode 304s ;; Recommends: apt install elpa-markdown-mode 304s 304s ;; Make emacs recognize debian/debputy.manifest as a YAML file 304s (add-to-list 'auto-mode-alist '("/debian/debputy.manifest\'" . yaml-mode)) 304s ;; Inform eglot about the debputy LSP 304s (with-eval-after-load 'eglot 304s (add-to-list 'eglot-server-programs 304s '( 304s ( 304s ;; Requires elpa-dpkg-dev-el (>= 37.12) 304s (debian-autopkgtest-control-mode :language-id "debian/tests/control") 304s ;; Requires elpa-dpkg-dev-el 304s (debian-control-mode :language-id "debian/control") 304s (debian-changelog-mode :language-id "debian/changelog") 304s (debian-copyright-mode :language-id "debian/copyright") 304s ;; No language id for these atm. 304s makefile-gmake-mode 304s ;; Requires elpa-yaml-mode 304s yaml-mode 304s ) 304s . ("debputy" "lsp" "server") 304s ))) 304s 304s ;; Auto-start eglot for the relevant modes. 304s (add-hook 'debian-control-mode-hook 'eglot-ensure) 304s ;; Requires elpa-dpkg-dev-el (>= 37.12) 304s ;; Technically, the `eglot-ensure` works before then, but it causes a 304s ;; visible and very annoying long delay on opening the first changelog. 304s ;; It still has a minor delay in 37.12, which may still be too long for 304s ;; for your preference. In that case, comment it out. 304s (add-hook 'debian-changelog-mode-hook 'eglot-ensure) 304s (add-hook 'debian-copyright-mode-hook 'eglot-ensure) 304s ;; Requires elpa-dpkg-dev-el (>= 37.12) 304s (add-hook 'debian-autopkgtest-control-mode-hook 'eglot-ensure) 304s (add-hook 'makefile-gmake-mode-hook 'eglot-ensure) 304s (add-hook 'yaml-mode-hook 'eglot-ensure) 304s 304s + debputy lsp editor-config emacs+eglot 305s ;; `deputy lsp server` glue for emacs eglot (eglot is built-in these days) 305s ;; 305s ;; Add to ~/.emacs or ~/.emacs.d/init.el and then activate via `M-x eglot`. 305s ;; 305s ;; Requires: apt install elpa-dpkg-dev-el elpa-yaml-mode 305s ;; Recommends: apt install elpa-markdown-mode 305s 305s ;; Make emacs recognize debian/debputy.manifest as a YAML file 305s (add-to-list 'auto-mode-alist '("/debian/debputy.manifest\'" . yaml-mode)) 305s ;; Inform eglot about the debputy LSP 305s (with-eval-after-load 'eglot 305s (add-to-list 'eglot-server-programs 305s '( 305s ( 305s ;; Requires elpa-dpkg-dev-el (>= 37.12) 305s (debian-autopkgtest-control-mode :language-id "debian/tests/control") 305s ;; Requires elpa-dpkg-dev-el 305s (debian-control-mode :language-id "debian/control") 305s (debian-changelog-mode :language-id "debian/changelog") 305s (debian-copyright-mode :language-id "debian/copyright") 305s ;; No language id for these atm. 305s makefile-gmake-mode 305s ;; Requires elpa-yaml-mode 305s yaml-mode 305s ) 305s . ("debputy" "lsp" "server") 305s ))) 305s 305s ;; Auto-start eglot for the relevant modes. 305s (add-hook 'debian-control-mode-hook 'eglot-ensure) 305s ;; Requires elpa-dpkg-dev-el (>= 37.12) 305s ;; Technically, the `eglot-ensure` works before then, but it causes a 305s ;; visible and very annoying long delay on opening the first changelog. 305s ;; It still has a minor delay in 37.12, which may still be too long for 305s ;; for your preference. In that case, comment it out. 305s (add-hook 'debian-changelog-mode-hook 'eglot-ensure) 305s (add-hook 'debian-copyright-mode-hook 'eglot-ensure) 305s ;; Requires elpa-dpkg-dev-el (>= 37.12) 305s (add-hook 'debian-autopkgtest-control-mode-hook 'eglot-ensure) 305s (add-hook 'makefile-gmake-mode-hook 'eglot-ensure) 305s (add-hook 'yaml-mode-hook 'eglot-ensure) 305s 305s + debputy lsp editor-config vim 306s # debputy lsp server glue for vim with vim-youcompleteme. Add to ~/.vimrc 306s # 306s # Requires: apt install vim-youcompleteme 306s 306s # Make vim recognize debputy.manifest as YAML file 306s au BufNewFile,BufRead debputy.manifest setf yaml 306s # Inform vim/ycm about the debputy LSP 306s # - NB: No known support for debian/tests/control that we can hook into. 306s # Feel free to provide one :) 306s let g:ycm_language_server = [ 306s \ { 'name': 'debputy', 306s \ 'filetypes': [ 'debcontrol', 'debcopyright', 'debchangelog', 'make', 'yaml'], 306s \ 'cmdline': [ 'debputy', 'lsp', 'server', '--ignore-language-ids' ] 306s \ }, 306s \ ] 306s 306s packadd! youcompleteme 306s # Add relevant ycm keybinding such as: 306s # nmap d (YCMHover) 306s 306s autopkgtest [23:31:45]: test debputy-cli-lint-lsp: -----------------------] 307s debputy-cli-lint-lsp PASS (superficial) 307s autopkgtest [23:31:46]: test debputy-cli-lint-lsp: - - - - - - - - - - results - - - - - - - - - - 307s autopkgtest [23:31:46]: test debputy-cli-lsp: preparing testbed 307s Reading package lists... 308s Building dependency tree... 308s Reading state information... 308s Starting pkgProblemResolver with broken count: 0 308s Starting 2 pkgProblemResolver with broken count: 0 308s Done 309s The following NEW packages will be installed: 309s python3-pygls 309s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 309s Need to get 36.4 kB of archives. 309s After this operation, 265 kB of additional disk space will be used. 309s Get:1 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-pygls all 1.3.0-2 [36.4 kB] 309s Fetched 36.4 kB in 0s (173 kB/s) 309s Selecting previously unselected package python3-pygls. 309s (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 ... 81950 files and directories currently installed.) 309s Preparing to unpack .../python3-pygls_1.3.0-2_all.deb ... 309s Unpacking python3-pygls (1.3.0-2) ... 309s Setting up python3-pygls (1.3.0-2) ... 310s autopkgtest [23:31:49]: test debputy-cli-lsp: [----------------------- 311s + debputy lsp features 311s LSP language IDs and their features: 311s * : 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - inlay hint (doc) 311s - format file handler 311s * dch: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - on-save handler 311s * debchangelog: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - on-save handler 311s * debcontrol: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - inlay hint (doc) 311s - format file handler 311s * debcopyright: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - format file handler 311s * debian-autopkgtest-control-mode: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - format file handler 311s * debian-changelog: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - on-save handler 311s * debian-control: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - inlay hint (doc) 311s - format file handler 311s * debian-copyright: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - format file handler 311s * debian/changelog: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - on-save handler 311s * debian/control: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - inlay hint (doc) 311s - format file handler 311s * debian/copyright: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - format file handler 311s * debian/debputy.manifest: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - on-save handler 311s * debian/patches/series: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - semantic tokens 311s - on-save handler 311s * debian/rules: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - on-save handler 311s * debian/tests/control: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - format file handler 311s * debian/upstream/metadata: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - on-save handler 311s * debputy.manifest: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - on-save handler 311s * debtestscontrol: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - folding ranges 311s - semantic tokens 311s - on-save handler 311s - format file handler 311s * make: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - on-save handler 311s * makefile: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - on-save handler 311s * makefile-gmake: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - on-save handler 311s * patches/series: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - semantic tokens 311s - on-save handler 311s * yaml: 311s - diagnostics (lint) 311s - code actions/quickfixes 311s - completion suggestions 311s - hover docs 311s - on-save handler 311s 311s Aliases: 311s 311s General features: 311s * minimum requirements: enabled 311s * typo detection: disabled 311s - Run `apt satisfy 'python3-levenshtein'` to enable this feature 311s * spell checking: disabled 311s - Run `apt satisfy 'hunspell-en-us, python3-hunspell'` to enable this feature 311s * extra dh support: enabled 311s * apt cache packages: enabled 312s + debputy lsp server 312s pygls.feature_manager: info: Registered builtin feature exit 312s pygls.feature_manager: info: Registered builtin feature initialize 312s pygls.feature_manager: info: Registered builtin feature initialized 312s pygls.feature_manager: info: Registered builtin feature notebookDocument/didChange 312s pygls.feature_manager: info: Registered builtin feature notebookDocument/didClose 312s pygls.feature_manager: info: Registered builtin feature notebookDocument/didOpen 312s pygls.feature_manager: info: Registered builtin feature $/setTrace 312s pygls.feature_manager: info: Registered builtin feature shutdown 312s pygls.feature_manager: info: Registered builtin feature textDocument/didChange 312s pygls.feature_manager: info: Registered builtin feature textDocument/didClose 312s pygls.feature_manager: info: Registered builtin feature textDocument/didOpen 312s pygls.feature_manager: info: Registered builtin feature window/workDoneProgress/cancel 312s pygls.feature_manager: info: Registered builtin feature workspace/didChangeWorkspaceFolders 312s pygls.feature_manager: info: Registered builtin feature workspace/executeCommand 312s pygls.feature_manager: info: Registered "initialize" with options "None" 312s pygls.feature_manager: info: Registered "textDocument/didOpen" with options "None" 312s pygls.feature_manager: info: Registered "textDocument/didChange" with options "None" 312s pygls.feature_manager: info: Registered "textDocument/completion" with options "None" 312s pygls.feature_manager: info: Registered "textDocument/hover" with options "None" 312s pygls.feature_manager: info: Registered "textDocument/inlayHint" with options "None" 312s pygls.feature_manager: info: Registered "textDocument/codeAction" with options "None" 312s pygls.feature_manager: info: Registered "textDocument/foldingRange" with options "None" 312s pygls.feature_manager: info: Registered "textDocument/semanticTokens/full" with options "SemanticTokensRegistrationOptions(legend=SemanticTokensLegend(token_types=['keyword', 'enumMember', 'comment', 'string'], token_modifiers=[]), document_selector=None, range=None, full=True, work_done_progress=None, id=None)" 312s pygls.feature_manager: info: Registered "textDocument/willSaveWaitUntil" with options "None" 312s pygls.feature_manager: info: Registered "textDocument/formatting" with options "None" 312s debputy: info: Loaded style preferences: 9 unique maintainer preferences recorded 312s pygls.server: info: Starting IO server 312s pygls.server: info: Shutting down the server 312s pygls.server: info: Closing the event loop. 313s autopkgtest [23:31:52]: test debputy-cli-lsp: -----------------------] 313s debputy-cli-lsp PASS (superficial) 313s autopkgtest [23:31:52]: test debputy-cli-lsp: - - - - - - - - - - results - - - - - - - - - - 314s autopkgtest [23:31:53]: @@@@@@@@@@@@@@@@@@@@ summary 314s debputy-py.test PASS 314s debputy-cli PASS (superficial) 314s debputy-cli-lint-lsp PASS (superficial) 314s debputy-cli-lsp PASS (superficial) 330s nova [W] Using flock in prodstack6-arm64 330s Creating nova instance adt-plucky-arm64-debputy-20250102-224136-juju-7f2275-prod-proposed-migration-environment-20-d8953201-a476-46be-bf5c-f5070ff85b4b from image adt/ubuntu-plucky-arm64-server-20250102.img (UUID 4cb073f4-4206-4362-b576-2406cb25ddd8)... 330s nova [W] Timed out waiting for 09397aeb-c42d-45dc-85c0-14659a66e3a4 to get deleted. 330s nova [W] Using flock in prodstack6-arm64 330s Creating nova instance adt-plucky-arm64-debputy-20250102-224136-juju-7f2275-prod-proposed-migration-environment-20-d8953201-a476-46be-bf5c-f5070ff85b4b from image adt/ubuntu-plucky-arm64-server-20250102.img (UUID 4cb073f4-4206-4362-b576-2406cb25ddd8)... 330s nova [W] Timed out waiting for f490b050-fa20-44a9-a98b-fda93a09b34d to get deleted.