0s autopkgtest [21:07:50]: starting date and time: 2024-11-14 21:07:50+0000 0s autopkgtest [21:07:50]: git checkout: 6f3be7a8 Fix armhf LXD image generation for plucky 0s autopkgtest [21:07:50]: host juju-7f2275-prod-proposed-migration-environment-15; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.ma4znbk5/out --timeout-copy=6000 -a i386 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python3-defaults,src:python3-stdlib-extensions --apt-upgrade offpunk --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 '--env=ADT_TEST_TRIGGERS=python3-defaults/3.12.7-1 python3-stdlib-extensions/3.12.7-1' -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor builder-cpu2-ram4-disk20 --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-15@bos03-18.secgroup --name adt-plucky-i386-offpunk-20241114-210749-juju-7f2275-prod-proposed-migration-environment-15-c36b0b12-2a25-42e2-b00e-9fd6978545fe --image adt/ubuntu-plucky-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-15 --net-id=net_prod-proposed-migration-amd64 -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'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 41s autopkgtest [21:08:31]: testbed dpkg architecture: amd64 41s autopkgtest [21:08:31]: testbed apt version: 2.9.8 41s autopkgtest [21:08:31]: test architecture: i386 41s autopkgtest [21:08:31]: @@@@@@@@@@@@@@@@@@@@ test bed setup 42s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 42s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [105 kB] 42s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [1044 kB] 43s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 43s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [16.7 kB] 43s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [79.4 kB] 43s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [144 kB] 43s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB] 43s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [295 kB] 43s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [805 kB] 43s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [9660 B] 43s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [740 B] 43s Fetched 2613 kB in 1s (2942 kB/s) 43s Reading package lists... 45s Reading package lists... 45s Building dependency tree... 45s Reading state information... 46s Calculating upgrade... 46s The following NEW packages will be installed: 46s python3.13-gdbm 46s The following packages will be upgraded: 46s libcap-ng0 libpython3-stdlib pastebinit python3 python3-gdbm python3-minimal 46s python3-systemd 46s 7 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 46s Need to get 178 kB of archives. 46s After this operation, 256 kB of additional disk space will be used. 46s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-minimal amd64 3.12.7-1 [27.4 kB] 46s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3 amd64 3.12.7-1 [24.0 kB] 46s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libpython3-stdlib amd64 3.12.7-1 [10.0 kB] 46s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libcap-ng0 amd64 0.8.5-3build1 [15.6 kB] 46s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-gdbm amd64 3.13.0-2 [31.3 kB] 46s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-gdbm amd64 3.12.7-1 [8642 B] 46s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 pastebinit all 1.7.1-1 [14.9 kB] 46s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-systemd amd64 235-1build5 [45.7 kB] 47s Fetched 178 kB in 0s (438 kB/s) 47s (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 ... 75542 files and directories currently installed.) 47s Preparing to unpack .../python3-minimal_3.12.7-1_amd64.deb ... 47s Unpacking python3-minimal (3.12.7-1) over (3.12.6-0ubuntu1) ... 47s Setting up python3-minimal (3.12.7-1) ... 47s (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 ... 75542 files and directories currently installed.) 47s Preparing to unpack .../python3_3.12.7-1_amd64.deb ... 47s Unpacking python3 (3.12.7-1) over (3.12.6-0ubuntu1) ... 47s Preparing to unpack .../libpython3-stdlib_3.12.7-1_amd64.deb ... 47s Unpacking libpython3-stdlib:amd64 (3.12.7-1) over (3.12.6-0ubuntu1) ... 47s Preparing to unpack .../libcap-ng0_0.8.5-3build1_amd64.deb ... 47s Unpacking libcap-ng0:amd64 (0.8.5-3build1) over (0.8.5-1) ... 47s Setting up libcap-ng0:amd64 (0.8.5-3build1) ... 47s Selecting previously unselected package python3.13-gdbm. 47s (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 ... 75542 files and directories currently installed.) 47s Preparing to unpack .../python3.13-gdbm_3.13.0-2_amd64.deb ... 47s Unpacking python3.13-gdbm (3.13.0-2) ... 47s Preparing to unpack .../python3-gdbm_3.12.7-1_amd64.deb ... 47s Unpacking python3-gdbm:amd64 (3.12.7-1) over (3.12.6-1ubuntu1) ... 47s Preparing to unpack .../pastebinit_1.7.1-1_all.deb ... 47s Unpacking pastebinit (1.7.1-1) over (1.7.0-1) ... 47s Preparing to unpack .../python3-systemd_235-1build5_amd64.deb ... 47s Unpacking python3-systemd (235-1build5) over (235-1build4) ... 47s Setting up python3.13-gdbm (3.13.0-2) ... 47s Setting up libpython3-stdlib:amd64 (3.12.7-1) ... 47s Setting up python3 (3.12.7-1) ... 48s Setting up python3-systemd (235-1build5) ... 48s Setting up python3-gdbm:amd64 (3.12.7-1) ... 48s Setting up pastebinit (1.7.1-1) ... 48s Processing triggers for libc-bin (2.40-1ubuntu3) ... 48s Processing triggers for man-db (2.12.1-3) ... 49s Reading package lists... 49s Building dependency tree... 49s Reading state information... 49s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 49s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 49s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 49s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 50s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 50s Reading package lists... 50s Reading package lists... 51s Building dependency tree... 51s Reading state information... 51s Calculating upgrade... 51s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 51s Reading package lists... 51s Building dependency tree... 51s Reading state information... 52s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 55s autopkgtest [21:08:45]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 16 13:41:20 UTC 2024 55s autopkgtest [21:08:45]: @@@@@@@@@@@@@@@@@@@@ apt-source offpunk 56s Get:1 http://ftpmaster.internal/ubuntu plucky/universe offpunk 2.3-1 (dsc) [2363 B] 56s Get:2 http://ftpmaster.internal/ubuntu plucky/universe offpunk 2.3-1 (tar) [233 kB] 56s Get:3 http://ftpmaster.internal/ubuntu plucky/universe offpunk 2.3-1 (diff) [15.3 kB] 57s gpgv: Signature made Sun Jun 30 22:07:27 2024 UTC 57s gpgv: using RSA key 8F91B227C7D6F2B1948C8236793CF67E8F0D11DA 57s gpgv: issuer "emollier@debian.org" 57s gpgv: Can't check signature: No public key 57s dpkg-source: warning: cannot verify inline signature for ./offpunk_2.3-1.dsc: no acceptable signature found 57s autopkgtest [21:08:47]: testing package offpunk version 2.3-1 57s autopkgtest [21:08:47]: build not needed 57s autopkgtest [21:08:47]: test run-commands: preparing testbed 59s Note, using file '/tmp/autopkgtest.zCvvc0/1-autopkgtest-satdep.dsc' to get the build dependencies 60s Reading package lists... 60s Building dependency tree... 60s Reading state information... 60s Starting pkgProblemResolver with broken count: 0 60s Starting 2 pkgProblemResolver with broken count: 0 60s Done 61s The following NEW packages will be installed: 61s build-essential cpp cpp-14 cpp-14-x86-64-linux-gnu cpp-x86-64-linux-gnu g++ 61s g++-14 g++-14-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-14 61s gcc-14-x86-64-linux-gnu gcc-x86-64-linux-gnu libasan8 libcc1-0 libgcc-14-dev 61s libgomp1 libhwasan0 libisl23 libitm1 liblsan0 libmpc3 libquadmath0 61s libstdc++-14-dev libtsan2 libubsan1 offpunk 61s 0 upgraded, 27 newly installed, 0 to remove and 0 not upgraded. 61s Need to get 65.5 MB of archives. 61s After this operation, 223 MB of additional disk space will be used. 61s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 libisl23 amd64 0.27-1 [685 kB] 61s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libmpc3 amd64 1.3.1-1build2 [55.3 kB] 61s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14-x86-64-linux-gnu amd64 14.2.0-8ubuntu1 [11.9 MB] 61s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14 amd64 14.2.0-8ubuntu1 [1030 B] 61s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [5452 B] 61s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp amd64 4:14.1.0-2ubuntu1 [22.4 kB] 61s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libcc1-0 amd64 14.2.0-8ubuntu1 [47.6 kB] 61s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 14.2.0-8ubuntu1 [148 kB] 61s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libitm1 amd64 14.2.0-8ubuntu1 [29.1 kB] 62s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libasan8 amd64 14.2.0-8ubuntu1 [2998 kB] 62s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 liblsan0 amd64 14.2.0-8ubuntu1 [1317 kB] 62s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libtsan2 amd64 14.2.0-8ubuntu1 [2732 kB] 62s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 libubsan1 amd64 14.2.0-8ubuntu1 [1177 kB] 62s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libhwasan0 amd64 14.2.0-8ubuntu1 [1634 kB] 62s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libquadmath0 amd64 14.2.0-8ubuntu1 [153 kB] 62s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libgcc-14-dev amd64 14.2.0-8ubuntu1 [2814 kB] 62s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14-x86-64-linux-gnu amd64 14.2.0-8ubuntu1 [23.3 MB] 63s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14 amd64 14.2.0-8ubuntu1 [528 kB] 63s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [1214 B] 63s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc amd64 4:14.1.0-2ubuntu1 [5000 B] 63s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libstdc++-14-dev amd64 14.2.0-8ubuntu1 [2504 kB] 63s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14-x86-64-linux-gnu amd64 14.2.0-8ubuntu1 [13.3 MB] 64s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14 amd64 14.2.0-8ubuntu1 [19.9 kB] 64s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [966 B] 64s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 g++ amd64 4:14.1.0-2ubuntu1 [1100 B] 64s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 build-essential amd64 12.10ubuntu1 [4928 B] 64s Get:27 http://ftpmaster.internal/ubuntu plucky/universe amd64 offpunk all 2.3-1 [71.8 kB] 64s Fetched 65.5 MB in 3s (22.0 MB/s) 64s Selecting previously unselected package libisl23:amd64. 64s (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 ... 75554 files and directories currently installed.) 64s Preparing to unpack .../00-libisl23_0.27-1_amd64.deb ... 64s Unpacking libisl23:amd64 (0.27-1) ... 64s Selecting previously unselected package libmpc3:amd64. 64s Preparing to unpack .../01-libmpc3_1.3.1-1build2_amd64.deb ... 64s Unpacking libmpc3:amd64 (1.3.1-1build2) ... 64s Selecting previously unselected package cpp-14-x86-64-linux-gnu. 64s Preparing to unpack .../02-cpp-14-x86-64-linux-gnu_14.2.0-8ubuntu1_amd64.deb ... 64s Unpacking cpp-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 64s Selecting previously unselected package cpp-14. 64s Preparing to unpack .../03-cpp-14_14.2.0-8ubuntu1_amd64.deb ... 64s Unpacking cpp-14 (14.2.0-8ubuntu1) ... 64s Selecting previously unselected package cpp-x86-64-linux-gnu. 64s Preparing to unpack .../04-cpp-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 64s Unpacking cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 64s Selecting previously unselected package cpp. 64s Preparing to unpack .../05-cpp_4%3a14.1.0-2ubuntu1_amd64.deb ... 64s Unpacking cpp (4:14.1.0-2ubuntu1) ... 64s Selecting previously unselected package libcc1-0:amd64. 64s Preparing to unpack .../06-libcc1-0_14.2.0-8ubuntu1_amd64.deb ... 64s Unpacking libcc1-0:amd64 (14.2.0-8ubuntu1) ... 64s Selecting previously unselected package libgomp1:amd64. 64s Preparing to unpack .../07-libgomp1_14.2.0-8ubuntu1_amd64.deb ... 64s Unpacking libgomp1:amd64 (14.2.0-8ubuntu1) ... 64s Selecting previously unselected package libitm1:amd64. 64s Preparing to unpack .../08-libitm1_14.2.0-8ubuntu1_amd64.deb ... 64s Unpacking libitm1:amd64 (14.2.0-8ubuntu1) ... 64s Selecting previously unselected package libasan8:amd64. 64s Preparing to unpack .../09-libasan8_14.2.0-8ubuntu1_amd64.deb ... 64s Unpacking libasan8:amd64 (14.2.0-8ubuntu1) ... 64s Selecting previously unselected package liblsan0:amd64. 64s Preparing to unpack .../10-liblsan0_14.2.0-8ubuntu1_amd64.deb ... 64s Unpacking liblsan0:amd64 (14.2.0-8ubuntu1) ... 64s Selecting previously unselected package libtsan2:amd64. 64s Preparing to unpack .../11-libtsan2_14.2.0-8ubuntu1_amd64.deb ... 64s Unpacking libtsan2:amd64 (14.2.0-8ubuntu1) ... 64s Selecting previously unselected package libubsan1:amd64. 64s Preparing to unpack .../12-libubsan1_14.2.0-8ubuntu1_amd64.deb ... 64s Unpacking libubsan1:amd64 (14.2.0-8ubuntu1) ... 64s Selecting previously unselected package libhwasan0:amd64. 65s Preparing to unpack .../13-libhwasan0_14.2.0-8ubuntu1_amd64.deb ... 65s Unpacking libhwasan0:amd64 (14.2.0-8ubuntu1) ... 65s Selecting previously unselected package libquadmath0:amd64. 65s Preparing to unpack .../14-libquadmath0_14.2.0-8ubuntu1_amd64.deb ... 65s Unpacking libquadmath0:amd64 (14.2.0-8ubuntu1) ... 65s Selecting previously unselected package libgcc-14-dev:amd64. 65s Preparing to unpack .../15-libgcc-14-dev_14.2.0-8ubuntu1_amd64.deb ... 65s Unpacking libgcc-14-dev:amd64 (14.2.0-8ubuntu1) ... 65s Selecting previously unselected package gcc-14-x86-64-linux-gnu. 65s Preparing to unpack .../16-gcc-14-x86-64-linux-gnu_14.2.0-8ubuntu1_amd64.deb ... 65s Unpacking gcc-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 65s Selecting previously unselected package gcc-14. 65s Preparing to unpack .../17-gcc-14_14.2.0-8ubuntu1_amd64.deb ... 65s Unpacking gcc-14 (14.2.0-8ubuntu1) ... 65s Selecting previously unselected package gcc-x86-64-linux-gnu. 65s Preparing to unpack .../18-gcc-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 65s Unpacking gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 65s Selecting previously unselected package gcc. 65s Preparing to unpack .../19-gcc_4%3a14.1.0-2ubuntu1_amd64.deb ... 65s Unpacking gcc (4:14.1.0-2ubuntu1) ... 65s Selecting previously unselected package libstdc++-14-dev:amd64. 65s Preparing to unpack .../20-libstdc++-14-dev_14.2.0-8ubuntu1_amd64.deb ... 65s Unpacking libstdc++-14-dev:amd64 (14.2.0-8ubuntu1) ... 65s Selecting previously unselected package g++-14-x86-64-linux-gnu. 65s Preparing to unpack .../21-g++-14-x86-64-linux-gnu_14.2.0-8ubuntu1_amd64.deb ... 65s Unpacking g++-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 66s Selecting previously unselected package g++-14. 66s Preparing to unpack .../22-g++-14_14.2.0-8ubuntu1_amd64.deb ... 66s Unpacking g++-14 (14.2.0-8ubuntu1) ... 66s Selecting previously unselected package g++-x86-64-linux-gnu. 66s Preparing to unpack .../23-g++-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 66s Unpacking g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 66s Selecting previously unselected package g++. 66s Preparing to unpack .../24-g++_4%3a14.1.0-2ubuntu1_amd64.deb ... 66s Unpacking g++ (4:14.1.0-2ubuntu1) ... 66s Selecting previously unselected package build-essential. 66s Preparing to unpack .../25-build-essential_12.10ubuntu1_amd64.deb ... 66s Unpacking build-essential (12.10ubuntu1) ... 66s Selecting previously unselected package offpunk. 66s Preparing to unpack .../26-offpunk_2.3-1_all.deb ... 66s Unpacking offpunk (2.3-1) ... 66s Setting up libgomp1:amd64 (14.2.0-8ubuntu1) ... 66s Setting up libquadmath0:amd64 (14.2.0-8ubuntu1) ... 66s Setting up libmpc3:amd64 (1.3.1-1build2) ... 66s Setting up libubsan1:amd64 (14.2.0-8ubuntu1) ... 66s Setting up offpunk (2.3-1) ... 66s Setting up libhwasan0:amd64 (14.2.0-8ubuntu1) ... 66s Setting up libasan8:amd64 (14.2.0-8ubuntu1) ... 66s Setting up libtsan2:amd64 (14.2.0-8ubuntu1) ... 66s Setting up libisl23:amd64 (0.27-1) ... 66s Setting up libcc1-0:amd64 (14.2.0-8ubuntu1) ... 66s Setting up liblsan0:amd64 (14.2.0-8ubuntu1) ... 66s Setting up libitm1:amd64 (14.2.0-8ubuntu1) ... 66s Setting up cpp-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 66s Setting up cpp-14 (14.2.0-8ubuntu1) ... 66s Setting up libgcc-14-dev:amd64 (14.2.0-8ubuntu1) ... 66s Setting up libstdc++-14-dev:amd64 (14.2.0-8ubuntu1) ... 66s Setting up cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 66s Setting up cpp (4:14.1.0-2ubuntu1) ... 66s Setting up gcc-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 66s Setting up gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 66s Setting up gcc-14 (14.2.0-8ubuntu1) ... 66s Setting up g++-14-x86-64-linux-gnu (14.2.0-8ubuntu1) ... 66s Setting up g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 66s Setting up g++-14 (14.2.0-8ubuntu1) ... 66s Setting up gcc (4:14.1.0-2ubuntu1) ... 66s Setting up g++ (4:14.1.0-2ubuntu1) ... 66s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 66s Setting up build-essential (12.10ubuntu1) ... 66s Processing triggers for man-db (2.12.1-3) ... 66s Processing triggers for libc-bin (2.40-1ubuntu3) ... 73s Reading package lists... 73s Building dependency tree... 73s Reading state information... 73s Starting pkgProblemResolver with broken count: 0 73s Starting 2 pkgProblemResolver with broken count: 0 73s Done 74s The following NEW packages will be installed: 74s autopkgtest-satdep 74s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 74s Need to get 0 B/700 B of archives. 74s After this operation, 0 B of additional disk space will be used. 74s Get:1 /tmp/autopkgtest.zCvvc0/2-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [700 B] 74s Selecting previously unselected package autopkgtest-satdep. 74s (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 ... 76839 files and directories currently installed.) 74s Preparing to unpack .../2-autopkgtest-satdep.deb ... 74s Unpacking autopkgtest-satdep (0) ... 74s Setting up autopkgtest-satdep (0) ... 76s (Reading database ... 76839 files and directories currently installed.) 76s Removing autopkgtest-satdep (0) ... 77s autopkgtest [21:09:07]: test run-commands: [----------------------- 77s 77s # 0. Basic arguments 77s offpunk --version 77s To render images inline, you need either chafa or timg. 77s Before Chafa 1.10, you also need python-pil 77s Offpunk 2.3 77s offpunk --help 77s To render images inline, you need either chafa or timg. 77s Before Chafa 1.10, you also need python-pil 77s usage: offpunk [-h] [--bookmarks] [--config-file FILE] [--sync] [--assume-yes] 77s [--disable-http] [--fetch-later] [--depth DEPTH] 77s [--images-mode IMAGES_MODE] [--cache-validity CACHE_VALIDITY] 77s [--version] [--features] 77s [URL ...] 77s 77s Offline-First Gemini/Web/Gopher/RSS reader and browser 77s 77s positional arguments: 77s URL Arguments should be URL to be fetched or, if --sync is 77s used, lists 77s 77s options: 77s -h, --help show this help message and exit 77s --bookmarks start with your list of bookmarks 77s --config-file FILE use this particular config file instead of default 77s --sync run non-interactively to build cache by exploring 77s lists passed as argument. Without argument, all lists 77s are fetched. 77s --assume-yes assume-yes when asked questions about 77s certificates/redirections during sync (lower security) 77s --disable-http do not try to get http(s) links (but already cached 77s will be displayed) 77s --fetch-later run non-interactively with an URL as argument to fetch 77s it later 77s --depth DEPTH depth of the cache to build. Default is 1. More is 77s crazy. Use at your own risks! 77s --images-mode IMAGES_MODE 77s the mode to use to choose which images to download in 77s a HTML page. one of (None, readable, full). Warning: 77s full will slowdown your sync. 77s --cache-validity CACHE_VALIDITY 77s duration for which a cache is valid before sync 77s (seconds) 77s --version display version information and quit 77s --features display available features and dependancies then quit 77s offpunk --features 77s To render images inline, you need either chafa or timg. 77s Before Chafa 1.10, you also need python-pil 77s moving from tofu.db to certificates as files 77s Upgrading cache to version 1: migrating index.txt to gophermap 77s Offpunk 2.3 77s =========== 77s Highly recommended: 77s - python-cryptography : Installed 77s - xdg-open : Not Installed 77s 77s Web browsing: 77s - python-requests : Installed 77s - python-feedparser : Not Installed 77s - python-bs4 : Not Installed 77s - python-readability : Not Installed 77s - timg 1.3.2+ : Not Installed 77s - chafa : Not Installed 77s - python-pil : Not Installed 77s 77s Nice to have: 77s - python-setproctitle : Not Installed 77s - X11 clipboard (xsel or xclip) : Not Installed 77s - Wayland clipboard (wl-clipboard): Not Installed 77s 77s Features : 77s - Render images (python-pil, chafa or timg) : Not Installed 77s - Render HTML (bs4, readability) : Not Installed 77s - Render Atom/RSS feeds (feedparser) : Not Installed 77s - Connect to http/https (requests) : Installed 77s - Detect text encoding (python-chardet) : Installed 77s - restore last position (less 572+) : Installed 77s 77s Config directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.config/offpunk/ 77s User Data directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/ 77s Cache directoy : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.cache/offpunk/ 77s echo quit | offpunk --bookmarks 77s bookmarks (0 items) (local file) 77s bookmarks 77s To render images inline, you need either chafa or timg. 77s Before Chafa 1.10, you also need python-pil 77s Creating config directory /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.config/offpunk/ 77s Welcome to Offpunk! 77s Type `help` to get the list of available command. 77s ON> You can close your screen! 77s 77s # 1. Basic commands 77s cat << END | offpunk 77s version 77s help 77s help abbrevs 77s help add 77s help back 77s help blackbox 77s help bookmarks 77s help cat 77s help cert 77s help copy 77s help find 77s help forward 77s help go 77s help gus 77s help handler 77s help help 77s help history 77s help info 77s help list 77s help ls 77s help mark 77s help move 77s help offline 77s help online 77s help open 77s help redirect 77s help reload 77s help root 77s help save 77s help set 77s help shell echo test 77s help subscribe 77s help sync 77s help theme 77s help tour 77s help url 77s help version 77s help wikipedia 77s help exit 77s help quit 77s quit 77s END 78s To render images inline, you need either chafa or timg. 78s Before Chafa 1.10, you also need python-pil 78s Welcome to Offpunk! 78s Type `help` to get the list of available command. 78s ON> Offpunk 2.3 78s =========== 78s Highly recommended: 78s - python-cryptography : Installed 78s - xdg-open : Not Installed 78s 78s Web browsing: 78s - python-requests : Installed 78s - python-feedparser : Not Installed 78s - python-bs4 : Not Installed 78s - python-readability : Not Installed 78s - timg 1.3.2+ : Not Installed 78s - chafa : Not Installed 78s - python-pil : Not Installed 78s 78s Nice to have: 78s - python-setproctitle : Not Installed 78s - X11 clipboard (xsel or xclip) : Not Installed 78s - Wayland clipboard (wl-clipboard): Not Installed 78s 78s Features : 78s - Render images (python-pil, chafa or timg) : Not Installed 78s - Render HTML (bs4, readability) : Not Installed 78s - Render Atom/RSS feeds (feedparser) : Not Installed 78s - Connect to http/https (requests) : Installed 78s - Detect text encoding (python-chardet) : Installed 78s - restore last position (less 572+) : Installed 78s 78s Config directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.config/offpunk/ 78s User Data directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/ 78s Cache directoy : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.cache/offpunk/ 78s ON> 78s Documented commands (type help ): 78s ======================================== 78s abbrevs cat go info offline reload shell up 78s add copy gus list online root subscribe url 78s archive exit handler ls open save sync version 78s back find help mark quit search theme view 78s bookmarks forward history move redirect set tour wikipedia 78s 78s ON> Print all Offpunk command abbreviations. 78s ON> Add the current URL to the list specied as argument. 78s If no argument given, URL is added to Bookmarks. 78s ON> Go back to the previous gemini item. 78s ON> *** No help on blackbox 78s ON> Show or access the bookmarks menu. 78s 'bookmarks' shows all bookmarks. 78s 'bookmarks n' navigates immediately to item n in the bookmark menu. 78s Bookmarks are stored using the 'add' command. 78s ON> Run most recently visited item through "cat" command. 78s ON> *** No help on cert 78s ON> Copy the content of the last visited page as gemtext/html in the clipboard. 78s Use with "url" as argument to only copy the adress. 78s Use with "raw" to copy ANSI content as seen in your terminal (with colour codes). 78s Use with "cache" to copy the path of the cached content. 78s Use with "title" to copy the title of the page. 78s Use with "link" to copy a link in the gemtext format to that page with the title. 78s 78s ON> Find in current page by displaying only relevant lines (grep). 78s ON> Go forward to the next gemini item. 78s ON> Go to a gemini URL or marked item. 78s ON> Submit a search query to the geminispace.info search engine. 78s ON> View or set handler commands for different MIME types. 78s ON> ALARM! Recursion detected! ALARM! Prepare to eject! 78s ON> Display history. 78s ON> Display information about current page. 78s ON> Manage list of bookmarked pages. 78s - list : display available lists 78s - list $LIST : display pages in $LIST 78s - list create $NEWLIST : create a new list 78s - list edit $LIST : edit the list 78s - list subscribe $LIST : during sync, add new links found in listed pages to tour 78s - list freeze $LIST : don’t update pages in list during sync if a cache already exists 78s - list normal $LIST : update pages in list during sync but don’t add anything to tour 78s - list delete $LIST : delete a list permanently (a confirmation is required) 78s - list help : print this help 78s See also : 78s - add $LIST (to add current page to $LIST or, by default, to bookmarks) 78s - move $LIST (to add current page to list while removing from all others) 78s - archive (to remove current page from all lists while adding to archives) 78s 78s There’s no "delete" on purpose. The use of "archive" is recommended. 78s 78s The following lists cannot be removed or frozen but can be edited with "list edit" 78s - list archives : contains last 200 archived URLs 78s - history : contains last 200 visisted URLs 78s - to_fetch : contains URLs that will be fetch during the next sync 78s - tour : contains the next URLs to visit during a tour (see "help tour") 78s 78s 78s ON> List contents of current index. 78s Use 'ls -l' to see URLs. 78s ON> Mark the current item with a single letter. This letter can then 78s be passed to the 'go' command to return to the current item later. 78s Think of it like marks in vi: 'mark a'='ma' and 'go a'=''a'. 78s Marks are temporary until shutdown (not saved to disk). 78s ON> move LIST will add the current page to the list LIST. 78s With a major twist: current page will be removed from all other lists. 78s If current page was not in a list, this command is similar to `add LIST`. 78s ON> Use Offpunk offline by only accessing cached content 78s ON> Use Offpunk online with a direct connection 78s ON> Open current item with the configured handler or xdg-open. 78s Uses "open url" to open current URL in a browser. 78s see "handler" command to set your handler. 78s ON> Display and manage the list of redirected URLs. This features is mostly useful to use privacy-friendly frontends for popular websites. 78s ON> Reload the current URL. 78s ON> Go to root selector of the server hosting current item. 78s ON> Save an item to the filesystem. 78s 'save n filename' saves menu item n to the specified filename. 78s 'save filename' saves the last viewed item to the specified filename. 78s 'save n' saves menu item n to an automagic filename. 78s ON> View or set various options. 78s ON> *** No help on shell echo test 78s ON> Subscribe to current page by saving it in the "subscribed" list. 78s If a new link is found in the page during a --sync, the new link is automatically 78s fetched and added to your next tour. 78s To unsubscribe, remove the page from the "subscribed" list. 78s ON> Synchronize all bookmarks lists and URLs from the to_fetch list. 78s - New elements in pages in subscribed lists will be added to tour 78s - Elements in list to_fetch will be retrieved and added to tour 78s - Normal lists will be synchronized and updated 78s - Frozen lists will be fetched only if not present. 78s 78s Before a sync, you can edit the list of URLs that will be fetched with the 78s following command: "list edit to_fetch" 78s 78s Argument : duration of cache validity (in seconds). 78s ON> Change the colors of your rendered text. 78s 78s "theme ELEMENT COLOR" 78s 78s ELEMENT is one of: window_title, window_subtitle, title, 78s subtitle,subsubtitle,link,oneline_link,new_link,image_link,preformatted,blockquote. 78s 78s COLOR is one or many (separated by space) of: bold, faint, italic, underline, black, 78s red, green, yellow, blue, purple, cyan, white. 78s 78s Each color can alternatively be prefaced with "bright_". 78s ON> Add index items as waypoints on a tour, which is basically a FIFO 78s queue of gemini items. 78s 78s `tour` or `t` alone brings you to the next item in your tour. 78s Items can be added with `tour 1 2 3 4` or ranges like `tour 1-4`. 78s All items in current menu can be added with `tour *`. 78s All items in $LIST can be added with `tour $LIST`. 78s Current item can be added back to the end of the tour with `tour .`. 78s Current tour can be listed with `tour ls` and scrubbed with `tour clear`. 78s ON> Print URL of most recently visited item. 78s ON> Display version and system information. 78s ON> Search on wikipedia using the configured Gemini interface. 78s The first word should be the two letters code for the language. 78s Exemple : "wikipedia en Gemini protocol" 78s But you can also use abbreviations to go faster: 78s "wen Gemini protocol". (your abbreviation might be missing, report the bug) 78s The interface used can be modified with the command: 78s "set wikipedia URL" where URL should contains two "%s", the first 78s one used for the language, the second for the search string. 78s ON> Exit Offpunk. 78s ON> Exit Offpunk. 78s ON> You can close your screen! 78s 78s # cert calls a submenu which expects then a blank line to get outside. 78s # find will call the pager 78s # gus and search will launch the client to the search engine. 78s # reload will call the pager 78s # wikipedia will require test to have Internet access 78s cat << END | offpunk 78s abbrevs 78s add 78s archive 78s back 78s blackbox 78s bookmarks 78s cat 78s cert 78s 78s copy 78s forward 78s go 78s handler 78s history 78s info 78s list 78s ls 78s mark 78s move 78s offline 78s online 78s open 78s redirect 78s root 78s save 78s set 78s shell echo test 78s subscribe 78s 78s sync 78s tour 78s theme 78s url 78s exit 78s END 78s To render images inline, you need either chafa or timg. 78s Before Chafa 1.10, you also need python-pil 78s Welcome to Offpunk! 78s Type `help` to get the list of available command. 78s ON> 78s Command Abbreviations: 78s ====================== 78s .. up 78s a add 78s b back 78s bb blackbox 78s bm bookmarks 78s book bookmarks 78s cp copy 78s f forward 78s g go 78s h history 78s hist history 78s l view 78s less view 78s man help 78s mv move 78s n next 78s off offline 78s on online 78s p previous 78s prev previous 78s q quit 78s r reload 78s s save 78s se search 78s / find 78s t tour 78s u up 78s v view 78s w wikipedia 78s wen wikipedia en 78s wfr wikipedia fr 78s wes wikipedia es 78s 78s ON> You need to 'go' somewhere, first 78s ON> You need to 'go' somewhere, first 78s ON> ON> What? 78s ON> bookmarks (0 items) (local file) 78s bookmarks 78s ON> bookmarks (0 items) (local file) 78s bookmarks 78s ON> What? 78s ON> ON> Install xsel/xclip (X11) or wl-clipboard (Wayland) to use copy 78s ON> ON> Install xsel/xclip (X11) or wl-clipboard (Wayland) to get URLs from your clipboard 78s Go where? (hint: simply copy an URL in your clipboard) 78s ON> ON> history (1 items) (local file) 78s history 78s [1] bookmarks (bookmarks), visited on Thu Nov 14 21:09:07 2024 78s  78s ON> history (history) 78s 78s URL : list:///history 78s Mime : text/gemini 78s Cache : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/lists/history.gmi 78s Renderer : t.GemtextRenderer 78s 78s Page is not save in any list 78s ON>  (2 items) (local file) 78s 78s Bookmarks Lists (updated during sync) 78s [1] bookmarks (0 items) 78s 78s System Lists 78s [2] history (1 items) 78s  78s ON> [1] list:///bookmarks 78s [2] list:///history 78s ON> ON> LIST argument is required as the target for your move 78s ON> Offpunk is now offline and will only access cached content 78s OFF> Offpunk is online and will access the network 78s ON> Can’t find how to open /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/lists 78s Please install xdg-open (usually from xdg-util package) 78s ON> Current redirections: 78s -------------------- 78s *twitter.com -> nitter.net 78s youtube.com -> yewtu.be 78s youtu.be -> yewtu.be 78s *reddit.com -> teddit.net 78s *medium.com -> scribe.rip 78s *licdn.com -> blocked 78s *google-analytics.com -> blocked 78s *fbcdn.net -> blocked 78s *advertise.newrepublic.com -> blocked 78s *google-webfonts-helper.herokuapp.com -> blocked 78s *advertising.theguardian.com -> blocked 78s *tiktok.com -> blocked 78s *firebase.google.com -> blocked 78s *facebook.net -> blocked 78s *advertising.amazon.com -> blocked 78s *admanager.google.com -> blocked 78s *ads.yahoo.com -> blocked 78s *linkedin.com -> blocked 78s *facebook.com -> blocked 78s *google-health-ads.blogspot.com -> blocked 78s *doubleclick.net -> blocked 78s 78s To add new, use "redirect origine.com destination.org" 78s To remove a redirect, use "redirect origine.com NONE" 78s To completely block a website, use "redirect origine.com BLOCK" 78s To block also subdomains, prefix with *: "redirect *origine.com BLOCK" 78s ON> list:/ does not exist 78s ON> Can’t save /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/lists because it’s a folder, not a file 78s ON> accept_bad_ssl_certificates False 78s archives_size 200 78s auto_follow_redirects True 78s beta False 78s debug False 78s default_protocol gemini 78s download_images_first True 78s editor None 78s history_size 200 78s images_mode readable 78s max_size_download 10 78s redirects True 78s search gemini://kennedy.gemi.dev/search?%s 78s short_timeout 5 78s timeout 600 78s tls_mode tofu 78s width 72 78s wikipedia gemini://vault.transjovian.org:1965/search/%s/%s 78s ON> 78s # 2. Checks against gemini file 78s cat << END | offpunk 78s go file://$PWD/index.gmi 78s quit 78s END 78s test 78s ON> No feed detected. You can still watch the page : 78s [1] list:/// [Directory] 78s 78s Which feed do you want to subscribe ? > No subscription registered 78s ON> * * * 0 to fetch in bookmarks * * * 78s * * * 0 to fetch in tour * * * 78s End of sync 78s ON> End of tour. 78s ON> window_title set to ['red', 'bold'] 78s window_subtitle set to ['red', 'faint'] 78s title set to ['blue', 'bold', 'underline'] 78s subtitle set to ['blue'] 78s subsubtitle set to ['blue', 'faint'] 78s link set to ['blue', 'faint'] 78s new_link set to ['bold'] 78s oneline_link set to [] 78s image_link set to ['yellow', 'faint'] 78s preformatted set to ['faint'] 78s blockquote set to ['italic'] 78s prompt_on set to ['green'] 78s prompt_off set to ['green'] 78s ON> list:/// 78s ON> You can close your screen! 78s To render images inline, you need either chafa or timg. 78s Before Chafa 1.10, you also need python-pil 78s Welcome to Offpunk! 78s Type `help` to get the list of available command. 78s ON> index.gmi (7 items) (local file) 78s OFFPUNK - An Offline-First Browser for the Smolnet 78s 78s Offpunk is a command-line browser and feed reader dedicated to browsing 78s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 78s is optimised to be used offline with rare connections but works as well 78s when connected. 78s 78s Offpunk is optimised for reading and supports readability mode, 78s displaying pictures, subscribing to pages or RSS feeds, managing complex 78s lists of bookmarks. Its integrated help and easy commands make it a 78s perfect tool for command-line novices while power-users will be amazed 78s by its shell integration. 78s 78s Offpunk is written in Python 3 by Ploum. It aims to be portable and 78s minimise dependencies, making them optional. It supports 78s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 78s 78s 78s [1] Installing Offpunk and dependencies 78s [2] First steps 78s [3] Configuring Offpunk 78s [4] Using Offpunk offline 78s [5] Lists and subscriptions 78s [6] Shell and OS integrations 78s [7] Roadmap & Contributions 78s 78s  78s ON> You can close your screen! 78s 78s # 3. Test netcache command 78s # 3.0 Basic 78s netcache --help 78s To render images inline, you need either chafa or timg. 78s Before Chafa 1.10, you also need python-pil 78s usage: netcache [-h] [--path] [--offline] [--max-size MAX_SIZE] 78s [--timeout TIMEOUT] [--cache-validity CACHE_VALIDITY] 78s [URL ...] 78s 78s Netcache is a command-line tool to retrieve, cache and access networked 78s content. By default, netcache will returns a cached version of a given URL, 78s downloading it only if not existing. A validity duration, in seconds, can also 78s be given so that netcache downloads the content only if the existing cache is 78s older than the validity. 78s 78s positional arguments: 78s URL download URL and returns the content or the path to a 78s cached version 78s 78s options: 78s -h, --help show this help message and exit 78s --path return path to the cache instead of the content of the 78s cache 78s --offline Do not attempt to download, return cached version or 78s error 78s --max-size MAX_SIZE Cancel download of items above that size (value in 78s Mb). 78s --timeout TIMEOUT Time to wait before cancelling connection (in second). 78s --cache-validity CACHE_VALIDITY 78s maximum age, in second, of the cached version before 78s redownloading a new version 78s # 3.1 Various suboptions 78s OUT="$(netcache --path "file://$PWD/index.gmi")" 78s echo "$OUT" | grep -q "$PWD/index.gmi" 78s # (Note that the file local do not feed the user's cache.) 78s # 3.2 Main functionality 78s netcache "file://$PWD/index.gmi" 79s To render images inline, you need either chafa or timg. 79s Before Chafa 1.10, you also need python-pil 79s # OFFPUNK - An Offline-First Browser for the Smolnet 79s 79s Offpunk is a command-line browser and feed reader dedicated to browsing the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it is optimised to be used offline with rare connections but works as well when connected. 79s 79s Offpunk is optimised for reading and supports readability mode, displaying pictures, subscribing to pages or RSS feeds, managing complex lists of bookmarks. Its integrated help and easy commands make it a perfect tool for command-line novices while power-users will be amazed by its shell integration. 79s 79s Offpunk is written in Python 3 by Ploum. It aims to be portable and minimise dependencies, making them optional. It supports http/https/gopher/gemini/spartan on both IPv4 and IPv6. 79s 79s 79s => install.gmi Installing Offpunk and dependencies 79s => tutorial.gmi First steps 79s => config.gmi Configuring Offpunk 79s => offline.gmi Using Offpunk offline 79s => lists.gmi Lists and subscriptions 79s => shell.gmi Shell and OS integrations 79s => dev.gmi Roadmap & Contributions 79s 79s 79s netcache --offline "file://$PWD/index.gmi" 79s To render images inline, you need either chafa or timg. 79s Before Chafa 1.10, you also need python-pil 79s # OFFPUNK - An Offline-First Browser for the Smolnet 79s 79s Offpunk is a command-line browser and feed reader dedicated to browsing the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it is optimised to be used offline with rare connections but works as well when connected. 79s 79s Offpunk is optimised for reading and supports readability mode, displaying pictures, subscribing to pages or RSS feeds, managing complex lists of bookmarks. Its integrated help and easy commands make it a perfect tool for command-line novices while power-users will be amazed by its shell integration. 79s 79s Offpunk is written in Python 3 by Ploum. It aims to be portable and minimise dependencies, making them optional. It supports http/https/gopher/gemini/spartan on both IPv4 and IPv6. 79s 79s 79s => install.gmi Installing Offpunk and dependencies 79s => tutorial.gmi First steps 79s => config.gmi Configuring Offpunk 79s => offline.gmi Using Offpunk offline 79s => lists.gmi Lists and subscriptions 79s => shell.gmi Shell and OS integrations 79s => dev.gmi Roadmap & Contributions 79s 79s 79s netcache --max-size 1 "file://$PWD/index.gmi" 79s To render images inline, you need either chafa or timg. 79s Before Chafa 1.10, you also need python-pil 79s # OFFPUNK - An Offline-First Browser for the Smolnet 79s 79s Offpunk is a command-line browser and feed reader dedicated to browsing the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it is optimised to be used offline with rare connections but works as well when connected. 79s 79s Offpunk is optimised for reading and supports readability mode, displaying pictures, subscribing to pages or RSS feeds, managing complex lists of bookmarks. Its integrated help and easy commands make it a perfect tool for command-line novices while power-users will be amazed by its shell integration. 79s 79s Offpunk is written in Python 3 by Ploum. It aims to be portable and minimise dependencies, making them optional. It supports http/https/gopher/gemini/spartan on both IPv4 and IPv6. 79s 79s 79s => install.gmi Installing Offpunk and dependencies 79s => tutorial.gmi First steps 79s => config.gmi Configuring Offpunk 79s => offline.gmi Using Offpunk offline 79s => lists.gmi Lists and subscriptions 79s => shell.gmi Shell and OS integrations 79s => dev.gmi Roadmap & Contributions 79s 79s 79s # Note that testing the --timeout looks to need Internet, so we'll skip this 79s # option for now. 79s 79s # 4. Test ansicat 79s # 4.0 Basic 79s ansicat --help 79s To render images inline, you need either chafa or timg. 79s Before Chafa 1.10, you also need python-pil 79s usage: ansicat [-h] 79s [--format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext}] 79s [--mime MIME] [--url [URL ...]] [--mode MODE] 79s [INPUT ...] 79s 79s ansicat is a terminal rendering tool that will render multiple formats (HTML, 79s Gemtext, RSS, Gophermap, Image) into ANSI text and colors. When used on a 79s file, ansicat will try to autodetect the format. When used with standard 79s input, the format must be manually specified. If the content contains links, 79s the original URL of the content can be specified in order to correctly modify 79s relatives links. 79s 79s positional arguments: 79s INPUT Path to the text to render (default to stdin) 79s 79s options: 79s -h, --help show this help message and exit 79s --format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext} 79s Renderer to use. Available: auto, gemtext, html, feed, 79s gopher, image, folder, plaintext 79s --mime MIME Mime of the content to parse 79s --url [URL ...] Original URL of the content 79s --mode MODE Which mode should be used to render: normal (default), 79s full or source. With HTML, the normal mode try to 79s extract the article. 79s # 4.1 Test some ansicat formats and options 79s # WARNING: there is something about autopkgtest environment that causes the two 79s # below commands to crash, but running them by hand works perfectly. 79s # This may indicate fragility in the tool, but it is curious that the 79s # 4.2 section below gave no difficulty: if this crashes too, then it 79s # may be reasonable to skip it as well. 79s #ansicat --format plaintext index.gmi 79s #ansicat --mime text/plain index.gmi 79s # 4.2 Main functionality 79s ansicat --url "file://$PWD/index.gmi" index.gmi 79s To render images inline, you need either chafa or timg. 79s Before Chafa 1.10, you also need python-pil 79s Format or mime should be specified when running with stdin 79s 79s # 5. Test opnk 79s # 5.0 Basic 79s opnk --help 79s To render images inline, you need either chafa or timg. 79s Before Chafa 1.10, you also need python-pil 79s usage: opnk [-h] [--mode MODE] [--cache-validity CACHE_VALIDITY] [INPUT ...] 79s 79s opnk is an universal open command tool that will try to display any file in 79s the pager less after rendering its content with ansicat. If that fails, opnk 79s will fallback to opening the file with xdg-open. If given an URL as input 79s instead of a path, opnk will rely on netcache to get the networked content. 79s 79s positional arguments: 79s INPUT Path to the file or URL to open 79s 79s options: 79s -h, --help show this help message and exit 79s --mode MODE Which mode should be used to render: normal (default), 79s full or source. With HTML, the normal mode try to 79s extract the article. 79s --cache-validity CACHE_VALIDITY 79s maximum age, in second, of the cached version before 79s redownloading a new version 79s # 5.1 Open some things (but stick to not needing Internet). 79s opnk /usr/share/doc/offpunk/copyright 80s copyright (3 items) (local file) 80s Format: https://www.debian.org/doc/packaging-manuals/copyright- 80s format/1.0/ 80s Upstream-Name: Offpunk 80s Upstream-Contact: Lionel "Ploum" Dricot 80s Source: https://git.sr.ht/~lioploum/offpunk/ 80s 80s Files: * 80s Copyright: 2019-2020, Solderpunk 80s 2021-2024, Ploum and contributors. 80s License: AGPL-3 80s Comment: Derived from AV-98[1] by Solderpunk. 80s [1]: https://tildegit.org/solderpunk/AV-98 80s 80s Files: debian/* 80s Copyright: 2023-2024, Étienne Mollier 80s License: AGPL-3 80s 80s License: AGPL-3 80s Copyright (c) 2022, Ploum and contributors. 80s All rights reserved. 80s . 80s Copyright (C) 2007 Free Software Foundation, Inc. 80s Everyone is permitted to copy and distribute verbatim copies 80s of this license document, but changing it is not allowed. 80s . 80s Preamble 80s . 80s The GNU Affero General Public License is a free, copyleft license for 80s software and other kinds of works, specifically designed to ensure 80s cooperation with the community in the case of network server software. 80s . 80s The licenses for most software and other practical works are designed 80s to take away your freedom to share and change the works. By contrast, 80s our General Public Licenses are intended to guarantee your freedom to 80s share and change all versions of a program--to make sure it remains 80s free 80s software for all its users. 80s . 80s When we speak of free software, we are referring to freedom, not 80s price. Our General Public Licenses are designed to make sure that you 80s have the freedom to distribute copies of free software (and charge for 80s them if you wish), that you receive source code or can get it if you 80s want it, that you can change the software or use pieces of it in new 80s free programs, and that you know you can do these things. 80s . 80s Developers that use our General Public Licenses protect your rights 80s with two steps: (1) assert copyright on the software, and (2) offer 80s you this License which gives you legal permission to copy, distribute 80s and/or modify the software. 80s . 80s A secondary benefit of defending all users' freedom is that 80s improvements made in alternate versions of the program, if they 80s receive widespread use, become available for other developers to 80s incorporate. Many developers of free software are heartened and 80s encouraged by the resulting cooperation. However, in the case of 80s software used on network servers, this result may fail to come about. 80s The GNU General Public License permits making a modified version and 80s letting the public access it on a server without ever releasing its 80s source code to the public. 80s . 80s The GNU Affero General Public License is designed specifically to 80s ensure that, in such cases, the modified source code becomes available 80s to the community. It requires the operator of a network server to 80s provide the source code of the modified version running there to the 80s users of that server. Therefore, public use of a modified version, on 80s a publicly accessible server, gives the public access to the source 80s code of the modified version. 80s . 80s An older license, called the Affero General Public License and 80s published by Affero, was designed to accomplish similar goals. This is 80s a different license, not a version of the Affero GPL, but Affero has 80s released a new version of the Affero GPL which permits relicensing 80s under 80s this license. 80s . 80s The precise terms and conditions for copying, distribution and 80s modification follow. 80s . 80s TERMS AND CONDITIONS 80s . 80s 0. Definitions. 80s . 80s "This License" refers to version 3 of the GNU Affero General Public 80s License. 80s . 80s "Copyright" also means copyright-like laws that apply to other kinds of 80s works, such as semiconductor masks. 80s . 80s "The Program" refers to any copyrightable work licensed under this 80s License. Each licensee is addressed as "you". "Licensees" and 80s "recipients" may be individuals or organizations. 80s . 80s To "modify" a work means to copy from or adapt all or part of the work 80s in a fashion requiring copyright permission, other than the making of 80s an 80s exact copy. The resulting work is called a "modified version" of the 80s earlier work or a work "based on" the earlier work. 80s . 80s A "covered work" means either the unmodified Program or a work based 80s on the Program. 80s . 80s To "propagate" a work means to do anything with it that, without 80s permission, would make you directly or secondarily liable for 80s infringement under applicable copyright law, except executing it on a 80s computer or modifying a private copy. Propagation includes copying, 80s distribution (with or without modification), making available to the 80s public, and in some countries other activities as well. 80s . 80s To "convey" a work means any kind of propagation that enables other 80s parties to make or receive copies. Mere interaction with a user 80s through 80s a computer network, with no transfer of a copy, is not conveying. 80s . 80s An interactive user interface displays "Appropriate Legal Notices" 80s to the extent that it includes a convenient and prominently visible 80s feature that (1) displays an appropriate copyright notice, and (2) 80s tells the user that there is no warranty for the work (except to the 80s extent that warranties are provided), that licensees may convey the 80s work under this License, and how to view a copy of this License. If 80s the interface presents a list of user commands or options, such as a 80s menu, a prominent item in the list meets this criterion. 80s . 80s 1. Source Code. 80s . 80s The "source code" for a work means the preferred form of the work 80s for making modifications to it. "Object code" means any non-source 80s form of a work. 80s . 80s A "Standard Interface" means an interface that either is an official 80s standard defined by a recognized standards body, or, in the case of 80s interfaces specified for a particular programming language, one that 80s is widely used among developers working in that language. 80s . 80s The "System Libraries" of an executable work include anything, other 80s than the work as a whole, that (a) is included in the normal form of 80s packaging a Major Component, but which is not part of that Major 80s Component, and (b) serves only to enable use of the work with that 80s Major Component, or to implement a Standard Interface for which an 80s implementation is available to the public in source code form. A 80s "Major Component", in this context, means a major essential component 80s (kernel, window system, and so on) of the specific operating system 80s (if any) on which the executable work runs, or a compiler used to 80s produce the work, or an object code interpreter used to run it. 80s . 80s The "Corresponding Source" for a work in object code form means all 80s the source code needed to generate, install, and (for an executable 80s work) run the object code and to modify the work, including scripts to 80s control those activities. However, it does not include the work's 80s System Libraries, or general-purpose tools or generally available free 80s programs which are used unmodified in performing those activities but 80s which are not part of the work. For example, Corresponding Source 80s includes interface definition files associated with source files for 80s the work, and the source code for shared libraries and dynamically 80s linked subprograms that the work is specifically designed to require, 80s such as by intimate data communication or control flow between those 80s subprograms and other parts of the work. 80s . 80s The Corresponding Source need not include anything that users 80s can regenerate automatically from other parts of the Corresponding 80s Source. 80s . 80s The Corresponding Source for a work in source code form is that 80s same work. 80s . 80s 2. Basic Permissions. 80s . 80s All rights granted under this License are granted for the term of 80s copyright on the Program, and are irrevocable provided the stated 80s conditions are met. This License explicitly affirms your unlimited 80s permission to run the unmodified Program. The output from running a 80s covered work is covered by this License only if the output, given its 80s content, constitutes a covered work. This License acknowledges your 80s rights of fair use or other equivalent, as provided by copyright law. 80s . 80s You may make, run and propagate covered works that you do not 80s convey, without conditions so long as your license otherwise remains 80s in force. You may convey covered works to others for the sole purpose 80s of having them make modifications exclusively for you, or provide you 80s with facilities for running those works, provided that you comply with 80s the terms of this License in conveying all material for which you do 80s not control copyright. Those thus making or running the covered works 80s for you must do so exclusively on your behalf, under your direction 80s and control, on terms that prohibit them from making any copies of 80s your copyrighted material outside their relationship with you. 80s . 80s Conveying under any other circumstances is permitted solely under 80s the conditions stated below. Sublicensing is not allowed; section 10 80s makes it unnecessary. 80s . 80s 3. Protecting Users' Legal Rights From Anti-Circumvention Law. 80s . 80s No covered work shall be deemed part of an effective technological 80s measure under any applicable law fulfilling obligations under article 80s 11 of the WIPO copyright treaty adopted on 20 December 1996, or 80s similar laws prohibiting or restricting circumvention of such 80s measures. 80s . 80s When you convey a covered work, you waive any legal power to forbid 80s circumvention of technological measures to the extent such 80s circumvention 80s is effected by exercising rights under this License with respect to 80s the covered work, and you disclaim any intention to limit operation or 80s modification of the work as a means of enforcing, against the work's 80s users, your or third parties' legal rights to forbid circumvention of 80s technological measures. 80s . 80s 4. Conveying Verbatim Copies. 80s . 80s You may convey verbatim copies of the Program's source code as you 80s receive it, in any medium, provided that you conspicuously and 80s appropriately publish on each copy an appropriate copyright notice; 80s keep intact all notices stating that this License and any 80s non-permissive terms added in accord with section 7 apply to the code; 80s keep intact all notices of the absence of any warranty; and give all 80s recipients a copy of this License along with the Program. 80s . 80s You may charge any price or no price for each copy that you convey, 80s and you may offer support or warranty protection for a fee. 80s . 80s 5. Conveying Modified Source Versions. 80s . 80s You may convey a work based on the Program, or the modifications to 80s produce it from the Program, in the form of source code under the 80s terms of section 4, provided that you also meet all of these 80s conditions: 80s . 80s a) The work must carry prominent notices stating that you modified 80s it, and giving a relevant date. 80s . 80s b) The work must carry prominent notices stating that it is 80s released under this License and any conditions added under section 80s 7. This requirement modifies the requirement in section 4 to 80s "keep intact all notices". 80s . 80s c) You must license the entire work, as a whole, under this 80s License to anyone who comes into possession of a copy. This 80s License will therefore apply, along with any applicable section 7 80s additional terms, to the whole of the work, and all its parts, 80s regardless of how they are packaged. This License gives no 80s permission to license the work in any other way, but it does not 80s invalidate such permission if you have separately received it. 80s . 80s d) If the work has interactive user interfaces, each must display 80s Appropriate Legal Notices; however, if the Program has interactive 80s interfaces that do not display Appropriate Legal Notices, your 80s work need not make them do so. 80s . 80s A compilation of a covered work with other separate and independent 80s works, which are not by their nature extensions of the covered work, 80s and which are not combined with it such as to form a larger program, 80s in or on a volume of a storage or distribution medium, is called an 80s "aggregate" if the compilation and its resulting copyright are not 80s used to limit the access or legal rights of the compilation's users 80s beyond what the individual works permit. Inclusion of a covered work 80s in an aggregate does not cause this License to apply to the other 80s parts of the aggregate. 80s . 80s 6. Conveying Non-Source Forms. 80s . 80s You may convey a covered work in object code form under the terms 80s of sections 4 and 5, provided that you also convey the 80s machine-readable Corresponding Source under the terms of this License, 80s in one of these ways: 80s . 80s a) Convey the object code in, or embodied in, a physical product 80s (including a physical distribution medium), accompanied by the 80s Corresponding Source fixed on a durable physical medium 80s customarily used for software interchange. 80s . 80s b) Convey the object code in, or embodied in, a physical product 80s (including a physical distribution medium), accompanied by a 80s written offer, valid for at least three years and valid for as 80s long as you offer spare parts or customer support for that product 80s model, to give anyone who possesses the object code either (1) a 80s copy of the Corresponding Source for all the software in the 80s product that is covered by this License, on a durable physical 80s medium customarily used for software interchange, for a price no 80s more than your reasonable cost of physically performing this 80s conveying of source, or (2) access to copy the 80s Corresponding Source from a network server at no charge. 80s . 80s c) Convey individual copies of the object code with a copy of the 80s written offer to provide the Corresponding Source. This 80s alternative is allowed only occasionally and noncommercially, and 80s only if you received the object code with such an offer, in accord 80s with subsection 6b. 80s . 80s d) Convey the object code by offering access from a designated 80s place (gratis or for a charge), and offer equivalent access to the 80s Corresponding Source in the same way through the same place at no 80s further charge. You need not require recipients to copy the 80s Corresponding Source along with the object code. If the place to 80s copy the object code is a network server, the Corresponding Source 80s may be on a different server (operated by you or a third party) 80s that supports equivalent copying facilities, provided you maintain 80s clear directions next to the object code saying where to find the 80s Corresponding Source. Regardless of what server hosts the 80s Corresponding Source, you remain obligated to ensure that it is 80s available for as long as needed to satisfy these requirements. 80s . 80s e) Convey the object code using peer-to-peer transmission, provided 80s you inform other peers where the object code and Corresponding 80s Source of the work are being offered to the general public at no 80s charge under subsection 6d. 80s . 80s A separable portion of the object code, whose source code is excluded 80s from the Corresponding Source as a System Library, need not be 80s included in conveying the object code work. 80s . 80s A "User Product" is either (1) a "consumer product", which means any 80s tangible personal property which is normally used for personal, family, 80s or household purposes, or (2) anything designed or sold for 80s incorporation 80s into a dwelling. In determining whether a product is a consumer 80s product, 80s doubtful cases shall be resolved in favor of coverage. For a 80s particular 80s product received by a particular user, "normally used" refers to a 80s typical or common use of that class of product, regardless of the 80s status 80s of the particular user or of the way in which the particular user 80s actually uses, or expects or is expected to use, the product. A 80s product 80s is a consumer product regardless of whether the product has substantial 80s commercial, industrial or non-consumer uses, unless such uses represent 80s the only significant mode of use of the product. 80s . 80s "Installation Information" for a User Product means any methods, 80s procedures, authorization keys, or other information required to 80s install 80s and execute modified versions of a covered work in that User Product 80s from 80s a modified version of its Corresponding Source. The information must 80s suffice to ensure that the continued functioning of the modified object 80s code is in no case prevented or interfered with solely because 80s modification has been made. 80s . 80s If you convey an object code work under this section in, or with, or 80s specifically for use in, a User Product, and the conveying occurs as 80s part of a transaction in which the right of possession and use of the 80s User Product is transferred to the recipient in perpetuity or for a 80s fixed term (regardless of how the transaction is characterized), the 80s Corresponding Source conveyed under this section must be accompanied 80s by the Installation Information. But this requirement does not apply 80s if neither you nor any third party retains the ability to install 80s modified object code on the User Product (for example, the work has 80s been installed in ROM). 80s . 80s The requirement to provide Installation Information does not include a 80s requirement to continue to provide support service, warranty, or 80s updates 80s for a work that has been modified or installed by the recipient, or for 80s the User Product in which it has been modified or installed. Access to 80s a 80s network may be denied when the modification itself materially and 80s adversely affects the operation of the network or violates the rules 80s and 80s protocols for communication across the network. 80s . 80s Corresponding Source conveyed, and Installation Information provided, 80s in accord with this section must be in a format that is publicly 80s documented (and with an implementation available to the public in 80s source code form), and must require no special password or key for 80s unpacking, reading or copying. 80s . 80s 7. Additional Terms. 80s . 80s "Additional permissions" are terms that supplement the terms of this 80s License by making exceptions from one or more of its conditions. 80s Additional permissions that are applicable to the entire Program shall 80s be treated as though they were included in this License, to the extent 80s that they are valid under applicable law. If additional permissions 80s apply only to part of the Program, that part may be used separately 80s under those permissions, but the entire Program remains governed by 80s this License without regard to the additional permissions. 80s . 80s When you convey a copy of a covered work, you may at your option 80s remove any additional permissions from that copy, or from any part of 80s it. (Additional permissions may be written to require their own 80s removal in certain cases when you modify the work.) You may place 80s additional permissions on material, added by you to a covered work, 80s for which you have or can give appropriate copyright permission. 80s . 80s Notwithstanding any other provision of this License, for material you 80s add to a covered work, you may (if authorized by the copyright holders 80s of 80s that material) supplement the terms of this License with terms: 80s . 80s a) Disclaiming warranty or limiting liability differently from the 80s terms of sections 15 and 16 of this License; or 80s . 80s b) Requiring preservation of specified reasonable legal notices or 80s author attributions in that material or in the Appropriate Legal 80s Notices displayed by works containing it; or 80s . 80s c) Prohibiting misrepresentation of the origin of that material, or 80s requiring that modified versions of such material be marked in 80s reasonable ways as different from the original version; or 80s . 80s d) Limiting the use for publicity purposes of names of licensors or 80s authors of the material; or 80s . 80s e) Declining to grant rights under trademark law for use of some 80s trade names, trademarks, or service marks; or 80s . 80s f) Requiring indemnification of licensors and authors of that 80s material by anyone who conveys the material (or modified versions 80s of 80s it) with contractual assumptions of liability to the recipient, for 80s any liability that these contractual assumptions directly impose on 80s those licensors and authors. 80s . 80s All other non-permissive additional terms are considered "further 80s restrictions" within the meaning of section 10. If the Program as you 80s received it, or any part of it, contains a notice stating that it is 80s governed by this License along with a term that is a further 80s restriction, you may remove that term. If a license document contains 80s a further restriction but permits relicensing or conveying under this 80s License, you may add to a covered work material governed by the terms 80s of that license document, provided that the further restriction does 80s not survive such relicensing or conveying. 80s . 80s If you add terms to a covered work in accord with this section, you 80s must place, in the relevant source files, a statement of the 80s additional terms that apply to those files, or a notice indicating 80s where to find the applicable terms. 80s . 80s Additional terms, permissive or non-permissive, may be stated in the 80s form of a separately written license, or stated as exceptions; 80s the above requirements apply either way. 80s . 80s 8. Termination. 80s . 80s You may not propagate or modify a covered work except as expressly 80s provided under this License. Any attempt otherwise to propagate or 80s modify it is void, and will automatically terminate your rights under 80s this License (including any patent licenses granted under the third 80s paragraph of section 11). 80s . 80s However, if you cease all violation of this License, then your 80s license from a particular copyright holder is reinstated (a) 80s provisionally, unless and until the copyright holder explicitly and 80s finally terminates your license, and (b) permanently, if the copyright 80s holder fails to notify you of the violation by some reasonable means 80s prior to 60 days after the cessation. 80s . 80s Moreover, your license from a particular copyright holder is 80s reinstated permanently if the copyright holder notifies you of the 80s violation by some reasonable means, this is the first time you have 80s received notice of violation of this License (for any work) from that 80s copyright holder, and you cure the violation prior to 30 days after 80s your receipt of the notice. 80s . 80s Termination of your rights under this section does not terminate the 80s licenses of parties who have received copies or rights from you under 80s this License. If your rights have been terminated and not permanently 80s reinstated, you do not qualify to receive new licenses for the same 80s material under section 10. 80s . 80s 9. Acceptance Not Required for Having Copies. 80s . 80s You are not required to accept this License in order to receive or 80s run a copy of the Program. Ancillary propagation of a covered work 80s occurring solely as a consequence of using peer-to-peer transmission 80s to receive a copy likewise does not require acceptance. However, 80s nothing other than this License grants you permission to propagate or 80s modify any covered work. These actions infringe copyright if you do 80s not accept this License. Therefore, by modifying or propagating a 80s covered work, you indicate your acceptance of this License to do so. 80s . 80s 10. Automatic Licensing of Downstream Recipients. 80s . 80s Each time you convey a covered work, the recipient automatically 80s receives a license from the original licensors, to run, modify and 80s propagate that work, subject to this License. You are not responsible 80s for enforcing compliance by third parties with this License. 80s . 80s An "entity transaction" is a transaction transferring control of an 80s organization, or substantially all assets of one, or subdividing an 80s organization, or merging organizations. If propagation of a covered 80s work results from an entity transaction, each party to that 80s transaction who receives a copy of the work also receives whatever 80s licenses to the work the party's predecessor in interest had or could 80s give under the previous paragraph, plus a right to possession of the 80s Corresponding Source of the work from the predecessor in interest, if 80s the predecessor has it or can get it with reasonable efforts. 80s . 80s You may not impose any further restrictions on the exercise of the 80s rights granted or affirmed under this License. For example, you may 80s not impose a license fee, royalty, or other charge for exercise of 80s rights granted under this License, and you may not initiate litigation 80s (including a cross-claim or counterclaim in a lawsuit) alleging that 80s any patent claim is infringed by making, using, selling, offering for 80s sale, or importing the Program or any portion of it. 80s . 80s 11. Patents. 80s . 80s A "contributor" is a copyright holder who authorizes use under this 80s License of the Program or a work on which the Program is based. The 80s work thus licensed is called the contributor's "contributor version". 80s . 80s A contributor's "essential patent claims" are all patent claims 80s owned or controlled by the contributor, whether already acquired or 80s hereafter acquired, that would be infringed by some manner, permitted 80s by this License, of making, using, or selling its contributor version, 80s but do not include claims that would be infringed only as a 80s consequence of further modification of the contributor version. For 80s purposes of this definition, "control" includes the right to grant 80s patent sublicenses in a manner consistent with the requirements of 80s this License. 80s . 80s Each contributor grants you a non-exclusive, worldwide, royalty-free 80s patent license under the contributor's essential patent claims, to 80s make, use, sell, offer for sale, import and otherwise run, modify and 80s propagate the contents of its contributor version. 80s . 80s In the following three paragraphs, a "patent license" is any express 80s agreement or commitment, however denominated, not to enforce a patent 80s (such as an express permission to practice a patent or covenant not to 80s sue for patent infringement). To "grant" such a patent license to a 80s party means to make such an agreement or commitment not to enforce a 80s patent against the party. 80s . 80s If you convey a covered work, knowingly relying on a patent license, 80s and the Corresponding Source of the work is not available for anyone 80s to copy, free of charge and under the terms of this License, through a 80s publicly available network server or other readily accessible means, 80s then you must either (1) cause the Corresponding Source to be so 80s available, or (2) arrange to deprive yourself of the benefit of the 80s patent license for this particular work, or (3) arrange, in a manner 80s consistent with the requirements of this License, to extend the patent 80s license to downstream recipients. "Knowingly relying" means you have 80s actual knowledge that, but for the patent license, your conveying the 80s covered work in a country, or your recipient's use of the covered work 80s in a country, would infringe one or more identifiable patents in that 80s country that you have reason to believe are valid. 80s . 80s If, pursuant to or in connection with a single transaction or 80s arrangement, you convey, or propagate by procuring conveyance of, a 80s covered work, and grant a patent license to some of the parties 80s receiving the covered work authorizing them to use, propagate, modify 80s or convey a specific copy of the covered work, then the patent license 80s you grant is automatically extended to all recipients of the covered 80s work and works based on it. 80s . 80s A patent license is "discriminatory" if it does not include within 80s the scope of its coverage, prohibits the exercise of, or is 80s conditioned on the non-exercise of one or more of the rights that are 80s specifically granted under this License. You may not convey a covered 80s work if you are a party to an arrangement with a third party that is 80s in the business of distributing software, under which you make payment 80s to the third party based on the extent of your activity of conveying 80s the work, and under which the third party grants, to any of the 80s parties who would receive the covered work from you, a discriminatory 80s patent license (a) in connection with copies of the covered work 80s conveyed by you (or copies made from those copies), or (b) primarily 80s for and in connection with specific products or compilations that 80s contain the covered work, unless you entered into that arrangement, 80s or that patent license was granted, prior to 28 March 2007. 80s . 80s Nothing in this License shall be construed as excluding or limiting 80s any implied license or other defenses to infringement that may 80s otherwise be available to you under applicable patent law. 80s . 80s 12. No Surrender of Others' Freedom. 80s . 80s If conditions are imposed on you (whether by court order, agreement or 80s otherwise) that contradict the conditions of this License, they do not 80s excuse you from the conditions of this License. If you cannot convey a 80s covered work so as to satisfy simultaneously your obligations under 80s this 80s License and any other pertinent obligations, then as a consequence you 80s may 80s not convey it at all. For example, if you agree to terms that obligate 80s you 80s to collect a royalty for further conveying from those to whom you 80s convey 80s the Program, the only way you could satisfy both those terms and this 80s License would be to refrain entirely from conveying the Program. 80s . 80s 13. Remote Network Interaction; Use with the GNU General Public 80s License. 80s . 80s Notwithstanding any other provision of this License, if you modify the 80s Program, your modified version must prominently offer all users 80s interacting with it remotely through a computer network (if your 80s version 80s supports such interaction) an opportunity to receive the Corresponding 80s Source of your version by providing access to the Corresponding Source 80s from a network server at no charge, through some standard or customary 80s means of facilitating copying of software. This Corresponding Source 80s shall include the Corresponding Source for any work covered by version 80s 3 80s of the GNU General Public License that is incorporated pursuant to the 80s following paragraph. 80s . 80s Notwithstanding any other provision of this License, you have 80s permission to link or combine any covered work with a work licensed 80s under version 3 of the GNU General Public License into a single 80s combined work, and to convey the resulting work. The terms of this 80s License will continue to apply to the part which is the covered work, 80s but the work with which it is combined will remain governed by version 80s 3 of the GNU General Public License. 80s . 80s 14. Revised Versions of this License. 80s . 80s The Free Software Foundation may publish revised and/or new versions of 80s the GNU Affero General Public License from time to time. Such new 80s versions 80s will be similar in spirit to the present version, but may differ in 80s detail to 80s address new problems or concerns. 80s . 80s Each version is given a distinguishing version number. If the 80s Program specifies that a certain numbered version of the GNU Affero 80s General 80s Public License "or any later version" applies to it, you have the 80s option of following the terms and conditions either of that numbered 80s version or of any later version published by the Free Software 80s Foundation. If the Program does not specify a version number of the 80s GNU Affero General Public License, you may choose any version ever 80s published 80s by the Free Software Foundation. 80s . 80s If the Program specifies that a proxy can decide which future 80s versions of the GNU Affero General Public License can be used, that 80s proxy's 80s public statement of acceptance of a version permanently authorizes you 80s to choose that version for the Program. 80s . 80s Later license versions may give you additional or different 80s permissions. However, no additional obligations are imposed on any 80s author or copyright holder as a result of your choosing to follow a 80s later version. 80s . 80s 15. Disclaimer of Warranty. 80s . 80s THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY 80s APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT 80s HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT 80s WARRANTY 80s OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED 80s TO, 80s THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 80s PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE 80s PROGRAM 80s IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST 80s OF 80s ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 80s . 80s 16. Limitation of Liability. 80s . 80s IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 80s WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR 80s CONVEYS 80s THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING 80s ANY 80s GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF 80s THE 80s USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS 80s OF 80s DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR 80s THIRD 80s PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 80s PROGRAMS), 80s EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY 80s OF 80s SUCH DAMAGES. 80s . 80s 17. Interpretation of Sections 15 and 16. 80s . 80s If the disclaimer of warranty and limitation of liability provided 80s above cannot be given local legal effect according to their terms, 80s reviewing courts shall apply local law that most closely approximates 80s an absolute waiver of all civil liability in connection with the 80s Program, unless a warranty or assumption of liability accompanies a 80s copy of the Program in return for a fee. 80s . 80s END OF TERMS AND CONDITIONS 80s . 80s How to Apply These Terms to Your New Programs 80s . 80s If you develop a new program, and you want it to be of the greatest 80s possible use to the public, the best way to achieve this is to make it 80s free software which everyone can redistribute and change under these 80s terms. 80s . 80s To do so, attach the following notices to the program. It is safest 80s to attach them to the start of each source file to most effectively 80s state the exclusion of warranty; and each file should have at least 80s the "copyright" line and a pointer to where the full notice is found. 80s . 80s 80s Copyright (C) 80s . 80s This program is free software: you can redistribute it and/or 80s modify 80s it under the terms of the GNU Affero General Public License as 80s published by 80s the Free Software Foundation, either version 3 of the License, or 80s (at your option) any later version. 80s . 80s This program is distributed in the hope that it will be useful, 80s but WITHOUT ANY WARRANTY; without even the implied warranty of 80s MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 80s GNU Affero General Public License for more details. 80s . 80s You should have received a copy of the GNU Affero General Public 80s License 80s along with this program. If not, see 80s . 80s . 80s Also add information on how to contact you by electronic and paper 80s mail. 80s . 80s If your software can interact with users remotely through a computer 80s network, you should also make sure that it provides a way for users to 80s get its source. For example, if your program is a web application, its 80s interface could display a "Source" link that leads users to an archive 80s of the code. There are many ways you could offer source, and different 80s solutions will be better for different programs; see section 13 for the 80s specific requirements. 80s . 80s You should also get your employer (if you work as a programmer) or 80s school, 80s if any, to sign a "copyright disclaimer" for the program, if necessary. 80s For more information on this, and how to apply and follow the GNU AGPL, 80s see 80s . 80s To render images inline, you need either chafa or timg. 80s Before Chafa 1.10, you also need python-pil 80s # 5.2 Main functionality 80s opnk index.gmi 80s index.gmi (7 items) (local file) 80s OFFPUNK - An Offline-First Browser for the Smolnet 80s 80s Offpunk is a command-line browser and feed reader dedicated to browsing 80s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 80s is optimised to be used offline with rare connections but works as well 80s when connected. 80s 80s Offpunk is optimised for reading and supports readability mode, 80s displaying pictures, subscribing to pages or RSS feeds, managing complex 80s lists of bookmarks. Its integrated help and easy commands make it a 80s perfect tool for command-line novices while power-users will be amazed 80s by its shell integration. 80s 80s Offpunk is written in Python 3 by Ploum. It aims to be portable and 80s minimise dependencies, making them optional. It supports 80s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 80s 80s 80s [1] Installing Offpunk and dependencies 80s [2] First steps 80s [3] Configuring Offpunk 80s [4] Using Offpunk offline 80s [5] Lists and subscriptions 80s [6] Shell and OS integrations 80s [7] Roadmap & Contributions 80s 80s  80s To render images inline, you need either chafa or timg. 80s Before Chafa 1.10, you also need python-pil 80s autopkgtest [21:09:10]: test run-commands: -----------------------] 81s autopkgtest [21:09:11]: test run-commands: - - - - - - - - - - results - - - - - - - - - - 81s run-commands PASS 81s autopkgtest [21:09:11]: test run-commands: preparing testbed 83s Note, using file '/tmp/autopkgtest.zCvvc0/3-autopkgtest-satdep.dsc' to get the build dependencies 83s Reading package lists... 84s Building dependency tree... 84s Reading state information... 84s Starting pkgProblemResolver with broken count: 0 84s Starting 2 pkgProblemResolver with broken count: 0 84s Done 84s The following NEW packages will be installed: 84s libxslt1.1 python3-bs4 python3-cssselect python3-feedparser python3-lxml 84s python3-lxml-html-clean python3-readability python3-setproctitle 84s python3-sgmllib3k python3-soupsieve xdg-utils 84s 0 upgraded, 11 newly installed, 0 to remove and 0 not upgraded. 84s Need to get 1783 kB of archives. 84s After this operation, 7303 kB of additional disk space will be used. 84s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu1 [169 kB] 85s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-soupsieve all 2.6-1 [33.0 kB] 85s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-bs4 all 4.12.3-3 [109 kB] 85s Get:4 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-sgmllib3k all 1.0.0-5 [8722 B] 85s Get:5 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-feedparser all 6.0.11-2 [45.2 kB] 85s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lxml amd64 5.3.0-1 [1282 kB] 85s Get:7 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-lxml-html-clean all 0.3.1-1 [13.9 kB] 85s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-cssselect all 1.2.0-4 [18.6 kB] 85s Get:9 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-readability all 0.8.1+dfsg1-4 [15.8 kB] 85s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 xdg-utils all 1.2.1-0ubuntu1 [67.5 kB] 85s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-setproctitle amd64 1.3.3-1build3 [19.8 kB] 85s Fetched 1783 kB in 1s (2670 kB/s) 85s Selecting previously unselected package libxslt1.1:amd64. 85s (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 ... 76839 files and directories currently installed.) 85s Preparing to unpack .../00-libxslt1.1_1.1.39-0exp1ubuntu1_amd64.deb ... 85s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu1) ... 85s Selecting previously unselected package python3-soupsieve. 85s Preparing to unpack .../01-python3-soupsieve_2.6-1_all.deb ... 85s Unpacking python3-soupsieve (2.6-1) ... 85s Selecting previously unselected package python3-bs4. 85s Preparing to unpack .../02-python3-bs4_4.12.3-3_all.deb ... 85s Unpacking python3-bs4 (4.12.3-3) ... 85s Selecting previously unselected package python3-sgmllib3k. 85s Preparing to unpack .../03-python3-sgmllib3k_1.0.0-5_all.deb ... 85s Unpacking python3-sgmllib3k (1.0.0-5) ... 85s Selecting previously unselected package python3-feedparser. 85s Preparing to unpack .../04-python3-feedparser_6.0.11-2_all.deb ... 85s Unpacking python3-feedparser (6.0.11-2) ... 85s Selecting previously unselected package python3-lxml:amd64. 85s Preparing to unpack .../05-python3-lxml_5.3.0-1_amd64.deb ... 85s Unpacking python3-lxml:amd64 (5.3.0-1) ... 85s Selecting previously unselected package python3-lxml-html-clean. 85s Preparing to unpack .../06-python3-lxml-html-clean_0.3.1-1_all.deb ... 85s Unpacking python3-lxml-html-clean (0.3.1-1) ... 85s Selecting previously unselected package python3-cssselect. 85s Preparing to unpack .../07-python3-cssselect_1.2.0-4_all.deb ... 85s Unpacking python3-cssselect (1.2.0-4) ... 85s Selecting previously unselected package python3-readability. 85s Preparing to unpack .../08-python3-readability_0.8.1+dfsg1-4_all.deb ... 85s Unpacking python3-readability (0.8.1+dfsg1-4) ... 86s Selecting previously unselected package xdg-utils. 86s Preparing to unpack .../09-xdg-utils_1.2.1-0ubuntu1_all.deb ... 86s Unpacking xdg-utils (1.2.1-0ubuntu1) ... 86s Selecting previously unselected package python3-setproctitle:amd64. 86s Preparing to unpack .../10-python3-setproctitle_1.3.3-1build3_amd64.deb ... 86s Unpacking python3-setproctitle:amd64 (1.3.3-1build3) ... 86s Setting up python3-sgmllib3k (1.0.0-5) ... 86s Setting up python3-setproctitle:amd64 (1.3.3-1build3) ... 86s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu1) ... 86s Setting up python3-cssselect (1.2.0-4) ... 86s Setting up python3-soupsieve (2.6-1) ... 86s Setting up xdg-utils (1.2.1-0ubuntu1) ... 86s update-alternatives: using /usr/bin/xdg-open to provide /usr/bin/open (open) in auto mode 86s Setting up python3-feedparser (6.0.11-2) ... 86s Setting up python3-bs4 (4.12.3-3) ... 86s Setting up python3-lxml:amd64 (5.3.0-1) ... 86s Setting up python3-lxml-html-clean (0.3.1-1) ... 87s Setting up python3-readability (0.8.1+dfsg1-4) ... 87s Processing triggers for libc-bin (2.40-1ubuntu3) ... 87s Processing triggers for man-db (2.12.1-3) ... 88s Reading package lists... 88s Building dependency tree... 88s Reading state information... 89s Starting pkgProblemResolver with broken count: 0 89s Starting 2 pkgProblemResolver with broken count: 0 89s Done 89s The following NEW packages will be installed: 89s autopkgtest-satdep 89s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 89s Need to get 0 B/700 B of archives. 89s After this operation, 0 B of additional disk space will be used. 89s Get:1 /tmp/autopkgtest.zCvvc0/4-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [700 B] 89s Selecting previously unselected package autopkgtest-satdep. 89s (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 ... 77179 files and directories currently installed.) 89s Preparing to unpack .../4-autopkgtest-satdep.deb ... 89s Unpacking autopkgtest-satdep (0) ... 89s Setting up autopkgtest-satdep (0) ... 91s (Reading database ... 77179 files and directories currently installed.) 91s Removing autopkgtest-satdep (0) ... 94s autopkgtest [21:09:24]: test run-commands: [----------------------- 94s 94s # 0. Basic arguments 94s offpunk --version 95s To render images inline, you need either chafa or timg. 95s Before Chafa 1.10, you also need python-pil 95s Offpunk 2.3 95s offpunk --help 95s To render images inline, you need either chafa or timg. 95s Before Chafa 1.10, you also need python-pil 95s usage: offpunk [-h] [--bookmarks] [--config-file FILE] [--sync] [--assume-yes] 95s [--disable-http] [--fetch-later] [--depth DEPTH] 95s [--images-mode IMAGES_MODE] [--cache-validity CACHE_VALIDITY] 95s [--version] [--features] 95s [URL ...] 95s 95s Offline-First Gemini/Web/Gopher/RSS reader and browser 95s 95s positional arguments: 95s URL Arguments should be URL to be fetched or, if --sync is 95s used, lists 95s 95s options: 95s -h, --help show this help message and exit 95s --bookmarks start with your list of bookmarks 95s --config-file FILE use this particular config file instead of default 95s --sync run non-interactively to build cache by exploring 95s lists passed as argument. Without argument, all lists 95s are fetched. 95s --assume-yes assume-yes when asked questions about 95s certificates/redirections during sync (lower security) 95s --disable-http do not try to get http(s) links (but already cached 95s will be displayed) 95s --fetch-later run non-interactively with an URL as argument to fetch 95s it later 95s --depth DEPTH depth of the cache to build. Default is 1. More is 95s crazy. Use at your own risks! 95s --images-mode IMAGES_MODE 95s the mode to use to choose which images to download in 95s a HTML page. one of (None, readable, full). Warning: 95s full will slowdown your sync. 95s --cache-validity CACHE_VALIDITY 95s duration for which a cache is valid before sync 95s (seconds) 95s --version display version information and quit 95s --features display available features and dependancies then quit 95s offpunk --features 95s To render images inline, you need either chafa or timg. 95s Before Chafa 1.10, you also need python-pil 95s moving from tofu.db to certificates as files 95s Upgrading cache to version 1: migrating index.txt to gophermap 95s Offpunk 2.3 95s =========== 95s Highly recommended: 95s - python-cryptography : Installed 95s - xdg-open : Installed 95s 95s Web browsing: 95s - python-requests : Installed 95s - python-feedparser : Installed 95s - python-bs4 : Installed 95s - python-readability : Installed 95s - timg 1.3.2+ : Not Installed 95s - chafa : Not Installed 95s - python-pil : Not Installed 95s 95s Nice to have: 95s - python-setproctitle : Installed 95s - X11 clipboard (xsel or xclip) : Not Installed 95s - Wayland clipboard (wl-clipboard): Not Installed 95s 95s Features : 95s - Render images (python-pil, chafa or timg) : Not Installed 95s - Render HTML (bs4, readability) : Installed 95s - Render Atom/RSS feeds (feedparser) : Installed 95s - Connect to http/https (requests) : Installed 95s - Detect text encoding (python-chardet) : Installed 95s - restore last position (less 572+) : Installed 95s 95s Config directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.config/offpunk/ 95s User Data directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/ 95s Cache directoy : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.cache/offpunk/ 95s echo quit | offpunk --bookmarks 95s bookmarks (0 items) (local file) 95s bookmarks 95s To render images inline, you need either chafa or timg. 95s Before Chafa 1.10, you also need python-pil 95s Creating config directory /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.config/offpunk/ 95s Welcome to Offpunk! 95s Type `help` to get the list of available command. 95s ON> You can close your screen! 95s 95s # 1. Basic commands 95s cat << END | offpunk 95s version 95s help 95s help abbrevs 95s help add 95s help back 95s help blackbox 95s help bookmarks 95s help cat 95s help cert 95s help copy 95s help find 95s help forward 95s help go 95s help gus 95s help handler 95s help help 95s help history 95s help info 95s help list 95s help ls 95s help mark 95s help move 95s help offline 95s help online 95s help open 95s help redirect 95s help reload 95s help root 95s help save 95s help set 95s help shell echo test 95s help subscribe 95s help sync 95s help theme 95s help tour 95s help url 95s help version 95s help wikipedia 95s help exit 95s help quit 95s quit 95s END 96s To render images inline, you need either chafa or timg. 96s Before Chafa 1.10, you also need python-pil 96s Welcome to Offpunk! 96s Type `help` to get the list of available command. 96s ON> Offpunk 2.3 96s =========== 96s Highly recommended: 96s - python-cryptography : Installed 96s - xdg-open : Installed 96s 96s Web browsing: 96s - python-requests : Installed 96s - python-feedparser : Installed 96s - python-bs4 : Installed 96s - python-readability : Installed 96s - timg 1.3.2+ : Not Installed 96s - chafa : Not Installed 96s - python-pil : Not Installed 96s 96s Nice to have: 96s - python-setproctitle : Installed 96s - X11 clipboard (xsel or xclip) : Not Installed 96s - Wayland clipboard (wl-clipboard): Not Installed 96s 96s Features : 96s - Render images (python-pil, chafa or timg) : Not Installed 96s - Render HTML (bs4, readability) : Installed 96s - Render Atom/RSS feeds (feedparser) : Installed 96s - Connect to http/https (requests) : Installed 96s - Detect text encoding (python-chardet) : Installed 96s - restore last position (less 572+) : Installed 96s 96s Config directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.config/offpunk/ 96s User Data directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/ 96s Cache directoy : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.cache/offpunk/ 96s ON> 96s Documented commands (type help ): 96s ======================================== 96s abbrevs cat go info offline reload shell up 96s add copy gus list online root subscribe url 96s archive exit handler ls open save sync version 96s back find help mark quit search theme view 96s bookmarks forward history move redirect set tour wikipedia 96s 96s ON> Print all Offpunk command abbreviations. 96s ON> Add the current URL to the list specied as argument. 96s If no argument given, URL is added to Bookmarks. 96s ON> Go back to the previous gemini item. 96s ON> *** No help on blackbox 96s ON> Show or access the bookmarks menu. 96s 'bookmarks' shows all bookmarks. 96s 'bookmarks n' navigates immediately to item n in the bookmark menu. 96s Bookmarks are stored using the 'add' command. 96s ON> Run most recently visited item through "cat" command. 96s ON> *** No help on cert 96s ON> Copy the content of the last visited page as gemtext/html in the clipboard. 96s Use with "url" as argument to only copy the adress. 96s Use with "raw" to copy ANSI content as seen in your terminal (with colour codes). 96s Use with "cache" to copy the path of the cached content. 96s Use with "title" to copy the title of the page. 96s Use with "link" to copy a link in the gemtext format to that page with the title. 96s 96s ON> Find in current page by displaying only relevant lines (grep). 96s ON> Go forward to the next gemini item. 96s ON> Go to a gemini URL or marked item. 96s ON> Submit a search query to the geminispace.info search engine. 96s ON> View or set handler commands for different MIME types. 96s ON> ALARM! Recursion detected! ALARM! Prepare to eject! 96s ON> Display history. 96s ON> Display information about current page. 96s ON> Manage list of bookmarked pages. 96s - list : display available lists 96s - list $LIST : display pages in $LIST 96s - list create $NEWLIST : create a new list 96s - list edit $LIST : edit the list 96s - list subscribe $LIST : during sync, add new links found in listed pages to tour 96s - list freeze $LIST : don’t update pages in list during sync if a cache already exists 96s - list normal $LIST : update pages in list during sync but don’t add anything to tour 96s - list delete $LIST : delete a list permanently (a confirmation is required) 96s - list help : print this help 96s See also : 96s - add $LIST (to add current page to $LIST or, by default, to bookmarks) 96s - move $LIST (to add current page to list while removing from all others) 96s - archive (to remove current page from all lists while adding to archives) 96s 96s There’s no "delete" on purpose. The use of "archive" is recommended. 96s 96s The following lists cannot be removed or frozen but can be edited with "list edit" 96s - list archives : contains last 200 archived URLs 96s - history : contains last 200 visisted URLs 96s - to_fetch : contains URLs that will be fetch during the next sync 96s - tour : contains the next URLs to visit during a tour (see "help tour") 96s 96s 96s ON> List contents of current index. 96s Use 'ls -l' to see URLs. 96s ON> Mark the current item with a single letter. This letter can then 96s be passed to the 'go' command to return to the current item later. 96s Think of it like marks in vi: 'mark a'='ma' and 'go a'=''a'. 96s Marks are temporary until shutdown (not saved to disk). 96s ON> move LIST will add the current page to the list LIST. 96s With a major twist: current page will be removed from all other lists. 96s If current page was not in a list, this command is similar to `add LIST`. 96s ON> Use Offpunk offline by only accessing cached content 96s ON> Use Offpunk online with a direct connection 96s ON> Open current item with the configured handler or xdg-open. 96s Uses "open url" to open current URL in a browser. 96s see "handler" command to set your handler. 96s ON> Display and manage the list of redirected URLs. This features is mostly useful to use privacy-friendly frontends for popular websites. 96s ON> Reload the current URL. 96s ON> Go to root selector of the server hosting current item. 96s ON> Save an item to the filesystem. 96s 'save n filename' saves menu item n to the specified filename. 96s 'save filename' saves the last viewed item to the specified filename. 96s 'save n' saves menu item n to an automagic filename. 96s ON> View or set various options. 96s ON> *** No help on shell echo test 96s ON> Subscribe to current page by saving it in the "subscribed" list. 96s If a new link is found in the page during a --sync, the new link is automatically 96s fetched and added to your next tour. 96s To unsubscribe, remove the page from the "subscribed" list. 96s ON> Synchronize all bookmarks lists and URLs from the to_fetch list. 96s - New elements in pages in subscribed lists will be added to tour 96s - Elements in list to_fetch will be retrieved and added to tour 96s - Normal lists will be synchronized and updated 96s - Frozen lists will be fetched only if not present. 96s 96s Before a sync, you can edit the list of URLs that will be fetched with the 96s following command: "list edit to_fetch" 96s 96s Argument : duration of cache validity (in seconds). 96s ON> Change the colors of your rendered text. 96s 96s "theme ELEMENT COLOR" 96s 96s ELEMENT is one of: window_title, window_subtitle, title, 96s subtitle,subsubtitle,link,oneline_link,new_link,image_link,preformatted,blockquote. 96s 96s COLOR is one or many (separated by space) of: bold, faint, italic, underline, black, 96s red, green, yellow, blue, purple, cyan, white. 96s 96s Each color can alternatively be prefaced with "bright_". 96s ON> Add index items as waypoints on a tour, which is basically a FIFO 96s queue of gemini items. 96s 96s `tour` or `t` alone brings you to the next item in your tour. 96s Items can be added with `tour 1 2 3 4` or ranges like `tour 1-4`. 96s All items in current menu can be added with `tour *`. 96s All items in $LIST can be added with `tour $LIST`. 96s Current item can be added back to the end of the tour with `tour .`. 96s Current tour can be listed with `tour ls` and scrubbed with `tour clear`. 96s ON> Print URL of most recently visited item. 96s ON> Display version and system information. 96s ON> Search on wikipedia using the configured Gemini interface. 96s The first word should be the two letters code for the language. 96s Exemple : "wikipedia en Gemini protocol" 96s But you can also use abbreviations to go faster: 96s "wen Gemini protocol". (your abbreviation might be missing, report the bug) 96s The interface used can be modified with the command: 96s "set wikipedia URL" where URL should contains two "%s", the first 96s one used for the language, the second for the search string. 96s ON> Exit Offpunk. 96s ON> Exit Offpunk. 96s ON> You can close your screen! 96s 96s # cert calls a submenu which expects then a blank line to get outside. 96s # find will call the pager 96s # gus and search will launch the client to the search engine. 96s # reload will call the pager 96s # wikipedia will require test to have Internet access 96s cat << END | offpunk 96s abbrevs 96s add 96s archive 96s back 96s blackbox 96s bookmarks 96s cat 96s cert 96s 96s copy 96s forward 96s go 96s handler 96s history 96s info 96s list 96s ls 96s mark 96s move 96s offline 96s online 96s open 96s redirect 96s root 96s save 96s set 96s shell echo test 96s subscribe 96s 96s sync 96s tour 96s theme 96s url 96s exit 96s END 96s To render images inline, you need either chafa or timg. 96s Before Chafa 1.10, you also need python-pil 96s Welcome to Offpunk! 96s Type `help` to get the list of available command. 96s ON> 96s Command Abbreviations: 96s ====================== 96s .. up 96s a add 96s b back 96s bb blackbox 96s bm bookmarks 96s book bookmarks 96s cp copy 96s f forward 96s g go 96s h history 96s hist history 96s l view 96s less view 96s man help 96s mv move 96s n next 96s off offline 96s on online 96s p previous 96s prev previous 96s q quit 96s r reload 96s s save 96s se search 96s / find 96s t tour 96s u up 96s v view 96s w wikipedia 96s wen wikipedia en 96s wfr wikipedia fr 96s wes wikipedia es 96s 96s ON> You need to 'go' somewhere, first 96s ON> You need to 'go' somewhere, first 96s ON> ON> What? 96s ON> bookmarks (0 items) (local file) 96s bookmarks 96s ON> bookmarks (0 items) (local file) 96s bookmarks 96s ON> What? 96s ON> ON> Install xsel/xclip (X11) or wl-clipboard (Wayland) to use copy 96s ON> ON> Install xsel/xclip (X11) or wl-clipboard (Wayland) to get URLs from your clipboard 96s Go where? (hint: simply copy an URL in your clipboard) 96s ON> ON> history (1 items) (local file) 96s history 96s [1] bookmarks (bookmarks), visited on Thu Nov 14 21:09:25 2024 96s  96s ON> history (history) 96s 96s URL : list:///history 96s Mime : text/gemini 96s Cache : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/lists/history.gmi 96s Renderer : t.GemtextRenderer 96s 96s Page is not save in any list 96s ON>  (2 items) (local file) 96s 96s Bookmarks Lists (updated during sync) 96s [1] bookmarks (0 items) 96s 96s System Lists 96s [2] history (1 items) 96s  96s ON> [1] list:///bookmarks 96s [2] list:///history 96s ON> ON> LIST argument is required as the target for your move 96s ON> Offpunk is now offline and will only access cached content 96s OFF> Offpunk is online and will access the network 96s ON> ON> Current redirections: 96s -------------------- 96s *twitter.com -> nitter.net 96s youtube.com -> yewtu.be 96s youtu.be -> yewtu.be 96s *reddit.com -> teddit.net 96s *medium.com -> scribe.rip 96s *advertising.amazon.com -> blocked 96s *google-analytics.com -> blocked 96s *advertising.theguardian.com -> blocked 96s *fbcdn.net -> blocked 96s *linkedin.com -> blocked 96s *licdn.com -> blocked 96s *ads.yahoo.com -> blocked 96s *firebase.google.com -> blocked 96s *facebook.net -> blocked 96s *admanager.google.com -> blocked 96s *tiktok.com -> blocked 96s *doubleclick.net -> blocked 96s *facebook.com -> blocked 96s *google-health-ads.blogspot.com -> blocked 96s *google-webfonts-helper.herokuapp.com -> blocked 96s *advertise.newrepublic.com -> blocked 96s 96s To add new, use "redirect origine.com destination.org" 96s To remove a redirect, use "redirect origine.com NONE" 96s To completely block a website, use "redirect origine.com BLOCK" 96s To block also subdomains, prefix with *: "redirect *origine.com BLOCK" 96s ON> list:/ does not exist 96s ON> Can’t save /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/lists because it’s a folder, not a file 96s ON> accept_bad_ssl_certificates False 96s archives_size 200 96s auto_follow_redirects True 96s beta False 96s debug False 96s default_protocol gemini 96s download_images_first True 96s editor None 96s history_size 200 96s images_mode readable 96s max_size_download 10 96s redirects True 96s search gemini://kennedy.gemi.dev/search?%s 96s short_timeout 5 96s timeout 600 96s tls_mode tofu 96s width 72 96s wikipedia gemini://vault.transjovian.org:1965/search/%s/%s 96s ON> test 96s ON> No feed detected. You can still watch the page : 96s [1] list:/// [Directory] 96s 96s Which feed do you want to subscribe ? > No subscription registered 96s ON> * * * 0 to fetch in bookmarks * * * 96s * * * 0 to fetch in tour * * * 96s End of sync 96s ON> End of tour. 96s ON> window_title set to ['red', 'bold'] 96s window_subtitle set to ['red', 'faint'] 96s title set to ['blue', 'bold', 'underline'] 96s subtitle set to ['blue'] 96s subsubtitle set to ['blue', 'faint'] 96s link set to ['blue', 'faint'] 96s new_link set to ['bold'] 96s oneline_link set to [] 96s image_link set to ['yellow', 'faint'] 96s preformatted set to ['faint'] 96s blockquote set to ['italic'] 96s prompt_on set to ['green'] 96s prompt_off set to ['green'] 96s ON> list:/// 96s ON> You can close your screen! 96s /usr/bin/xdg-open: 1032: www-browser: not found 96s /usr/bin/xdg-open: 1032: links2: not found 96s /usr/bin/xdg-open: 1032: elinks: not found 96s /usr/bin/xdg-open: 1032: links: not found 96s /usr/bin/xdg-open: 1032: lynx: not found 96s /usr/bin/xdg-open: 1032: w3m: not found 96s xdg-open: no method available for opening '/tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/lists' 96s 96s # 2. Checks against gemini file 96s cat << END | offpunk 96s go file://$PWD/index.gmi 96s quit 96s END 96s To render images inline, you need either chafa or timg. 96s Before Chafa 1.10, you also need python-pil 96s Welcome to Offpunk! 96s Type `help` to get the list of available command. 96s ON> index.gmi (7 items) (local file) 96s OFFPUNK - An Offline-First Browser for the Smolnet 96s 96s Offpunk is a command-line browser and feed reader dedicated to browsing 96s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 96s is optimised to be used offline with rare connections but works as well 96s when connected. 96s 96s Offpunk is optimised for reading and supports readability mode, 96s displaying pictures, subscribing to pages or RSS feeds, managing complex 96s lists of bookmarks. Its integrated help and easy commands make it a 96s perfect tool for command-line novices while power-users will be amazed 96s by its shell integration. 96s 96s Offpunk is written in Python 3 by Ploum. It aims to be portable and 96s minimise dependencies, making them optional. It supports 96s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 96s 96s 96s [1] Installing Offpunk and dependencies 96s [2] First steps 96s [3] Configuring Offpunk 96s [4] Using Offpunk offline 96s [5] Lists and subscriptions 96s [6] Shell and OS integrations 96s [7] Roadmap & Contributions 96s 96s  96s ON> You can close your screen! 96s 96s # 3. Test netcache command 96s # 3.0 Basic 96s netcache --help 96s To render images inline, you need either chafa or timg. 96s Before Chafa 1.10, you also need python-pil 96s usage: netcache [-h] [--path] [--offline] [--max-size MAX_SIZE] 96s [--timeout TIMEOUT] [--cache-validity CACHE_VALIDITY] 96s [URL ...] 96s 96s Netcache is a command-line tool to retrieve, cache and access networked 96s content. By default, netcache will returns a cached version of a given URL, 96s downloading it only if not existing. A validity duration, in seconds, can also 96s be given so that netcache downloads the content only if the existing cache is 96s older than the validity. 96s 96s positional arguments: 96s URL download URL and returns the content or the path to a 96s cached version 96s 96s options: 96s -h, --help show this help message and exit 96s --path return path to the cache instead of the content of the 96s cache 96s --offline Do not attempt to download, return cached version or 96s error 96s --max-size MAX_SIZE Cancel download of items above that size (value in 96s Mb). 96s --timeout TIMEOUT Time to wait before cancelling connection (in second). 96s --cache-validity CACHE_VALIDITY 96s maximum age, in second, of the cached version before 96s redownloading a new version 96s # 3.1 Various suboptions 96s OUT="$(netcache --path "file://$PWD/index.gmi")" 97s echo "$OUT" | grep -q "$PWD/index.gmi" 97s # (Note that the file local do not feed the user's cache.) 97s # 3.2 Main functionality 97s netcache "file://$PWD/index.gmi" 97s To render images inline, you need either chafa or timg. 97s Before Chafa 1.10, you also need python-pil 97s # OFFPUNK - An Offline-First Browser for the Smolnet 97s 97s Offpunk is a command-line browser and feed reader dedicated to browsing the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it is optimised to be used offline with rare connections but works as well when connected. 97s 97s Offpunk is optimised for reading and supports readability mode, displaying pictures, subscribing to pages or RSS feeds, managing complex lists of bookmarks. Its integrated help and easy commands make it a perfect tool for command-line novices while power-users will be amazed by its shell integration. 97s 97s Offpunk is written in Python 3 by Ploum. It aims to be portable and minimise dependencies, making them optional. It supports http/https/gopher/gemini/spartan on both IPv4 and IPv6. 97s 97s 97s => install.gmi Installing Offpunk and dependencies 97s => tutorial.gmi First steps 97s => config.gmi Configuring Offpunk 97s => offline.gmi Using Offpunk offline 97s => lists.gmi Lists and subscriptions 97s => shell.gmi Shell and OS integrations 97s => dev.gmi Roadmap & Contributions 97s 97s 97s netcache --offline "file://$PWD/index.gmi" 97s To render images inline, you need either chafa or timg. 97s Before Chafa 1.10, you also need python-pil 97s # OFFPUNK - An Offline-First Browser for the Smolnet 97s 97s Offpunk is a command-line browser and feed reader dedicated to browsing the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it is optimised to be used offline with rare connections but works as well when connected. 97s 97s Offpunk is optimised for reading and supports readability mode, displaying pictures, subscribing to pages or RSS feeds, managing complex lists of bookmarks. Its integrated help and easy commands make it a perfect tool for command-line novices while power-users will be amazed by its shell integration. 97s 97s Offpunk is written in Python 3 by Ploum. It aims to be portable and minimise dependencies, making them optional. It supports http/https/gopher/gemini/spartan on both IPv4 and IPv6. 97s 97s 97s => install.gmi Installing Offpunk and dependencies 97s => tutorial.gmi First steps 97s => config.gmi Configuring Offpunk 97s => offline.gmi Using Offpunk offline 97s => lists.gmi Lists and subscriptions 97s => shell.gmi Shell and OS integrations 97s => dev.gmi Roadmap & Contributions 97s 97s 97s netcache --max-size 1 "file://$PWD/index.gmi" 97s To render images inline, you need either chafa or timg. 97s Before Chafa 1.10, you also need python-pil 97s # OFFPUNK - An Offline-First Browser for the Smolnet 97s 97s Offpunk is a command-line browser and feed reader dedicated to browsing the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it is optimised to be used offline with rare connections but works as well when connected. 97s 97s Offpunk is optimised for reading and supports readability mode, displaying pictures, subscribing to pages or RSS feeds, managing complex lists of bookmarks. Its integrated help and easy commands make it a perfect tool for command-line novices while power-users will be amazed by its shell integration. 97s 97s Offpunk is written in Python 3 by Ploum. It aims to be portable and minimise dependencies, making them optional. It supports http/https/gopher/gemini/spartan on both IPv4 and IPv6. 97s 97s 97s => install.gmi Installing Offpunk and dependencies 97s => tutorial.gmi First steps 97s => config.gmi Configuring Offpunk 97s => offline.gmi Using Offpunk offline 97s => lists.gmi Lists and subscriptions 97s => shell.gmi Shell and OS integrations 97s => dev.gmi Roadmap & Contributions 97s 97s 97s # Note that testing the --timeout looks to need Internet, so we'll skip this 97s # option for now. 97s 97s # 4. Test ansicat 97s # 4.0 Basic 97s ansicat --help 98s To render images inline, you need either chafa or timg. 98s Before Chafa 1.10, you also need python-pil 98s usage: ansicat [-h] 98s [--format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext}] 98s [--mime MIME] [--url [URL ...]] [--mode MODE] 98s [INPUT ...] 98s 98s ansicat is a terminal rendering tool that will render multiple formats (HTML, 98s Gemtext, RSS, Gophermap, Image) into ANSI text and colors. When used on a 98s file, ansicat will try to autodetect the format. When used with standard 98s input, the format must be manually specified. If the content contains links, 98s the original URL of the content can be specified in order to correctly modify 98s relatives links. 98s 98s positional arguments: 98s INPUT Path to the text to render (default to stdin) 98s 98s options: 98s -h, --help show this help message and exit 98s --format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext} 98s Renderer to use. Available: auto, gemtext, html, feed, 98s gopher, image, folder, plaintext 98s --mime MIME Mime of the content to parse 98s --url [URL ...] Original URL of the content 98s --mode MODE Which mode should be used to render: normal (default), 98s full or source. With HTML, the normal mode try to 98s extract the article. 98s # 4.1 Test some ansicat formats and options 98s # WARNING: there is something about autopkgtest environment that causes the two 98s # below commands to crash, but running them by hand works perfectly. 98s # This may indicate fragility in the tool, but it is curious that the 98s # 4.2 section below gave no difficulty: if this crashes too, then it 98s # may be reasonable to skip it as well. 98s #ansicat --format plaintext index.gmi 98s #ansicat --mime text/plain index.gmi 98s # 4.2 Main functionality 98s ansicat --url "file://$PWD/index.gmi" index.gmi 98s To render images inline, you need either chafa or timg. 98s Before Chafa 1.10, you also need python-pil 98s Format or mime should be specified when running with stdin 98s 98s # 5. Test opnk 98s # 5.0 Basic 98s opnk --help 98s To render images inline, you need either chafa or timg. 98s Before Chafa 1.10, you also need python-pil 98s usage: opnk [-h] [--mode MODE] [--cache-validity CACHE_VALIDITY] [INPUT ...] 98s 98s opnk is an universal open command tool that will try to display any file in 98s the pager less after rendering its content with ansicat. If that fails, opnk 98s will fallback to opening the file with xdg-open. If given an URL as input 98s instead of a path, opnk will rely on netcache to get the networked content. 98s 98s positional arguments: 98s INPUT Path to the file or URL to open 98s 98s options: 98s -h, --help show this help message and exit 98s --mode MODE Which mode should be used to render: normal (default), 98s full or source. With HTML, the normal mode try to 98s extract the article. 98s --cache-validity CACHE_VALIDITY 98s maximum age, in second, of the cached version before 98s redownloading a new version 98s # 5.1 Open some things (but stick to not needing Internet). 98s opnk /usr/share/doc/offpunk/copyright 98s copyright (3 items) (local file) 98s Format: https://www.debian.org/doc/packaging-manuals/copyright- 98s format/1.0/ 98s Upstream-Name: Offpunk 98s Upstream-Contact: Lionel "Ploum" Dricot 98s Source: https://git.sr.ht/~lioploum/offpunk/ 98s 98s Files: * 98s Copyright: 2019-2020, Solderpunk 98s 2021-2024, Ploum and contributors. 98s License: AGPL-3 98s Comment: Derived from AV-98[1] by Solderpunk. 98s [1]: https://tildegit.org/solderpunk/AV-98 98s 98s Files: debian/* 98s Copyright: 2023-2024, Étienne Mollier 98s License: AGPL-3 98s 98s License: AGPL-3 98s Copyright (c) 2022, Ploum and contributors. 98s All rights reserved. 98s . 98s Copyright (C) 2007 Free Software Foundation, Inc. 98s Everyone is permitted to copy and distribute verbatim copies 98s of this license document, but changing it is not allowed. 98s . 98s Preamble 98s . 98s The GNU Affero General Public License is a free, copyleft license for 98s software and other kinds of works, specifically designed to ensure 98s cooperation with the community in the case of network server software. 98s . 98s The licenses for most software and other practical works are designed 98s to take away your freedom to share and change the works. By contrast, 98s our General Public Licenses are intended to guarantee your freedom to 98s share and change all versions of a program--to make sure it remains 98s free 98s software for all its users. 98s . 98s When we speak of free software, we are referring to freedom, not 98s price. Our General Public Licenses are designed to make sure that you 98s have the freedom to distribute copies of free software (and charge for 98s them if you wish), that you receive source code or can get it if you 98s want it, that you can change the software or use pieces of it in new 98s free programs, and that you know you can do these things. 98s . 98s Developers that use our General Public Licenses protect your rights 98s with two steps: (1) assert copyright on the software, and (2) offer 98s you this License which gives you legal permission to copy, distribute 98s and/or modify the software. 98s . 98s A secondary benefit of defending all users' freedom is that 98s improvements made in alternate versions of the program, if they 98s receive widespread use, become available for other developers to 98s incorporate. Many developers of free software are heartened and 98s encouraged by the resulting cooperation. However, in the case of 98s software used on network servers, this result may fail to come about. 98s The GNU General Public License permits making a modified version and 98s letting the public access it on a server without ever releasing its 98s source code to the public. 98s . 98s The GNU Affero General Public License is designed specifically to 98s ensure that, in such cases, the modified source code becomes available 98s to the community. It requires the operator of a network server to 98s provide the source code of the modified version running there to the 98s users of that server. Therefore, public use of a modified version, on 98s a publicly accessible server, gives the public access to the source 98s code of the modified version. 98s . 98s An older license, called the Affero General Public License and 98s published by Affero, was designed to accomplish similar goals. This is 98s a different license, not a version of the Affero GPL, but Affero has 98s released a new version of the Affero GPL which permits relicensing 98s under 98s this license. 98s . 98s The precise terms and conditions for copying, distribution and 98s modification follow. 98s . 98s TERMS AND CONDITIONS 98s . 98s 0. Definitions. 98s . 98s "This License" refers to version 3 of the GNU Affero General Public 98s License. 98s . 98s "Copyright" also means copyright-like laws that apply to other kinds of 98s works, such as semiconductor masks. 98s . 98s "The Program" refers to any copyrightable work licensed under this 98s License. Each licensee is addressed as "you". "Licensees" and 98s "recipients" may be individuals or organizations. 98s . 98s To "modify" a work means to copy from or adapt all or part of the work 98s in a fashion requiring copyright permission, other than the making of 98s an 98s exact copy. The resulting work is called a "modified version" of the 98s earlier work or a work "based on" the earlier work. 98s . 98s A "covered work" means either the unmodified Program or a work based 98s on the Program. 98s . 98s To "propagate" a work means to do anything with it that, without 98s permission, would make you directly or secondarily liable for 98s infringement under applicable copyright law, except executing it on a 98s computer or modifying a private copy. Propagation includes copying, 98s distribution (with or without modification), making available to the 98s public, and in some countries other activities as well. 98s . 98s To "convey" a work means any kind of propagation that enables other 98s parties to make or receive copies. Mere interaction with a user 98s through 98s a computer network, with no transfer of a copy, is not conveying. 98s . 98s An interactive user interface displays "Appropriate Legal Notices" 98s to the extent that it includes a convenient and prominently visible 98s feature that (1) displays an appropriate copyright notice, and (2) 98s tells the user that there is no warranty for the work (except to the 98s extent that warranties are provided), that licensees may convey the 98s work under this License, and how to view a copy of this License. If 98s the interface presents a list of user commands or options, such as a 98s menu, a prominent item in the list meets this criterion. 98s . 98s 1. Source Code. 98s . 98s The "source code" for a work means the preferred form of the work 98s for making modifications to it. "Object code" means any non-source 98s form of a work. 98s . 98s A "Standard Interface" means an interface that either is an official 98s standard defined by a recognized standards body, or, in the case of 98s interfaces specified for a particular programming language, one that 98s is widely used among developers working in that language. 98s . 98s The "System Libraries" of an executable work include anything, other 98s than the work as a whole, that (a) is included in the normal form of 98s packaging a Major Component, but which is not part of that Major 98s Component, and (b) serves only to enable use of the work with that 98s Major Component, or to implement a Standard Interface for which an 98s implementation is available to the public in source code form. A 98s "Major Component", in this context, means a major essential component 98s (kernel, window system, and so on) of the specific operating system 98s (if any) on which the executable work runs, or a compiler used to 98s produce the work, or an object code interpreter used to run it. 98s . 98s The "Corresponding Source" for a work in object code form means all 98s the source code needed to generate, install, and (for an executable 98s work) run the object code and to modify the work, including scripts to 98s control those activities. However, it does not include the work's 98s System Libraries, or general-purpose tools or generally available free 98s programs which are used unmodified in performing those activities but 98s which are not part of the work. For example, Corresponding Source 98s includes interface definition files associated with source files for 98s the work, and the source code for shared libraries and dynamically 98s linked subprograms that the work is specifically designed to require, 98s such as by intimate data communication or control flow between those 98s subprograms and other parts of the work. 98s . 98s The Corresponding Source need not include anything that users 98s can regenerate automatically from other parts of the Corresponding 98s Source. 98s . 98s The Corresponding Source for a work in source code form is that 98s same work. 98s . 98s 2. Basic Permissions. 98s . 98s All rights granted under this License are granted for the term of 98s copyright on the Program, and are irrevocable provided the stated 98s conditions are met. This License explicitly affirms your unlimited 98s permission to run the unmodified Program. The output from running a 98s covered work is covered by this License only if the output, given its 98s content, constitutes a covered work. This License acknowledges your 98s rights of fair use or other equivalent, as provided by copyright law. 98s . 98s You may make, run and propagate covered works that you do not 98s convey, without conditions so long as your license otherwise remains 98s in force. You may convey covered works to others for the sole purpose 98s of having them make modifications exclusively for you, or provide you 98s with facilities for running those works, provided that you comply with 98s the terms of this License in conveying all material for which you do 98s not control copyright. Those thus making or running the covered works 98s for you must do so exclusively on your behalf, under your direction 98s and control, on terms that prohibit them from making any copies of 98s your copyrighted material outside their relationship with you. 98s . 98s Conveying under any other circumstances is permitted solely under 98s the conditions stated below. Sublicensing is not allowed; section 10 98s makes it unnecessary. 98s . 98s 3. Protecting Users' Legal Rights From Anti-Circumvention Law. 98s . 98s No covered work shall be deemed part of an effective technological 98s measure under any applicable law fulfilling obligations under article 98s 11 of the WIPO copyright treaty adopted on 20 December 1996, or 98s similar laws prohibiting or restricting circumvention of such 98s measures. 98s . 98s When you convey a covered work, you waive any legal power to forbid 98s circumvention of technological measures to the extent such 98s circumvention 98s is effected by exercising rights under this License with respect to 98s the covered work, and you disclaim any intention to limit operation or 98s modification of the work as a means of enforcing, against the work's 98s users, your or third parties' legal rights to forbid circumvention of 98s technological measures. 98s . 98s 4. Conveying Verbatim Copies. 98s . 98s You may convey verbatim copies of the Program's source code as you 98s receive it, in any medium, provided that you conspicuously and 98s appropriately publish on each copy an appropriate copyright notice; 98s keep intact all notices stating that this License and any 98s non-permissive terms added in accord with section 7 apply to the code; 98s keep intact all notices of the absence of any warranty; and give all 98s recipients a copy of this License along with the Program. 98s . 98s You may charge any price or no price for each copy that you convey, 98s and you may offer support or warranty protection for a fee. 98s . 98s 5. Conveying Modified Source Versions. 98s . 98s You may convey a work based on the Program, or the modifications to 98s produce it from the Program, in the form of source code under the 98s terms of section 4, provided that you also meet all of these 98s conditions: 98s . 98s a) The work must carry prominent notices stating that you modified 98s it, and giving a relevant date. 98s . 98s b) The work must carry prominent notices stating that it is 98s released under this License and any conditions added under section 98s 7. This requirement modifies the requirement in section 4 to 98s "keep intact all notices". 98s . 98s c) You must license the entire work, as a whole, under this 98s License to anyone who comes into possession of a copy. This 98s License will therefore apply, along with any applicable section 7 98s additional terms, to the whole of the work, and all its parts, 98s regardless of how they are packaged. This License gives no 98s permission to license the work in any other way, but it does not 98s invalidate such permission if you have separately received it. 98s . 98s d) If the work has interactive user interfaces, each must display 98s Appropriate Legal Notices; however, if the Program has interactive 98s interfaces that do not display Appropriate Legal Notices, your 98s work need not make them do so. 98s . 98s A compilation of a covered work with other separate and independent 98s works, which are not by their nature extensions of the covered work, 98s and which are not combined with it such as to form a larger program, 98s in or on a volume of a storage or distribution medium, is called an 98s "aggregate" if the compilation and its resulting copyright are not 98s used to limit the access or legal rights of the compilation's users 98s beyond what the individual works permit. Inclusion of a covered work 98s in an aggregate does not cause this License to apply to the other 98s parts of the aggregate. 98s . 98s 6. Conveying Non-Source Forms. 98s . 98s You may convey a covered work in object code form under the terms 98s of sections 4 and 5, provided that you also convey the 98s machine-readable Corresponding Source under the terms of this License, 98s in one of these ways: 98s . 98s a) Convey the object code in, or embodied in, a physical product 98s (including a physical distribution medium), accompanied by the 98s Corresponding Source fixed on a durable physical medium 98s customarily used for software interchange. 98s . 98s b) Convey the object code in, or embodied in, a physical product 98s (including a physical distribution medium), accompanied by a 98s written offer, valid for at least three years and valid for as 98s long as you offer spare parts or customer support for that product 98s model, to give anyone who possesses the object code either (1) a 98s copy of the Corresponding Source for all the software in the 98s product that is covered by this License, on a durable physical 98s medium customarily used for software interchange, for a price no 98s more than your reasonable cost of physically performing this 98s conveying of source, or (2) access to copy the 98s Corresponding Source from a network server at no charge. 98s . 98s c) Convey individual copies of the object code with a copy of the 98s written offer to provide the Corresponding Source. This 98s alternative is allowed only occasionally and noncommercially, and 98s only if you received the object code with such an offer, in accord 98s with subsection 6b. 98s . 98s d) Convey the object code by offering access from a designated 98s place (gratis or for a charge), and offer equivalent access to the 98s Corresponding Source in the same way through the same place at no 98s further charge. You need not require recipients to copy the 98s Corresponding Source along with the object code. If the place to 98s copy the object code is a network server, the Corresponding Source 98s may be on a different server (operated by you or a third party) 98s that supports equivalent copying facilities, provided you maintain 98s clear directions next to the object code saying where to find the 98s Corresponding Source. Regardless of what server hosts the 98s Corresponding Source, you remain obligated to ensure that it is 98s available for as long as needed to satisfy these requirements. 98s . 98s e) Convey the object code using peer-to-peer transmission, provided 98s you inform other peers where the object code and Corresponding 98s Source of the work are being offered to the general public at no 98s charge under subsection 6d. 98s . 98s A separable portion of the object code, whose source code is excluded 98s from the Corresponding Source as a System Library, need not be 98s included in conveying the object code work. 98s . 98s A "User Product" is either (1) a "consumer product", which means any 98s tangible personal property which is normally used for personal, family, 98s or household purposes, or (2) anything designed or sold for 98s incorporation 98s into a dwelling. In determining whether a product is a consumer 98s product, 98s doubtful cases shall be resolved in favor of coverage. For a 98s particular 98s product received by a particular user, "normally used" refers to a 98s typical or common use of that class of product, regardless of the 98s status 98s of the particular user or of the way in which the particular user 98s actually uses, or expects or is expected to use, the product. A 98s product 98s is a consumer product regardless of whether the product has substantial 98s commercial, industrial or non-consumer uses, unless such uses represent 98s the only significant mode of use of the product. 98s . 98s "Installation Information" for a User Product means any methods, 98s procedures, authorization keys, or other information required to 98s install 98s and execute modified versions of a covered work in that User Product 98s from 98s a modified version of its Corresponding Source. The information must 98s suffice to ensure that the continued functioning of the modified object 98s code is in no case prevented or interfered with solely because 98s modification has been made. 98s . 98s If you convey an object code work under this section in, or with, or 98s specifically for use in, a User Product, and the conveying occurs as 98s part of a transaction in which the right of possession and use of the 98s User Product is transferred to the recipient in perpetuity or for a 98s fixed term (regardless of how the transaction is characterized), the 98s Corresponding Source conveyed under this section must be accompanied 98s by the Installation Information. But this requirement does not apply 98s if neither you nor any third party retains the ability to install 98s modified object code on the User Product (for example, the work has 98s been installed in ROM). 98s . 98s The requirement to provide Installation Information does not include a 98s requirement to continue to provide support service, warranty, or 98s updates 98s for a work that has been modified or installed by the recipient, or for 98s the User Product in which it has been modified or installed. Access to 98s a 98s network may be denied when the modification itself materially and 98s adversely affects the operation of the network or violates the rules 98s and 98s protocols for communication across the network. 98s . 98s Corresponding Source conveyed, and Installation Information provided, 98s in accord with this section must be in a format that is publicly 98s documented (and with an implementation available to the public in 98s source code form), and must require no special password or key for 98s unpacking, reading or copying. 98s . 98s 7. Additional Terms. 98s . 98s "Additional permissions" are terms that supplement the terms of this 98s License by making exceptions from one or more of its conditions. 98s Additional permissions that are applicable to the entire Program shall 98s be treated as though they were included in this License, to the extent 98s that they are valid under applicable law. If additional permissions 98s apply only to part of the Program, that part may be used separately 98s under those permissions, but the entire Program remains governed by 98s this License without regard to the additional permissions. 98s . 98s When you convey a copy of a covered work, you may at your option 98s remove any additional permissions from that copy, or from any part of 98s it. (Additional permissions may be written to require their own 98s removal in certain cases when you modify the work.) You may place 98s additional permissions on material, added by you to a covered work, 98s for which you have or can give appropriate copyright permission. 98s . 98s Notwithstanding any other provision of this License, for material you 98s add to a covered work, you may (if authorized by the copyright holders 98s of 98s that material) supplement the terms of this License with terms: 98s . 98s a) Disclaiming warranty or limiting liability differently from the 98s terms of sections 15 and 16 of this License; or 98s . 98s b) Requiring preservation of specified reasonable legal notices or 98s author attributions in that material or in the Appropriate Legal 98s Notices displayed by works containing it; or 98s . 98s c) Prohibiting misrepresentation of the origin of that material, or 98s requiring that modified versions of such material be marked in 98s reasonable ways as different from the original version; or 98s . 98s d) Limiting the use for publicity purposes of names of licensors or 98s authors of the material; or 98s . 98s e) Declining to grant rights under trademark law for use of some 98s trade names, trademarks, or service marks; or 98s . 98s f) Requiring indemnification of licensors and authors of that 98s material by anyone who conveys the material (or modified versions 98s of 98s it) with contractual assumptions of liability to the recipient, for 98s any liability that these contractual assumptions directly impose on 98s those licensors and authors. 98s . 98s All other non-permissive additional terms are considered "further 98s restrictions" within the meaning of section 10. If the Program as you 98s received it, or any part of it, contains a notice stating that it is 98s governed by this License along with a term that is a further 98s restriction, you may remove that term. If a license document contains 98s a further restriction but permits relicensing or conveying under this 98s License, you may add to a covered work material governed by the terms 98s of that license document, provided that the further restriction does 98s not survive such relicensing or conveying. 98s . 98s If you add terms to a covered work in accord with this section, you 98s must place, in the relevant source files, a statement of the 98s additional terms that apply to those files, or a notice indicating 98s where to find the applicable terms. 98s . 98s Additional terms, permissive or non-permissive, may be stated in the 98s form of a separately written license, or stated as exceptions; 98s the above requirements apply either way. 98s . 98s 8. Termination. 98s . 98s You may not propagate or modify a covered work except as expressly 98s provided under this License. Any attempt otherwise to propagate or 98s modify it is void, and will automatically terminate your rights under 98s this License (including any patent licenses granted under the third 98s paragraph of section 11). 98s . 98s However, if you cease all violation of this License, then your 98s license from a particular copyright holder is reinstated (a) 98s provisionally, unless and until the copyright holder explicitly and 98s finally terminates your license, and (b) permanently, if the copyright 98s holder fails to notify you of the violation by some reasonable means 98s prior to 60 days after the cessation. 98s . 98s Moreover, your license from a particular copyright holder is 98s reinstated permanently if the copyright holder notifies you of the 98s violation by some reasonable means, this is the first time you have 98s received notice of violation of this License (for any work) from that 98s copyright holder, and you cure the violation prior to 30 days after 98s your receipt of the notice. 98s . 98s Termination of your rights under this section does not terminate the 98s licenses of parties who have received copies or rights from you under 98s this License. If your rights have been terminated and not permanently 98s reinstated, you do not qualify to receive new licenses for the same 98s material under section 10. 98s . 98s 9. Acceptance Not Required for Having Copies. 98s . 98s You are not required to accept this License in order to receive or 98s run a copy of the Program. Ancillary propagation of a covered work 98s occurring solely as a consequence of using peer-to-peer transmission 98s to receive a copy likewise does not require acceptance. However, 98s nothing other than this License grants you permission to propagate or 98s modify any covered work. These actions infringe copyright if you do 98s not accept this License. Therefore, by modifying or propagating a 98s covered work, you indicate your acceptance of this License to do so. 98s . 98s 10. Automatic Licensing of Downstream Recipients. 98s . 98s Each time you convey a covered work, the recipient automatically 98s receives a license from the original licensors, to run, modify and 98s propagate that work, subject to this License. You are not responsible 98s for enforcing compliance by third parties with this License. 98s . 98s An "entity transaction" is a transaction transferring control of an 98s organization, or substantially all assets of one, or subdividing an 98s organization, or merging organizations. If propagation of a covered 98s work results from an entity transaction, each party to that 98s transaction who receives a copy of the work also receives whatever 98s licenses to the work the party's predecessor in interest had or could 98s give under the previous paragraph, plus a right to possession of the 98s Corresponding Source of the work from the predecessor in interest, if 98s the predecessor has it or can get it with reasonable efforts. 98s . 98s You may not impose any further restrictions on the exercise of the 98s rights granted or affirmed under this License. For example, you may 98s not impose a license fee, royalty, or other charge for exercise of 98s rights granted under this License, and you may not initiate litigation 98s (including a cross-claim or counterclaim in a lawsuit) alleging that 98s any patent claim is infringed by making, using, selling, offering for 98s sale, or importing the Program or any portion of it. 98s . 98s 11. Patents. 98s . 98s A "contributor" is a copyright holder who authorizes use under this 98s License of the Program or a work on which the Program is based. The 98s work thus licensed is called the contributor's "contributor version". 98s . 98s A contributor's "essential patent claims" are all patent claims 98s owned or controlled by the contributor, whether already acquired or 98s hereafter acquired, that would be infringed by some manner, permitted 98s by this License, of making, using, or selling its contributor version, 98s but do not include claims that would be infringed only as a 98s consequence of further modification of the contributor version. For 98s purposes of this definition, "control" includes the right to grant 98s patent sublicenses in a manner consistent with the requirements of 98s this License. 98s . 98s Each contributor grants you a non-exclusive, worldwide, royalty-free 98s patent license under the contributor's essential patent claims, to 98s make, use, sell, offer for sale, import and otherwise run, modify and 98s propagate the contents of its contributor version. 98s . 98s In the following three paragraphs, a "patent license" is any express 98s agreement or commitment, however denominated, not to enforce a patent 98s (such as an express permission to practice a patent or covenant not to 98s sue for patent infringement). To "grant" such a patent license to a 98s party means to make such an agreement or commitment not to enforce a 98s patent against the party. 98s . 98s If you convey a covered work, knowingly relying on a patent license, 98s and the Corresponding Source of the work is not available for anyone 98s to copy, free of charge and under the terms of this License, through a 98s publicly available network server or other readily accessible means, 98s then you must either (1) cause the Corresponding Source to be so 98s available, or (2) arrange to deprive yourself of the benefit of the 98s patent license for this particular work, or (3) arrange, in a manner 98s consistent with the requirements of this License, to extend the patent 98s license to downstream recipients. "Knowingly relying" means you have 98s actual knowledge that, but for the patent license, your conveying the 98s covered work in a country, or your recipient's use of the covered work 98s in a country, would infringe one or more identifiable patents in that 98s country that you have reason to believe are valid. 98s . 98s If, pursuant to or in connection with a single transaction or 98s arrangement, you convey, or propagate by procuring conveyance of, a 98s covered work, and grant a patent license to some of the parties 98s receiving the covered work authorizing them to use, propagate, modify 98s or convey a specific copy of the covered work, then the patent license 98s you grant is automatically extended to all recipients of the covered 98s work and works based on it. 98s . 98s A patent license is "discriminatory" if it does not include within 98s the scope of its coverage, prohibits the exercise of, or is 98s conditioned on the non-exercise of one or more of the rights that are 98s specifically granted under this License. You may not convey a covered 98s work if you are a party to an arrangement with a third party that is 98s in the business of distributing software, under which you make payment 98s to the third party based on the extent of your activity of conveying 98s the work, and under which the third party grants, to any of the 98s parties who would receive the covered work from you, a discriminatory 98s patent license (a) in connection with copies of the covered work 98s conveyed by you (or copies made from those copies), or (b) primarily 98s for and in connection with specific products or compilations that 98s contain the covered work, unless you entered into that arrangement, 98s or that patent license was granted, prior to 28 March 2007. 98s . 98s Nothing in this License shall be construed as excluding or limiting 98s any implied license or other defenses to infringement that may 98s otherwise be available to you under applicable patent law. 98s . 98s 12. No Surrender of Others' Freedom. 98s . 98s If conditions are imposed on you (whether by court order, agreement or 98s otherwise) that contradict the conditions of this License, they do not 98s excuse you from the conditions of this License. If you cannot convey a 98s covered work so as to satisfy simultaneously your obligations under 98s this 98s License and any other pertinent obligations, then as a consequence you 98s may 98s not convey it at all. For example, if you agree to terms that obligate 98s you 98s to collect a royalty for further conveying from those to whom you 98s convey 98s the Program, the only way you could satisfy both those terms and this 98s License would be to refrain entirely from conveying the Program. 98s . 98s 13. Remote Network Interaction; Use with the GNU General Public 98s License. 98s . 98s Notwithstanding any other provision of this License, if you modify the 98s Program, your modified version must prominently offer all users 98s interacting with it remotely through a computer network (if your 98s version 98s supports such interaction) an opportunity to receive the Corresponding 98s Source of your version by providing access to the Corresponding Source 98s from a network server at no charge, through some standard or customary 98s means of facilitating copying of software. This Corresponding Source 98s shall include the Corresponding Source for any work covered by version 98s 3 98s of the GNU General Public License that is incorporated pursuant to the 98s following paragraph. 98s . 98s Notwithstanding any other provision of this License, you have 98s permission to link or combine any covered work with a work licensed 98s under version 3 of the GNU General Public License into a single 98s combined work, and to convey the resulting work. The terms of this 98s License will continue to apply to the part which is the covered work, 98s but the work with which it is combined will remain governed by version 98s 3 of the GNU General Public License. 98s . 98s 14. Revised Versions of this License. 98s . 98s The Free Software Foundation may publish revised and/or new versions of 98s the GNU Affero General Public License from time to time. Such new 98s versions 98s will be similar in spirit to the present version, but may differ in 98s detail to 98s address new problems or concerns. 98s . 98s Each version is given a distinguishing version number. If the 98s Program specifies that a certain numbered version of the GNU Affero 98s General 98s Public License "or any later version" applies to it, you have the 98s option of following the terms and conditions either of that numbered 98s version or of any later version published by the Free Software 98s Foundation. If the Program does not specify a version number of the 98s GNU Affero General Public License, you may choose any version ever 98s published 98s by the Free Software Foundation. 98s . 98s If the Program specifies that a proxy can decide which future 98s versions of the GNU Affero General Public License can be used, that 98s proxy's 98s public statement of acceptance of a version permanently authorizes you 98s to choose that version for the Program. 98s . 98s Later license versions may give you additional or different 98s permissions. However, no additional obligations are imposed on any 98s author or copyright holder as a result of your choosing to follow a 98s later version. 98s . 98s 15. Disclaimer of Warranty. 98s . 98s THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY 98s APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT 98s HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT 98s WARRANTY 98s OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED 98s TO, 98s THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 98s PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE 98s PROGRAM 98s IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST 98s OF 98s ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 98s . 98s 16. Limitation of Liability. 98s . 98s IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 98s WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR 98s CONVEYS 98s THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING 98s ANY 98s GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF 98s THE 98s USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS 98s OF 98s DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR 98s THIRD 98s PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 98s PROGRAMS), 98s EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY 98s OF 98s SUCH DAMAGES. 98s . 98s 17. Interpretation of Sections 15 and 16. 98s . 98s If the disclaimer of warranty and limitation of liability provided 98s above cannot be given local legal effect according to their terms, 98s reviewing courts shall apply local law that most closely approximates 98s an absolute waiver of all civil liability in connection with the 98s Program, unless a warranty or assumption of liability accompanies a 98s copy of the Program in return for a fee. 98s . 98s END OF TERMS AND CONDITIONS 98s . 98s How to Apply These Terms to Your New Programs 98s . 98s If you develop a new program, and you want it to be of the greatest 98s possible use to the public, the best way to achieve this is to make it 98s free software which everyone can redistribute and change under these 98s terms. 98s . 98s To do so, attach the following notices to the program. It is safest 98s to attach them to the start of each source file to most effectively 98s state the exclusion of warranty; and each file should have at least 98s the "copyright" line and a pointer to where the full notice is found. 98s . 98s 98s Copyright (C) 98s . 98s This program is free software: you can redistribute it and/or 98s modify 98s it under the terms of the GNU Affero General Public License as 98s published by 98s the Free Software Foundation, either version 3 of the License, or 98s (at your option) any later version. 98s . 98s This program is distributed in the hope that it will be useful, 98s but WITHOUT ANY WARRANTY; without even the implied warranty of 98s MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 98s GNU Affero General Public License for more details. 98s . 98s You should have received a copy of the GNU Affero General Public 98s License 98s along with this program. If not, see 98s . 98s . 98s Also add information on how to contact you by electronic and paper 98s mail. 98s . 98s If your software can interact with users remotely through a computer 98s network, you should also make sure that it provides a way for users to 98s get its source. For example, if your program is a web application, its 98s interface could display a "Source" link that leads users to an archive 98s of the code. There are many ways you could offer source, and different 98s solutions will be better for different programs; see section 13 for the 98s specific requirements. 98s . 98s You should also get your employer (if you work as a programmer) or 98s school, 98s if any, to sign a "copyright disclaimer" for the program, if necessary. 98s For more information on this, and how to apply and follow the GNU AGPL, 98s see 98s . 98s To render images inline, you need either chafa or timg. 98s Before Chafa 1.10, you also need python-pil 99s # 5.2 Main functionality 99s opnk index.gmi 99s index.gmi (7 items) (local file) 99s OFFPUNK - An Offline-First Browser for the Smolnet 99s 99s Offpunk is a command-line browser and feed reader dedicated to browsing 99s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 99s is optimised to be used offline with rare connections but works as well 99s when connected. 99s 99s Offpunk is optimised for reading and supports readability mode, 99s displaying pictures, subscribing to pages or RSS feeds, managing complex 99s lists of bookmarks. Its integrated help and easy commands make it a 99s perfect tool for command-line novices while power-users will be amazed 99s by its shell integration. 99s 99s Offpunk is written in Python 3 by Ploum. It aims to be portable and 99s minimise dependencies, making them optional. It supports 99s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 99s 99s 99s [1] Installing Offpunk and dependencies 99s [2] First steps 99s [3] Configuring Offpunk 99s [4] Using Offpunk offline 99s [5] Lists and subscriptions 99s [6] Shell and OS integrations 99s [7] Roadmap & Contributions 99s 99s  99s To render images inline, you need either chafa or timg. 99s Before Chafa 1.10, you also need python-pil 99s autopkgtest [21:09:29]: test run-commands: -----------------------] 100s autopkgtest [21:09:30]: test run-commands: - - - - - - - - - - results - - - - - - - - - - 100s run-commands PASS 100s autopkgtest [21:09:30]: test run-commands: preparing testbed 104s Note, using file '/tmp/autopkgtest.zCvvc0/5-autopkgtest-satdep.dsc' to get the build dependencies 104s Reading package lists... 104s Building dependency tree... 104s Reading state information... 104s Starting pkgProblemResolver with broken count: 0 104s Starting 2 pkgProblemResolver with broken count: 0 104s Done 105s The following NEW packages will be installed: 105s chafa fontconfig fontconfig-config fonts-dejavu-core fonts-dejavu-mono 105s libabsl20230802 libaom3 libasound2-data libasound2t64 libass9 libasyncns0 105s libavc1394-0 libavcodec61 libavdevice61 libavfilter10 libavformat61 105s libavif16 libavutil59 libblas3 libbluray2 libbs2b0 libcaca0 105s libcairo-gobject2 libcairo2 libcdio-cdda2t64 libcdio-paranoia2t64 105s libcdio19t64 libchafa0t64 libchromaprint1 libcjson1 libcodec2-1.2 libdatrie1 105s libdav1d7 libdc1394-25 libde265-0 libdecor-0-0 libdeflate0 libdrm-amdgpu1 105s libdrm-intel1 libdrm-radeon1 libdvdnav4 libdvdread8t64 libexif12 105s libfftw3-double3 libflac12t64 libflite1 libfontconfig1 libgav1-1 libgbm1 105s libgdk-pixbuf-2.0-0 libgdk-pixbuf2.0-common libgfortran5 libgif7 libgl1 105s libgl1-mesa-dri libglapi-mesa libglvnd0 libglx-mesa0 libglx0 libgme0 105s libgraphicsmagick++-q16-12t64 libgraphicsmagick-q16-3t64 libgraphite2-3 105s libgsm1 libharfbuzz0b libheif-plugin-aomdec libheif-plugin-libde265 libheif1 105s libhwy1t64 libice6 libiec61883-0 libjack-jackd2-0 libjbig0 libjpeg-turbo8 105s libjpeg8 libjxl0.10 liblapack3 liblcms2-2 liblerc4 liblilv-0-0 105s libmbedcrypto7t64 libmp3lame0 libmpg123-0t64 libmysofa1 libnorm1t64 libogg0 105s libopenal-data libopenal1 libopenjp2-7 libopenmpt0t64 libopenslide0 libopus0 105s libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpciaccess0 105s libpgm-5.3-0t64 libpixman-1-0 libplacebo349 libpocketsphinx3 105s libpoppler-glib8t64 libpoppler140 libpostproc58 libpulse0 librabbitmq4 105s librav1e0.7 libraw1394-11 librist4 librsvg2-2 librubberband2 libsamplerate0 105s libsdl2-2.0-0 libserd-0-0 libsharpyuv0 libshine3 libsixel1 libsm6 105s libsnappy1v5 libsndfile1 libsndio7.0 libsodium23 libsord-0-0 libsoxr0 105s libspeex1 libsphinxbase3t64 libsratom-0-0 libsrt1.5-gnutls libssh-4 105s libsvtav1enc2 libswresample5 libswscale8 libthai-data libthai0 libtheora0 105s libtiff6 libturbojpeg libtwolame0 libudfread0 libunibreak6 libva-drm2 105s libva-x11-2 libva2 libvdpau1 libvidstab1.1 libvorbis0a libvorbisenc2 105s libvorbisfile3 libvpl2 libvpx9 libvulkan1 libwayland-client0 105s libwayland-cursor0 libwayland-egl1 libwayland-server0 libwebp7 libwebpdemux2 105s libwebpmux3 libwmflite-0.2-7 libx11-xcb1 libx264-164 libx265-209 105s libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-randr0 105s libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb-xfixes0 105s libxcursor1 libxfixes3 libxi6 libxmu6 libxrandr2 libxrender1 libxshmfence1 105s libxss1 libxt6t64 libxv1 libxvidcore4 libxxf86vm1 libyuv0 libzimg2 105s libzix-0-0 libzmq5 libzvbi-common libzvbi0t64 mesa-libgallium 105s ocl-icd-libopencl1 timg wl-clipboard x11-common xclip xsel 105s 0 upgraded, 196 newly installed, 0 to remove and 0 not upgraded. 105s Need to get 94.0 MB of archives. 105s After this operation, 275 MB of additional disk space will be used. 105s Get:1 http://ftpmaster.internal/ubuntu plucky/universe amd64 libchafa0t64 amd64 1.14.5-1 [208 kB] 105s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libaom3 amd64 3.11.0~rc1-1 [2762 kB] 106s Get:3 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdav1d7 amd64 1.5.0-1 [732 kB] 106s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libabsl20230802 amd64 20230802.1-4ubuntu1 [499 kB] 106s Get:5 http://ftpmaster.internal/ubuntu plucky/universe amd64 libgav1-1 amd64 0.19.0-2 [376 kB] 106s Get:6 http://ftpmaster.internal/ubuntu plucky/universe amd64 librav1e0.7 amd64 0.7.1-7 [1007 kB] 106s Get:7 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsvtav1enc2 amd64 2.2.1+dfsg-2 [2420 kB] 106s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libjpeg-turbo8 amd64 2.1.5-2ubuntu2 [150 kB] 106s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libjpeg8 amd64 8c-2ubuntu11 [2148 B] 106s Get:10 http://ftpmaster.internal/ubuntu plucky/universe amd64 libyuv0 amd64 0.0.1888.20241107-1 [352 kB] 106s Get:11 http://ftpmaster.internal/ubuntu plucky/universe amd64 libavif16 amd64 1.1.1-1ubuntu1 [113 kB] 106s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 fonts-dejavu-mono all 2.37-8 [502 kB] 106s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 fonts-dejavu-core all 2.37-8 [835 kB] 106s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 fontconfig-config amd64 2.15.0-1.1ubuntu2 [37.3 kB] 106s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libfontconfig1 amd64 2.15.0-1.1ubuntu2 [139 kB] 106s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libpixman-1-0 amd64 0.44.0-3 [427 kB] 106s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-render0 amd64 1.17.0-2 [16.2 kB] 106s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-shm0 amd64 1.17.0-2 [5758 B] 106s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 libxrender1 amd64 1:0.9.10-1.1build1 [19.0 kB] 106s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 libcairo2 amd64 1.18.2-2 [569 kB] 106s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libcairo-gobject2 amd64 1.18.2-2 [127 kB] 106s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 libgdk-pixbuf2.0-common all 2.42.12+dfsg-1 [7888 B] 106s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 libdeflate0 amd64 1.22-1 [64.5 kB] 106s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 libjbig0 amd64 2.1-6.1ubuntu2 [29.7 kB] 106s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 liblerc4 amd64 4.0.0+ds-4ubuntu2 [179 kB] 106s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 libsharpyuv0 amd64 1.4.0-0.1 [17.5 kB] 106s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 libwebp7 amd64 1.4.0-0.1 [231 kB] 106s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 libtiff6 amd64 4.5.1+git230720-4ubuntu4 [200 kB] 106s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 libgdk-pixbuf-2.0-0 amd64 2.42.12+dfsg-1 [147 kB] 106s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 fontconfig amd64 2.15.0-1.1ubuntu2 [180 kB] 106s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 libgraphite2-3 amd64 1.3.14-2ubuntu1 [73.1 kB] 106s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 libharfbuzz0b amd64 10.0.1-1 [540 kB] 106s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 libthai-data all 0.1.29-2build1 [158 kB] 106s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 libdatrie1 amd64 0.2.13-3build1 [19.0 kB] 106s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 libthai0 amd64 0.1.29-2build1 [18.9 kB] 106s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 libpango-1.0-0 amd64 1.54.0+ds-3 [252 kB] 106s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 libpangoft2-1.0-0 amd64 1.54.0+ds-3 [51.6 kB] 106s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 libpangocairo-1.0-0 amd64 1.54.0+ds-3 [29.1 kB] 106s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 librsvg2-2 amd64 2.59.1+dfsg-1 [1814 kB] 106s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 libwebpdemux2 amd64 1.4.0-0.1 [12.4 kB] 106s Get:41 http://ftpmaster.internal/ubuntu plucky/universe amd64 chafa amd64 1.14.5-1 [95.5 kB] 106s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 libasound2-data all 1.2.12-1 [21.0 kB] 106s Get:43 http://ftpmaster.internal/ubuntu plucky/main amd64 libasound2t64 amd64 1.2.12-1 [394 kB] 106s Get:44 http://ftpmaster.internal/ubuntu plucky/universe amd64 libunibreak6 amd64 6.1-2 [25.7 kB] 106s Get:45 http://ftpmaster.internal/ubuntu plucky/universe amd64 libass9 amd64 1:0.17.3-1 [111 kB] 106s Get:46 http://ftpmaster.internal/ubuntu plucky/main amd64 libasyncns0 amd64 0.8-6build4 [11.3 kB] 106s Get:47 http://ftpmaster.internal/ubuntu plucky/universe amd64 libva2 amd64 2.22.0-1 [72.7 kB] 106s Get:48 http://ftpmaster.internal/ubuntu plucky/universe amd64 libva-drm2 amd64 2.22.0-1 [7232 B] 106s Get:49 http://ftpmaster.internal/ubuntu plucky/main amd64 libx11-xcb1 amd64 2:1.8.10-2 [7944 B] 106s Get:50 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-dri3-0 amd64 1.17.0-2 [7508 B] 106s Get:51 http://ftpmaster.internal/ubuntu plucky/main amd64 libxfixes3 amd64 1:6.0.0-2build1 [10.8 kB] 106s Get:52 http://ftpmaster.internal/ubuntu plucky/universe amd64 libva-x11-2 amd64 2.22.0-1 [12.1 kB] 106s Get:53 http://ftpmaster.internal/ubuntu plucky/main amd64 libvdpau1 amd64 1.5-3 [27.8 kB] 106s Get:54 http://ftpmaster.internal/ubuntu plucky/universe amd64 libvpl2 amd64 1:2.13.0-1 [129 kB] 106s Get:55 http://ftpmaster.internal/ubuntu plucky/universe amd64 ocl-icd-libopencl1 amd64 2.3.2-1build1 [38.5 kB] 106s Get:56 http://ftpmaster.internal/ubuntu plucky/universe amd64 libavutil59 amd64 7:7.1-3ubuntu1 [415 kB] 106s Get:57 http://ftpmaster.internal/ubuntu plucky/universe amd64 libcodec2-1.2 amd64 1.2.0-2build1 [8998 kB] 107s Get:58 http://ftpmaster.internal/ubuntu plucky/universe amd64 libgsm1 amd64 1.0.22-1build1 [27.8 kB] 107s Get:59 http://ftpmaster.internal/ubuntu plucky/main amd64 libgif7 amd64 5.2.2-1ubuntu1 [35.2 kB] 107s Get:60 http://ftpmaster.internal/ubuntu plucky/universe amd64 libhwy1t64 amd64 1.2.0-3ubuntu3 [734 kB] 107s Get:61 http://ftpmaster.internal/ubuntu plucky/main amd64 liblcms2-2 amd64 2.16-2 [212 kB] 107s Get:62 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjxl0.10 amd64 0.10.3-4ubuntu1 [1150 kB] 107s Get:63 http://ftpmaster.internal/ubuntu plucky/main amd64 libmp3lame0 amd64 3.100-6build1 [142 kB] 107s Get:64 http://ftpmaster.internal/ubuntu plucky/main amd64 libopenjp2-7 amd64 2.5.0-2ubuntu1 [184 kB] 107s Get:65 http://ftpmaster.internal/ubuntu plucky/main amd64 libopus0 amd64 1.5.2-2 [2913 kB] 107s Get:66 http://ftpmaster.internal/ubuntu plucky/universe amd64 libshine3 amd64 3.1.1-2build1 [23.2 kB] 107s Get:67 http://ftpmaster.internal/ubuntu plucky/main amd64 libsnappy1v5 amd64 1.2.1-1 [30.4 kB] 107s Get:68 http://ftpmaster.internal/ubuntu plucky/main amd64 libspeex1 amd64 1.2.1-3 [86.7 kB] 107s Get:69 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsoxr0 amd64 0.1.3-4build3 [80.0 kB] 107s Get:70 http://ftpmaster.internal/ubuntu plucky/universe amd64 libswresample5 amd64 7:7.1-3ubuntu1 [63.8 kB] 107s Get:71 http://ftpmaster.internal/ubuntu plucky/main amd64 libogg0 amd64 1.3.5-3build1 [22.7 kB] 107s Get:72 http://ftpmaster.internal/ubuntu plucky/main amd64 libtheora0 amd64 1.1.1+dfsg.1-17 [211 kB] 107s Get:73 http://ftpmaster.internal/ubuntu plucky/main amd64 libtwolame0 amd64 0.4.0-2build3 [52.3 kB] 107s Get:74 http://ftpmaster.internal/ubuntu plucky/main amd64 libvorbis0a amd64 1.3.7-2 [98.4 kB] 107s Get:75 http://ftpmaster.internal/ubuntu plucky/main amd64 libvorbisenc2 amd64 1.3.7-2 [80.8 kB] 107s Get:76 http://ftpmaster.internal/ubuntu plucky/main amd64 libvpx9 amd64 1.14.1-1ubuntu1 [1146 kB] 107s Get:77 http://ftpmaster.internal/ubuntu plucky/main amd64 libwebpmux3 amd64 1.4.0-0.1 [25.8 kB] 107s Get:78 http://ftpmaster.internal/ubuntu plucky/universe amd64 libx264-164 amd64 2:0.164.3108+git31e19f9-2build1 [609 kB] 107s Get:79 http://ftpmaster.internal/ubuntu plucky/universe amd64 libx265-209 amd64 3.6-3 [1253 kB] 107s Get:80 http://ftpmaster.internal/ubuntu plucky/universe amd64 libxvidcore4 amd64 2:1.3.7-1build1 [219 kB] 107s Get:81 http://ftpmaster.internal/ubuntu plucky/universe amd64 libzvbi-common all 0.2.42-2 [42.4 kB] 107s Get:82 http://ftpmaster.internal/ubuntu plucky/universe amd64 libzvbi0t64 amd64 0.2.42-2 [261 kB] 107s Get:83 http://ftpmaster.internal/ubuntu plucky/universe amd64 libavcodec61 amd64 7:7.1-3ubuntu1 [6279 kB] 107s Get:84 http://ftpmaster.internal/ubuntu plucky/main amd64 libraw1394-11 amd64 2.1.2-2build3 [26.2 kB] 107s Get:85 http://ftpmaster.internal/ubuntu plucky/main amd64 libavc1394-0 amd64 0.5.4-5build3 [15.4 kB] 107s Get:86 http://ftpmaster.internal/ubuntu plucky/universe amd64 libudfread0 amd64 1.1.2-1build1 [19.0 kB] 107s Get:87 http://ftpmaster.internal/ubuntu plucky/universe amd64 libbluray2 amd64 1:1.3.4-1build1 [159 kB] 107s Get:88 http://ftpmaster.internal/ubuntu plucky/universe amd64 libchromaprint1 amd64 1.5.1-6 [31.7 kB] 107s Get:89 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdvdread8t64 amd64 6.1.3-2 [58.5 kB] 107s Get:90 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdvdnav4 amd64 6.1.1-3build1 [39.5 kB] 107s Get:91 http://ftpmaster.internal/ubuntu plucky/universe amd64 libgme0 amd64 0.6.3-7build1 [134 kB] 107s Get:92 http://ftpmaster.internal/ubuntu plucky/main amd64 libmpg123-0t64 amd64 1.32.9-1 [191 kB] 107s Get:93 http://ftpmaster.internal/ubuntu plucky/main amd64 libvorbisfile3 amd64 1.3.7-2 [17.1 kB] 107s Get:94 http://ftpmaster.internal/ubuntu plucky/universe amd64 libopenmpt0t64 amd64 0.7.9-1 [676 kB] 107s Get:95 http://ftpmaster.internal/ubuntu plucky/main amd64 librabbitmq4 amd64 0.14.0-1 [36.6 kB] 107s Get:96 http://ftpmaster.internal/ubuntu plucky/universe amd64 libcjson1 amd64 1.7.18-3 [22.1 kB] 107s Get:97 http://ftpmaster.internal/ubuntu plucky/universe amd64 libmbedcrypto7t64 amd64 2.28.8-1 [209 kB] 107s Get:98 http://ftpmaster.internal/ubuntu plucky/universe amd64 librist4 amd64 0.2.10+dfsg-2 [74.9 kB] 107s Get:99 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsrt1.5-gnutls amd64 1.5.3-2 [328 kB] 107s Get:100 http://ftpmaster.internal/ubuntu plucky/main amd64 libssh-4 amd64 0.11.1-1 [221 kB] 107s Get:101 http://ftpmaster.internal/ubuntu plucky/universe amd64 libnorm1t64 amd64 1.5.9+dfsg-3.1build1 [154 kB] 107s Get:102 http://ftpmaster.internal/ubuntu plucky/universe amd64 libpgm-5.3-0t64 amd64 5.3.128~dfsg-2.1build1 [167 kB] 108s Get:103 http://ftpmaster.internal/ubuntu plucky/main amd64 libsodium23 amd64 1.0.18-1build3 [161 kB] 108s Get:104 http://ftpmaster.internal/ubuntu plucky/universe amd64 libzmq5 amd64 4.3.5-1build2 [260 kB] 108s Get:105 http://ftpmaster.internal/ubuntu plucky/universe amd64 libavformat61 amd64 7:7.1-3ubuntu1 [1219 kB] 108s Get:106 http://ftpmaster.internal/ubuntu plucky/universe amd64 libbs2b0 amd64 3.1.0+dfsg-8 [10.5 kB] 108s Get:107 http://ftpmaster.internal/ubuntu plucky/universe amd64 libflite1 amd64 2.2-6build3 [13.6 MB] 109s Get:108 http://ftpmaster.internal/ubuntu plucky/universe amd64 libserd-0-0 amd64 0.32.2-1 [43.6 kB] 109s Get:109 http://ftpmaster.internal/ubuntu plucky/universe amd64 libzix-0-0 amd64 0.4.2-2build1 [23.6 kB] 109s Get:110 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsord-0-0 amd64 0.16.16-2build1 [15.8 kB] 109s Get:111 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsratom-0-0 amd64 0.6.16-1build1 [17.3 kB] 109s Get:112 http://ftpmaster.internal/ubuntu plucky/universe amd64 liblilv-0-0 amd64 0.24.24-2 [40.8 kB] 109s Get:113 http://ftpmaster.internal/ubuntu plucky/universe amd64 libmysofa1 amd64 1.3.2+dfsg-2ubuntu2 [1158 kB] 109s Get:114 http://ftpmaster.internal/ubuntu plucky/main amd64 libvulkan1 amd64 1.3.296.0-1 [143 kB] 109s Get:115 http://ftpmaster.internal/ubuntu plucky/universe amd64 libplacebo349 amd64 7.349.0-2 [2679 kB] 109s Get:116 http://ftpmaster.internal/ubuntu plucky/main amd64 libblas3 amd64 3.12.0-3build2 [247 kB] 109s Get:117 http://ftpmaster.internal/ubuntu plucky/main amd64 libgfortran5 amd64 14.2.0-8ubuntu1 [909 kB] 110s Get:118 http://ftpmaster.internal/ubuntu plucky/main amd64 liblapack3 amd64 3.12.0-3build2 [2668 kB] 110s Get:119 http://ftpmaster.internal/ubuntu plucky/main amd64 libflac12t64 amd64 1.4.3+ds-2.1ubuntu2 [197 kB] 110s Get:120 http://ftpmaster.internal/ubuntu plucky/main amd64 libsndfile1 amd64 1.2.2-1ubuntu5 [208 kB] 110s Get:121 http://ftpmaster.internal/ubuntu plucky/main amd64 libpulse0 amd64 1:16.1+dfsg1-5.1ubuntu1 [292 kB] 110s Get:122 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsphinxbase3t64 amd64 0.8+5prealpha+1-18 [143 kB] 110s Get:123 http://ftpmaster.internal/ubuntu plucky/universe amd64 libpocketsphinx3 amd64 0.8.0+real5prealpha+1-15ubuntu5 [133 kB] 110s Get:124 http://ftpmaster.internal/ubuntu plucky/universe amd64 libpostproc58 amd64 7:7.1-3ubuntu1 [49.9 kB] 110s Get:125 http://ftpmaster.internal/ubuntu plucky/main amd64 libfftw3-double3 amd64 3.3.10-1ubuntu4 [839 kB] 110s Get:126 http://ftpmaster.internal/ubuntu plucky/main amd64 libsamplerate0 amd64 0.2.2-4build1 [1344 kB] 110s Get:127 http://ftpmaster.internal/ubuntu plucky/universe amd64 librubberband2 amd64 3.3.0+dfsg-2build2 [130 kB] 110s Get:128 http://ftpmaster.internal/ubuntu plucky/universe amd64 libswscale8 amd64 7:7.1-3ubuntu1 [210 kB] 110s Get:129 http://ftpmaster.internal/ubuntu plucky/universe amd64 libvidstab1.1 amd64 1.1.0-2build1 [38.5 kB] 110s Get:130 http://ftpmaster.internal/ubuntu plucky/universe amd64 libzimg2 amd64 3.0.5+ds1-1build1 [254 kB] 110s Get:131 http://ftpmaster.internal/ubuntu plucky/universe amd64 libavfilter10 amd64 7:7.1-3ubuntu1 [4361 kB] 110s Get:132 http://ftpmaster.internal/ubuntu plucky/main amd64 libcaca0 amd64 0.99.beta20-5 [209 kB] 110s Get:133 http://ftpmaster.internal/ubuntu plucky/main amd64 libcdio19t64 amd64 2.1.0-4.2ubuntu1 [62.4 kB] 110s Get:134 http://ftpmaster.internal/ubuntu plucky/main amd64 libcdio-cdda2t64 amd64 10.2+2.0.2-1 [16.6 kB] 110s Get:135 http://ftpmaster.internal/ubuntu plucky/main amd64 libcdio-paranoia2t64 amd64 10.2+2.0.2-1 [16.5 kB] 110s Get:136 http://ftpmaster.internal/ubuntu plucky/universe amd64 libdc1394-25 amd64 2.2.6-4build1 [90.1 kB] 110s Get:137 http://ftpmaster.internal/ubuntu plucky/main amd64 libglvnd0 amd64 1.7.0-1build1 [69.6 kB] 110s Get:138 http://ftpmaster.internal/ubuntu plucky/main amd64 libglapi-mesa amd64 24.2.3-1ubuntu1 [42.4 kB] 110s Get:139 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-dri2-0 amd64 1.17.0-2 [7222 B] 110s Get:140 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-glx0 amd64 1.17.0-2 [24.8 kB] 110s Get:141 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-present0 amd64 1.17.0-2 [6064 B] 110s Get:142 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-randr0 amd64 1.17.0-2 [17.9 kB] 110s Get:143 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-sync1 amd64 1.17.0-2 [9312 B] 110s Get:144 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-xfixes0 amd64 1.17.0-2 [10.2 kB] 110s Get:145 http://ftpmaster.internal/ubuntu plucky/main amd64 libxshmfence1 amd64 1.3-1build5 [4764 B] 110s Get:146 http://ftpmaster.internal/ubuntu plucky/main amd64 libxxf86vm1 amd64 1:1.1.4-1build4 [9282 B] 110s Get:147 http://ftpmaster.internal/ubuntu plucky/main amd64 libdrm-amdgpu1 amd64 2.4.123-1 [21.7 kB] 110s Get:148 http://ftpmaster.internal/ubuntu plucky/main amd64 libpciaccess0 amd64 0.17-3build1 [18.6 kB] 110s Get:149 http://ftpmaster.internal/ubuntu plucky/main amd64 libdrm-intel1 amd64 2.4.123-1 [68.8 kB] 110s Get:150 http://ftpmaster.internal/ubuntu plucky/main amd64 libdrm-radeon1 amd64 2.4.123-1 [25.3 kB] 110s Get:151 http://ftpmaster.internal/ubuntu plucky/main amd64 mesa-libgallium amd64 24.2.3-1ubuntu1 [9904 kB] 110s Get:152 http://ftpmaster.internal/ubuntu plucky/main amd64 libwayland-server0 amd64 1.23.0-1 [35.1 kB] 110s Get:153 http://ftpmaster.internal/ubuntu plucky/main amd64 libgbm1 amd64 24.2.3-1ubuntu1 [32.0 kB] 110s Get:154 http://ftpmaster.internal/ubuntu plucky/main amd64 libgl1-mesa-dri amd64 24.2.3-1ubuntu1 [34.4 kB] 110s Get:155 http://ftpmaster.internal/ubuntu plucky/main amd64 libglx-mesa0 amd64 24.2.3-1ubuntu1 [153 kB] 110s Get:156 http://ftpmaster.internal/ubuntu plucky/main amd64 libglx0 amd64 1.7.0-1build1 [38.6 kB] 110s Get:157 http://ftpmaster.internal/ubuntu plucky/main amd64 libgl1 amd64 1.7.0-1build1 [102 kB] 110s Get:158 http://ftpmaster.internal/ubuntu plucky/main amd64 libiec61883-0 amd64 1.2.0-7 [25.2 kB] 110s Get:159 http://ftpmaster.internal/ubuntu plucky/main amd64 libjack-jackd2-0 amd64 1.9.21~dfsg-3ubuntu3 [289 kB] 110s Get:160 http://ftpmaster.internal/ubuntu plucky/universe amd64 libopenal-data all 1:1.23.1-4build1 [161 kB] 110s Get:161 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsndio7.0 amd64 1.10.0-0.1 [29.7 kB] 111s Get:162 http://ftpmaster.internal/ubuntu plucky/universe amd64 libopenal1 amd64 1:1.23.1-4build1 [540 kB] 111s Get:163 http://ftpmaster.internal/ubuntu plucky/main amd64 libwayland-client0 amd64 1.23.0-1 [27.1 kB] 111s Get:164 http://ftpmaster.internal/ubuntu plucky/main amd64 libdecor-0-0 amd64 0.2.2-1build2 [16.5 kB] 111s Get:165 http://ftpmaster.internal/ubuntu plucky/main amd64 libwayland-cursor0 amd64 1.23.0-1 [10.8 kB] 111s Get:166 http://ftpmaster.internal/ubuntu plucky/main amd64 libwayland-egl1 amd64 1.23.0-1 [5662 B] 111s Get:167 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcursor1 amd64 1:1.2.2-1 [20.9 kB] 111s Get:168 http://ftpmaster.internal/ubuntu plucky/main amd64 libxi6 amd64 2:1.8.2-1 [32.4 kB] 111s Get:169 http://ftpmaster.internal/ubuntu plucky/main amd64 libxrandr2 amd64 2:1.5.4-1 [19.6 kB] 111s Get:170 http://ftpmaster.internal/ubuntu plucky/main amd64 x11-common all 1:7.7+23ubuntu3 [21.7 kB] 111s Get:171 http://ftpmaster.internal/ubuntu plucky/main amd64 libxss1 amd64 1:1.2.3-1build3 [7204 B] 111s Get:172 http://ftpmaster.internal/ubuntu plucky/main amd64 libsdl2-2.0-0 amd64 2.30.6+dfsg-1 [701 kB] 111s Get:173 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-shape0 amd64 1.17.0-2 [6092 B] 111s Get:174 http://ftpmaster.internal/ubuntu plucky/main amd64 libxv1 amd64 2:1.0.11-1.1build1 [10.7 kB] 111s Get:175 http://ftpmaster.internal/ubuntu plucky/universe amd64 libavdevice61 amd64 7:7.1-3ubuntu1 [82.0 kB] 111s Get:176 http://ftpmaster.internal/ubuntu plucky/main amd64 libde265-0 amd64 1.0.15-1build4 [168 kB] 111s Get:177 http://ftpmaster.internal/ubuntu plucky/main amd64 libexif12 amd64 0.6.24-1build2 [87.9 kB] 111s Get:178 http://ftpmaster.internal/ubuntu plucky/main amd64 libheif-plugin-aomdec amd64 1.19.3-1 [11.5 kB] 111s Get:179 http://ftpmaster.internal/ubuntu plucky/main amd64 libheif-plugin-libde265 amd64 1.19.3-1 [8968 B] 111s Get:180 http://ftpmaster.internal/ubuntu plucky/main amd64 libheif1 amd64 1.19.3-1 [415 kB] 111s Get:181 http://ftpmaster.internal/ubuntu plucky/main amd64 libwmflite-0.2-7 amd64 0.2.13-1.1build3 [68.6 kB] 111s Get:182 http://ftpmaster.internal/ubuntu plucky/universe amd64 libgraphicsmagick-q16-3t64 amd64 1.4+really1.3.45-1build1 [1287 kB] 111s Get:183 http://ftpmaster.internal/ubuntu plucky/universe amd64 libgraphicsmagick++-q16-12t64 amd64 1.4+really1.3.45-1build1 [116 kB] 111s Get:184 http://ftpmaster.internal/ubuntu plucky/main amd64 libice6 amd64 2:1.1.1-1 [44.1 kB] 111s Get:185 http://ftpmaster.internal/ubuntu plucky/universe amd64 libopenslide0 amd64 3.4.1+dfsg-7build2 [86.9 kB] 111s Get:186 http://ftpmaster.internal/ubuntu plucky/main amd64 libpoppler140 amd64 24.08.0-1 [1168 kB] 111s Get:187 http://ftpmaster.internal/ubuntu plucky/main amd64 libpoppler-glib8t64 amd64 24.08.0-1 [155 kB] 111s Get:188 http://ftpmaster.internal/ubuntu plucky/main amd64 libsm6 amd64 2:1.2.4-1 [17.4 kB] 111s Get:189 http://ftpmaster.internal/ubuntu plucky/universe amd64 libturbojpeg amd64 1:2.1.5-2ubuntu2 [192 kB] 111s Get:190 http://ftpmaster.internal/ubuntu plucky/main amd64 libxt6t64 amd64 1:1.2.1-1.2build1 [171 kB] 111s Get:191 http://ftpmaster.internal/ubuntu plucky/main amd64 libxmu6 amd64 2:1.1.3-3build2 [47.6 kB] 111s Get:192 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsixel1 amd64 1.10.3-3build1 [109 kB] 111s Get:193 http://ftpmaster.internal/ubuntu plucky/universe amd64 timg amd64 1.6.0-1build1 [1094 kB] 111s Get:194 http://ftpmaster.internal/ubuntu plucky/universe amd64 wl-clipboard amd64 2.2.1-1build1 [33.4 kB] 111s Get:195 http://ftpmaster.internal/ubuntu plucky/universe amd64 xclip amd64 0.13-4 [17.6 kB] 111s Get:196 http://ftpmaster.internal/ubuntu plucky/universe amd64 xsel amd64 1.2.1-1 [20.5 kB] 111s Fetched 94.0 MB in 6s (15.8 MB/s) 111s Selecting previously unselected package libchafa0t64:amd64. 112s (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 ... 77179 files and directories currently installed.) 112s Preparing to unpack .../000-libchafa0t64_1.14.5-1_amd64.deb ... 112s Unpacking libchafa0t64:amd64 (1.14.5-1) ... 112s Selecting previously unselected package libaom3:amd64. 112s Preparing to unpack .../001-libaom3_3.11.0~rc1-1_amd64.deb ... 112s Unpacking libaom3:amd64 (3.11.0~rc1-1) ... 112s Selecting previously unselected package libdav1d7:amd64. 112s Preparing to unpack .../002-libdav1d7_1.5.0-1_amd64.deb ... 112s Unpacking libdav1d7:amd64 (1.5.0-1) ... 112s Selecting previously unselected package libabsl20230802:amd64. 112s Preparing to unpack .../003-libabsl20230802_20230802.1-4ubuntu1_amd64.deb ... 112s Unpacking libabsl20230802:amd64 (20230802.1-4ubuntu1) ... 112s Selecting previously unselected package libgav1-1:amd64. 112s Preparing to unpack .../004-libgav1-1_0.19.0-2_amd64.deb ... 112s Unpacking libgav1-1:amd64 (0.19.0-2) ... 112s Selecting previously unselected package librav1e0.7:amd64. 112s Preparing to unpack .../005-librav1e0.7_0.7.1-7_amd64.deb ... 112s Unpacking librav1e0.7:amd64 (0.7.1-7) ... 112s Selecting previously unselected package libsvtav1enc2:amd64. 112s Preparing to unpack .../006-libsvtav1enc2_2.2.1+dfsg-2_amd64.deb ... 112s Unpacking libsvtav1enc2:amd64 (2.2.1+dfsg-2) ... 112s Selecting previously unselected package libjpeg-turbo8:amd64. 112s Preparing to unpack .../007-libjpeg-turbo8_2.1.5-2ubuntu2_amd64.deb ... 112s Unpacking libjpeg-turbo8:amd64 (2.1.5-2ubuntu2) ... 112s Selecting previously unselected package libjpeg8:amd64. 112s Preparing to unpack .../008-libjpeg8_8c-2ubuntu11_amd64.deb ... 112s Unpacking libjpeg8:amd64 (8c-2ubuntu11) ... 112s Selecting previously unselected package libyuv0:amd64. 112s Preparing to unpack .../009-libyuv0_0.0.1888.20241107-1_amd64.deb ... 112s Unpacking libyuv0:amd64 (0.0.1888.20241107-1) ... 112s Selecting previously unselected package libavif16:amd64. 112s Preparing to unpack .../010-libavif16_1.1.1-1ubuntu1_amd64.deb ... 112s Unpacking libavif16:amd64 (1.1.1-1ubuntu1) ... 112s Selecting previously unselected package fonts-dejavu-mono. 112s Preparing to unpack .../011-fonts-dejavu-mono_2.37-8_all.deb ... 112s Unpacking fonts-dejavu-mono (2.37-8) ... 112s Selecting previously unselected package fonts-dejavu-core. 112s Preparing to unpack .../012-fonts-dejavu-core_2.37-8_all.deb ... 112s Unpacking fonts-dejavu-core (2.37-8) ... 112s Selecting previously unselected package fontconfig-config. 112s Preparing to unpack .../013-fontconfig-config_2.15.0-1.1ubuntu2_amd64.deb ... 112s Unpacking fontconfig-config (2.15.0-1.1ubuntu2) ... 112s Selecting previously unselected package libfontconfig1:amd64. 112s Preparing to unpack .../014-libfontconfig1_2.15.0-1.1ubuntu2_amd64.deb ... 112s Unpacking libfontconfig1:amd64 (2.15.0-1.1ubuntu2) ... 112s Selecting previously unselected package libpixman-1-0:amd64. 112s Preparing to unpack .../015-libpixman-1-0_0.44.0-3_amd64.deb ... 112s Unpacking libpixman-1-0:amd64 (0.44.0-3) ... 112s Selecting previously unselected package libxcb-render0:amd64. 112s Preparing to unpack .../016-libxcb-render0_1.17.0-2_amd64.deb ... 112s Unpacking libxcb-render0:amd64 (1.17.0-2) ... 112s Selecting previously unselected package libxcb-shm0:amd64. 112s Preparing to unpack .../017-libxcb-shm0_1.17.0-2_amd64.deb ... 112s Unpacking libxcb-shm0:amd64 (1.17.0-2) ... 113s Selecting previously unselected package libxrender1:amd64. 113s Preparing to unpack .../018-libxrender1_1%3a0.9.10-1.1build1_amd64.deb ... 113s Unpacking libxrender1:amd64 (1:0.9.10-1.1build1) ... 113s Selecting previously unselected package libcairo2:amd64. 113s Preparing to unpack .../019-libcairo2_1.18.2-2_amd64.deb ... 113s Unpacking libcairo2:amd64 (1.18.2-2) ... 113s Selecting previously unselected package libcairo-gobject2:amd64. 113s Preparing to unpack .../020-libcairo-gobject2_1.18.2-2_amd64.deb ... 113s Unpacking libcairo-gobject2:amd64 (1.18.2-2) ... 113s Selecting previously unselected package libgdk-pixbuf2.0-common. 113s Preparing to unpack .../021-libgdk-pixbuf2.0-common_2.42.12+dfsg-1_all.deb ... 113s Unpacking libgdk-pixbuf2.0-common (2.42.12+dfsg-1) ... 113s Selecting previously unselected package libdeflate0:amd64. 113s Preparing to unpack .../022-libdeflate0_1.22-1_amd64.deb ... 113s Unpacking libdeflate0:amd64 (1.22-1) ... 113s Selecting previously unselected package libjbig0:amd64. 113s Preparing to unpack .../023-libjbig0_2.1-6.1ubuntu2_amd64.deb ... 113s Unpacking libjbig0:amd64 (2.1-6.1ubuntu2) ... 113s Selecting previously unselected package liblerc4:amd64. 113s Preparing to unpack .../024-liblerc4_4.0.0+ds-4ubuntu2_amd64.deb ... 113s Unpacking liblerc4:amd64 (4.0.0+ds-4ubuntu2) ... 113s Selecting previously unselected package libsharpyuv0:amd64. 113s Preparing to unpack .../025-libsharpyuv0_1.4.0-0.1_amd64.deb ... 113s Unpacking libsharpyuv0:amd64 (1.4.0-0.1) ... 113s Selecting previously unselected package libwebp7:amd64. 113s Preparing to unpack .../026-libwebp7_1.4.0-0.1_amd64.deb ... 113s Unpacking libwebp7:amd64 (1.4.0-0.1) ... 113s Selecting previously unselected package libtiff6:amd64. 113s Preparing to unpack .../027-libtiff6_4.5.1+git230720-4ubuntu4_amd64.deb ... 113s Unpacking libtiff6:amd64 (4.5.1+git230720-4ubuntu4) ... 113s Selecting previously unselected package libgdk-pixbuf-2.0-0:amd64. 113s Preparing to unpack .../028-libgdk-pixbuf-2.0-0_2.42.12+dfsg-1_amd64.deb ... 113s Unpacking libgdk-pixbuf-2.0-0:amd64 (2.42.12+dfsg-1) ... 113s Selecting previously unselected package fontconfig. 113s Preparing to unpack .../029-fontconfig_2.15.0-1.1ubuntu2_amd64.deb ... 113s Unpacking fontconfig (2.15.0-1.1ubuntu2) ... 113s Selecting previously unselected package libgraphite2-3:amd64. 113s Preparing to unpack .../030-libgraphite2-3_1.3.14-2ubuntu1_amd64.deb ... 113s Unpacking libgraphite2-3:amd64 (1.3.14-2ubuntu1) ... 113s Selecting previously unselected package libharfbuzz0b:amd64. 113s Preparing to unpack .../031-libharfbuzz0b_10.0.1-1_amd64.deb ... 113s Unpacking libharfbuzz0b:amd64 (10.0.1-1) ... 113s Selecting previously unselected package libthai-data. 113s Preparing to unpack .../032-libthai-data_0.1.29-2build1_all.deb ... 113s Unpacking libthai-data (0.1.29-2build1) ... 113s Selecting previously unselected package libdatrie1:amd64. 113s Preparing to unpack .../033-libdatrie1_0.2.13-3build1_amd64.deb ... 113s Unpacking libdatrie1:amd64 (0.2.13-3build1) ... 113s Selecting previously unselected package libthai0:amd64. 113s Preparing to unpack .../034-libthai0_0.1.29-2build1_amd64.deb ... 113s Unpacking libthai0:amd64 (0.1.29-2build1) ... 113s Selecting previously unselected package libpango-1.0-0:amd64. 113s Preparing to unpack .../035-libpango-1.0-0_1.54.0+ds-3_amd64.deb ... 113s Unpacking libpango-1.0-0:amd64 (1.54.0+ds-3) ... 113s Selecting previously unselected package libpangoft2-1.0-0:amd64. 113s Preparing to unpack .../036-libpangoft2-1.0-0_1.54.0+ds-3_amd64.deb ... 113s Unpacking libpangoft2-1.0-0:amd64 (1.54.0+ds-3) ... 113s Selecting previously unselected package libpangocairo-1.0-0:amd64. 113s Preparing to unpack .../037-libpangocairo-1.0-0_1.54.0+ds-3_amd64.deb ... 113s Unpacking libpangocairo-1.0-0:amd64 (1.54.0+ds-3) ... 113s Selecting previously unselected package librsvg2-2:amd64. 113s Preparing to unpack .../038-librsvg2-2_2.59.1+dfsg-1_amd64.deb ... 113s Unpacking librsvg2-2:amd64 (2.59.1+dfsg-1) ... 113s Selecting previously unselected package libwebpdemux2:amd64. 113s Preparing to unpack .../039-libwebpdemux2_1.4.0-0.1_amd64.deb ... 113s Unpacking libwebpdemux2:amd64 (1.4.0-0.1) ... 113s Selecting previously unselected package chafa. 113s Preparing to unpack .../040-chafa_1.14.5-1_amd64.deb ... 113s Unpacking chafa (1.14.5-1) ... 113s Selecting previously unselected package libasound2-data. 113s Preparing to unpack .../041-libasound2-data_1.2.12-1_all.deb ... 113s Unpacking libasound2-data (1.2.12-1) ... 113s Selecting previously unselected package libasound2t64:amd64. 113s Preparing to unpack .../042-libasound2t64_1.2.12-1_amd64.deb ... 113s Unpacking libasound2t64:amd64 (1.2.12-1) ... 113s Selecting previously unselected package libunibreak6:amd64. 113s Preparing to unpack .../043-libunibreak6_6.1-2_amd64.deb ... 113s Unpacking libunibreak6:amd64 (6.1-2) ... 113s Selecting previously unselected package libass9:amd64. 113s Preparing to unpack .../044-libass9_1%3a0.17.3-1_amd64.deb ... 113s Unpacking libass9:amd64 (1:0.17.3-1) ... 113s Selecting previously unselected package libasyncns0:amd64. 113s Preparing to unpack .../045-libasyncns0_0.8-6build4_amd64.deb ... 113s Unpacking libasyncns0:amd64 (0.8-6build4) ... 113s Selecting previously unselected package libva2:amd64. 113s Preparing to unpack .../046-libva2_2.22.0-1_amd64.deb ... 113s Unpacking libva2:amd64 (2.22.0-1) ... 113s Selecting previously unselected package libva-drm2:amd64. 113s Preparing to unpack .../047-libva-drm2_2.22.0-1_amd64.deb ... 113s Unpacking libva-drm2:amd64 (2.22.0-1) ... 113s Selecting previously unselected package libx11-xcb1:amd64. 113s Preparing to unpack .../048-libx11-xcb1_2%3a1.8.10-2_amd64.deb ... 113s Unpacking libx11-xcb1:amd64 (2:1.8.10-2) ... 113s Selecting previously unselected package libxcb-dri3-0:amd64. 113s Preparing to unpack .../049-libxcb-dri3-0_1.17.0-2_amd64.deb ... 113s Unpacking libxcb-dri3-0:amd64 (1.17.0-2) ... 113s Selecting previously unselected package libxfixes3:amd64. 113s Preparing to unpack .../050-libxfixes3_1%3a6.0.0-2build1_amd64.deb ... 113s Unpacking libxfixes3:amd64 (1:6.0.0-2build1) ... 114s Selecting previously unselected package libva-x11-2:amd64. 114s Preparing to unpack .../051-libva-x11-2_2.22.0-1_amd64.deb ... 114s Unpacking libva-x11-2:amd64 (2.22.0-1) ... 114s Selecting previously unselected package libvdpau1:amd64. 114s Preparing to unpack .../052-libvdpau1_1.5-3_amd64.deb ... 114s Unpacking libvdpau1:amd64 (1.5-3) ... 114s Selecting previously unselected package libvpl2. 114s Preparing to unpack .../053-libvpl2_1%3a2.13.0-1_amd64.deb ... 114s Unpacking libvpl2 (1:2.13.0-1) ... 114s Selecting previously unselected package ocl-icd-libopencl1:amd64. 114s Preparing to unpack .../054-ocl-icd-libopencl1_2.3.2-1build1_amd64.deb ... 114s Unpacking ocl-icd-libopencl1:amd64 (2.3.2-1build1) ... 114s Selecting previously unselected package libavutil59:amd64. 114s Preparing to unpack .../055-libavutil59_7%3a7.1-3ubuntu1_amd64.deb ... 114s Unpacking libavutil59:amd64 (7:7.1-3ubuntu1) ... 114s Selecting previously unselected package libcodec2-1.2:amd64. 114s Preparing to unpack .../056-libcodec2-1.2_1.2.0-2build1_amd64.deb ... 114s Unpacking libcodec2-1.2:amd64 (1.2.0-2build1) ... 114s Selecting previously unselected package libgsm1:amd64. 114s Preparing to unpack .../057-libgsm1_1.0.22-1build1_amd64.deb ... 114s Unpacking libgsm1:amd64 (1.0.22-1build1) ... 114s Selecting previously unselected package libgif7:amd64. 114s Preparing to unpack .../058-libgif7_5.2.2-1ubuntu1_amd64.deb ... 114s Unpacking libgif7:amd64 (5.2.2-1ubuntu1) ... 114s Selecting previously unselected package libhwy1t64:amd64. 114s Preparing to unpack .../059-libhwy1t64_1.2.0-3ubuntu3_amd64.deb ... 114s Unpacking libhwy1t64:amd64 (1.2.0-3ubuntu3) ... 114s Selecting previously unselected package liblcms2-2:amd64. 114s Preparing to unpack .../060-liblcms2-2_2.16-2_amd64.deb ... 114s Unpacking liblcms2-2:amd64 (2.16-2) ... 114s Selecting previously unselected package libjxl0.10:amd64. 114s Preparing to unpack .../061-libjxl0.10_0.10.3-4ubuntu1_amd64.deb ... 114s Unpacking libjxl0.10:amd64 (0.10.3-4ubuntu1) ... 114s Selecting previously unselected package libmp3lame0:amd64. 114s Preparing to unpack .../062-libmp3lame0_3.100-6build1_amd64.deb ... 114s Unpacking libmp3lame0:amd64 (3.100-6build1) ... 114s Selecting previously unselected package libopenjp2-7:amd64. 114s Preparing to unpack .../063-libopenjp2-7_2.5.0-2ubuntu1_amd64.deb ... 114s Unpacking libopenjp2-7:amd64 (2.5.0-2ubuntu1) ... 114s Selecting previously unselected package libopus0:amd64. 114s Preparing to unpack .../064-libopus0_1.5.2-2_amd64.deb ... 114s Unpacking libopus0:amd64 (1.5.2-2) ... 114s Selecting previously unselected package libshine3:amd64. 114s Preparing to unpack .../065-libshine3_3.1.1-2build1_amd64.deb ... 114s Unpacking libshine3:amd64 (3.1.1-2build1) ... 114s Selecting previously unselected package libsnappy1v5:amd64. 114s Preparing to unpack .../066-libsnappy1v5_1.2.1-1_amd64.deb ... 114s Unpacking libsnappy1v5:amd64 (1.2.1-1) ... 114s Selecting previously unselected package libspeex1:amd64. 114s Preparing to unpack .../067-libspeex1_1.2.1-3_amd64.deb ... 114s Unpacking libspeex1:amd64 (1.2.1-3) ... 114s Selecting previously unselected package libsoxr0:amd64. 114s Preparing to unpack .../068-libsoxr0_0.1.3-4build3_amd64.deb ... 114s Unpacking libsoxr0:amd64 (0.1.3-4build3) ... 114s Selecting previously unselected package libswresample5:amd64. 114s Preparing to unpack .../069-libswresample5_7%3a7.1-3ubuntu1_amd64.deb ... 114s Unpacking libswresample5:amd64 (7:7.1-3ubuntu1) ... 114s Selecting previously unselected package libogg0:amd64. 114s Preparing to unpack .../070-libogg0_1.3.5-3build1_amd64.deb ... 114s Unpacking libogg0:amd64 (1.3.5-3build1) ... 114s Selecting previously unselected package libtheora0:amd64. 114s Preparing to unpack .../071-libtheora0_1.1.1+dfsg.1-17_amd64.deb ... 114s Unpacking libtheora0:amd64 (1.1.1+dfsg.1-17) ... 114s Selecting previously unselected package libtwolame0:amd64. 114s Preparing to unpack .../072-libtwolame0_0.4.0-2build3_amd64.deb ... 114s Unpacking libtwolame0:amd64 (0.4.0-2build3) ... 114s Selecting previously unselected package libvorbis0a:amd64. 114s Preparing to unpack .../073-libvorbis0a_1.3.7-2_amd64.deb ... 114s Unpacking libvorbis0a:amd64 (1.3.7-2) ... 114s Selecting previously unselected package libvorbisenc2:amd64. 114s Preparing to unpack .../074-libvorbisenc2_1.3.7-2_amd64.deb ... 114s Unpacking libvorbisenc2:amd64 (1.3.7-2) ... 114s Selecting previously unselected package libvpx9:amd64. 114s Preparing to unpack .../075-libvpx9_1.14.1-1ubuntu1_amd64.deb ... 114s Unpacking libvpx9:amd64 (1.14.1-1ubuntu1) ... 114s Selecting previously unselected package libwebpmux3:amd64. 114s Preparing to unpack .../076-libwebpmux3_1.4.0-0.1_amd64.deb ... 114s Unpacking libwebpmux3:amd64 (1.4.0-0.1) ... 114s Selecting previously unselected package libx264-164:amd64. 114s Preparing to unpack .../077-libx264-164_2%3a0.164.3108+git31e19f9-2build1_amd64.deb ... 114s Unpacking libx264-164:amd64 (2:0.164.3108+git31e19f9-2build1) ... 114s Selecting previously unselected package libx265-209:amd64. 114s Preparing to unpack .../078-libx265-209_3.6-3_amd64.deb ... 114s Unpacking libx265-209:amd64 (3.6-3) ... 114s Selecting previously unselected package libxvidcore4:amd64. 114s Preparing to unpack .../079-libxvidcore4_2%3a1.3.7-1build1_amd64.deb ... 114s Unpacking libxvidcore4:amd64 (2:1.3.7-1build1) ... 114s Selecting previously unselected package libzvbi-common. 114s Preparing to unpack .../080-libzvbi-common_0.2.42-2_all.deb ... 114s Unpacking libzvbi-common (0.2.42-2) ... 114s Selecting previously unselected package libzvbi0t64:amd64. 114s Preparing to unpack .../081-libzvbi0t64_0.2.42-2_amd64.deb ... 114s Unpacking libzvbi0t64:amd64 (0.2.42-2) ... 115s Selecting previously unselected package libavcodec61:amd64. 115s Preparing to unpack .../082-libavcodec61_7%3a7.1-3ubuntu1_amd64.deb ... 115s Unpacking libavcodec61:amd64 (7:7.1-3ubuntu1) ... 115s Selecting previously unselected package libraw1394-11:amd64. 115s Preparing to unpack .../083-libraw1394-11_2.1.2-2build3_amd64.deb ... 115s Unpacking libraw1394-11:amd64 (2.1.2-2build3) ... 115s Selecting previously unselected package libavc1394-0:amd64. 115s Preparing to unpack .../084-libavc1394-0_0.5.4-5build3_amd64.deb ... 115s Unpacking libavc1394-0:amd64 (0.5.4-5build3) ... 115s Selecting previously unselected package libudfread0:amd64. 115s Preparing to unpack .../085-libudfread0_1.1.2-1build1_amd64.deb ... 115s Unpacking libudfread0:amd64 (1.1.2-1build1) ... 115s Selecting previously unselected package libbluray2:amd64. 115s Preparing to unpack .../086-libbluray2_1%3a1.3.4-1build1_amd64.deb ... 115s Unpacking libbluray2:amd64 (1:1.3.4-1build1) ... 115s Selecting previously unselected package libchromaprint1:amd64. 115s Preparing to unpack .../087-libchromaprint1_1.5.1-6_amd64.deb ... 115s Unpacking libchromaprint1:amd64 (1.5.1-6) ... 115s Selecting previously unselected package libdvdread8t64:amd64. 115s Preparing to unpack .../088-libdvdread8t64_6.1.3-2_amd64.deb ... 115s Unpacking libdvdread8t64:amd64 (6.1.3-2) ... 115s Selecting previously unselected package libdvdnav4:amd64. 115s Preparing to unpack .../089-libdvdnav4_6.1.1-3build1_amd64.deb ... 115s Unpacking libdvdnav4:amd64 (6.1.1-3build1) ... 115s Selecting previously unselected package libgme0:amd64. 115s Preparing to unpack .../090-libgme0_0.6.3-7build1_amd64.deb ... 115s Unpacking libgme0:amd64 (0.6.3-7build1) ... 115s Selecting previously unselected package libmpg123-0t64:amd64. 115s Preparing to unpack .../091-libmpg123-0t64_1.32.9-1_amd64.deb ... 115s Unpacking libmpg123-0t64:amd64 (1.32.9-1) ... 115s Selecting previously unselected package libvorbisfile3:amd64. 115s Preparing to unpack .../092-libvorbisfile3_1.3.7-2_amd64.deb ... 115s Unpacking libvorbisfile3:amd64 (1.3.7-2) ... 115s Selecting previously unselected package libopenmpt0t64:amd64. 115s Preparing to unpack .../093-libopenmpt0t64_0.7.9-1_amd64.deb ... 115s Unpacking libopenmpt0t64:amd64 (0.7.9-1) ... 115s Selecting previously unselected package librabbitmq4:amd64. 115s Preparing to unpack .../094-librabbitmq4_0.14.0-1_amd64.deb ... 115s Unpacking librabbitmq4:amd64 (0.14.0-1) ... 115s Selecting previously unselected package libcjson1:amd64. 115s Preparing to unpack .../095-libcjson1_1.7.18-3_amd64.deb ... 115s Unpacking libcjson1:amd64 (1.7.18-3) ... 115s Selecting previously unselected package libmbedcrypto7t64:amd64. 115s Preparing to unpack .../096-libmbedcrypto7t64_2.28.8-1_amd64.deb ... 115s Unpacking libmbedcrypto7t64:amd64 (2.28.8-1) ... 115s Selecting previously unselected package librist4:amd64. 115s Preparing to unpack .../097-librist4_0.2.10+dfsg-2_amd64.deb ... 115s Unpacking librist4:amd64 (0.2.10+dfsg-2) ... 115s Selecting previously unselected package libsrt1.5-gnutls:amd64. 115s Preparing to unpack .../098-libsrt1.5-gnutls_1.5.3-2_amd64.deb ... 115s Unpacking libsrt1.5-gnutls:amd64 (1.5.3-2) ... 115s Selecting previously unselected package libssh-4:amd64. 115s Preparing to unpack .../099-libssh-4_0.11.1-1_amd64.deb ... 115s Unpacking libssh-4:amd64 (0.11.1-1) ... 115s Selecting previously unselected package libnorm1t64:amd64. 115s Preparing to unpack .../100-libnorm1t64_1.5.9+dfsg-3.1build1_amd64.deb ... 115s Unpacking libnorm1t64:amd64 (1.5.9+dfsg-3.1build1) ... 115s Selecting previously unselected package libpgm-5.3-0t64:amd64. 115s Preparing to unpack .../101-libpgm-5.3-0t64_5.3.128~dfsg-2.1build1_amd64.deb ... 115s Unpacking libpgm-5.3-0t64:amd64 (5.3.128~dfsg-2.1build1) ... 115s Selecting previously unselected package libsodium23:amd64. 115s Preparing to unpack .../102-libsodium23_1.0.18-1build3_amd64.deb ... 115s Unpacking libsodium23:amd64 (1.0.18-1build3) ... 115s Selecting previously unselected package libzmq5:amd64. 115s Preparing to unpack .../103-libzmq5_4.3.5-1build2_amd64.deb ... 115s Unpacking libzmq5:amd64 (4.3.5-1build2) ... 115s Selecting previously unselected package libavformat61:amd64. 115s Preparing to unpack .../104-libavformat61_7%3a7.1-3ubuntu1_amd64.deb ... 115s Unpacking libavformat61:amd64 (7:7.1-3ubuntu1) ... 115s Selecting previously unselected package libbs2b0:amd64. 115s Preparing to unpack .../105-libbs2b0_3.1.0+dfsg-8_amd64.deb ... 115s Unpacking libbs2b0:amd64 (3.1.0+dfsg-8) ... 115s Selecting previously unselected package libflite1:amd64. 115s Preparing to unpack .../106-libflite1_2.2-6build3_amd64.deb ... 115s Unpacking libflite1:amd64 (2.2-6build3) ... 115s Selecting previously unselected package libserd-0-0:amd64. 115s Preparing to unpack .../107-libserd-0-0_0.32.2-1_amd64.deb ... 115s Unpacking libserd-0-0:amd64 (0.32.2-1) ... 116s Selecting previously unselected package libzix-0-0:amd64. 116s Preparing to unpack .../108-libzix-0-0_0.4.2-2build1_amd64.deb ... 116s Unpacking libzix-0-0:amd64 (0.4.2-2build1) ... 116s Selecting previously unselected package libsord-0-0:amd64. 116s Preparing to unpack .../109-libsord-0-0_0.16.16-2build1_amd64.deb ... 116s Unpacking libsord-0-0:amd64 (0.16.16-2build1) ... 116s Selecting previously unselected package libsratom-0-0:amd64. 116s Preparing to unpack .../110-libsratom-0-0_0.6.16-1build1_amd64.deb ... 116s Unpacking libsratom-0-0:amd64 (0.6.16-1build1) ... 116s Selecting previously unselected package liblilv-0-0:amd64. 116s Preparing to unpack .../111-liblilv-0-0_0.24.24-2_amd64.deb ... 116s Unpacking liblilv-0-0:amd64 (0.24.24-2) ... 116s Selecting previously unselected package libmysofa1:amd64. 116s Preparing to unpack .../112-libmysofa1_1.3.2+dfsg-2ubuntu2_amd64.deb ... 116s Unpacking libmysofa1:amd64 (1.3.2+dfsg-2ubuntu2) ... 116s Selecting previously unselected package libvulkan1:amd64. 116s Preparing to unpack .../113-libvulkan1_1.3.296.0-1_amd64.deb ... 116s Unpacking libvulkan1:amd64 (1.3.296.0-1) ... 116s Selecting previously unselected package libplacebo349:amd64. 116s Preparing to unpack .../114-libplacebo349_7.349.0-2_amd64.deb ... 116s Unpacking libplacebo349:amd64 (7.349.0-2) ... 116s Selecting previously unselected package libblas3:amd64. 116s Preparing to unpack .../115-libblas3_3.12.0-3build2_amd64.deb ... 116s Unpacking libblas3:amd64 (3.12.0-3build2) ... 116s Selecting previously unselected package libgfortran5:amd64. 116s Preparing to unpack .../116-libgfortran5_14.2.0-8ubuntu1_amd64.deb ... 116s Unpacking libgfortran5:amd64 (14.2.0-8ubuntu1) ... 116s Selecting previously unselected package liblapack3:amd64. 116s Preparing to unpack .../117-liblapack3_3.12.0-3build2_amd64.deb ... 116s Unpacking liblapack3:amd64 (3.12.0-3build2) ... 116s Selecting previously unselected package libflac12t64:amd64. 116s Preparing to unpack .../118-libflac12t64_1.4.3+ds-2.1ubuntu2_amd64.deb ... 116s Unpacking libflac12t64:amd64 (1.4.3+ds-2.1ubuntu2) ... 116s Selecting previously unselected package libsndfile1:amd64. 116s Preparing to unpack .../119-libsndfile1_1.2.2-1ubuntu5_amd64.deb ... 116s Unpacking libsndfile1:amd64 (1.2.2-1ubuntu5) ... 116s Selecting previously unselected package libpulse0:amd64. 116s Preparing to unpack .../120-libpulse0_1%3a16.1+dfsg1-5.1ubuntu1_amd64.deb ... 116s Unpacking libpulse0:amd64 (1:16.1+dfsg1-5.1ubuntu1) ... 116s Selecting previously unselected package libsphinxbase3t64:amd64. 116s Preparing to unpack .../121-libsphinxbase3t64_0.8+5prealpha+1-18_amd64.deb ... 116s Unpacking libsphinxbase3t64:amd64 (0.8+5prealpha+1-18) ... 116s Selecting previously unselected package libpocketsphinx3:amd64. 116s Preparing to unpack .../122-libpocketsphinx3_0.8.0+real5prealpha+1-15ubuntu5_amd64.deb ... 116s Unpacking libpocketsphinx3:amd64 (0.8.0+real5prealpha+1-15ubuntu5) ... 116s Selecting previously unselected package libpostproc58:amd64. 116s Preparing to unpack .../123-libpostproc58_7%3a7.1-3ubuntu1_amd64.deb ... 116s Unpacking libpostproc58:amd64 (7:7.1-3ubuntu1) ... 116s Selecting previously unselected package libfftw3-double3:amd64. 116s Preparing to unpack .../124-libfftw3-double3_3.3.10-1ubuntu4_amd64.deb ... 116s Unpacking libfftw3-double3:amd64 (3.3.10-1ubuntu4) ... 116s Selecting previously unselected package libsamplerate0:amd64. 116s Preparing to unpack .../125-libsamplerate0_0.2.2-4build1_amd64.deb ... 116s Unpacking libsamplerate0:amd64 (0.2.2-4build1) ... 116s Selecting previously unselected package librubberband2:amd64. 116s Preparing to unpack .../126-librubberband2_3.3.0+dfsg-2build2_amd64.deb ... 116s Unpacking librubberband2:amd64 (3.3.0+dfsg-2build2) ... 116s Selecting previously unselected package libswscale8:amd64. 116s Preparing to unpack .../127-libswscale8_7%3a7.1-3ubuntu1_amd64.deb ... 116s Unpacking libswscale8:amd64 (7:7.1-3ubuntu1) ... 116s Selecting previously unselected package libvidstab1.1:amd64. 116s Preparing to unpack .../128-libvidstab1.1_1.1.0-2build1_amd64.deb ... 116s Unpacking libvidstab1.1:amd64 (1.1.0-2build1) ... 116s Selecting previously unselected package libzimg2:amd64. 116s Preparing to unpack .../129-libzimg2_3.0.5+ds1-1build1_amd64.deb ... 116s Unpacking libzimg2:amd64 (3.0.5+ds1-1build1) ... 116s Selecting previously unselected package libavfilter10:amd64. 116s Preparing to unpack .../130-libavfilter10_7%3a7.1-3ubuntu1_amd64.deb ... 116s Unpacking libavfilter10:amd64 (7:7.1-3ubuntu1) ... 116s Selecting previously unselected package libcaca0:amd64. 116s Preparing to unpack .../131-libcaca0_0.99.beta20-5_amd64.deb ... 116s Unpacking libcaca0:amd64 (0.99.beta20-5) ... 116s Selecting previously unselected package libcdio19t64:amd64. 116s Preparing to unpack .../132-libcdio19t64_2.1.0-4.2ubuntu1_amd64.deb ... 116s Unpacking libcdio19t64:amd64 (2.1.0-4.2ubuntu1) ... 116s Selecting previously unselected package libcdio-cdda2t64:amd64. 116s Preparing to unpack .../133-libcdio-cdda2t64_10.2+2.0.2-1_amd64.deb ... 116s Unpacking libcdio-cdda2t64:amd64 (10.2+2.0.2-1) ... 116s Selecting previously unselected package libcdio-paranoia2t64:amd64. 116s Preparing to unpack .../134-libcdio-paranoia2t64_10.2+2.0.2-1_amd64.deb ... 116s Unpacking libcdio-paranoia2t64:amd64 (10.2+2.0.2-1) ... 116s Selecting previously unselected package libdc1394-25:amd64. 116s Preparing to unpack .../135-libdc1394-25_2.2.6-4build1_amd64.deb ... 116s Unpacking libdc1394-25:amd64 (2.2.6-4build1) ... 116s Selecting previously unselected package libglvnd0:amd64. 116s Preparing to unpack .../136-libglvnd0_1.7.0-1build1_amd64.deb ... 116s Unpacking libglvnd0:amd64 (1.7.0-1build1) ... 117s Selecting previously unselected package libglapi-mesa:amd64. 117s Preparing to unpack .../137-libglapi-mesa_24.2.3-1ubuntu1_amd64.deb ... 117s Unpacking libglapi-mesa:amd64 (24.2.3-1ubuntu1) ... 117s Selecting previously unselected package libxcb-dri2-0:amd64. 117s Preparing to unpack .../138-libxcb-dri2-0_1.17.0-2_amd64.deb ... 117s Unpacking libxcb-dri2-0:amd64 (1.17.0-2) ... 117s Selecting previously unselected package libxcb-glx0:amd64. 117s Preparing to unpack .../139-libxcb-glx0_1.17.0-2_amd64.deb ... 117s Unpacking libxcb-glx0:amd64 (1.17.0-2) ... 117s Selecting previously unselected package libxcb-present0:amd64. 117s Preparing to unpack .../140-libxcb-present0_1.17.0-2_amd64.deb ... 117s Unpacking libxcb-present0:amd64 (1.17.0-2) ... 117s Selecting previously unselected package libxcb-randr0:amd64. 117s Preparing to unpack .../141-libxcb-randr0_1.17.0-2_amd64.deb ... 117s Unpacking libxcb-randr0:amd64 (1.17.0-2) ... 117s Selecting previously unselected package libxcb-sync1:amd64. 117s Preparing to unpack .../142-libxcb-sync1_1.17.0-2_amd64.deb ... 117s Unpacking libxcb-sync1:amd64 (1.17.0-2) ... 117s Selecting previously unselected package libxcb-xfixes0:amd64. 117s Preparing to unpack .../143-libxcb-xfixes0_1.17.0-2_amd64.deb ... 117s Unpacking libxcb-xfixes0:amd64 (1.17.0-2) ... 117s Selecting previously unselected package libxshmfence1:amd64. 117s Preparing to unpack .../144-libxshmfence1_1.3-1build5_amd64.deb ... 117s Unpacking libxshmfence1:amd64 (1.3-1build5) ... 117s Selecting previously unselected package libxxf86vm1:amd64. 117s Preparing to unpack .../145-libxxf86vm1_1%3a1.1.4-1build4_amd64.deb ... 117s Unpacking libxxf86vm1:amd64 (1:1.1.4-1build4) ... 117s Selecting previously unselected package libdrm-amdgpu1:amd64. 117s Preparing to unpack .../146-libdrm-amdgpu1_2.4.123-1_amd64.deb ... 117s Unpacking libdrm-amdgpu1:amd64 (2.4.123-1) ... 117s Selecting previously unselected package libpciaccess0:amd64. 117s Preparing to unpack .../147-libpciaccess0_0.17-3build1_amd64.deb ... 117s Unpacking libpciaccess0:amd64 (0.17-3build1) ... 117s Selecting previously unselected package libdrm-intel1:amd64. 117s Preparing to unpack .../148-libdrm-intel1_2.4.123-1_amd64.deb ... 117s Unpacking libdrm-intel1:amd64 (2.4.123-1) ... 117s Selecting previously unselected package libdrm-radeon1:amd64. 117s Preparing to unpack .../149-libdrm-radeon1_2.4.123-1_amd64.deb ... 117s Unpacking libdrm-radeon1:amd64 (2.4.123-1) ... 117s Selecting previously unselected package mesa-libgallium:amd64. 117s Preparing to unpack .../150-mesa-libgallium_24.2.3-1ubuntu1_amd64.deb ... 117s Unpacking mesa-libgallium:amd64 (24.2.3-1ubuntu1) ... 117s Selecting previously unselected package libwayland-server0:amd64. 117s Preparing to unpack .../151-libwayland-server0_1.23.0-1_amd64.deb ... 117s Unpacking libwayland-server0:amd64 (1.23.0-1) ... 117s Selecting previously unselected package libgbm1:amd64. 117s Preparing to unpack .../152-libgbm1_24.2.3-1ubuntu1_amd64.deb ... 117s Unpacking libgbm1:amd64 (24.2.3-1ubuntu1) ... 117s Selecting previously unselected package libgl1-mesa-dri:amd64. 117s Preparing to unpack .../153-libgl1-mesa-dri_24.2.3-1ubuntu1_amd64.deb ... 117s Unpacking libgl1-mesa-dri:amd64 (24.2.3-1ubuntu1) ... 117s Selecting previously unselected package libglx-mesa0:amd64. 117s Preparing to unpack .../154-libglx-mesa0_24.2.3-1ubuntu1_amd64.deb ... 117s Unpacking libglx-mesa0:amd64 (24.2.3-1ubuntu1) ... 117s Selecting previously unselected package libglx0:amd64. 117s Preparing to unpack .../155-libglx0_1.7.0-1build1_amd64.deb ... 117s Unpacking libglx0:amd64 (1.7.0-1build1) ... 117s Selecting previously unselected package libgl1:amd64. 117s Preparing to unpack .../156-libgl1_1.7.0-1build1_amd64.deb ... 117s Unpacking libgl1:amd64 (1.7.0-1build1) ... 117s Selecting previously unselected package libiec61883-0:amd64. 117s Preparing to unpack .../157-libiec61883-0_1.2.0-7_amd64.deb ... 117s Unpacking libiec61883-0:amd64 (1.2.0-7) ... 117s Selecting previously unselected package libjack-jackd2-0:amd64. 117s Preparing to unpack .../158-libjack-jackd2-0_1.9.21~dfsg-3ubuntu3_amd64.deb ... 117s Unpacking libjack-jackd2-0:amd64 (1.9.21~dfsg-3ubuntu3) ... 117s Selecting previously unselected package libopenal-data. 117s Preparing to unpack .../159-libopenal-data_1%3a1.23.1-4build1_all.deb ... 117s Unpacking libopenal-data (1:1.23.1-4build1) ... 117s Selecting previously unselected package libsndio7.0:amd64. 117s Preparing to unpack .../160-libsndio7.0_1.10.0-0.1_amd64.deb ... 117s Unpacking libsndio7.0:amd64 (1.10.0-0.1) ... 117s Selecting previously unselected package libopenal1:amd64. 117s Preparing to unpack .../161-libopenal1_1%3a1.23.1-4build1_amd64.deb ... 117s Unpacking libopenal1:amd64 (1:1.23.1-4build1) ... 117s Selecting previously unselected package libwayland-client0:amd64. 117s Preparing to unpack .../162-libwayland-client0_1.23.0-1_amd64.deb ... 117s Unpacking libwayland-client0:amd64 (1.23.0-1) ... 117s Selecting previously unselected package libdecor-0-0:amd64. 117s Preparing to unpack .../163-libdecor-0-0_0.2.2-1build2_amd64.deb ... 117s Unpacking libdecor-0-0:amd64 (0.2.2-1build2) ... 117s Selecting previously unselected package libwayland-cursor0:amd64. 117s Preparing to unpack .../164-libwayland-cursor0_1.23.0-1_amd64.deb ... 117s Unpacking libwayland-cursor0:amd64 (1.23.0-1) ... 117s Selecting previously unselected package libwayland-egl1:amd64. 118s Preparing to unpack .../165-libwayland-egl1_1.23.0-1_amd64.deb ... 118s Unpacking libwayland-egl1:amd64 (1.23.0-1) ... 118s Selecting previously unselected package libxcursor1:amd64. 118s Preparing to unpack .../166-libxcursor1_1%3a1.2.2-1_amd64.deb ... 118s Unpacking libxcursor1:amd64 (1:1.2.2-1) ... 118s Selecting previously unselected package libxi6:amd64. 118s Preparing to unpack .../167-libxi6_2%3a1.8.2-1_amd64.deb ... 118s Unpacking libxi6:amd64 (2:1.8.2-1) ... 118s Selecting previously unselected package libxrandr2:amd64. 118s Preparing to unpack .../168-libxrandr2_2%3a1.5.4-1_amd64.deb ... 118s Unpacking libxrandr2:amd64 (2:1.5.4-1) ... 118s Selecting previously unselected package x11-common. 118s Preparing to unpack .../169-x11-common_1%3a7.7+23ubuntu3_all.deb ... 118s Unpacking x11-common (1:7.7+23ubuntu3) ... 118s Selecting previously unselected package libxss1:amd64. 118s Preparing to unpack .../170-libxss1_1%3a1.2.3-1build3_amd64.deb ... 118s Unpacking libxss1:amd64 (1:1.2.3-1build3) ... 118s Selecting previously unselected package libsdl2-2.0-0:amd64. 118s Preparing to unpack .../171-libsdl2-2.0-0_2.30.6+dfsg-1_amd64.deb ... 118s Unpacking libsdl2-2.0-0:amd64 (2.30.6+dfsg-1) ... 118s Selecting previously unselected package libxcb-shape0:amd64. 118s Preparing to unpack .../172-libxcb-shape0_1.17.0-2_amd64.deb ... 118s Unpacking libxcb-shape0:amd64 (1.17.0-2) ... 118s Selecting previously unselected package libxv1:amd64. 118s Preparing to unpack .../173-libxv1_2%3a1.0.11-1.1build1_amd64.deb ... 118s Unpacking libxv1:amd64 (2:1.0.11-1.1build1) ... 118s Selecting previously unselected package libavdevice61:amd64. 118s Preparing to unpack .../174-libavdevice61_7%3a7.1-3ubuntu1_amd64.deb ... 118s Unpacking libavdevice61:amd64 (7:7.1-3ubuntu1) ... 118s Selecting previously unselected package libde265-0:amd64. 118s Preparing to unpack .../175-libde265-0_1.0.15-1build4_amd64.deb ... 118s Unpacking libde265-0:amd64 (1.0.15-1build4) ... 118s Selecting previously unselected package libexif12:amd64. 118s Preparing to unpack .../176-libexif12_0.6.24-1build2_amd64.deb ... 118s Unpacking libexif12:amd64 (0.6.24-1build2) ... 118s Selecting previously unselected package libheif-plugin-aomdec:amd64. 118s Preparing to unpack .../177-libheif-plugin-aomdec_1.19.3-1_amd64.deb ... 118s Unpacking libheif-plugin-aomdec:amd64 (1.19.3-1) ... 118s Selecting previously unselected package libheif-plugin-libde265:amd64. 118s Preparing to unpack .../178-libheif-plugin-libde265_1.19.3-1_amd64.deb ... 118s Unpacking libheif-plugin-libde265:amd64 (1.19.3-1) ... 118s Selecting previously unselected package libheif1:amd64. 118s Preparing to unpack .../179-libheif1_1.19.3-1_amd64.deb ... 118s Unpacking libheif1:amd64 (1.19.3-1) ... 118s Selecting previously unselected package libwmflite-0.2-7:amd64. 118s Preparing to unpack .../180-libwmflite-0.2-7_0.2.13-1.1build3_amd64.deb ... 118s Unpacking libwmflite-0.2-7:amd64 (0.2.13-1.1build3) ... 118s Selecting previously unselected package libgraphicsmagick-q16-3t64. 118s Preparing to unpack .../181-libgraphicsmagick-q16-3t64_1.4+really1.3.45-1build1_amd64.deb ... 118s Unpacking libgraphicsmagick-q16-3t64 (1.4+really1.3.45-1build1) ... 118s Selecting previously unselected package libgraphicsmagick++-q16-12t64. 118s Preparing to unpack .../182-libgraphicsmagick++-q16-12t64_1.4+really1.3.45-1build1_amd64.deb ... 118s Unpacking libgraphicsmagick++-q16-12t64 (1.4+really1.3.45-1build1) ... 118s Selecting previously unselected package libice6:amd64. 118s Preparing to unpack .../183-libice6_2%3a1.1.1-1_amd64.deb ... 118s Unpacking libice6:amd64 (2:1.1.1-1) ... 118s Selecting previously unselected package libopenslide0. 118s Preparing to unpack .../184-libopenslide0_3.4.1+dfsg-7build2_amd64.deb ... 118s Unpacking libopenslide0 (3.4.1+dfsg-7build2) ... 118s Selecting previously unselected package libpoppler140:amd64. 118s Preparing to unpack .../185-libpoppler140_24.08.0-1_amd64.deb ... 118s Unpacking libpoppler140:amd64 (24.08.0-1) ... 118s Selecting previously unselected package libpoppler-glib8t64:amd64. 118s Preparing to unpack .../186-libpoppler-glib8t64_24.08.0-1_amd64.deb ... 118s Unpacking libpoppler-glib8t64:amd64 (24.08.0-1) ... 118s Selecting previously unselected package libsm6:amd64. 118s Preparing to unpack .../187-libsm6_2%3a1.2.4-1_amd64.deb ... 118s Unpacking libsm6:amd64 (2:1.2.4-1) ... 118s Selecting previously unselected package libturbojpeg:amd64. 118s Preparing to unpack .../188-libturbojpeg_1%3a2.1.5-2ubuntu2_amd64.deb ... 118s Unpacking libturbojpeg:amd64 (1:2.1.5-2ubuntu2) ... 118s Selecting previously unselected package libxt6t64:amd64. 118s Preparing to unpack .../189-libxt6t64_1%3a1.2.1-1.2build1_amd64.deb ... 118s Unpacking libxt6t64:amd64 (1:1.2.1-1.2build1) ... 118s Selecting previously unselected package libxmu6:amd64. 118s Preparing to unpack .../190-libxmu6_2%3a1.1.3-3build2_amd64.deb ... 118s Unpacking libxmu6:amd64 (2:1.1.3-3build2) ... 118s Selecting previously unselected package libsixel1:amd64. 118s Preparing to unpack .../191-libsixel1_1.10.3-3build1_amd64.deb ... 118s Unpacking libsixel1:amd64 (1.10.3-3build1) ... 118s Selecting previously unselected package timg. 118s Preparing to unpack .../192-timg_1.6.0-1build1_amd64.deb ... 118s Unpacking timg (1.6.0-1build1) ... 118s Selecting previously unselected package wl-clipboard. 118s Preparing to unpack .../193-wl-clipboard_2.2.1-1build1_amd64.deb ... 118s Unpacking wl-clipboard (2.2.1-1build1) ... 118s Selecting previously unselected package xclip. 118s Preparing to unpack .../194-xclip_0.13-4_amd64.deb ... 118s Unpacking xclip (0.13-4) ... 118s Selecting previously unselected package xsel. 118s Preparing to unpack .../195-xsel_1.2.1-1_amd64.deb ... 118s Unpacking xsel (1.2.1-1) ... 119s Setting up libgme0:amd64 (0.6.3-7build1) ... 119s Setting up libchromaprint1:amd64 (1.5.1-6) ... 119s Setting up libhwy1t64:amd64 (1.2.0-3ubuntu3) ... 119s Setting up libgraphite2-3:amd64 (1.3.14-2ubuntu1) ... 119s Setting up xsel (1.2.1-1) ... 119s Setting up libxcb-dri3-0:amd64 (1.17.0-2) ... 119s Setting up liblcms2-2:amd64 (2.16-2) ... 119s Setting up libpixman-1-0:amd64 (0.44.0-3) ... 119s Setting up libdvdread8t64:amd64 (6.1.3-2) ... 119s Setting up libudfread0:amd64 (1.1.2-1build1) ... 119s Setting up libnorm1t64:amd64 (1.5.9+dfsg-3.1build1) ... 119s Setting up libsharpyuv0:amd64 (1.4.0-0.1) ... 119s Setting up libwayland-server0:amd64 (1.23.0-1) ... 119s Setting up libaom3:amd64 (3.11.0~rc1-1) ... 119s Setting up libx11-xcb1:amd64 (2:1.8.10-2) ... 119s Setting up libpciaccess0:amd64 (0.17-3build1) ... 119s Setting up librabbitmq4:amd64 (0.14.0-1) ... 119s Setting up libraw1394-11:amd64 (2.1.2-2build3) ... 119s Setting up libsodium23:amd64 (1.0.18-1build3) ... 119s Setting up libxcb-xfixes0:amd64 (1.17.0-2) ... 119s Setting up libogg0:amd64 (1.3.5-3build1) ... 119s Setting up liblerc4:amd64 (4.0.0+ds-4ubuntu2) ... 119s Setting up libspeex1:amd64 (1.2.1-3) ... 119s Setting up libshine3:amd64 (3.1.1-2build1) ... 119s Setting up libcaca0:amd64 (0.99.beta20-5) ... 119s Setting up libvpl2 (1:2.13.0-1) ... 119s Setting up libwmflite-0.2-7:amd64 (0.2.13-1.1build3) ... 119s Setting up libxi6:amd64 (2:1.8.2-1) ... 119s Setting up libx264-164:amd64 (2:0.164.3108+git31e19f9-2build1) ... 119s Setting up libtwolame0:amd64 (0.4.0-2build3) ... 119s Setting up libmbedcrypto7t64:amd64 (2.28.8-1) ... 119s Setting up libxrender1:amd64 (1:0.9.10-1.1build1) ... 119s Setting up libdatrie1:amd64 (0.2.13-3build1) ... 119s Setting up libgsm1:amd64 (1.0.22-1build1) ... 119s Setting up libxcb-render0:amd64 (1.17.0-2) ... 119s Setting up libsoxr0:amd64 (0.1.3-4build3) ... 119s Setting up libzix-0-0:amd64 (0.4.2-2build1) ... 119s Setting up libdrm-radeon1:amd64 (2.4.123-1) ... 119s Setting up libglvnd0:amd64 (1.7.0-1build1) ... 119s Setting up libcodec2-1.2:amd64 (1.2.0-2build1) ... 119s Setting up libxcb-glx0:amd64 (1.17.0-2) ... 119s Setting up libdrm-intel1:amd64 (2.4.123-1) ... 119s Setting up libgdk-pixbuf2.0-common (2.42.12+dfsg-1) ... 119s Setting up libmysofa1:amd64 (1.3.2+dfsg-2ubuntu2) ... 119s Setting up libxcb-shape0:amd64 (1.17.0-2) ... 119s Setting up x11-common (1:7.7+23ubuntu3) ... 119s Setting up libcdio19t64:amd64 (2.1.0-4.2ubuntu1) ... 119s Setting up libdeflate0:amd64 (1.22-1) ... 119s Setting up libxcb-shm0:amd64 (1.17.0-2) ... 119s Setting up libchafa0t64:amd64 (1.14.5-1) ... 119s Setting up libmpg123-0t64:amd64 (1.32.9-1) ... 119s Setting up libcjson1:amd64 (1.7.18-3) ... 119s Setting up libxvidcore4:amd64 (2:1.3.7-1build1) ... 119s Setting up libjbig0:amd64 (2.1-6.1ubuntu2) ... 119s Setting up libxxf86vm1:amd64 (1:1.1.4-1build4) ... 119s Setting up libsnappy1v5:amd64 (1.2.1-1) ... 119s Setting up libcdio-cdda2t64:amd64 (10.2+2.0.2-1) ... 119s Setting up librist4:amd64 (0.2.10+dfsg-2) ... 119s Setting up libxcb-present0:amd64 (1.17.0-2) ... 119s Setting up libasound2-data (1.2.12-1) ... 119s Setting up libpgm-5.3-0t64:amd64 (5.3.128~dfsg-2.1build1) ... 119s Setting up libblas3:amd64 (3.12.0-3build2) ... 119s update-alternatives: using /usr/lib/x86_64-linux-gnu/blas/libblas.so.3 to provide /usr/lib/x86_64-linux-gnu/libblas.so.3 (libblas.so.3-x86_64-linux-gnu) in auto mode 119s Setting up libasound2t64:amd64 (1.2.12-1) ... 119s Setting up libva2:amd64 (2.22.0-1) ... 119s Setting up libsvtav1enc2:amd64 (2.2.1+dfsg-2) ... 119s Setting up libxfixes3:amd64 (1:6.0.0-2build1) ... 119s Setting up libxcb-sync1:amd64 (1.17.0-2) ... 119s Setting up libopus0:amd64 (1.5.2-2) ... 119s Setting up libexif12:amd64 (0.6.24-1build2) ... 119s Setting up libx265-209:amd64 (3.6-3) ... 119s Setting up libsixel1:amd64 (1.10.3-3build1) ... 119s Setting up libcdio-paranoia2t64:amd64 (10.2+2.0.2-1) ... 119s Setting up libdc1394-25:amd64 (2.2.6-4build1) ... 119s Setting up libxv1:amd64 (2:1.0.11-1.1build1) ... 119s Setting up fonts-dejavu-mono (2.37-8) ... 119s Setting up libvorbis0a:amd64 (1.3.7-2) ... 119s Setting up libxrandr2:amd64 (2:1.5.4-1) ... 119s Setting up fonts-dejavu-core (2.37-8) ... 119s Setting up libjpeg-turbo8:amd64 (2.1.5-2ubuntu2) ... 119s Setting up libfftw3-double3:amd64 (3.3.10-1ubuntu4) ... 119s Setting up libglapi-mesa:amd64 (24.2.3-1ubuntu1) ... 119s Setting up libssh-4:amd64 (0.11.1-1) ... 119s Setting up libgfortran5:amd64 (14.2.0-8ubuntu1) ... 119s Setting up libvulkan1:amd64 (1.3.296.0-1) ... 119s Setting up libwebp7:amd64 (1.4.0-0.1) ... 119s Setting up libsndio7.0:amd64 (1.10.0-0.1) ... 119s Setting up libxcb-dri2-0:amd64 (1.17.0-2) ... 119s Setting up libgif7:amd64 (5.2.2-1ubuntu1) ... 119s Setting up libturbojpeg:amd64 (1:2.1.5-2ubuntu2) ... 119s Setting up libvidstab1.1:amd64 (1.1.0-2build1) ... 119s Setting up libvpx9:amd64 (1.14.1-1ubuntu1) ... 119s Setting up libsrt1.5-gnutls:amd64 (1.5.3-2) ... 119s Setting up libflite1:amd64 (2.2-6build3) ... 119s Setting up libdav1d7:amd64 (1.5.0-1) ... 119s Setting up libva-drm2:amd64 (2.22.0-1) ... 119s Setting up ocl-icd-libopencl1:amd64 (2.3.2-1build1) ... 119s Setting up libasyncns0:amd64 (0.8-6build4) ... 119s Setting up libxshmfence1:amd64 (1.3-1build5) ... 119s Setting up libvdpau1:amd64 (1.5-3) ... 119s Setting up libbs2b0:amd64 (3.1.0+dfsg-8) ... 119s Setting up libxcb-randr0:amd64 (1.17.0-2) ... 119s Setting up librav1e0.7:amd64 (0.7.1-7) ... 119s Setting up libzimg2:amd64 (3.0.5+ds1-1build1) ... 119s Setting up libopenjp2-7:amd64 (2.5.0-2ubuntu1) ... 119s Setting up libharfbuzz0b:amd64 (10.0.1-1) ... 119s Setting up libopenal-data (1:1.23.1-4build1) ... 119s Setting up libthai-data (0.1.29-2build1) ... 119s Setting up libabsl20230802:amd64 (20230802.1-4ubuntu1) ... 119s Setting up libunibreak6:amd64 (6.1-2) ... 119s Setting up libflac12t64:amd64 (1.4.3+ds-2.1ubuntu2) ... 119s Setting up libwayland-egl1:amd64 (1.23.0-1) ... 119s Setting up libxss1:amd64 (1:1.2.3-1build3) ... 119s Setting up libde265-0:amd64 (1.0.15-1build4) ... 119s Setting up libsamplerate0:amd64 (0.2.2-4build1) ... 119s Setting up libva-x11-2:amd64 (2.22.0-1) ... 119s Setting up libwebpmux3:amd64 (1.4.0-0.1) ... 119s Setting up libzvbi-common (0.2.42-2) ... 119s Setting up libmp3lame0:amd64 (3.100-6build1) ... 119s Setting up libvorbisenc2:amd64 (1.3.7-2) ... 119s Setting up libdvdnav4:amd64 (6.1.1-3build1) ... 119s Setting up libiec61883-0:amd64 (1.2.0-7) ... 119s Setting up libserd-0-0:amd64 (0.32.2-1) ... 119s Setting up libdrm-amdgpu1:amd64 (2.4.123-1) ... 119s Setting up libwayland-client0:amd64 (1.23.0-1) ... 119s Setting up libjpeg8:amd64 (8c-2ubuntu11) ... 119s Setting up libavc1394-0:amd64 (0.5.4-5build3) ... 119s Setting up wl-clipboard (2.2.1-1build1) ... 119s Setting up libice6:amd64 (2:1.1.1-1) ... 119s Setting up mesa-libgallium:amd64 (24.2.3-1ubuntu1) ... 119s Setting up liblapack3:amd64 (3.12.0-3build2) ... 119s update-alternatives: using /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/x86_64-linux-gnu/liblapack.so.3 (liblapack.so.3-x86_64-linux-gnu) in auto mode 119s Setting up libzmq5:amd64 (4.3.5-1build2) ... 119s Setting up libzvbi0t64:amd64 (0.2.42-2) ... 119s Setting up libgbm1:amd64 (24.2.3-1ubuntu1) ... 119s Setting up fontconfig-config (2.15.0-1.1ubuntu2) ... 119s Setting up libwebpdemux2:amd64 (1.4.0-0.1) ... 119s Setting up libxcursor1:amd64 (1:1.2.2-1) ... 119s Setting up libgl1-mesa-dri:amd64 (24.2.3-1ubuntu1) ... 119s Setting up libopenal1:amd64 (1:1.23.1-4build1) ... 119s Setting up libavutil59:amd64 (7:7.1-3ubuntu1) ... 119s Setting up libpostproc58:amd64 (7:7.1-3ubuntu1) ... 119s Setting up libthai0:amd64 (0.1.29-2build1) ... 119s Setting up libvorbisfile3:amd64 (1.3.7-2) ... 119s Setting up libswresample5:amd64 (7:7.1-3ubuntu1) ... 119s Setting up libswscale8:amd64 (7:7.1-3ubuntu1) ... 119s Setting up libplacebo349:amd64 (7.349.0-2) ... 119s Setting up libgav1-1:amd64 (0.19.0-2) ... 119s Setting up librubberband2:amd64 (3.3.0+dfsg-2build2) ... 119s Setting up libjack-jackd2-0:amd64 (1.9.21~dfsg-3ubuntu3) ... 119s Setting up libsord-0-0:amd64 (0.16.16-2build1) ... 119s Setting up libtiff6:amd64 (4.5.1+git230720-4ubuntu4) ... 119s Setting up libwayland-cursor0:amd64 (1.23.0-1) ... 119s Setting up libsratom-0-0:amd64 (0.6.16-1build1) ... 119s Setting up libdecor-0-0:amd64 (0.2.2-1build2) ... 119s Setting up libgdk-pixbuf-2.0-0:amd64 (2.42.12+dfsg-1) ... 119s Setting up libfontconfig1:amd64 (2.15.0-1.1ubuntu2) ... 119s Setting up libsndfile1:amd64 (1.2.2-1ubuntu5) ... 119s Setting up libbluray2:amd64 (1:1.3.4-1build1) ... 119s Setting up libyuv0:amd64 (0.0.1888.20241107-1) ... 119s Setting up libsm6:amd64 (2:1.2.4-1) ... 119s Setting up liblilv-0-0:amd64 (0.24.24-2) ... 119s Setting up libopenmpt0t64:amd64 (0.7.9-1) ... 119s Setting up libjxl0.10:amd64 (0.10.3-4ubuntu1) ... 119s Setting up fontconfig (2.15.0-1.1ubuntu2) ... 121s Regenerating fonts cache... done. 121s Setting up libavif16:amd64 (1.1.1-1ubuntu1) ... 121s Setting up libglx-mesa0:amd64 (24.2.3-1ubuntu1) ... 121s Setting up libglx0:amd64 (1.7.0-1build1) ... 121s Setting up libpulse0:amd64 (1:16.1+dfsg1-5.1ubuntu1) ... 121s Setting up libpango-1.0-0:amd64 (1.54.0+ds-3) ... 121s Setting up libcairo2:amd64 (1.18.2-2) ... 121s Setting up libsphinxbase3t64:amd64 (0.8+5prealpha+1-18) ... 121s Setting up libgl1:amd64 (1.7.0-1build1) ... 121s Setting up libass9:amd64 (1:0.17.3-1) ... 121s Setting up libxt6t64:amd64 (1:1.2.1-1.2build1) ... 121s Setting up libtheora0:amd64 (1.1.1+dfsg.1-17) ... 121s Setting up libpoppler140:amd64 (24.08.0-1) ... 121s Setting up libcairo-gobject2:amd64 (1.18.2-2) ... 121s Setting up libpangoft2-1.0-0:amd64 (1.54.0+ds-3) ... 121s Setting up libopenslide0 (3.4.1+dfsg-7build2) ... 121s Setting up libsdl2-2.0-0:amd64 (2.30.6+dfsg-1) ... 121s Setting up libpangocairo-1.0-0:amd64 (1.54.0+ds-3) ... 121s Setting up libxmu6:amd64 (2:1.1.3-3build2) ... 121s Setting up librsvg2-2:amd64 (2.59.1+dfsg-1) ... 121s Setting up libpoppler-glib8t64:amd64 (24.08.0-1) ... 121s Setting up libpocketsphinx3:amd64 (0.8.0+real5prealpha+1-15ubuntu5) ... 121s Setting up xclip (0.13-4) ... 121s Setting up libavcodec61:amd64 (7:7.1-3ubuntu1) ... 121s Setting up chafa (1.14.5-1) ... 121s Setting up libavformat61:amd64 (7:7.1-3ubuntu1) ... 121s Setting up libavfilter10:amd64 (7:7.1-3ubuntu1) ... 121s Setting up libavdevice61:amd64 (7:7.1-3ubuntu1) ... 121s Setting up libheif1:amd64 (1.19.3-1) ... 121s Setting up libheif-plugin-aomdec:amd64 (1.19.3-1) ... 121s Setting up libheif-plugin-libde265:amd64 (1.19.3-1) ... 121s Setting up libgraphicsmagick-q16-3t64 (1.4+really1.3.45-1build1) ... 121s Setting up libgraphicsmagick++-q16-12t64 (1.4+really1.3.45-1build1) ... 121s Setting up timg (1.6.0-1build1) ... 121s Processing triggers for libc-bin (2.40-1ubuntu3) ... 121s Processing triggers for man-db (2.12.1-3) ... 126s Reading package lists... 126s Building dependency tree... 126s Reading state information... 126s Starting pkgProblemResolver with broken count: 0 126s Starting 2 pkgProblemResolver with broken count: 0 126s Done 126s The following NEW packages will be installed: 126s autopkgtest-satdep 126s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 126s Need to get 0 B/696 B of archives. 126s After this operation, 0 B of additional disk space will be used. 126s Get:1 /tmp/autopkgtest.zCvvc0/6-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [696 B] 127s Selecting previously unselected package autopkgtest-satdep. 127s (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 ... 78881 files and directories currently installed.) 127s Preparing to unpack .../6-autopkgtest-satdep.deb ... 127s Unpacking autopkgtest-satdep (0) ... 127s Setting up autopkgtest-satdep (0) ... 129s (Reading database ... 78881 files and directories currently installed.) 129s Removing autopkgtest-satdep (0) ... 129s autopkgtest [21:09:59]: test run-commands: [----------------------- 129s 129s # 0. Basic arguments 129s offpunk --version 130s Offpunk 2.3 130s offpunk --help 130s usage: offpunk [-h] [--bookmarks] [--config-file FILE] [--sync] [--assume-yes] 130s [--disable-http] [--fetch-later] [--depth DEPTH] 130s [--images-mode IMAGES_MODE] [--cache-validity CACHE_VALIDITY] 130s [--version] [--features] 130s [URL ...] 130s 130s Offline-First Gemini/Web/Gopher/RSS reader and browser 130s 130s positional arguments: 130s URL Arguments should be URL to be fetched or, if --sync is 130s used, lists 130s 130s options: 130s -h, --help show this help message and exit 130s --bookmarks start with your list of bookmarks 130s --config-file FILE use this particular config file instead of default 130s --sync run non-interactively to build cache by exploring 130s lists passed as argument. Without argument, all lists 130s are fetched. 130s --assume-yes assume-yes when asked questions about 130s certificates/redirections during sync (lower security) 130s --disable-http do not try to get http(s) links (but already cached 130s will be displayed) 130s --fetch-later run non-interactively with an URL as argument to fetch 130s it later 130s --depth DEPTH depth of the cache to build. Default is 1. More is 130s crazy. Use at your own risks! 130s --images-mode IMAGES_MODE 130s the mode to use to choose which images to download in 130s a HTML page. one of (None, readable, full). Warning: 130s full will slowdown your sync. 130s --cache-validity CACHE_VALIDITY 130s duration for which a cache is valid before sync 130s (seconds) 130s --version display version information and quit 130s --features display available features and dependancies then quit 130s offpunk --features 131s moving from tofu.db to certificates as files 131s Upgrading cache to version 1: migrating index.txt to gophermap 131s Offpunk 2.3 131s =========== 131s Highly recommended: 131s - python-cryptography : Installed 131s - xdg-open : Installed 131s 131s Web browsing: 131s - python-requests : Installed 131s - python-feedparser : Installed 131s - python-bs4 : Installed 131s - python-readability : Installed 131s - timg 1.3.2+ : Installed 131s - chafa 1.10+ : Installed 131s 131s Nice to have: 131s - python-setproctitle : Installed 131s - X11 clipboard (xsel or xclip) : Installed 131s - Wayland clipboard (wl-clipboard): Installed 131s 131s Features : 131s - Render images (chafa or timg) : Installed 131s - Render HTML (bs4, readability) : Installed 131s - Render Atom/RSS feeds (feedparser) : Installed 131s - Connect to http/https (requests) : Installed 131s - Detect text encoding (python-chardet) : Installed 131s - restore last position (less 572+) : Installed 131s 131s Config directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.config/offpunk/ 131s User Data directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/ 131s Cache directoy : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.cache/offpunk/ 131s echo quit | offpunk --bookmarks 131s bookmarks (0 items) (local file) 131s bookmarks 131s Creating config directory /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.config/offpunk/ 131s Welcome to Offpunk! 131s Type `help` to get the list of available command. 131s ON> You can close your screen! 131s 131s # 1. Basic commands 131s cat << END | offpunk 131s version 131s help 131s help abbrevs 131s help add 131s help back 131s help blackbox 131s help bookmarks 131s help cat 131s help cert 131s help copy 131s help find 131s help forward 131s help go 131s help gus 131s help handler 131s help help 131s help history 131s help info 131s help list 131s help ls 131s help mark 131s help move 131s help offline 131s help online 131s help open 131s help redirect 131s help reload 131s help root 131s help save 131s help set 131s help shell echo test 131s help subscribe 131s help sync 131s help theme 131s help tour 131s help url 131s help version 131s help wikipedia 131s help exit 131s help quit 131s quit 131s END 131s Welcome to Offpunk! 131s Type `help` to get the list of available command. 131s ON> Offpunk 2.3 131s =========== 131s Highly recommended: 131s - python-cryptography : Installed 131s - xdg-open : Installed 131s 131s Web browsing: 131s - python-requests : Installed 131s - python-feedparser : Installed 131s - python-bs4 : Installed 131s - python-readability : Installed 131s - timg 1.3.2+ : Installed 131s - chafa 1.10+ : Installed 131s 131s Nice to have: 131s - python-setproctitle : Installed 131s - X11 clipboard (xsel or xclip) : Installed 131s - Wayland clipboard (wl-clipboard): Installed 131s 131s Features : 131s - Render images (chafa or timg) : Installed 131s - Render HTML (bs4, readability) : Installed 131s - Render Atom/RSS feeds (feedparser) : Installed 131s - Connect to http/https (requests) : Installed 131s - Detect text encoding (python-chardet) : Installed 131s - restore last position (less 572+) : Installed 131s 131s Config directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.config/offpunk/ 131s User Data directory : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/ 131s Cache directoy : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.cache/offpunk/ 131s ON> 131s Documented commands (type help ): 131s ======================================== 131s abbrevs cat go info offline reload shell up 131s add copy gus list online root subscribe url 131s archive exit handler ls open save sync version 131s back find help mark quit search theme view 131s bookmarks forward history move redirect set tour wikipedia 131s 131s ON> Print all Offpunk command abbreviations. 131s ON> Add the current URL to the list specied as argument. 131s If no argument given, URL is added to Bookmarks. 131s ON> Go back to the previous gemini item. 131s ON> *** No help on blackbox 131s ON> Show or access the bookmarks menu. 131s 'bookmarks' shows all bookmarks. 131s 'bookmarks n' navigates immediately to item n in the bookmark menu. 131s Bookmarks are stored using the 'add' command. 131s ON> Run most recently visited item through "cat" command. 131s ON> *** No help on cert 131s ON> Copy the content of the last visited page as gemtext/html in the clipboard. 131s Use with "url" as argument to only copy the adress. 131s Use with "raw" to copy ANSI content as seen in your terminal (with colour codes). 131s Use with "cache" to copy the path of the cached content. 131s Use with "title" to copy the title of the page. 131s Use with "link" to copy a link in the gemtext format to that page with the title. 131s 131s ON> Find in current page by displaying only relevant lines (grep). 131s ON> Go forward to the next gemini item. 131s ON> Go to a gemini URL or marked item. 131s ON> Submit a search query to the geminispace.info search engine. 131s ON> View or set handler commands for different MIME types. 131s ON> ALARM! Recursion detected! ALARM! Prepare to eject! 131s ON> Display history. 131s ON> Display information about current page. 131s ON> Manage list of bookmarked pages. 131s - list : display available lists 131s - list $LIST : display pages in $LIST 131s - list create $NEWLIST : create a new list 131s - list edit $LIST : edit the list 131s - list subscribe $LIST : during sync, add new links found in listed pages to tour 131s - list freeze $LIST : don’t update pages in list during sync if a cache already exists 131s - list normal $LIST : update pages in list during sync but don’t add anything to tour 131s - list delete $LIST : delete a list permanently (a confirmation is required) 131s - list help : print this help 131s See also : 131s - add $LIST (to add current page to $LIST or, by default, to bookmarks) 131s - move $LIST (to add current page to list while removing from all others) 131s - archive (to remove current page from all lists while adding to archives) 131s 131s There’s no "delete" on purpose. The use of "archive" is recommended. 131s 131s The following lists cannot be removed or frozen but can be edited with "list edit" 131s - list archives : contains last 200 archived URLs 131s - history : contains last 200 visisted URLs 131s - to_fetch : contains URLs that will be fetch during the next sync 131s - tour : contains the next URLs to visit during a tour (see "help tour") 131s 131s 131s ON> List contents of current index. 131s Use 'ls -l' to see URLs. 131s ON> Mark the current item with a single letter. This letter can then 131s be passed to the 'go' command to return to the current item later. 131s Think of it like marks in vi: 'mark a'='ma' and 'go a'=''a'. 131s Marks are temporary until shutdown (not saved to disk). 131s ON> move LIST will add the current page to the list LIST. 131s With a major twist: current page will be removed from all other lists. 131s If current page was not in a list, this command is similar to `add LIST`. 131s ON> Use Offpunk offline by only accessing cached content 131s ON> Use Offpunk online with a direct connection 131s ON> Open current item with the configured handler or xdg-open. 131s Uses "open url" to open current URL in a browser. 131s see "handler" command to set your handler. 131s ON> Display and manage the list of redirected URLs. This features is mostly useful to use privacy-friendly frontends for popular websites. 131s ON> Reload the current URL. 131s ON> Go to root selector of the server hosting current item. 131s ON> Save an item to the filesystem. 131s 'save n filename' saves menu item n to the specified filename. 131s 'save filename' saves the last viewed item to the specified filename. 131s 'save n' saves menu item n to an automagic filename. 131s ON> View or set various options. 131s ON> *** No help on shell echo test 131s ON> Subscribe to current page by saving it in the "subscribed" list. 131s If a new link is found in the page during a --sync, the new link is automatically 131s fetched and added to your next tour. 131s To unsubscribe, remove the page from the "subscribed" list. 131s ON> Synchronize all bookmarks lists and URLs from the to_fetch list. 131s - New elements in pages in subscribed lists will be added to tour 131s - Elements in list to_fetch will be retrieved and added to tour 131s - Normal lists will be synchronized and updated 131s - Frozen lists will be fetched only if not present. 131s 131s Before a sync, you can edit the list of URLs that will be fetched with the 131s following command: "list edit to_fetch" 131s 131s Argument : duration of cache validity (in seconds). 131s ON> Change the colors of your rendered text. 131s 131s "theme ELEMENT COLOR" 131s 131s ELEMENT is one of: window_title, window_subtitle, title, 131s subtitle,subsubtitle,link,oneline_link,new_link,image_link,preformatted,blockquote. 131s 131s COLOR is one or many (separated by space) of: bold, faint, italic, underline, black, 131s red, green, yellow, blue, purple, cyan, white. 131s 131s Each color can alternatively be prefaced with "bright_". 131s ON> Add index items as waypoints on a tour, which is basically a FIFO 131s queue of gemini items. 131s 131s `tour` or `t` alone brings you to the next item in your tour. 131s Items can be added with `tour 1 2 3 4` or ranges like `tour 1-4`. 131s All items in current menu can be added with `tour *`. 131s All items in $LIST can be added with `tour $LIST`. 131s Current item can be added back to the end of the tour with `tour .`. 131s Current tour can be listed with `tour ls` and scrubbed with `tour clear`. 131s ON> Print URL of most recently visited item. 131s ON> Display version and system information. 131s ON> Search on wikipedia using the configured Gemini interface. 131s The first word should be the two letters code for the language. 131s Exemple : "wikipedia en Gemini protocol" 131s But you can also use abbreviations to go faster: 131s "wen Gemini protocol". (your abbreviation might be missing, report the bug) 131s The interface used can be modified with the command: 131s "set wikipedia URL" where URL should contains two "%s", the first 131s one used for the language, the second for the search string. 131s ON> Exit Offpunk. 131s ON> Exit Offpunk. 131s ON> You can close your screen! 131s 131s # cert calls a submenu which expects then a blank line to get outside. 131s # find will call the pager 131s # gus and search will launch the client to the search engine. 131s # reload will call the pager 131s # wikipedia will require test to have Internet access 131s cat << END | offpunk 131s abbrevs 131s add 131s archive 131s back 131s blackbox 131s bookmarks 131s cat 131s cert 131s 131s copy 131s forward 131s go 131s handler 131s history 131s info 131s list 131s ls 131s mark 131s move 131s offline 131s online 131s open 131s redirect 131s root 131s save 131s set 131s shell echo test 131s subscribe 131s 131s sync 131s tour 131s theme 131s url 131s exit 131s END 132s Welcome to Offpunk! 132s Type `help` to get the list of available command. 132s ON> 132s Command Abbreviations: 132s ====================== 132s .. up 132s a add 132s b back 132s bb blackbox 132s bm bookmarks 132s book bookmarks 132s cp copy 132s f forward 132s g go 132s h history 132s hist history 132s l view 132s less view 132s man help 132s mv move 132s n next 132s off offline 132s on online 132s p previous 132s prev previous 132s q quit 132s r reload 132s s save 132s se search 132s / find 132s t tour 132s u up 132s v view 132s w wikipedia 132s wen wikipedia en 132s wfr wikipedia fr 132s wes wikipedia es 132s 132s ON> You need to 'go' somewhere, first 132s ON> You need to 'go' somewhere, first 132s ON> ON> What? 132s ON> bookmarks (0 items) (local file) 132s bookmarks 132s ON> bookmarks (0 items) (local file) 132s bookmarks 132s ON> What? 132s ON> ON> ON> ON> Go where? (hint: simply copy an URL in your clipboard) 132s ON> ON> history (1 items) (local file) 132s history 132s [1] bookmarks (bookmarks), visited on Thu Nov 14 21:10:01 2024 132s  132s ON> history (history) 132s 132s URL : list:///history 132s Mime : text/gemini 132s Cache : /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/lists/history.gmi 132s Renderer : t.GemtextRenderer 132s 132s Page is not save in any list 132s ON>  (2 items) (local file) 132s 132s Bookmarks Lists (updated during sync) 132s [1] bookmarks (0 items) 132s 132s System Lists 132s [2] history (1 items) 132s  132s ON> [1] list:///bookmarks 132s [2] list:///history 132s ON> ON> LIST argument is required as the target for your move 132s ON> Offpunk is now offline and will only access cached content 132s OFF> Offpunk is online and will access the network 132s ON> xsel: Can't open display: (null) 132s : Inappropriate ioctl for device 132s Error: Can't open display: (null) 132s error: XDG_RUNTIME_DIR is invalid or not set in the environment. 132s Failed to connect to a Wayland server: No such file or directory 132s Note: WAYLAND_DISPLAY is unset (falling back to wayland-0) 132s Note: XDG_RUNTIME_DIR is unset 132s /usr/bin/xdg-open: 1032: www-browser: not found 132s /usr/bin/xdg-open: 1032: links2: not found 132s /usr/bin/xdg-open: 1032: elinks: not found 132s /usr/bin/xdg-open: 1032: links: not found 132s /usr/bin/xdg-open: 1032: lynx: not found 132s /usr/bin/xdg-open: 1032: w3m: not found 132s xdg-open: no method available for opening '/tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/lists' 132s ON> Current redirections: 132s -------------------- 132s *twitter.com -> nitter.net 132s youtube.com -> yewtu.be 132s youtu.be -> yewtu.be 132s *reddit.com -> teddit.net 132s *medium.com -> scribe.rip 132s *admanager.google.com -> blocked 132s *tiktok.com -> blocked 132s *fbcdn.net -> blocked 132s *advertise.newrepublic.com -> blocked 132s *google-health-ads.blogspot.com -> blocked 132s *facebook.com -> blocked 132s *google-webfonts-helper.herokuapp.com -> blocked 132s *linkedin.com -> blocked 132s *advertising.amazon.com -> blocked 132s *licdn.com -> blocked 132s *ads.yahoo.com -> blocked 132s *google-analytics.com -> blocked 132s *facebook.net -> blocked 132s *doubleclick.net -> blocked 132s *firebase.google.com -> blocked 132s *advertising.theguardian.com -> blocked 132s 132s To add new, use "redirect origine.com destination.org" 132s To remove a redirect, use "redirect origine.com NONE" 132s To completely block a website, use "redirect origine.com BLOCK" 132s To block also subdomains, prefix with *: "redirect *origine.com BLOCK" 132s ON> list:/ does not exist 132s ON> Can’t save /tmp/autopkgtest.zCvvc0/autopkgtest_tmp/.local/share/offpunk/lists because it’s a folder, not a file 132s ON> accept_bad_ssl_certificates False 132s archives_size 200 132s auto_follow_redirects True 132s beta False 132s debug False 132s default_protocol gemini 132s download_images_first True 132s editor None 132s history_size 200 132s images_mode readable 132s max_size_download 10 132s redirects True 132s search gemini://kennedy.gemi.dev/search?%s 132s short_timeout 5 132s timeout 600 132s tls_mode tofu 132s width 72 132s wikipedia gemini://vault.transjovian.org:1965/search/%s/%s 132s ON> test 132s ON> No feed detected. You can still watch the page : 132s [1] list:/// [Directory] 132s 132s Which feed do you want to subscribe ? > No subscription registered 132s ON> * * * 0 to fetch in bookmarks * * * 132s * * * 0 to fetch in tour * * * 132s End of sync 132s ON> End of tour. 132s ON> window_title set to ['red', 'bold'] 132s window_subtitle set to ['red', 'faint'] 132s title set to ['blue', 'bold', 'underline'] 132s subtitle set to ['blue'] 132s subsubtitle set to ['blue', 'faint'] 132s link set to ['blue', 'faint'] 132s new_link set to ['bold'] 132s oneline_link set to [] 132s image_link set to ['yellow', 'faint'] 132s preformatted set to ['faint'] 132s blockquote set to ['italic'] 132s prompt_on set to ['green'] 132s prompt_off set to ['green'] 132s ON> list:/// 132s ON> You can close your screen! 132s 132s # 2. Checks against gemini file 132s cat << END | offpunk 132s go file://$PWD/index.gmi 132s quit 132s END 132s Welcome to Offpunk! 132s Type `help` to get the list of available command. 132s ON> index.gmi (7 items) (local file) 132s OFFPUNK - An Offline-First Browser for the Smolnet 132s 132s Offpunk is a command-line browser and feed reader dedicated to browsing 132s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 132s is optimised to be used offline with rare connections but works as well 132s when connected. 132s 132s Offpunk is optimised for reading and supports readability mode, 132s displaying pictures, subscribing to pages or RSS feeds, managing complex 132s lists of bookmarks. Its integrated help and easy commands make it a 132s perfect tool for command-line novices while power-users will be amazed 132s by its shell integration. 132s 132s Offpunk is written in Python 3 by Ploum. It aims to be portable and 132s minimise dependencies, making them optional. It supports 132s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 132s 132s 132s [1] Installing Offpunk and dependencies 132s [2] First steps 132s [3] Configuring Offpunk 132s [4] Using Offpunk offline 132s [5] Lists and subscriptions 132s [6] Shell and OS integrations 132s [7] Roadmap & Contributions 132s 132s  132s ON> You can close your screen! 132s 132s # 3. Test netcache command 132s # 3.0 Basic 132s netcache --help 133s usage: netcache [-h] [--path] [--offline] [--max-size MAX_SIZE] 133s [--timeout TIMEOUT] [--cache-validity CACHE_VALIDITY] 133s [URL ...] 133s 133s Netcache is a command-line tool to retrieve, cache and access networked 133s content. By default, netcache will returns a cached version of a given URL, 133s downloading it only if not existing. A validity duration, in seconds, can also 133s be given so that netcache downloads the content only if the existing cache is 133s older than the validity. 133s 133s positional arguments: 133s URL download URL and returns the content or the path to a 133s cached version 133s 133s options: 133s -h, --help show this help message and exit 133s --path return path to the cache instead of the content of the 133s cache 133s --offline Do not attempt to download, return cached version or 133s error 133s --max-size MAX_SIZE Cancel download of items above that size (value in 133s Mb). 133s --timeout TIMEOUT Time to wait before cancelling connection (in second). 133s --cache-validity CACHE_VALIDITY 133s maximum age, in second, of the cached version before 133s redownloading a new version 133s # 3.1 Various suboptions 133s OUT="$(netcache --path "file://$PWD/index.gmi")" 133s echo "$OUT" | grep -q "$PWD/index.gmi" 133s # (Note that the file local do not feed the user's cache.) 133s # 3.2 Main functionality 133s netcache "file://$PWD/index.gmi" 133s # OFFPUNK - An Offline-First Browser for the Smolnet 133s 133s Offpunk is a command-line browser and feed reader dedicated to browsing the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it is optimised to be used offline with rare connections but works as well when connected. 133s 133s Offpunk is optimised for reading and supports readability mode, displaying pictures, subscribing to pages or RSS feeds, managing complex lists of bookmarks. Its integrated help and easy commands make it a perfect tool for command-line novices while power-users will be amazed by its shell integration. 133s 133s Offpunk is written in Python 3 by Ploum. It aims to be portable and minimise dependencies, making them optional. It supports http/https/gopher/gemini/spartan on both IPv4 and IPv6. 133s 133s 133s => install.gmi Installing Offpunk and dependencies 133s => tutorial.gmi First steps 133s => config.gmi Configuring Offpunk 133s => offline.gmi Using Offpunk offline 133s => lists.gmi Lists and subscriptions 133s => shell.gmi Shell and OS integrations 133s => dev.gmi Roadmap & Contributions 133s 133s 133s netcache --offline "file://$PWD/index.gmi" 134s # OFFPUNK - An Offline-First Browser for the Smolnet 134s 134s Offpunk is a command-line browser and feed reader dedicated to browsing the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it is optimised to be used offline with rare connections but works as well when connected. 134s 134s Offpunk is optimised for reading and supports readability mode, displaying pictures, subscribing to pages or RSS feeds, managing complex lists of bookmarks. Its integrated help and easy commands make it a perfect tool for command-line novices while power-users will be amazed by its shell integration. 134s 134s Offpunk is written in Python 3 by Ploum. It aims to be portable and minimise dependencies, making them optional. It supports http/https/gopher/gemini/spartan on both IPv4 and IPv6. 134s 134s 134s => install.gmi Installing Offpunk and dependencies 134s => tutorial.gmi First steps 134s => config.gmi Configuring Offpunk 134s => offline.gmi Using Offpunk offline 134s => lists.gmi Lists and subscriptions 134s => shell.gmi Shell and OS integrations 134s => dev.gmi Roadmap & Contributions 134s 134s 134s netcache --max-size 1 "file://$PWD/index.gmi" 134s # OFFPUNK - An Offline-First Browser for the Smolnet 134s 134s Offpunk is a command-line browser and feed reader dedicated to browsing the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it is optimised to be used offline with rare connections but works as well when connected. 134s 134s Offpunk is optimised for reading and supports readability mode, displaying pictures, subscribing to pages or RSS feeds, managing complex lists of bookmarks. Its integrated help and easy commands make it a perfect tool for command-line novices while power-users will be amazed by its shell integration. 134s 134s Offpunk is written in Python 3 by Ploum. It aims to be portable and minimise dependencies, making them optional. It supports http/https/gopher/gemini/spartan on both IPv4 and IPv6. 134s 134s 134s => install.gmi Installing Offpunk and dependencies 134s => tutorial.gmi First steps 134s => config.gmi Configuring Offpunk 134s => offline.gmi Using Offpunk offline 134s => lists.gmi Lists and subscriptions 134s => shell.gmi Shell and OS integrations 134s => dev.gmi Roadmap & Contributions 134s 134s 134s # Note that testing the --timeout looks to need Internet, so we'll skip this 134s # option for now. 134s 134s # 4. Test ansicat 134s # 4.0 Basic 134s ansicat --help 135s usage: ansicat [-h] 135s [--format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext}] 135s [--mime MIME] [--url [URL ...]] [--mode MODE] 135s [INPUT ...] 135s 135s ansicat is a terminal rendering tool that will render multiple formats (HTML, 135s Gemtext, RSS, Gophermap, Image) into ANSI text and colors. When used on a 135s file, ansicat will try to autodetect the format. When used with standard 135s input, the format must be manually specified. If the content contains links, 135s the original URL of the content can be specified in order to correctly modify 135s relatives links. 135s 135s positional arguments: 135s INPUT Path to the text to render (default to stdin) 135s 135s options: 135s -h, --help show this help message and exit 135s --format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext} 135s Renderer to use. Available: auto, gemtext, html, feed, 135s gopher, image, folder, plaintext 135s --mime MIME Mime of the content to parse 135s --url [URL ...] Original URL of the content 135s --mode MODE Which mode should be used to render: normal (default), 135s full or source. With HTML, the normal mode try to 135s extract the article. 135s # 4.1 Test some ansicat formats and options 135s # WARNING: there is something about autopkgtest environment that causes the two 135s # below commands to crash, but running them by hand works perfectly. 135s # This may indicate fragility in the tool, but it is curious that the 135s # 4.2 section below gave no difficulty: if this crashes too, then it 135s # may be reasonable to skip it as well. 135s #ansicat --format plaintext index.gmi 135s #ansicat --mime text/plain index.gmi 135s # 4.2 Main functionality 135s ansicat --url "file://$PWD/index.gmi" index.gmi 135s Format or mime should be specified when running with stdin 135s 135s # 5. Test opnk 135s # 5.0 Basic 135s opnk --help 135s usage: opnk [-h] [--mode MODE] [--cache-validity CACHE_VALIDITY] [INPUT ...] 135s 135s opnk is an universal open command tool that will try to display any file in 135s the pager less after rendering its content with ansicat. If that fails, opnk 135s will fallback to opening the file with xdg-open. If given an URL as input 135s instead of a path, opnk will rely on netcache to get the networked content. 135s 135s positional arguments: 135s INPUT Path to the file or URL to open 135s 135s options: 135s -h, --help show this help message and exit 135s --mode MODE Which mode should be used to render: normal (default), 135s full or source. With HTML, the normal mode try to 135s extract the article. 135s --cache-validity CACHE_VALIDITY 135s maximum age, in second, of the cached version before 135s redownloading a new version 135s # 5.1 Open some things (but stick to not needing Internet). 135s opnk /usr/share/doc/offpunk/copyright 136s copyright (3 items) (local file) 136s Format: https://www.debian.org/doc/packaging-manuals/copyright- 136s format/1.0/ 136s Upstream-Name: Offpunk 136s Upstream-Contact: Lionel "Ploum" Dricot 136s Source: https://git.sr.ht/~lioploum/offpunk/ 136s 136s Files: * 136s Copyright: 2019-2020, Solderpunk 136s 2021-2024, Ploum and contributors. 136s License: AGPL-3 136s Comment: Derived from AV-98[1] by Solderpunk. 136s [1]: https://tildegit.org/solderpunk/AV-98 136s 136s Files: debian/* 136s Copyright: 2023-2024, Étienne Mollier 136s License: AGPL-3 136s 136s License: AGPL-3 136s Copyright (c) 2022, Ploum and contributors. 136s All rights reserved. 136s . 136s Copyright (C) 2007 Free Software Foundation, Inc. 136s Everyone is permitted to copy and distribute verbatim copies 136s of this license document, but changing it is not allowed. 136s . 136s Preamble 136s . 136s The GNU Affero General Public License is a free, copyleft license for 136s software and other kinds of works, specifically designed to ensure 136s cooperation with the community in the case of network server software. 136s . 136s The licenses for most software and other practical works are designed 136s to take away your freedom to share and change the works. By contrast, 136s our General Public Licenses are intended to guarantee your freedom to 136s share and change all versions of a program--to make sure it remains 136s free 136s software for all its users. 136s . 136s When we speak of free software, we are referring to freedom, not 136s price. Our General Public Licenses are designed to make sure that you 136s have the freedom to distribute copies of free software (and charge for 136s them if you wish), that you receive source code or can get it if you 136s want it, that you can change the software or use pieces of it in new 136s free programs, and that you know you can do these things. 136s . 136s Developers that use our General Public Licenses protect your rights 136s with two steps: (1) assert copyright on the software, and (2) offer 136s you this License which gives you legal permission to copy, distribute 136s and/or modify the software. 136s . 136s A secondary benefit of defending all users' freedom is that 136s improvements made in alternate versions of the program, if they 136s receive widespread use, become available for other developers to 136s incorporate. Many developers of free software are heartened and 136s encouraged by the resulting cooperation. However, in the case of 136s software used on network servers, this result may fail to come about. 136s The GNU General Public License permits making a modified version and 136s letting the public access it on a server without ever releasing its 136s source code to the public. 136s . 136s The GNU Affero General Public License is designed specifically to 136s ensure that, in such cases, the modified source code becomes available 136s to the community. It requires the operator of a network server to 136s provide the source code of the modified version running there to the 136s users of that server. Therefore, public use of a modified version, on 136s a publicly accessible server, gives the public access to the source 136s code of the modified version. 136s . 136s An older license, called the Affero General Public License and 136s published by Affero, was designed to accomplish similar goals. This is 136s a different license, not a version of the Affero GPL, but Affero has 136s released a new version of the Affero GPL which permits relicensing 136s under 136s this license. 136s . 136s The precise terms and conditions for copying, distribution and 136s modification follow. 136s . 136s TERMS AND CONDITIONS 136s . 136s 0. Definitions. 136s . 136s "This License" refers to version 3 of the GNU Affero General Public 136s License. 136s . 136s "Copyright" also means copyright-like laws that apply to other kinds of 136s works, such as semiconductor masks. 136s . 136s "The Program" refers to any copyrightable work licensed under this 136s License. Each licensee is addressed as "you". "Licensees" and 136s "recipients" may be individuals or organizations. 136s . 136s To "modify" a work means to copy from or adapt all or part of the work 136s in a fashion requiring copyright permission, other than the making of 136s an 136s exact copy. The resulting work is called a "modified version" of the 136s earlier work or a work "based on" the earlier work. 136s . 136s A "covered work" means either the unmodified Program or a work based 136s on the Program. 136s . 136s To "propagate" a work means to do anything with it that, without 136s permission, would make you directly or secondarily liable for 136s infringement under applicable copyright law, except executing it on a 136s computer or modifying a private copy. Propagation includes copying, 136s distribution (with or without modification), making available to the 136s public, and in some countries other activities as well. 136s . 136s To "convey" a work means any kind of propagation that enables other 136s parties to make or receive copies. Mere interaction with a user 136s through 136s a computer network, with no transfer of a copy, is not conveying. 136s . 136s An interactive user interface displays "Appropriate Legal Notices" 136s to the extent that it includes a convenient and prominently visible 136s feature that (1) displays an appropriate copyright notice, and (2) 136s tells the user that there is no warranty for the work (except to the 136s extent that warranties are provided), that licensees may convey the 136s work under this License, and how to view a copy of this License. If 136s the interface presents a list of user commands or options, such as a 136s menu, a prominent item in the list meets this criterion. 136s . 136s 1. Source Code. 136s . 136s The "source code" for a work means the preferred form of the work 136s for making modifications to it. "Object code" means any non-source 136s form of a work. 136s . 136s A "Standard Interface" means an interface that either is an official 136s standard defined by a recognized standards body, or, in the case of 136s interfaces specified for a particular programming language, one that 136s is widely used among developers working in that language. 136s . 136s The "System Libraries" of an executable work include anything, other 136s than the work as a whole, that (a) is included in the normal form of 136s packaging a Major Component, but which is not part of that Major 136s Component, and (b) serves only to enable use of the work with that 136s Major Component, or to implement a Standard Interface for which an 136s implementation is available to the public in source code form. A 136s "Major Component", in this context, means a major essential component 136s (kernel, window system, and so on) of the specific operating system 136s (if any) on which the executable work runs, or a compiler used to 136s produce the work, or an object code interpreter used to run it. 136s . 136s The "Corresponding Source" for a work in object code form means all 136s the source code needed to generate, install, and (for an executable 136s work) run the object code and to modify the work, including scripts to 136s control those activities. However, it does not include the work's 136s System Libraries, or general-purpose tools or generally available free 136s programs which are used unmodified in performing those activities but 136s which are not part of the work. For example, Corresponding Source 136s includes interface definition files associated with source files for 136s the work, and the source code for shared libraries and dynamically 136s linked subprograms that the work is specifically designed to require, 136s such as by intimate data communication or control flow between those 136s subprograms and other parts of the work. 136s . 136s The Corresponding Source need not include anything that users 136s can regenerate automatically from other parts of the Corresponding 136s Source. 136s . 136s The Corresponding Source for a work in source code form is that 136s same work. 136s . 136s 2. Basic Permissions. 136s . 136s All rights granted under this License are granted for the term of 136s copyright on the Program, and are irrevocable provided the stated 136s conditions are met. This License explicitly affirms your unlimited 136s permission to run the unmodified Program. The output from running a 136s covered work is covered by this License only if the output, given its 136s content, constitutes a covered work. This License acknowledges your 136s rights of fair use or other equivalent, as provided by copyright law. 136s . 136s You may make, run and propagate covered works that you do not 136s convey, without conditions so long as your license otherwise remains 136s in force. You may convey covered works to others for the sole purpose 136s of having them make modifications exclusively for you, or provide you 136s with facilities for running those works, provided that you comply with 136s the terms of this License in conveying all material for which you do 136s not control copyright. Those thus making or running the covered works 136s for you must do so exclusively on your behalf, under your direction 136s and control, on terms that prohibit them from making any copies of 136s your copyrighted material outside their relationship with you. 136s . 136s Conveying under any other circumstances is permitted solely under 136s the conditions stated below. Sublicensing is not allowed; section 10 136s makes it unnecessary. 136s . 136s 3. Protecting Users' Legal Rights From Anti-Circumvention Law. 136s . 136s No covered work shall be deemed part of an effective technological 136s measure under any applicable law fulfilling obligations under article 136s 11 of the WIPO copyright treaty adopted on 20 December 1996, or 136s similar laws prohibiting or restricting circumvention of such 136s measures. 136s . 136s When you convey a covered work, you waive any legal power to forbid 136s circumvention of technological measures to the extent such 136s circumvention 136s is effected by exercising rights under this License with respect to 136s the covered work, and you disclaim any intention to limit operation or 136s modification of the work as a means of enforcing, against the work's 136s users, your or third parties' legal rights to forbid circumvention of 136s technological measures. 136s . 136s 4. Conveying Verbatim Copies. 136s . 136s You may convey verbatim copies of the Program's source code as you 136s receive it, in any medium, provided that you conspicuously and 136s appropriately publish on each copy an appropriate copyright notice; 136s keep intact all notices stating that this License and any 136s non-permissive terms added in accord with section 7 apply to the code; 136s keep intact all notices of the absence of any warranty; and give all 136s recipients a copy of this License along with the Program. 136s . 136s You may charge any price or no price for each copy that you convey, 136s and you may offer support or warranty protection for a fee. 136s . 136s 5. Conveying Modified Source Versions. 136s . 136s You may convey a work based on the Program, or the modifications to 136s produce it from the Program, in# 5.2 Main functionality 136s opnk index.gmi 136s the form of source code under the 136s terms of section 4, provided that you also meet all of these 136s conditions: 136s . 136s a) The work must carry prominent notices stating that you modified 136s it, and giving a relevant date. 136s . 136s b) The work must carry prominent notices stating that it is 136s released under this License and any conditions added under section 136s 7. This requirement modifies the requirement in section 4 to 136s "keep intact all notices". 136s . 136s c) You must license the entire work, as a whole, under this 136s License to anyone who comes into possession of a copy. This 136s License will therefore apply, along with any applicable section 7 136s additional terms, to the whole of the work, and all its parts, 136s regardless of how they are packaged. This License gives no 136s permission to license the work in any other way, but it does not 136s invalidate such permission if you have separately received it. 136s . 136s d) If the work has interactive user interfaces, each must display 136s Appropriate Legal Notices; however, if the Program has interactive 136s interfaces that do not display Appropriate Legal Notices, your 136s work need not make them do so. 136s . 136s A compilation of a covered work with other separate and independent 136s works, which are not by their nature extensions of the covered work, 136s and which are not combined with it such as to form a larger program, 136s in or on a volume of a storage or distribution medium, is called an 136s "aggregate" if the compilation and its resulting copyright are not 136s used to limit the access or legal rights of the compilation's users 136s beyond what the individual works permit. Inclusion of a covered work 136s in an aggregate does not cause this License to apply to the other 136s parts of the aggregate. 136s . 136s 6. Conveying Non-Source Forms. 136s . 136s You may convey a covered work in object code form under the terms 136s of sections 4 and 5, provided that you also convey the 136s machine-readable Corresponding Source under the terms of this License, 136s in one of these ways: 136s . 136s a) Convey the object code in, or embodied in, a physical product 136s (including a physical distribution medium), accompanied by the 136s Corresponding Source fixed on a durable physical medium 136s customarily used for software interchange. 136s . 136s b) Convey the object code in, or embodied in, a physical product 136s (including a physical distribution medium), accompanied by a 136s written offer, valid for at least three years and valid for as 136s long as you offer spare parts or customer support for that product 136s model, to give anyone who possesses the object code either (1) a 136s copy of the Corresponding Source for all the software in the 136s product that is covered by this License, on a durable physical 136s medium customarily used for software interchange, for a price no 136s more than your reasonable cost of physically performing this 136s conveying of source, or (2) access to copy the 136s Corresponding Source from a network server at no charge. 136s . 136s c) Convey individual copies of the object code with a copy of the 136s written offer to provide the Corresponding Source. This 136s alternative is allowed only occasionally and noncommercially, and 136s only if you received the object code with such an offer, in accord 136s with subsection 6b. 136s . 136s d) Convey the object code by offering access from a designated 136s place (gratis or for a charge), and offer equivalent access to the 136s Corresponding Source in the same way through the same place at no 136s further charge. You need not require recipients to copy the 136s Corresponding Source along with the object code. If the place to 136s copy the object code is a network server, the Corresponding Source 136s may be on a different server (operated by you or a third party) 136s that supports equivalent copying facilities, provided you maintain 136s clear directions next to the object code saying where to find the 136s Corresponding Source. Regardless of what server hosts the 136s Corresponding Source, you remain obligated to ensure that it is 136s available for as long as needed to satisfy these requirements. 136s . 136s e) Convey the object code using peer-to-peer transmission, provided 136s you inform other peers where the object code and Corresponding 136s Source of the work are being offered to the general public at no 136s charge under subsection 6d. 136s . 136s A separable portion of the object code, whose source code is excluded 136s from the Corresponding Source as a System Library, need not be 136s included in conveying the object code work. 136s . 136s A "User Product" is either (1) a "consumer product", which means any 136s tangible personal property which is normally used for personal, family, 136s or household purposes, or (2) anything designed or sold for 136s incorporation 136s into a dwelling. In determining whether a product is a consumer 136s product, 136s doubtful cases shall be resolved in favor of coverage. For a 136s particular 136s product received by a particular user, "normally used" refers to a 136s typical or common use of that class of product, regardless of the 136s status 136s of the particular user or of the way in which the particular user 136s actually uses, or expects or is expected to use, the product. A 136s product 136s is a consumer product regardless of whether the product has substantial 136s commercial, industrial or non-consumer uses, unless such uses represent 136s the only significant mode of use of the product. 136s . 136s "Installation Information" for a User Product means any methods, 136s procedures, authorization keys, or other information required to 136s install 136s and execute modified versions of a covered work in that User Product 136s from 136s a modified version of its Corresponding Source. The information must 136s suffice to ensure that the continued functioning of the modified object 136s code is in no case prevented or interfered with solely because 136s modification has been made. 136s . 136s If you convey an object code work under this section in, or with, or 136s specifically for use in, a User Product, and the conveying occurs as 136s part of a transaction in which the right of possession and use of the 136s User Product is transferred to the recipient in perpetuity or for a 136s fixed term (regardless of how the transaction is characterized), the 136s Corresponding Source conveyed under this section must be accompanied 136s by the Installation Information. But this requirement does not apply 136s if neither you nor any third party retains the ability to install 136s modified object code on the User Product (for example, the work has 136s been installed in ROM). 136s . 136s The requirement to provide Installation Information does not include a 136s requirement to continue to provide support service, warranty, or 136s updates 136s for a work that has been modified or installed by the recipient, or for 136s the User Product in which it has been modified or installed. Access to 136s a 136s network may be denied when the modification itself materially and 136s adversely affects the operation of the network or violates the rules 136s and 136s protocols for communication across the network. 136s . 136s Corresponding Source conveyed, and Installation Information provided, 136s in accord with this section must be in a format that is publicly 136s documented (and with an implementation available to the public in 136s source code form), and must require no special password or key for 136s unpacking, reading or copying. 136s . 136s 7. Additional Terms. 136s . 136s "Additional permissions" are terms that supplement the terms of this 136s License by making exceptions from one or more of its conditions. 136s Additional permissions that are applicable to the entire Program shall 136s be treated as though they were included in this License, to the extent 136s that they are valid under applicable law. If additional permissions 136s apply only to part of the Program, that part may be used separately 136s under those permissions, but the entire Program remains governed by 136s this License without regard to the additional permissions. 136s . 136s When you convey a copy of a covered work, you may at your option 136s remove any additional permissions from that copy, or from any part of 136s it. (Additional permissions may be written to require their own 136s removal in certain cases when you modify the work.) You may place 136s additional permissions on material, added by you to a covered work, 136s for which you have or can give appropriate copyright permission. 136s . 136s Notwithstanding any other provision of this License, for material you 136s add to a covered work, you may (if authorized by the copyright holders 136s of 136s that material) supplement the terms of this License with terms: 136s . 136s a) Disclaiming warranty or limiting liability differently from the 136s terms of sections 15 and 16 of this License; or 136s . 136s b) Requiring preservation of specified reasonable legal notices or 136s author attributions in that material or in the Appropriate Legal 136s Notices displayed by works containing it; or 136s . 136s c) Prohibiting misrepresentation of the origin of that material, or 136s requiring that modified versions of such material be marked in 136s reasonable ways as different from the original version; or 136s . 136s d) Limiting the use for publicity purposes of names of licensors or 136s authors of the material; or 136s . 136s e) Declining to grant rights under trademark law for use of some 136s trade names, trademarks, or service marks; or 136s . 136s f) Requiring indemnification of licensors and authors of that 136s material by anyone who conveys the material (or modified versions 136s of 136s it) with contractual assumptions of liability to the recipient, for 136s any liability that these contractual assumptions directly impose on 136s those licensors and authors. 136s . 136s All other non-permissive additional terms are considered "further 136s restrictions" within the meaning of section 10. If the Program as you 136s received it, or any part of it, contains a notice stating that it is 136s governed by this License along with a term that is a further 136s restriction, you may remove that term. If a license document contains 136s a further restriction but permits relicensing or conveying under this 136s License, you may add to a covered work material governed by the terms 136s of that license document, provided that the further restriction does 136s not survive such relicensing or conveying. 136s . 136s If you add terms to a covered work in accord with this section, you 136s must place, in the relevant source files, a statement of the 136s additional terms that apply to those files, or a notice indicating 136s where to find the applicable terms. 136s . 136s Additional terms, permissive or non-permissive, may be stated in the 136s form of a separately written license, or stated as exceptions; 136s the above requirements apply either way. 136s . 136s 8. Termination. 136s . 136s You may not propagate or modify a covered work except as expressly 136s provided under this License. Any attempt otherwise to propagate or 136s modify it is void, and will automatically terminate your rights under 136s this License (including any patent licenses granted under the third 136s paragraph of section 11). 136s . 136s However, if you cease all violation of this License, then your 136s license from a particular copyright holder is reinstated (a) 136s provisionally, unless and until the copyright holder explicitly and 136s finally terminates your license, and (b) permanently, if the copyright 136s holder fails to notify you of the violation by some reasonable means 136s prior to 60 days after the cessation. 136s . 136s Moreover, your license from a particular copyright holder is 136s reinstated permanently if the copyright holder notifies you of the 136s violation by some reasonable means, this is the first time you have 136s received notice of violation of this License (for any work) from that 136s copyright holder, and you cure the violation prior to 30 days after 136s your receipt of the notice. 136s . 136s Termination of your rights under this section does not terminate the 136s licenses of parties who have received copies or rights from you under 136s this License. If your rights have been terminated and not permanently 136s reinstated, you do not qualify to receive new licenses for the same 136s material under section 10. 136s . 136s 9. Acceptance Not Required for Having Copies. 136s . 136s You are not required to accept this License in order to receive or 136s run a copy of the Program. Ancillary propagation of a covered work 136s occurring solely as a consequence of using peer-to-peer transmission 136s to receive a copy likewise does not require acceptance. However, 136s nothing other than this License grants you permission to propagate or 136s modify any covered work. These actions infringe copyright if you do 136s not accept this License. Therefore, by modifying or propagating a 136s covered work, you indicate your acceptance of this License to do so. 136s . 136s 10. Automatic Licensing of Downstream Recipients. 136s . 136s Each time you convey a covered work, the recipient automatically 136s receives a license from the original licensors, to run, modify and 136s propagate that work, subject to this License. You are not responsible 136s for enforcing compliance by third parties with this License. 136s . 136s An "entity transaction" is a transaction transferring control of an 136s organization, or substantially all assets of one, or subdividing an 136s organization, or merging organizations. If propagation of a covered 136s work results from an entity transaction, each party to that 136s transaction who receives a copy of the work also receives whatever 136s licenses to the work the party's predecessor in interest had or could 136s give under the previous paragraph, plus a right to possession of the 136s Corresponding Source of the work from the predecessor in interest, if 136s the predecessor has it or can get it with reasonable efforts. 136s . 136s You may not impose any further restrictions on the exercise of the 136s rights granted or affirmed under this License. For example, you may 136s not impose a license fee, royalty, or other charge for exercise of 136s rights granted under this License, and you may not initiate litigation 136s (including a cross-claim or counterclaim in a lawsuit) alleging that 136s any patent claim is infringed by making, using, selling, offering for 136s sale, or importing the Program or any portion of it. 136s . 136s 11. Patents. 136s . 136s A "contributor" is a copyright holder who authorizes use under this 136s License of the Program or a work on which the Program is based. The 136s work thus licensed is called the contributor's "contributor version". 136s . 136s A contributor's "essential patent claims" are all patent claims 136s owned or controlled by the contributor, whether already acquired or 136s hereafter acquired, that would be infringed by some manner, permitted 136s by this License, of making, using, or selling its contributor version, 136s but do not include claims that would be infringed only as a 136s consequence of further modification of the contributor version. For 136s purposes of this definition, "control" includes the right to grant 136s patent sublicenses in a manner consistent with the requirements of 136s this License. 136s . 136s Each contributor grants you a non-exclusive, worldwide, royalty-free 136s patent license under the contributor's essential patent claims, to 136s make, use, sell, offer for sale, import and otherwise run, modify and 136s propagate the contents of its contributor version. 136s . 136s In the following three paragraphs, a "patent license" is any express 136s agreement or commitment, however denominated, not to enforce a patent 136s (such as an express permission to practice a patent or covenant not to 136s sue for patent infringement). To "grant" such a patent license to a 136s party means to make such an agreement or commitment not to enforce a 136s patent against the party. 136s . 136s If you convey a covered work, knowingly relying on a patent license, 136s and the Corresponding Source of the work is not available for anyone 136s to copy, free of charge and under the terms of this License, through a 136s publicly available network server or other readily accessible means, 136s then you must either (1) cause the Corresponding Source to be so 136s available, or (2) arrange to deprive yourself of the benefit of the 136s patent license for this particular work, or (3) arrange, in a manner 136s consistent with the requirements of this License, to extend the patent 136s license to downstream recipients. "Knowingly relying" means you have 136s actual knowledge that, but for the patent license, your conveying the 136s covered work in a country, or your recipient's use of the covered work 136s in a country, would infringe one or more identifiable patents in that 136s country that you have reason to believe are valid. 136s . 136s If, pursuant to or in connection with a single transaction or 136s arrangement, you convey, or propagate by procuring conveyance of, a 136s covered work, and grant a patent license to some of the parties 136s receiving the covered work authorizing them to use, propagate, modify 136s or convey a specific copy of the covered work, then the patent license 136s you grant is automatically extended to all recipients of the covered 136s work and works based on it. 136s . 136s A patent license is "discriminatory" if it does not include within 136s the scope of its coverage, prohibits the exercise of, or is 136s conditioned on the non-exercise of one or more of the rights that are 136s specifically granted under this License. You may not convey a covered 136s work if you are a party to an arrangement with a third party that is 136s in the business of distributing software, under which you make payment 136s to the third party based on the extent of your activity of conveying 136s the work, and under which the third party grants, to any of the 136s parties who would receive the covered work from you, a discriminatory 136s patent license (a) in connection with copies of the covered work 136s conveyed by you (or copies made from those copies), or (b) primarily 136s for and in connection with specific products or compilations that 136s contain the covered work, unless you entered into that arrangement, 136s or that patent license was granted, prior to 28 March 2007. 136s . 136s Nothing in this License shall be construed as excluding or limiting 136s any implied license or other defenses to infringement that may 136s otherwise be available to you under applicable patent law. 136s . 136s 12. No Surrender of Others' Freedom. 136s . 136s If conditions are imposed on you (whether by court order, agreement or 136s otherwise) that contradict the conditions of this License, they do not 136s excuse you from the conditions of this License. If you cannot convey a 136s covered work so as to satisfy simultaneously your obligations under 136s this 136s License and any other pertinent obligations, then as a consequence you 136s may 136s not convey it at all. For example, if you agree to terms that obligate 136s you 136s to collect a royalty for further conveying from those to whom you 136s convey 136s the Program, the only way you could satisfy both those terms and this 136s License would be to refrain entirely from conveying the Program. 136s . 136s 13. Remote Network Interaction; Use with the GNU General Public 136s License. 136s . 136s Notwithstanding any other provision of this License, if you modify the 136s Program, your modified version must prominently offer all users 136s interacting with it remotely through a computer network (if your 136s version 136s supports such interaction) an opportunity to receive the Corresponding 136s Source of your version by providing access to the Corresponding Source 136s from a network server at no charge, through some standard or customary 136s means of facilitating copying of software. This Corresponding Source 136s shall include the Corresponding Source for any work covered by version 136s 3 136s of the GNU General Public License that is incorporated pursuant to the 136s following paragraph. 136s . 136s Notwithstanding any other provision of this License, you have 136s permission to link or combine any covered work with a work licensed 136s under version 3 of the GNU General Public License into a single 136s combined work, and to convey the resulting work. The terms of this 136s License will continue to apply to the part which is the covered work, 136s but the work with which it is combined will remain governed by version 136s 3 of the GNU General Public License. 136s . 136s 14. Revised Versions of this License. 136s . 136s The Free Software Foundation may publish revised and/or new versions of 136s the GNU Affero General Public License from time to time. Such new 136s versions 136s will be similar in spirit to the present version, but may differ in 136s detail to 136s address new problems or concerns. 136s . 136s Each version is given a distinguishing version number. If the 136s Program specifies that a certain numbered version of the GNU Affero 136s General 136s Public License "or any later version" applies to it, you have the 136s option of following the terms and conditions either of that numbered 136s version or of any later version published by the Free Software 136s Foundation. If the Program does not specify a version number of the 136s GNU Affero General Public License, you may choose any version ever 136s published 136s by the Free Software Foundation. 136s . 136s If the Program specifies that a proxy can decide which future 136s versions of the GNU Affero General Public License can be used, that 136s proxy's 136s public statement of acceptance of a version permanently authorizes you 136s to choose that version for the Program. 136s . 136s Later license versions may give you additional or different 136s permissions. However, no additional obligations are imposed on any 136s author or copyright holder as a result of your choosing to follow a 136s later version. 136s . 136s 15. Disclaimer of Warranty. 136s . 136s THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY 136s APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT 136s HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT 136s WARRANTY 136s OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED 136s TO, 136s THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 136s PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE 136s PROGRAM 136s IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST 136s OF 136s ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 136s . 136s 16. Limitation of Liability. 136s . 136s IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 136s WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR 136s CONVEYS 136s THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING 136s ANY 136s GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF 136s THE 136s USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS 136s OF 136s DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR 136s THIRD 136s PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 136s PROGRAMS), 136s EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY 136s OF 136s SUCH DAMAGES. 136s . 136s 17. Interpretation of Sections 15 and 16. 136s . 136s If the disclaimer of warranty and limitation of liability provided 136s above cannot be given local legal effect according to their terms, 136s reviewing courts shall apply local law that most closely approximates 136s an absolute waiver of all civil liability in connection with the 136s Program, unless a warranty or assumption of liability accompanies a 136s copy of the Program in return for a fee. 136s . 136s END OF TERMS AND CONDITIONS 136s . 136s How to Apply These Terms to Your New Programs 136s . 136s If you develop a new program, and you want it to be of the greatest 136s possible use to the public, the best way to achieve this is to make it 136s free software which everyone can redistribute and change under these 136s terms. 136s . 136s To do so, attach the following notices to the program. It is safest 136s to attach them to the start of each source file to most effectively 136s state the exclusion of warranty; and each file should have at least 136s the "copyright" line and a pointer to where the full notice is found. 136s . 136s 136s Copyright (C) 136s . 136s This program is free software: you can redistribute it and/or 136s modify 136s it under the terms of the GNU Affero General Public License as 136s published by 136s the Free Software Foundation, either version 3 of the License, or 136s (at your option) any later version. 136s . 136s This program is distributed in the hope that it will be useful, 136s but WITHOUT ANY WARRANTY; without even the implied warranty of 136s MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 136s GNU Affero General Public License for more details. 136s . 136s You should have received a copy of the GNU Affero General Public 136s License 136s along with this program. If not, see 136s . 136s . 136s Also add information on how to contact you by electronic and paper 136s mail. 136s . 136s If your software can interact with users remotely through a computer 136s network, you should also make sure that it provides a way for users to 136s get its source. For example, if your program is a web application, its 136s interface could display a "Source" link that leads users to an archive 136s of the code. There are many ways you could offer source, and different 136s solutions will be better for different programs; see section 13 for the 136s specific requirements. 136s . 136s You should also get your employer (if you work as a programmer) or 136s school, 136s if any, to sign a "copyright disclaimer" for the program, if necessary. 136s For more information on this, and how to apply and follow the GNU AGPL, 136s see 136s . 136s index.gmi (7 items) (local file) 136s OFFPUNK - An Offline-First Browser for the Smolnet 136s 136s Offpunk is a command-line browser and feed reader dedicated to browsing 136s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 136s is optimised to be used offline with rare connections but works as well 136s when connected. 136s 136s Offpunk is optimised for reading and supports readability mode, 136s displaying pictures, subscribing to pages or RSS feeds, managing complex 136s lists of bookmarks. Its integrated help and easy commands make it a 136s perfect tool for command-line novices while power-users will be amazed 136s by its shell integration. 136s 136s Offpunk is written in Python 3 by Ploum. It aims to be portable and 136s minimise dependencies, making them optional. It supports 136s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 136s 136s 136s [1] Installing Offpunk and dependencies 136s [2] First steps 136s [3] Configuring Offpunk 136s [4] Using Offpunk offline 136s [5] Lists and subscriptions 136s [6] Shell and OS integrations 136s [7] Roadmap & Contributions 136s 136s  137s autopkgtest [21:10:07]: test run-commands: -----------------------] 137s autopkgtest [21:10:07]: test run-commands: - - - - - - - - - - results - - - - - - - - - - 137s run-commands PASS 138s autopkgtest [21:10:08]: @@@@@@@@@@@@@@@@@@@@ summary 138s run-commands PASS 138s run-commands PASS 138s run-commands PASS 142s nova [W] Skipping flock for amd64 142s Creating nova instance adt-plucky-i386-offpunk-20241114-210749-juju-7f2275-prod-proposed-migration-environment-15-c36b0b12-2a25-42e2-b00e-9fd6978545fe from image adt/ubuntu-plucky-amd64-server-20241114.img (UUID 79d80331-8736-463c-82c6-8c9e13c0a4ca)...