0s autopkgtest [05:52:18]: starting date and time: 2025-10-28 05:52:18+0000 0s autopkgtest [05:52:18]: git checkout: 4b346b80 nova: make wait_reboot return success even when a no-op 0s autopkgtest [05:52:18]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.onnpo16g/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:beautifulsoup4 --apt-upgrade offpunk --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=beautifulsoup4/4.14.2-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-s390x --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos03-s390x-13.secgroup --name adt-resolute-s390x-offpunk-20251028-055217-juju-7f2275-prod-proposed-migration-environment-2-14e964c4-7262-4e5b-9053-a2a3880ee370 --image adt/ubuntu-resolute-s390x-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-proposed-migration-s390x -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 4s Creating nova instance adt-resolute-s390x-offpunk-20251028-055217-juju-7f2275-prod-proposed-migration-environment-2-14e964c4-7262-4e5b-9053-a2a3880ee370 from image adt/ubuntu-resolute-s390x-server-20251028.img (UUID 222a8a17-8cdf-422e-baeb-91db113eb3ff)... 55s autopkgtest [05:53:13]: testbed dpkg architecture: s390x 55s autopkgtest [05:53:13]: testbed apt version: 3.1.8ubuntu1 55s autopkgtest [05:53:13]: @@@@@@@@@@@@@@@@@@@@ test bed setup 56s autopkgtest [05:53:14]: testbed release detected to be: None 56s autopkgtest [05:53:14]: updating testbed package index (apt update) 57s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [87.8 kB] 57s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 57s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 57s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 57s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5856 B] 57s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [3342 kB] 61s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [61.7 kB] 61s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [216 kB] 62s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main s390x Packages [231 kB] 62s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/restricted s390x Packages [940 B] 62s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/universe s390x Packages [692 kB] 63s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse s390x Packages [5116 B] 63s Fetched 4642 kB in 7s (703 kB/s) 64s Reading package lists... 65s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 65s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 65s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 65s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 65s Reading package lists... 65s Reading package lists... 66s Building dependency tree... 66s Reading state information... 66s Calculating upgrade... 66s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 66s autopkgtest [05:53:24]: upgrading testbed (apt dist-upgrade and autopurge) 66s Reading package lists... 66s Building dependency tree... 66s Reading state information... 66s Calculating upgrade... 66s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 67s Reading package lists... 67s Building dependency tree... 67s Reading state information... 67s Solving dependencies... 67s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 69s autopkgtest [05:53:27]: testbed running kernel: Linux 6.17.0-5-generic #5-Ubuntu SMP Mon Sep 22 08:56:47 UTC 2025 69s autopkgtest [05:53:27]: @@@@@@@@@@@@@@@@@@@@ apt-source offpunk 72s Get:1 http://ftpmaster.internal/ubuntu resolute/universe offpunk 2.7.1-1 (dsc) [2472 B] 72s Get:2 http://ftpmaster.internal/ubuntu resolute/universe offpunk 2.7.1-1 (tar) [1027 kB] 72s Get:3 http://ftpmaster.internal/ubuntu resolute/universe offpunk 2.7.1-1 (diff) [16.3 kB] 72s gpgv: Signature made Wed Apr 9 17:30:09 2025 UTC 72s gpgv: using RSA key 8F91B227C7D6F2B1948C8236793CF67E8F0D11DA 72s gpgv: issuer "emollier@debian.org" 72s gpgv: Can't check signature: No public key 72s dpkg-source: warning: cannot verify inline signature for ./offpunk_2.7.1-1.dsc: no acceptable signature found 72s autopkgtest [05:53:30]: testing package offpunk version 2.7.1-1 73s autopkgtest [05:53:31]: build not needed 75s autopkgtest [05:53:33]: test run-commands: preparing testbed 75s Reading package lists... 75s Building dependency tree... 75s Reading state information... 75s Solving dependencies... 75s The following NEW packages will be installed: 75s offpunk 76s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 76s Need to get 74.0 kB of archives. 76s After this operation, 318 kB of additional disk space will be used. 76s Get:1 http://ftpmaster.internal/ubuntu resolute/universe s390x offpunk all 2.7.1-1 [74.0 kB] 77s Fetched 74.0 kB in 1s (54.4 kB/s) 77s Selecting previously unselected package offpunk. 77s (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 ... 56948 files and directories currently installed.) 77s Preparing to unpack .../offpunk_2.7.1-1_all.deb ... 77s Unpacking offpunk (2.7.1-1) ... 77s Setting up offpunk (2.7.1-1) ... 77s Processing triggers for man-db (2.13.1-1) ... 79s autopkgtest [05:53:37]: test run-commands: [----------------------- 79s 79s # 0. Basic arguments 79s offpunk --version 79s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 79s Offpunk 2.7.1 79s offpunk --help 79s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 79s usage: offpunk [-h] [--bookmarks] [--command [COMMAND ...]] 79s [--config-file FILE] [--sync] [--assume-yes] [--disable-http] 79s [--fetch-later] [--depth DEPTH] [--images-mode IMAGES_MODE] 79s [--cache-validity CACHE_VALIDITY] [--version] [--features] 79s [URL ...] 79s 79s Offline-First Gemini/Web/Gopher/RSS reader and browser 79s 79s positional arguments: 79s URL Arguments should be URL to be fetched or, if --sync is 79s used, lists 79s 79s options: 79s -h, --help show this help message and exit 79s --bookmarks start with your list of bookmarks 79s --command [COMMAND ...] 79s Launch this command after startup 79s --config-file FILE use this particular config file instead of default 79s --sync run non-interactively to build cache by exploring 79s lists passed as argument. Without argument, all lists 79s are fetched. 79s --assume-yes assume-yes when asked questions about 79s certificates/redirections during sync (lower security) 79s --disable-http do not try to get http(s) links (but already cached 79s will be displayed) 79s --fetch-later run non-interactively with an URL as argument to fetch 79s it later 79s --depth DEPTH depth of the cache to build. Default is 1. More is 79s crazy. Use at your own risks! 79s --images-mode IMAGES_MODE 79s the mode to use to choose which images to download in 79s a HTML page. one of (None, readable, full). Warning: 79s full will slowdown your sync. 79s --cache-validity CACHE_VALIDITY 79s duration for which a cache is valid before sync 79s (seconds) 79s --version display version information and quit 79s --features display available features and dependancies then quit 79s offpunk --features 79s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 79s moving from tofu.db to certificates as files 79s Upgrading cache to version 1: migrating index.txt to gophermap 79s Offpunk 2.7.1 79s =========== 79s System: linux 79s Python: 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 79s 79s Highly recommended: 79s - python-cryptography : Installed 79s - xdg-open : Not Installed 79s 79s Web browsing: 79s - python-requests : Installed 79s - python-feedparser : Not Installed 79s - python-bs4 : Not Installed 79s - python-readability : Not Installed 79s - timg 1.3.2+ : Not Installed 79s - chafa 1.10+ : Not Installed 79s 79s Nice to have: 79s - python-setproctitle : Not Installed 79s - X11 clipboard (xsel or xclip) : Not Installed 79s - Wayland clipboard (wl-clipboard): Not Installed 79s 79s Features : 79s - Render images (chafa or timg) : Not Installed 79s - Render HTML (bs4, readability) : Not Installed 79s - Render Atom/RSS feeds (feedparser) : Not Installed 79s - Connect to http/https (requests) : Installed 79s - Detect text encoding (python-chardet) : Installed 79s - restore last position (less 572+) : Installed 79s 79s Config directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.config/offpunk/ 79s User Data directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.local/share/offpunk/ 79s Cache directoy : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.cache/offpunk/ 79s echo quit | offpunk --bookmarks 79s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 79s Creating config directory /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.config/offpunk/ 79s Welcome to Offpunk! 79s Type `help` to get the list of available command. 79s List bookmarks does not exist. Create it with list create bookmarks 79s ON> You can close your screen! 80s 80s # 1. Basic commands 80s cat << END | offpunk 80s version 80s help 80s help abbrevs 80s help add 80s help back 80s help blackbox 80s help bookmarks 80s help cat 80s help cert 80s help copy 80s help find 80s help forward 80s help go 80s help gus 80s help handler 80s help help 80s help history 80s help info 80s help list 80s help ls 80s help mark 80s help move 80s help offline 80s help online 80s help open 80s help redirect 80s help reload 80s help root 80s help save 80s help set 80s help shell echo test 80s help subscribe 80s help sync 80s help theme 80s help tour 80s help url 80s help version 80s help wikipedia 80s help xkcd 80s help exit 80s help quit 80s quit 80s END 80s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 80s Welcome to Offpunk! 80s Type `help` to get the list of available command. 80s ON> Offpunk 2.7.1 80s =========== 80s System: linux 80s Python: 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 80s 80s Highly recommended: 80s - python-cryptography : Installed 80s - xdg-open : Not Installed 80s 80s Web browsing: 80s - python-requests : Installed 80s - python-feedparser : Not Installed 80s - python-bs4 : Not Installed 80s - python-readability : Not Installed 80s - timg 1.3.2+ : Not Installed 80s - chafa 1.10+ : Not Installed 80s 80s Nice to have: 80s - python-setproctitle : Not Installed 80s - X11 clipboard (xsel or xclip) : Not Installed 80s - Wayland clipboard (wl-clipboard): Not Installed 80s 80s Features : 80s - Render images (chafa or timg) : Not Installed 80s - Render HTML (bs4, readability) : Not Installed 80s - Render Atom/RSS feeds (feedparser) : Not Installed 80s - Connect to http/https (requests) : Installed 80s - Detect text encoding (python-chardet) : Installed 80s - restore last position (less 572+) : Installed 80s 80s Config directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.config/offpunk/ 80s User Data directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.local/share/offpunk/ 80s Cache directoy : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.cache/offpunk/ 80s ON> 80s Documented commands (type help ): 80s ======================================== 80s add copy gus ls quit set tutorial xkcd 80s alias exit handler mark redirect shell up 80s archive feed help move reload subscribe url 80s back find history offline root sync version 80s bookmarks forward info online save theme view 80s certs go list open search tour wikipedia 80s 80s ON> abbrevs is an alias for 'alias' 80s See the list of aliases with 'abbrevs' 80s 'help alias': 80s Create or modifiy an alias 80s alias : show all existing aliases 80s alias ALIAS : show the command linked to ALIAS 80s alias ALIAS CMD : create or replace existing ALIAS to be linked to command CMD 80s ON> Add the current URL to the list specified as argument. 80s If no argument given, URL is added to Bookmarks. 80s You can pass a link number as the second argument to add the link. 80s "add $LIST XX" will add link number XX to $LIST 80s ON> Go back to the previous gemini item. 80s ON> *** No help on blackbox 80s ON> Show or access the bookmarks menu. 80s 'bookmarks' shows all bookmarks. 80s 'bookmarks n' navigates immediately to item n in the bookmark menu. 80s Bookmarks are stored using the 'add' command. 80s ON> *** No help on cat 80s ON> cert is an alias for 'certs' 80s See the list of aliases with 'abbrevs' 80s 'help certs': 80s Manage your client certificates (identities) for a site. 80s `certs` will display all valid certificates for the current site 80s `certs new ` will create a new certificate, if no url is specified, the current open site will be used. 80s ON> Copy the content of the last visited page as gemtext/html in the clipboard. 80s Use with "url" as argument to only copy the adress. 80s Use with "raw" to copy ANSI content as seen in your terminal (with colour codes). 80s Use with "cache" to copy the path of the cached content. 80s Use with "title" to copy the title of the page. 80s Use with "link" to copy a link in the gemtext format to that page with the title. 80s ON> Find in current page by displaying only relevant lines (grep). 80s ON> Go forward to the next gemini item. 80s ON> Go to a gemini URL or marked item. 80s ON> Submit a search query to the geminispace.info search engine. 80s ON> View or set handler commands for different MIME types. 80s handler MIMETYPE : see handler for MIMETYPE 80s handler MIMETYPE CMD : set handler for MIMETYPE to CMD 80s in the CMD, %s will be replaced by the filename. 80s if no %s, it will be added at the end. 80s MIMETYPE can be the true mimetype or the file extension. 80s 80s Examples: 80s handler application/pdf zathura %s 80s handler .odt lowriter 80s handler docx lowriter 80s ON> ALARM! Recursion detected! ALARM! Prepare to eject! 80s ON> Display history. 80s ON> Display information about current page. 80s ON> Manage list of bookmarked pages. 80s - list : display available lists 80s - list $LIST : display pages in $LIST 80s - list create $NEWLIST : create a new list 80s - list edit $LIST : edit the list 80s - list subscribe $LIST : during sync, add new links found in listed pages to tour 80s - list freeze $LIST : don’t update pages in list during sync if a cache already exists 80s - list normal $LIST : update pages in list during sync but don’t add anything to tour 80s - list delete $LIST : delete a list permanently (a confirmation is required) 80s - list help : print this help 80s See also : 80s - add $LIST (to add current page to $LIST or, by default, to bookmarks) 80s - move $LIST (to add current page to list while removing from all others) 80s - archive (to remove current page from all lists while adding to archives) 80s 80s There’s no "delete" on purpose. The use of "archive" is recommended. 80s 80s The following lists cannot be removed or frozen but can be edited with "list edit" 80s - list archives : contains last 200 archived URLs 80s - history : contains last 200 visisted URLs 80s - to_fetch : contains URLs that will be fetch during the next sync 80s - tour : contains the next URLs to visit during a tour (see "help tour") 80s ON> List contents of current index. 80s Use 'ls -l' to see URLs. 80s ON> Mark the current item with a single letter. This letter can then 80s be passed to the 'go' command to return to the current item later. 80s Think of it like marks in vi: 'mark a'='ma' and 'go a'=''a'. 80s Marks are temporary until shutdown (not saved to disk). 80s ON> move LIST will add the current page to the list LIST. 80s With a major twist: current page will be removed from all other lists. 80s If current page was not in a list, this command is similar to `add LIST`. 80s ON> Use Offpunk offline by only accessing cached content 80s ON> Use Offpunk online with a direct connection 80s ON> Open current item with the configured handler or xdg-open. 80s Use "open url" to open current URL in a browser. 80s Use "open 2 4" to open links 2 and 4 80s You can combine with "open url 2 4" to open URL of links 80s see "handler" command to set your handler. 80s ON> Display and manage the list of redirected URLs. This features is mostly useful to use privacy-friendly frontends for popular websites. 80s ON> Reload the current URL. 80s ON> Go to root selector of the server hosting current item. 80s ON> Save an item to the filesystem. 80s 'save n filename' saves menu item n to the specified filename. 80s 'save filename' saves the last viewed item to the specified filename. 80s 'save n' saves menu item n to an automagic filename. 80s ON> View or set various options. 80s ON> *** No help on shell echo test 80s ON> Subscribe to current page by saving it in the "subscribed" list. 80s If a new link is found in the page during a --sync, the new link is automatically 80s fetched and added to your next tour. 80s To unsubscribe, remove the page from the "subscribed" list. 80s ON> Synchronize all bookmarks lists and URLs from the to_fetch list. 80s - New elements in pages in subscribed lists will be added to tour 80s - Elements in list to_fetch will be retrieved and added to tour 80s - Normal lists will be synchronized and updated 80s - Frozen lists will be fetched only if not present. 80s 80s Before a sync, you can edit the list of URLs that will be fetched with the 80s following command: "list edit to_fetch" 80s 80s Argument : duration of cache validity (in seconds). 80s ON> Change the colors of your rendered text. 80s 80s "theme ELEMENT COLOR" 80s 80s ELEMENT is one of: window_title, window_subtitle, title, 80s subtitle,subsubtitle,link,oneline_link,new_link,image_link,preformatted,blockquote. 80s 80s COLOR is one or many (separated by space) of: bold, faint, italic, underline, black, 80s red, green, yellow, blue, purple, cyan, white. 80s 80s Each color can alternatively be prefaced with "bright_". 80s ON> Add index items as waypoints on a tour, which is basically a FIFO 80s queue of gemini items. 80s 80s `tour` or `t` alone brings you to the next item in your tour. 80s Items can be added with `tour 1 2 3 4` or ranges like `tour 1-4`. 80s All items in current menu can be added with `tour *`. 80s All items in $LIST can be added with `tour $LIST`. 80s Current item can be added back to the end of the tour with `tour .`. 80s Current tour can be listed with `tour ls` and scrubbed with `tour clear`. 80s ON> Print the url of the current page. 80s Use "url XX" where XX is a number to print the url of link XX. 80s "url" can also be piped to the shell, using the pipe "|" 80s ON> Display version and system information. 80s ON> Search on wikipedia using the configured Gemini interface. 80s The first word should be the two letters code for the language. 80s Exemple : "wikipedia en Gemini protocol" 80s But you can also use abbreviations to go faster: 80s "wen Gemini protocol". (your abbreviation might be missing, report the bug) 80s The interface used can be modified with the command: 80s "set wikipedia URL" where URL should contains two "%s", the first 80s one used for the language, the second for the search string. 80s ON> Open the specified XKCD comics (a number is required as parameter) 80s ON> Exit Offpunk. 80s ON> Exit Offpunk. 80s ON> You can close your screen! 80s 80s # cert calls a submenu which expects then a blank line to get outside. 80s # find will call the pager 80s # gus and search will launch the client to the search engine. 80s # reload will call the pager 80s # wikipedia will require test to have Internet access 80s cat << END | offpunk 80s abbrevs 80s add 80s archive 80s back 80s blackbox 80s bookmarks 80s cat 80s cert 80s 80s copy 80s forward 80s go 80s handler 80s history 80s info 80s list 80s ls 80s mark 80s move 80s offline 80s online 80s open 80s redirect 80s root 80s save 80s set 80s shell echo test 80s subscribe 80s 80s sync 80s tour 80s theme 80s url 80s exit 80s END 80s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 80s Welcome to Offpunk! 80s Type `help` to get the list of available command. 80s ON> 80s Command Aliases: 80s ================ 80s .. up 80s a add 80s b back 80s bb blackbox 80s bm bookmarks 80s book bookmarks 80s cert certs 80s cp copy 80s f forward 80s g go 80s h history 80s hist history 80s l view 80s less view 80s man help 80s mv move 80s n next 80s off offline 80s on online 80s p previous 80s prev previous 80s q quit 80s r reload 80s s save 80s se search 80s / find 80s t tour 80s u up 80s v view 80s w wikipedia 80s wen wikipedia en 80s wfr wikipedia fr 80s wes wikipedia es 80s abbrevs alias 80s 80s ON> You need to 'go' somewhere, first 80s ON> You need to 'go' somewhere, first 80s ON> ON> What? 80s ON> List bookmarks does not exist. Create it with list create bookmarks 80s ON> What? 80s ON> You need to 'go' somewhere, first 80s ON> ON> No content to copy, visit a page first 80s ON> ON> Install xsel/xclip (X11) or wl-clipboard (Wayland) to get URLs from your clipboard 80s Go where? (hint: simply copy an URL in your clipboard) 80s ON> ON> List history does not exist. Create it with list create history 80s ON> You need to 'go' somewhere, first 80s ON> No lists yet. Use `list create` 80s ON> You need to 'go' somewhere, first 80s ON> You need to 'go' somewhere, first 80s ON> LIST argument is required as the target for your move 80s ON> Offpunk is now offline and will only access cached content 80s OFF> Offpunk is online and will access the network 80s ON> You need to 'go' somewhere, first 80s ON> Current redirections: 80s -------------------- 80s *reddit.com -> teddit.net 80s *medium.com -> scribe.rip 80s facebook.com -> blocked 80s *google-webfonts-helper.herokuapp.com -> blocked 80s *advertising.theguardian.com -> blocked 80s youtu.be -> blocked 80s x.com -> blocked 80s *doubleclick.net -> blocked 80s linkedin.com -> blocked 80s youtube.com -> blocked 80s *firebase.google.com -> blocked 80s *google-health-ads.blogspot.com -> blocked 80s fbcdn.net -> blocked 80s facebook.net -> blocked 80s twitter.com -> blocked 80s *google-analytics.com -> blocked 80s *tiktok.com -> blocked 80s *admanager.google.com -> blocked 80s *advertising.amazon.com -> blocked 80s *advertise.newrepublic.com -> blocked 80s *licdn.com -> blocked 80s *ads.yahoo.com -> blocked 80s 80s To add new, use "redirect origine.com destination.org" 80s To remove a redirect, use "redirect origine.com NONE" 80s To completely block a website, use "redirect origine.com BLOCK" 80s To block also subdomains, prefix with *: "redirect *origine.com BLOCK" 80s ON> You need to 'go' somewhere, first 80s ON> You need to 'go' somewhere, first 80s ON> accept_bad_ssl_certificates False 80s archives_size 200 80s auto_follow_redirects True 80s beta False 80s debug False 80s default_protocol gemini 80s editor None 80s ftr_site_config None 80s history_size 200 80s images_mode readable 80s max_size_download 10 80s preformat_wrap False 80s redirects True 80s search gemini://kennedy.gemi.dev/search?%s 80s short_timeout 5 80s timeout 600 80s tls_mode tofu 80s width 72 80s wikipedia gemini://gemi.dev/cgi-bin/wp.cgi/view/%s?%s 80s ON> test 80s ON> You need to 'go' somewhere, first 80s ON> ON> * * * 0 to fetch in tour * * * 80s End of sync 80s ON> End of tour. 80s ON> window_title set to ['red', 'bold'] 80s window_subtitle set to ['red', 'faint'] 80s title set to ['blue', 'bold', 'underline'] 80s subtitle set to ['blue'] 80s subsubtitle set to ['blue', 'faint'] 80s link set to ['blue', 'faint'] 80s new_link set to ['bold'] 80s oneline_link set to [] 80s image_link set to ['yellow', 'faint'] 80s preformatted set to ['faint'] 80s blockquote set to ['italic'] 80s prompt_on set to ['green'] 80s prompt_off set to ['green'] 80s ON> You need to 'go' somewhere, first 80s ON> You can close your screen! 80s 80s # 2. Checks against gemini file 80s cat << END | offpunk 80s go file://$PWD/index.gmi 80s quit 80s END 80s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 80s Welcome to Offpunk! 80s Type `help` to get the list of available command. 80s ON> 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 ON> You can close your screen! 80s 80s # 3. Test netcache command 80s # 3.0 Basic 80s netcache --help 80s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 80s usage: netcache [-h] [--path] [--ids] [--offline] [--max-size MAX_SIZE] 80s [--timeout TIMEOUT] [--cache-validity CACHE_VALIDITY] 80s [URL ...] 80s 80s Netcache is a command-line tool to retrieve, cache and access networked 80s content. By default, netcache will returns a cached version of a given URL, 80s downloading it only if a cache version doesn't exist. A validity duration, in 80s seconds, can also be given so netcache downloads the content only if the 80s existing cache is older than the validity. 80s 80s positional arguments: 80s URL download URL and returns the content or the path to a 80s cached version 80s 80s options: 80s -h, --help show this help message and exit 80s --path return path to the cache instead of the content of the 80s cache 80s --ids return a list of id's for the gemini-site instead of 80s the content of the cache 80s --offline Do not attempt to download, return cached version or 80s error 80s --max-size MAX_SIZE Cancel download of items above that size (value in 80s Mb). 80s --timeout TIMEOUT Time to wait before cancelling connection (in second). 80s --cache-validity CACHE_VALIDITY 80s maximum age, in second, of the cached version before 80s redownloading a new version 80s # 3.1 Various suboptions 80s OUT="$(netcache --path "file://$PWD/index.gmi")" 80s echo "$OUT" | grep -q "$PWD/index.gmi" 80s # (Note that the file local do not feed the user's cache.) 80s # 3.2 Main functionality 80s netcache "file://$PWD/index.gmi" 80s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 80s # OFFPUNK - An Offline-First Browser for the Smolnet 80s 80s 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. 80s 80s 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. 80s 80s 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. 80s 80s 80s => install.gmi Installing Offpunk and dependencies 80s => tutorial.gmi First steps 80s => config.gmi Configuring Offpunk 80s => offline.gmi Using Offpunk offline 80s => lists.gmi Lists and subscriptions 80s => shell.gmi Shell and OS integrations 80s => dev.gmi Roadmap & Contributions 80s 80s 80s netcache --offline "file://$PWD/index.gmi" 80s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 80s # OFFPUNK - An Offline-First Browser for the Smolnet 80s 80s 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. 80s 80s 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. 80s 80s 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. 80s 80s 80s => install.gmi Installing Offpunk and dependencies 80s => tutorial.gmi First steps 80s => config.gmi Configuring Offpunk 80s => offline.gmi Using Offpunk offline 80s => lists.gmi Lists and subscriptions 80s => shell.gmi Shell and OS integrations 80s => dev.gmi Roadmap & Contributions 80s 80s 80s netcache --max-size 1 "file://$PWD/index.gmi" 81s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 81s # OFFPUNK - An Offline-First Browser for the Smolnet 81s 81s 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. 81s 81s 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. 81s 81s 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. 81s 81s 81s => install.gmi Installing Offpunk and dependencies 81s => tutorial.gmi First steps 81s => config.gmi Configuring Offpunk 81s => offline.gmi Using Offpunk offline 81s => lists.gmi Lists and subscriptions 81s => shell.gmi Shell and OS integrations 81s => dev.gmi Roadmap & Contributions 81s 81s 81s # Note that testing the --timeout looks to need Internet, so we'll skip this 81s # option for now. 81s 81s # 4. Test ansicat 81s # 4.0 Basic 81s ansicat --help 81s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 81s usage: ansicat [-h] 81s [--format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext}] 81s [--mime MIME] [--url [URL ...]] [--mode MODE] 81s [INPUT ...] 81s 81s ansicat is a terminal rendering tool that will render multiple formats (HTML, 81s Gemtext, RSS, Gophermap, Image) into ANSI text and colors. When used on a 81s file, ansicat will try to autodetect the format. When used with standard 81s input, the format must be manually specified. If the content contains links, 81s the original URL of the content can be specified in order to correctly modify 81s relatives links. 81s 81s positional arguments: 81s INPUT Path to the text to render (default to stdin) 81s 81s options: 81s -h, --help show this help message and exit 81s --format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext} 81s Renderer to use. Available: auto, gemtext, html, feed, 81s gopher, image, folder, plaintext 81s --mime MIME Mime of the content to parse 81s --url [URL ...] Original URL of the content 81s --mode MODE Which mode should be used to render: normal (default), 81s full or source. With HTML, the normal mode try to 81s extract the article. 81s # 4.1 Test some ansicat formats and options 81s # WARNING: there is something about autopkgtest environment that causes the two 81s # below commands to crash, but running them by hand works perfectly. 81s # This may indicate fragility in the tool, but it is curious that the 81s # 4.2 section below gave no difficulty: if this crashes too, then it 81s # may be reasonable to skip it as well. 81s #ansicat --format plaintext index.gmi 81s #ansicat --mime text/plain index.gmi 81s # 4.2 Main functionality 81s ansicat --url "file://$PWD/index.gmi" index.gmi 81s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 81s Format or mime should be specified when running with stdin 81s 81s # 5. Test opnk 81s # 5.0 Basic 81s opnk --help 81s # 5.1 Open some things (but stick to not needing Internet). 81s opnk /usr/share/doc/offpunk/copyright 81s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 81s usage: opnk [-h] [--mode MODE] [--cache-validity CACHE_VALIDITY] [INPUT ...] 81s 81s opnk is an universal open command tool that will try to display any file in 81s the pager less after rendering its content with ansicat. If that fails, opnk 81s will fallback to opening the file with xdg-open. If given an URL as input 81s instead of a path, opnk will rely on netcache to get the networked content. 81s 81s positional arguments: 81s INPUT Path to the file or URL to open 81s 81s options: 81s -h, --help show this help message and exit 81s --mode MODE Which mode should be used to render: normal (default), 81s full or source. With HTML, the normal mode try to 81s extract the article. 81s --cache-validity CACHE_VALIDITY 81s maximum age, in second, of the cached version before 81s redownloading a new version 81s copyright (3 items) (local file) 81s Format: https://www.debian.org/doc/packaging-manuals/copyright- 81s format/1.0/ 81s Upstream-Name: Offpunk 81s Upstream-Contact: Lionel "Ploum" Dricot 81s Source: https://git.sr.ht/~lioploum/offpunk/ 81s 81s Files: * 81s Copyright: 2019-2020, Solderpunk 81s 2021-2025, Ploum and contributors. 81s License: AGPL-3+ 81s Comment: Derived from AV-98[1] by Solderpunk. 81s [1]: https://tildegit.org/solderpunk/AV-98 81s 81s Files: netcache_migration.py 81s Copyright: 2023, Sotiris Papatheodorou 81s License: BSD-2-Clause 81s Redistribution and use in source and binary forms, with or without 81s modification, are permitted provided that the following conditions are 81s met: 81s . 81s 1. Redistributions of source code must retain the above copyright 81s notice, this list of conditions and the following disclaimer. 81s . 81s 2. Redistributions in binary form must reproduce the above copyright 81s notice, this list of conditions and the following disclaimer in the 81s documentation and/or other materials provided with the 81s distribution. 81s . 81s THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS 81s IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 81s TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 81s PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 81s HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 81s SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 81s LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 81s DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 81s THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 81s (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 81s OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 81s 81s Files: cert_migration.py 81s Copyright: 2024, Bert Livens 81s License: AGPL-3 81s This program is free software: you can redistribute it and/or modify it 81s under the terms of the GNU Affero General Public License as published 81s by the Free Software Foundation, version 3 of the License only. 81s . 81s This program is distributed in the hope that it will be useful, but 81s WITHOUT ANY WARRANTY; without even the implied warranty of 81s MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 81s Affero General Public License for more details. 81s . 81s A copy of the GNU Affero General Public License is available below. 81s 81s Files: debian/* 81s Copyright: 2023-2025, Étienne Mollier 81s License: AGPL-3+ 81s 81s License: AGPL-3+ 81s Copyright (C) 2007 Free Software Foundation, Inc. 81s Everyone is permitted to copy and distribute verbatim copies 81s of this license document, but changing it is not allowed. 81s . 81s Preamble 81s . 81s The GNU Affero General Public License is a free, copyleft license for 81s software and other kinds of works, specifically designed to ensure 81s cooperation with the community in the case of network server software. 81s . 81s The licenses for most software and other practical works are designed 81s to take away your freedom to share and change the works. By contrast, 81s our General Public Licenses are intended to guarantee your freedom to 81s share and change all versions of a program--to make sure it remains 81s free 81s software for all its users. 81s . 81s When we speak of free software, we are referring to freedom, not 81s price. Our General Public Licenses are designed to make sure that you 81s have the freedom to distribute copies of free software (and charge for 81s them if you wish), that you receive source code or can get it if you 81s want it, that you can change the software or use pieces of it in new 81s free programs, and that you know you can do these things. 81s . 81s Developers that use our General Public Licenses protect your rights 81s with two steps: (1) assert copyright on the software, and (2) offer 81s you this License which gives you legal permission to copy, distribute 81s and/or modify the software. 81s . 81s A secondary benefit of defending all users' freedom is that 81s improvements made in alternate versions of the program, if they 81s receive widespread use, become available for other developers to 81s incorporate. Many developers of free software are heartened and 81s encouraged by the resulting cooperation. However, in the case of 81s software used on network servers, this result may fail to come about. 81s The GNU General Public License permits making a modified version and 81s letting the public access it on a server without ever releasing its 81s source code to the public. 81s . 81s The GNU Affero General Public License is designed specifically to 81s ensure that, in such cases, the modified source code becomes available 81s to the community. It requires the operator of a network server to 81s provide the source code of the modified version running there to the 81s users of that server. Therefore, public use of a modified version, on 81s a publicly accessible server, gives the public access to the source 81s code of the modified version. 81s . 81s An older license, called the Affero General Public License and 81s published by Affero, was designed to accomplish similar goals. This is 81s a different license, not a version of the Affero GPL, but Affero has 81s released a new version of the Affero GPL which permits relicensing 81s under 81s this license. 81s . 81s The precise terms and conditions for copying, distribution and 81s modification follow. 81s . 81s TERMS AND CONDITIONS 81s . 81s 0. Definitions. 81s . 81s "This License" refers to version 3 of the GNU Affero General Public 81s License. 81s . 81s "Copyright" also means copyright-like laws that apply to other kinds of 81s works, such as semiconductor masks. 81s . 81s "The Program" refers to any copyrightable work licensed under this 81s License. Each licensee is addressed as "you". "Licensees" and 81s "recipients" may be individuals or organizations. 81s . 81s To "modify" a work means to copy from or adapt all or part of the work 81s in a fashion requiring copyright permission, other than the making of 81s an 81s exact copy. The resulting work is called a "modified version" of the 81s earlier work or a work "based on" the earlier work. 81s . 81s A "covered work" means either the unmodified Program or a work based 81s on the Program. 81s . 81s To "propagate" a work means to do anything with it that, without 81s permission, would make you directly or secondarily liable for 81s infringement under applicable copyright law, except executing it on a 81s computer or modifying a private copy. Propagation includes copying, 81s distribution (with or without modification), making available to the 81s public, and in some countries other activities as well. 81s . 81s To "convey" a work means any kind of propagation that enables other 81s parties to make or receive copies. Mere interaction with a user 81s through 81s a computer network, with no transfer of a copy, is not conveying. 81s . 81s An interactive user interface displays "Appropriate Legal Notices" 81s to the extent that it includes a convenient and prominently visible 81s feature that (1) displays an appropriate copyright notice, and (2) 81s tells the user that there is no warranty for the work (except to the 81s extent that warranties are provided), that licensees may convey the 81s work under this License, and how to view a copy of this License. If 81s the interface presents a list of user commands or options, such as a 81s menu, a prominent item in the list meets this criterion. 81s . 81s 1. Source Code. 81s . 81s The "source code" for a work means the preferred form of the work 81s for making modifications to it. "Object code" means any non-source 81s form of a work. 81s . 81s A "Standard Interface" means an interface that either is an official 81s standard defined by a recognized standards body, or, in the case of 81s interfaces specified for a particular programming language, one that 81s is widely used among developers working in that language. 81s . 81s The "System Libraries" of an executable work include anything, other 81s than the work as a whole, that (a) is included in the normal form of 81s packaging a Major Component, but which is not part of that Major 81s Component, and (b) serves only to enable use of the work with that 81s Major Component, or to implement a Standard Interface for which an 81s implementation is available to the public in source code form. A 81s "Major Component", in this context, means a major essential component 81s (kernel, window system, and so on) of the specific operating system 81s (if any) on which the executable work runs, or a compiler used to 81s produce the work, or an object code interpreter used to run it. 81s . 81s The "Corresponding Source" for a work in object code form means all 81s the source code needed to generate, install, and (for an executable 81s work) run the object code and to modify the work, including scripts to 81s control those activities. However, it does not include the work's 81s System Libraries, or general-purpose tools or generally available free 81s programs which are used unmodified in performing those activities but 81s which are not part of the work. For example, Corresponding Source 81s includes interface definition files associated with source files for 81s the work, and the source code for shared libraries and dynamically 81s linked subprograms that the work is specifically designed to require, 81s such as by intimate data communication or control flow between those 81s subprograms and other parts of the work. 81s . 81s The Corresponding Source need not include anything that users 81s can regenerate automatically from other parts of the Corresponding 81s Source. 81s . 81s The Corresponding Source for a work in source code form is that 81s same work. 81s . 81s 2. Basic Permissions. 81s . 81s All rights granted under this License are granted for the term of 81s copyright on the Program, and are irrevocable provided the stated 81s conditions are met. This License explicitly affirms your unlimited 81s permission to run the unmodified Program. The output from running a 81s covered work is covered by this License only if the output, given its 81s content, constitutes a covered work. This License acknowledges your 81s rights of fair use or other equivalent, as provided by copyright law. 81s . 81s You may make, run and propagate covered works that you do not 81s convey, without conditions so long as your license otherwise remains 81s in force. You may convey covered works to others for the sole purpose 81s of having them make modifications exclusively for you, or provide you 81s with facilities for running those works, provided that you comply with 81s the terms of this License in conveying all material for which you do 81s not control copyright. Those thus making or running the covered works 81s for you must do so exclusively on your behalf, under your direction 81s and control, on terms that prohibit them from making any copies of 81s your copyrighted material outside their relationship with you. 81s . 81s Conveying under any other circumstances is permitted solely under 81s the conditions stated below. Sublicensing is not allowed; section 10 81s makes it unnecessary. 81s . 81s 3. Protecting Users' Legal Rights From Anti-Circumvention Law. 81s . 81s No covered work shall be deemed part of an effective technological 81s measure under any applicable law fulfilling obligations under article 81s 11 of the WIPO copyright treaty adopted on 20 December 1996, or 81s similar laws prohibiting or restricting circumvention of such 81s measures. 81s . 81s When you convey a covered work, you waive any legal power to forbid 81s circumvention of technological measures to the extent such 81s circumvention 81s is effected by exercising rights under this License with respect to 81s the covered work, and you disclaim any intention to limit operation or 81s modification of the work as a means of enforcing, against the work's 81s users, your or third parties' legal rights to forbid circumvention of 81s technological measures. 81s . 81s 4. Conveying Verbatim Copies. 81s . 81s You may convey verbatim copies of the Program's source code as you 81s receive it, in any medium, provided that you conspicuously and 81s appropriately publish on each copy an appropriate copyright notice; 81s keep intact all notices stating that this License and any 81s non-permissive terms added in accord with section 7 apply to the code; 81s keep intact all notices of the absence of any warranty; and give all 81s recipients a copy of this License along with the Program. 81s . 81s You may charge any price or no price for each copy that you convey, 81s and you may offer support or warranty protection for a fee. 81s . 81s 5. Conveying Modified Source Versions. 81s . 81s You may convey a work based on the Program, or the modifications to 81s produce it from the Program, in the form of source code under the 81s terms of section 4, provided that you also meet all of these 81s conditions: 81s . 81s a) The work must carry prominent notices stating that you modified 81s it, and giving a relevant date. 81s . 81s b) The work must carry prominent notices stating that it is 81s released under this License and any conditions added under section 81s 7. This requirement modifies the requirement in section 4 to 81s "keep intact all notices". 81s . 81s c) You must license the entire work, as a whole, under this 81s License to anyone who comes into possession of a copy. This 81s License will therefore apply, along with any applicable section 7 81s additional terms, to the whole of the work, and all its parts, 81s regardless of how they are packaged. This License gives no 81s permission to license the work in any other way, but it does not 81s invalidate such permission if you have separately received it. 81s . 81s d) If the work has interactive user interfaces, each must display 81s Appropriate Legal Notices; however, if the Program has interactive 81s interfaces that do not display Appropriate Legal Notices, your 81s work need not make them do so. 81s . 81s A compilation of a covered work with other separate and independent 81s works, which are not by their nature extensions of the covered work, 81s and which are not combined with it such as to form a larger program, 81s in or on a volume of a storage or distribution medium, is called an 81s "aggregate" if the compilation and its resulting copyright are not 81s used to limit the access or legal rights of the compilation's users 81s beyond what the individual works permit. Inclusion of a covered work 81s in an aggregate does not cause this License to apply to the other 81s parts of the aggregate. 81s . 81s 6. Conveying Non-Source Forms. 81s . 81s You may convey a covered work in object code form under the terms 81s of sections 4 and 5, provided that you also convey the 81s machine-readable Corresponding Source under the terms of this License, 81s in one of these ways: 81s . 81s a) Convey the object code in, or embodied in, a physical product 81s (including a physical distribution medium), accompanied by the 81s Corresponding Source fixed on a durable physical medium 81s customarily used for software interchange. 81s . 81s b) Convey the object code in, or embodied in, a physical product 81s (including a physical distribution medium), accompanied by a 81s written offer, valid for at least three years and valid for as 81s long as you offer spare parts or customer support for that product 81s model, to give anyone who possesses the object code either (1) a 81s copy of the Corresponding Source for all the software in the 81s product that is covered by this License, on a durable physical 81s medium customarily used for software interchange, for a price no 81s more than your reasonable cost of physically performing this 81s conveying of source, or (2) access to copy the 81s Corresponding Source from a network server at no charge. 81s . 81s c) Convey individual copies of the object code with a copy of the 81s written offer to provide the Corresponding Source. This 81s alternative is allowed only occasionally and noncommercially, and 81s only if you received the object code with such an offer, in accord 81s with subsection 6b. 81s . 81s d) Convey the object code by offering access from a designated 81s place (gratis or for a charge), and offer equivalent access to the 81s Corresponding Source in the same way through the same place at no 81s further charge. You need not require recipients to copy the 81s Corresponding Source along with the object code. If the place to 81s copy the object code is a network server, the Corresponding Source 81s may be on a different server (operated by you or a third party) 81s that supports equivalent copying facilities, provided you maintain 81s clear directions next to the object code saying where to find the 81s Corresponding Source. Regardless of what server hosts the 81s Corresponding Source, you remain obligated to ensure that it is 81s available for as long as needed to satisfy these requirements. 81s . 81s e) Convey the object code using peer-to-peer transmission, provided 81s you inform other peers where the object code and Corresponding 81s Source of the work are being offered to the general public at no 81s charge under subsection 6d. 81s . 81s A separable portion of the object code, whose source code is excluded 81s from the Corresponding Source as a System Library, need not be 81s included in conveying the object code work. 81s . 81s A "User Product" is either (1) a "consumer product", which means any 81s tangible personal property which is normally used for personal, family, 81s or household purposes, or (2) anything designed or sold for 81s incorporation 81s into a dwelling. In determining whether a product is a consumer 81s product, 81s doubtful cases shall be resolved in favor of coverage. For a 81s particular 81s product received by a particular user, "normally used" refers to a 81s typical or common use of that class of product, regardless of the 81s status 81s of the particular user or of the way in which the particular user 81s actually uses, or expects or is expected to use, the product. A 81s product 81s is a consumer product regardless of whether the product has substantial 81s commercial, industrial or non-consumer uses, unless such uses represent 81s the only significant mode of use of the product. 81s . 81s "Installation Information" for a User Product means any methods, 81s procedures, authorization keys, or other information required to 81s install 81s and execute modified versions of a covered work in that User Product 81s from 81s a modified version of its Corresponding Source. The information must 81s suffice to ensure that the continued functioning of the modified object 81s code is in no case prevented or interfered with solely because 81s modification has been made. 81s . 81s If you convey an object code work under this section in, or with, or 81s specifically for use in, a User Product, and the conveying occurs as 81s part of a transaction in which the right of possession and use of the 81s User Product is transferred to the recipient in perpetuity or for a 81s fixed term (regardless of how the transaction is characterized), the 81s Corresponding Source conveyed under this section must be accompanied 81s by the Installation Information. But this requirement does not apply 81s if neither you nor any third party retains the ability to install 81s modified object code on the User Product (for example, the work has 81s been installed in ROM). 81s . 81s The requirement to provide Installation Information does not include a 81s requirement to continue to provide support service, warranty, or 81s updates 81s for a work that has been modified or installed by the recipient, or for 81s the User Product in which it has been modified or installed. Access to 81s a 81s network may be denied when the modification itself materially and 81s adversely affects the operation of the network or violates the rules 81s and 81s protocols for communication across the network. 81s . 81s Corresponding Source conveyed, and Installation Information provided, 81s in accord with this section must be in a format that is publicly 81s documented (and with an implementation available to the public in 81s source code form), and must require no special password or key for 81s unpacking, reading or copying. 81s . 81s 7. Additional Terms. 81s . 81s "Additional permissions" are terms that supplement the terms of this 81s License by making exceptions from one or more of its conditions. 81s Additional permissions that are applicable to the entire Program shall 81s be treated as though they were included in this License, to the extent 81s that they are valid under applicable law. If additional permissions 81s apply only to part of the Program, that part may be used separately 81s under those permissions, but the entire Program remains governed by 81s this License without regard to the additional permissions. 81s . 81s When you convey a copy of a covered work, you may at your option 81s remove any additional permissions from that copy, or from any part of 81s it. (Additional permissions may be written to require their own 81s removal in certain cases when you modify the work.) You may place 81s additional permissions on material, added by you to a covered work, 81s for which you have or can give appropriate copyright permission. 81s . 81s Notwithstanding any other provision of this License, for material you 81s add to a covered work, you may (if authorized by the copyright holders 81s of 81s that material) supplement the terms of this License with terms: 81s . 81s a) Disclaiming warranty or limiting liability differently from the 81s terms of sections 15 and 16 of this License; or 81s . 81s b) Requiring preservation of specified reasonable legal notices or 81s author attributions in that material or in the Appropriate Legal 81s Notices displayed by works containing it; or 81s . 81s c) Prohibiting misrepresentation of the origin of that material, or 81s requiring that modified versions of such material be marked in 81s reasonable ways as different from the original version; or 81s . 81s d) Limiting the use for publicity purposes of names of licensors or 81s authors of the material; or 81s . 81s e) Declining to grant rights under trademark law for use of some 81s trade names, trademarks, or service marks; or 81s . 81s f) Requiring indemnification of licensors and authors of that 81s material by anyone who conveys the material (or modified versions 81s of 81s it) with contractual assumptions of liability to the recipient, for 81s any liability that these contractual assumptions directly impose on 81s those licensors and authors. 81s . 81s All other non-permissive additional terms are considered "further 81s restrictions" within the meaning of section 10. If the Program as you 81s received it, or any part of it, contains a notice stating that it is 81s governed by this License along with a term that is a further 81s restriction, you may remove that term. If a license document contains 81s a further restriction but permits relicensing or conveying under this 81s License, you may add to a covered work material governed by the terms 81s of that license document, provided that the further restriction does 81s not survive such relicensing or conveying. 81s . 81s If you add terms to a covered work in accord with this section, you 81s must place, in the relevant source files, a statement of the 81s additional terms that apply to those files, or a notice indicating 81s where to find the applicable terms. 81s . 81s Additional terms, permissive or non-permissive, may be stated in the 81s form of a separately written license, or stated as exceptions; 81s the above requirements apply either way. 81s . 81s 8. Termination. 81s . 81s You may not propagate or modify a covered work except as expressly 81s provided under this License. Any attempt otherwise to propagate or 81s modify it is void, and will automatically terminate your rights under 81s this License (including any patent licenses granted under the third 81s paragraph of section 11). 81s . 81s However, if you cease all violation of this License, then your 81s license from a particular copyright holder is reinstated (a) 81s provisionally, unless and until the copyright holder explicitly and 81s finally terminates your license, and (b) permanently, if the copyright 81s holder fails to notify you of the violation by some reasonable means 81s prior to 60 days after the cessation. 81s . 81s Moreover, your license from a particular copyright holder is 81s reinstated permanently if the copyright holder notifies you of the 81s violation by some reasonable means, this is the first time you have 81s received notice of violation of this License (for any work) from that 81s copyright holder, and you cure the violation prior to 30 days after 81s your receipt of the notice. 81s . 81s Termination of your rights under this section does not terminate the 81s licenses of parties who have received copies or rights from you under 81s this License. If your rights have been terminated and not permanently 81s reinstated, you do not qualify to receive new licenses for the same 81s material under section 10. 81s . 81s 9. Acceptance Not Required for Having Copies. 81s . 81s You are not required to accept this License in order to receive or 81s run a copy of the Program. Ancillary propagation of a covered work 81s occurring solely as a consequence of using peer-to-peer transmission 81s to receive a copy likewise does not require acceptance. However, 81s nothing other than this License grants you permission to propagate or 81s modify any covered work. These actions infringe copyright if you do 81s not accept this License. Therefore, by modifying or propagating a 81s covered work, you indicate your acceptance of this License to do so. 81s . 81s 10. Automatic Licensing of Downstream Recipients. 81s . 81s Each time you convey a covered work, the recipient automatically 81s receives a license from the original licensors, to run, modify and 81s propagate that work, subject to this License. You are not responsible 81s for enforcing compliance by third parties with this License. 81s . 81s An "entity transaction" is a transaction transferring control of an 81s organization, or substantially all assets of one, or subdividing an 81s organization, or merging organizations. If propagation of a covered 81s work results from an entity transaction, each party to that 81s transaction who receives a copy of the work also receives whatever 81s licenses to the work the party's predecessor in interest had or could 81s give under the previous paragraph, plus a right to possession of the 81s Corresponding Source of the work from the predecessor in interest, if 81s the predecessor has it or can get it with reasonable efforts. 81s . 81s You may not impose any further restrictions on the exercise of the 81s rights granted or affirmed under this License. For example, you may 81s not impose a license fee, royalty, or other charge for exercise of 81s rights granted under this License, and you may not initiate litigation 81s (including a cross-claim or counterclaim in a lawsuit) alleging that 81s any patent claim is infringed by making, using, selling, offering for 81s sale, or importing the Program or any portion of it. 81s . 81s 11. Patents. 81s . 81s A "contributor" is a copyright holder who authorizes use under this 81s License of the Program or a work on which the Program is based. The 81s work thus licensed is called the contributor's "contributor version". 81s . 81s A contributor's "essential patent claims" are all patent claims 81s owned or controlled by the contributor, whether already acquired or 81s hereafter acquired, that would be infringed by some manner, permitted 81s by this License, of making, using, or selling its contributor version, 81s but do not include claims that would be infringed only as a 81s consequence of further modification of the contributor version. For 81s purposes of this definition, "control" includes the right to grant 81s patent sublicenses in a manner consistent with the requirements of 81s this License. 81s . 81s Each contributor grants you a non-exclusive, worldwide, royalty-free 81s patent license under the contributor's essential patent claims, to 81s make, use, sell, offer for sale, import and otherwise run, modify and 81s propagate the contents of its contributor version. 81s . 81s In the following three paragraphs, a "patent license" is any express 81s agreement or commitment, however denominated, not to enforce a patent 81s (such as an express permission to practice a patent or covenant not to 81s sue for patent infringement). To "grant" such a patent license to a 81s party means to make such an agreement or commitment not to enforce a 81s patent against the party. 81s . 81s If you convey a covered work, knowingly relying on a patent license, 81s and the Corresponding Source of the work is not available for anyone 81s to copy, free of charge and under the terms of this License, through a 81s publicly available network server or other readily accessible means, 81s then you must either (1) cause the Corresponding Source to be so 81s available, or (2) arrange to deprive yourself of the benefit of the 81s patent license for this particular work, or (3) arrange, in a manner 81s consistent with the requirements of this License, to extend the patent 81s license to downstream recipients. "Knowingly relying" means you have 81s actual knowledge that, but for the patent license, your conveying the 81s covered work in a country, or your recipient's use of the covered work 81s in a country, would infringe one or more identifiable patents in that 81s country that you have reason to believe are valid. 81s . 81s If, pursuant to or in connection with a single transaction or 81s arrangement, you convey, or propagate by procuring conveyance of, a 81s covered work, and grant a patent license to some of the parties 81s receiving the covered work authorizing them to use, propagate, modify 81s or convey a specific copy of the covered work, then the patent license 81s you grant is automatically extended to all recipients of the covered 81s work and works based on it. 81s . 81s A patent license is "discriminatory" if it does not include within 81s the scope of its coverage, prohibits the exercise of, or is 81s conditioned on the non-exercise of one or more of the rights that are 81s specifically granted under this License. You may not convey a covered 81s work if you are a party to an arrangement with a third party that is 81s in the business of distributing software, under which you make payment 81s to the third party based on the extent of your activity of conveying 81s the work, and under which the third party grants, to any of the 81s parties who would receive the covered work from you, a discriminatory 81s patent license (a) in connection with copies of the covered work 81s conveyed by you (or copies made from those copies), or (b) primarily 81s for and in connection with specific products or compilations that 81s contain the covered work, unless you entered into that arrangement, 81s or that patent license was granted, prior to 28 March 2007. 81s . 81s Nothing in this License shall be construed as excluding or limiting 81s any implied license or other defenses to infringement that may 81s otherwise be available to you under applicable patent law. 81s . 81s 12. No Surrender of Others' Freedom. 81s . 81s If conditions are imposed on you (whether by court order, agreement or 81s otherwise) that contradict the conditions of this License, they do not 81s excuse you from the conditions of this License. If you cannot convey a 81s covered work so as to satisfy simultaneously your obligations under 81s this 81s License and any other pertinent obligations, then as a consequence you 81s may 81s not convey it at all. For example, if you agree to terms that obligate 81s you 81s to collect a royalty for further conveying from those to whom you 81s convey 81s the Program, the only way you could satisfy both those terms and this 81s License would be to refrain entirely from conveying the Program. 81s . 81s 13. Remote Network Interaction; Use with the GNU General Public 81s License. 81s . 81s Notwithstanding any other provision of this License, if you modify the 81s Program, your modified version must prominently offer all users 81s interacting with it remotely through a computer network (if your 81s version 81s supports such interaction) an opportunity to receive the Corresponding 81s Source of your version by providing access to the Corresponding Source 81s from a network server at no charge, through some standard or customary 81s means of facilitating copying of software. This Corresponding Source 81s shall include the Corresponding Source for any work covered by version 81s 3 81s of the GNU General Public License that is incorporated pursuant to the 81s following paragraph. 81s . 81s Notwithstanding any other provision of this License, you have 81s permission to link or combine any covered work with a work licensed 81s under version 3 of the GNU General Public License into a single 81s combined work, and to convey the resulting work. The terms of this 81s License will continue to apply to the part which is the covered work, 81s but the work with which it is combined will remain governed by version 81s 3 of the GNU General Public License. 81s . 81s 14. Revised Versions of this License. 81s . 81s The Free Software Foundation may publish revised and/or new versions of 81s the GNU Affero General Public License from time to time. Such new 81s versions 81s will be similar in spirit to the present version, but may differ in 81s detail to 81s address new problems or concerns. 81s . 81s Each version is given a distinguishing version number. If the 81s Program specifies that a certain numbered version of the GNU Affero 81s General 81s Public License "or any later version" applies to it, you have the 81s option of following the terms and conditions either of that numbered 81s version or of any later version published by the Free Software 81s Foundation. If the Program does not specify a version number of the 81s GNU Affero General Public License, you may choose any version ever 81s published 81s by the Free Software Foundation. 81s . 81s If the Program specifies that a proxy can decide which future 81s versions of the GNU Affero General Public License can be used, that 81s proxy's 81s public statement of acceptance of a version permanently authorizes you 81s to choose that version for the Program. 81s . 81s Later license versions may give you additional or different 81s permissions. However, no additional obligations are imposed on any 81s author or copyright holder as a result of your choosing to follow a 81s later version. 81s . 81s 15. Disclaimer of Warranty. 81s . 81s THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY 81s APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT 81s HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT 81s WARRANTY 81s OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED 81s TO, 81s THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 81s PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE 81s PROGRAM 81s IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST 81s OF 81s ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 81s . 81s 16. Limitation of Liability. 81s . 81s IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 81s WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR 81s CONVEYS 81s THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING 81s ANY 81s GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF 81s THE 81s USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS 81s OF 81s DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR 81s THIRD 81s PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 81s PROGRAMS), 81s EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY 81s OF 81s SUCH DAMAGES. 81s . 81s 17. Interpretation of Sections 15 and 16. 81s . 81s If the disclaimer of warranty and limitation of liability provided 81s above cannot be given local legal effect according to their terms, 81s reviewing courts shall apply local law that most closely approximates 81s an absolute waiver of all civil liability in connection with the 81s Program, unless a warranty or assumption of liability accompanies a 81s copy of the Program in return for a fee. 81s . 81s END OF TERMS AND CONDITIONS 81s . 81s How to Apply These Terms to Your New Programs 81s . 81s If you develop a new program, and you want it to be of the greatest 81s possible use to the public, the best way to achieve this is to make it 81s free software which everyone can redistribute and change under these 81s terms. 81s . 81s To do so, attach the following notices to the program. It is safest 81s to attach them to the start of each source file to most effectively 81s state the exclusion of warranty; and each file should have at least 81s the "copyright" line and a pointer to where the full notice is found. 81s . 81s 81s Copyright (C) 81s . 81s This program is free software: you can redistribute it and/or 81s modify 81s it under the terms of the GNU Affero General Public License as 81s published by 81s the Free Software Foundation, either version 3 of the License, or 81s (at your option) any later version. 81s . 81s This program is distributed in the hope that it will be useful, 81s but WITHOUT ANY WARRANTY; without even the implied warranty of 81s MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 81s GNU Affero General Public License for more details. 81s . 81s You should have received a copy of the GNU Affero General Public 81s License 81s along with this program. If not, see 81s . 81s . 81s Also add information on how to contact you by electronic and paper 81s mail. 81s . 81s If your software can interact with users remotely through a computer 81s network, you should also make sure that it provides a way for users to 81s get its source. For example, if your program is a web application, its 81s interface could display a "Source" link that leads users to an archive 81s of the code. There are many ways you could offer source, and different 81s solutions will be better for different programs; see section 13 for the 81s specific requirements. 81s . 81s You should also get your employer (if you work as a programmer) or 81s school, 81s if any, to sign a "copyright disclaimer" for the program, if necessary. 81s For more information on this, and how to apply and follow the GNU AGPL, 81s see 81s . 81s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 81s # 5.2 Main functionality 81s opnk index.gmi 81s index.gmi (7 items) (local file) 81s OFFPUNK - An Offline-First Browser for the Smolnet 81s 81s Offpunk is a command-line browser and feed reader dedicated to browsing 81s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 81s is optimised to be used offline with rare connections but works as well 81s when connected. 81s 81s Offpunk is optimised for reading and supports readability mode, 81s displaying pictures, subscribing to pages or RSS feeds, managing complex 81s lists of bookmarks. Its integrated help and easy commands make it a 81s perfect tool for command-line novices while power-users will be amazed 81s by its shell integration. 81s 81s Offpunk is written in Python 3 by Ploum. It aims to be portable and 81s minimise dependencies, making them optional. It supports 81s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 81s 81s 81s [1] Installing Offpunk and dependencies 81s [2] First steps 81s [3] Configuring Offpunk 81s [4] Using Offpunk offline 81s [5] Lists and subscriptions 81s [6] Shell and OS integrations 81s [7] Roadmap & Contributions 81s 81s  81s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 82s autopkgtest [05:53:40]: test run-commands: -----------------------] 83s autopkgtest [05:53:41]: test run-commands: - - - - - - - - - - results - - - - - - - - - - 83s run-commands PASS 83s autopkgtest [05:53:41]: test run-commands: preparing testbed 84s Reading package lists... 84s Building dependency tree... 84s Reading state information... 84s Solving dependencies... 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 2950 kB of archives. 84s After this operation, 12.2 MB of additional disk space will be used. 84s Get:1 http://ftpmaster.internal/ubuntu resolute/main s390x libxslt1.1 s390x 1.1.43-0.3 [163 kB] 85s Get:2 http://ftpmaster.internal/ubuntu resolute/main s390x python3-soupsieve all 2.7-2 [33.6 kB] 85s Get:3 http://ftpmaster.internal/ubuntu resolute-proposed/main s390x python3-bs4 all 4.14.2-1 [82.8 kB] 85s Get:4 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-sgmllib3k all 1.0.0-5 [8722 B] 85s Get:5 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-feedparser all 6.0.11-2 [45.2 kB] 86s Get:6 http://ftpmaster.internal/ubuntu resolute/main s390x python3-lxml s390x 6.0.1-1build1 [2480 kB] 90s Get:7 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-lxml-html-clean all 0.4.2-1 [14.2 kB] 90s Get:8 http://ftpmaster.internal/ubuntu resolute/main s390x python3-cssselect all 1.3.0-1 [18.8 kB] 90s Get:9 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-readability all 0.8.1+dfsg1-4 [15.8 kB] 90s Get:10 http://ftpmaster.internal/ubuntu resolute/main s390x xdg-utils all 1.2.1-2ubuntu1 [66.0 kB] 90s Get:11 http://ftpmaster.internal/ubuntu resolute/main s390x python3-setproctitle s390x 1.3.7-1 [21.3 kB] 90s Fetched 2950 kB in 6s (491 kB/s) 90s Selecting previously unselected package libxslt1.1:s390x. 90s (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 ... 56973 files and directories currently installed.) 90s Preparing to unpack .../00-libxslt1.1_1.1.43-0.3_s390x.deb ... 90s Unpacking libxslt1.1:s390x (1.1.43-0.3) ... 90s Selecting previously unselected package python3-soupsieve. 90s Preparing to unpack .../01-python3-soupsieve_2.7-2_all.deb ... 90s Unpacking python3-soupsieve (2.7-2) ... 90s Selecting previously unselected package python3-bs4. 90s Preparing to unpack .../02-python3-bs4_4.14.2-1_all.deb ... 90s Unpacking python3-bs4 (4.14.2-1) ... 90s Selecting previously unselected package python3-sgmllib3k. 90s Preparing to unpack .../03-python3-sgmllib3k_1.0.0-5_all.deb ... 90s Unpacking python3-sgmllib3k (1.0.0-5) ... 90s Selecting previously unselected package python3-feedparser. 90s Preparing to unpack .../04-python3-feedparser_6.0.11-2_all.deb ... 90s Unpacking python3-feedparser (6.0.11-2) ... 90s Selecting previously unselected package python3-lxml:s390x. 90s Preparing to unpack .../05-python3-lxml_6.0.1-1build1_s390x.deb ... 90s Unpacking python3-lxml:s390x (6.0.1-1build1) ... 90s Selecting previously unselected package python3-lxml-html-clean. 90s Preparing to unpack .../06-python3-lxml-html-clean_0.4.2-1_all.deb ... 90s Unpacking python3-lxml-html-clean (0.4.2-1) ... 90s Selecting previously unselected package python3-cssselect. 90s Preparing to unpack .../07-python3-cssselect_1.3.0-1_all.deb ... 90s Unpacking python3-cssselect (1.3.0-1) ... 90s Selecting previously unselected package python3-readability. 90s Preparing to unpack .../08-python3-readability_0.8.1+dfsg1-4_all.deb ... 90s Unpacking python3-readability (0.8.1+dfsg1-4) ... 90s Selecting previously unselected package xdg-utils. 90s Preparing to unpack .../09-xdg-utils_1.2.1-2ubuntu1_all.deb ... 90s Unpacking xdg-utils (1.2.1-2ubuntu1) ... 90s Selecting previously unselected package python3-setproctitle:s390x. 90s Preparing to unpack .../10-python3-setproctitle_1.3.7-1_s390x.deb ... 90s Unpacking python3-setproctitle:s390x (1.3.7-1) ... 90s Setting up python3-sgmllib3k (1.0.0-5) ... 90s Setting up python3-setproctitle:s390x (1.3.7-1) ... 90s Setting up libxslt1.1:s390x (1.1.43-0.3) ... 90s Setting up python3-cssselect (1.3.0-1) ... 90s Setting up python3-soupsieve (2.7-2) ... 91s Setting up xdg-utils (1.2.1-2ubuntu1) ... 91s update-alternatives: using /usr/bin/xdg-open to provide /usr/bin/open (open) in auto mode 91s Setting up python3-feedparser (6.0.11-2) ... 91s Setting up python3-bs4 (4.14.2-1) ... 91s Setting up python3-lxml:s390x (6.0.1-1build1) ... 91s Setting up python3-lxml-html-clean (0.4.2-1) ... 91s Setting up python3-readability (0.8.1+dfsg1-4) ... 91s Processing triggers for libc-bin (2.42-0ubuntu3) ... 91s Processing triggers for man-db (2.13.1-1) ... 92s autopkgtest [05:53:50]: test run-commands: [----------------------- 93s 93s # 0. Basic arguments 93s offpunk --version 93s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 93s Offpunk 2.7.1 93s offpunk --help 93s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 93s usage: offpunk [-h] [--bookmarks] [--command [COMMAND ...]] 93s [--config-file FILE] [--sync] [--assume-yes] [--disable-http] 93s [--fetch-later] [--depth DEPTH] [--images-mode IMAGES_MODE] 93s [--cache-validity CACHE_VALIDITY] [--version] [--features] 93s [URL ...] 93s 93s Offline-First Gemini/Web/Gopher/RSS reader and browser 93s 93s positional arguments: 93s URL Arguments should be URL to be fetched or, if --sync is 93s used, lists 93s 93s options: 93s -h, --help show this help message and exit 93s --bookmarks start with your list of bookmarks 93s --command [COMMAND ...] 93s Launch this command after startup 93s --config-file FILE use this particular config file instead of default 93s --sync run non-interactively to build cache by exploring 93s lists passed as argument. Without argument, all lists 93s are fetched. 93s --assume-yes assume-yes when asked questions about 93s certificates/redirections during sync (lower security) 93s --disable-http do not try to get http(s) links (but already cached 93s will be displayed) 93s --fetch-later run non-interactively with an URL as argument to fetch 93s it later 93s --depth DEPTH depth of the cache to build. Default is 1. More is 93s crazy. Use at your own risks! 93s --images-mode IMAGES_MODE 93s the mode to use to choose which images to download in 93s a HTML page. one of (None, readable, full). Warning: 93s full will slowdown your sync. 93s --cache-validity CACHE_VALIDITY 93s duration for which a cache is valid before sync 93s (seconds) 93s --version display version information and quit 93s --features display available features and dependancies then quit 93s offpunk --features 93s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 93s moving from tofu.db to certificates as files 93s Upgrading cache to version 1: migrating index.txt to gophermap 93s Offpunk 2.7.1 93s =========== 93s System: linux 93s Python: 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 93s 93s Highly recommended: 93s - python-cryptography : Installed 93s - xdg-open : Installed 93s 93s Web browsing: 93s - python-requests : Installed 93s - python-feedparser : Installed 93s - python-bs4 : Installed 93s - python-readability : Installed 93s - timg 1.3.2+ : Not Installed 93s - chafa 1.10+ : Not Installed 93s 93s Nice to have: 93s - python-setproctitle : Installed 93s - X11 clipboard (xsel or xclip) : Not Installed 93s - Wayland clipboard (wl-clipboard): Not Installed 93s 93s Features : 93s - Render images (chafa or timg) : Not Installed 93s - Render HTML (bs4, readability) : Installed 93s - Render Atom/RSS feeds (feedparser) : Installed 93s - Connect to http/https (requests) : Installed 93s - Detect text encoding (python-chardet) : Installed 93s - restore last position (less 572+) : Installed 93s 93s Config directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.config/offpunk/ 93s User Data directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.local/share/offpunk/ 93s Cache directoy : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.cache/offpunk/ 93s echo quit | offpunk --bookmarks 94s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 94s Creating config directory /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.config/offpunk/ 94s Welcome to Offpunk! 94s Type `help` to get the list of available command. 94s List bookmarks does not exist. Create it with list create bookmarks 94s ON> You can close your screen! 94s 94s # 1. Basic commands 94s cat << END | offpunk 94s version 94s help 94s help abbrevs 94s help add 94s help back 94s help blackbox 94s help bookmarks 94s help cat 94s help cert 94s help copy 94s help find 94s help forward 94s help go 94s help gus 94s help handler 94s help help 94s help history 94s help info 94s help list 94s help ls 94s help mark 94s help move 94s help offline 94s help online 94s help open 94s help redirect 94s help reload 94s help root 94s help save 94s help set 94s help shell echo test 94s help subscribe 94s help sync 94s help theme 94s help tour 94s help url 94s help version 94s help wikipedia 94s help xkcd 94s help exit 94s help quit 94s quit 94s END 94s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 94s Welcome to Offpunk! 94s Type `help` to get the list of available command. 94s ON> Offpunk 2.7.1 94s =========== 94s System: linux 94s Python: 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 94s 94s Highly recommended: 94s - python-cryptography : Installed 94s - xdg-open : Installed 94s 94s Web browsing: 94s - python-requests : Installed 94s - python-feedparser : Installed 94s - python-bs4 : Installed 94s - python-readability : Installed 94s - timg 1.3.2+ : Not Installed 94s - chafa 1.10+ : Not Installed 94s 94s Nice to have: 94s - python-setproctitle : Installed 94s - X11 clipboard (xsel or xclip) : Not Installed 94s - Wayland clipboard (wl-clipboard): Not Installed 94s 94s Features : 94s - Render images (chafa or timg) : Not Installed 94s - Render HTML (bs4, readability) : Installed 94s - Render Atom/RSS feeds (feedparser) : Installed 94s - Connect to http/https (requests) : Installed 94s - Detect text encoding (python-chardet) : Installed 94s - restore last position (less 572+) : Installed 94s 94s Config directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.config/offpunk/ 94s User Data directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.local/share/offpunk/ 94s Cache directoy : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.cache/offpunk/ 94s ON> 94s Documented commands (type help ): 94s ======================================== 94s add copy gus ls quit set tutorial xkcd 94s alias exit handler mark redirect shell up 94s archive feed help move reload subscribe url 94s back find history offline root sync version 94s bookmarks forward info online save theme view 94s certs go list open search tour wikipedia 94s 94s ON> abbrevs is an alias for 'alias' 94s See the list of aliases with 'abbrevs' 94s 'help alias': 94s Create or modifiy an alias 94s alias : show all existing aliases 94s alias ALIAS : show the command linked to ALIAS 94s alias ALIAS CMD : create or replace existing ALIAS to be linked to command CMD 94s ON> Add the current URL to the list specified as argument. 94s If no argument given, URL is added to Bookmarks. 94s You can pass a link number as the second argument to add the link. 94s "add $LIST XX" will add link number XX to $LIST 94s ON> Go back to the previous gemini item. 94s ON> *** No help on blackbox 94s ON> Show or access the bookmarks menu. 94s 'bookmarks' shows all bookmarks. 94s 'bookmarks n' navigates immediately to item n in the bookmark menu. 94s Bookmarks are stored using the 'add' command. 94s ON> *** No help on cat 94s ON> cert is an alias for 'certs' 94s See the list of aliases with 'abbrevs' 94s 'help certs': 94s Manage your client certificates (identities) for a site. 94s `certs` will display all valid certificates for the current site 94s `certs new ` will create a new certificate, if no url is specified, the current open site will be used. 94s ON> Copy the content of the last visited page as gemtext/html in the clipboard. 94s Use with "url" as argument to only copy the adress. 94s Use with "raw" to copy ANSI content as seen in your terminal (with colour codes). 94s Use with "cache" to copy the path of the cached content. 94s Use with "title" to copy the title of the page. 94s Use with "link" to copy a link in the gemtext format to that page with the title. 94s ON> Find in current page by displaying only relevant lines (grep). 94s ON> Go forward to the next gemini item. 94s ON> Go to a gemini URL or marked item. 94s ON> Submit a search query to the geminispace.info search engine. 94s ON> View or set handler commands for different MIME types. 94s handler MIMETYPE : see handler for MIMETYPE 94s handler MIMETYPE CMD : set handler for MIMETYPE to CMD 94s in the CMD, %s will be replaced by the filename. 94s if no %s, it will be added at the end. 94s MIMETYPE can be the true mimetype or the file extension. 94s 94s Examples: 94s handler application/pdf zathura %s 94s handler .odt lowriter 94s handler docx lowriter 94s ON> ALARM! Recursion detected! ALARM! Prepare to eject! 94s ON> Display history. 94s ON> Display information about current page. 94s ON> Manage list of bookmarked pages. 94s - list : display available lists 94s - list $LIST : display pages in $LIST 94s - list create $NEWLIST : create a new list 94s - list edit $LIST : edit the list 94s - list subscribe $LIST : during sync, add new links found in listed pages to tour 94s - list freeze $LIST : don’t update pages in list during sync if a cache already exists 94s - list normal $LIST : update pages in list during sync but don’t add anything to tour 94s - list delete $LIST : delete a list permanently (a confirmation is required) 94s - list help : print this help 94s See also : 94s - add $LIST (to add current page to $LIST or, by default, to bookmarks) 94s - move $LIST (to add current page to list while removing from all others) 94s - archive (to remove current page from all lists while adding to archives) 94s 94s There’s no "delete" on purpose. The use of "archive" is recommended. 94s 94s The following lists cannot be removed or frozen but can be edited with "list edit" 94s - list archives : contains last 200 archived URLs 94s - history : contains last 200 visisted URLs 94s - to_fetch : contains URLs that will be fetch during the next sync 94s - tour : contains the next URLs to visit during a tour (see "help tour") 94s ON> List contents of current index. 94s Use 'ls -l' to see URLs. 94s ON> Mark the current item with a single letter. This letter can then 94s be passed to the 'go' command to return to the current item later. 94s Think of it like marks in vi: 'mark a'='ma' and 'go a'=''a'. 94s Marks are temporary until shutdown (not saved to disk). 94s ON> move LIST will add the current page to the list LIST. 94s With a major twist: current page will be removed from all other lists. 94s If current page was not in a list, this command is similar to `add LIST`. 94s ON> Use Offpunk offline by only accessing cached content 94s ON> Use Offpunk online with a direct connection 94s ON> Open current item with the configured handler or xdg-open. 94s Use "open url" to open current URL in a browser. 94s Use "open 2 4" to open links 2 and 4 94s You can combine with "open url 2 4" to open URL of links 94s see "handler" command to set your handler. 94s ON> Display and manage the list of redirected URLs. This features is mostly useful to use privacy-friendly frontends for popular websites. 94s ON> Reload the current URL. 94s ON> Go to root selector of the server hosting current item. 94s ON> Save an item to the filesystem. 94s 'save n filename' saves menu item n to the specified filename. 94s 'save filename' saves the last viewed item to the specified filename. 94s 'save n' saves menu item n to an automagic filename. 94s ON> View or set various options. 94s ON> *** No help on shell echo test 94s ON> Subscribe to current page by saving it in the "subscribed" list. 94s If a new link is found in the page during a --sync, the new link is automatically 94s fetched and added to your next tour. 94s To unsubscribe, remove the page from the "subscribed" list. 94s ON> Synchronize all bookmarks lists and URLs from the to_fetch list. 94s - New elements in pages in subscribed lists will be added to tour 94s - Elements in list to_fetch will be retrieved and added to tour 94s - Normal lists will be synchronized and updated 94s - Frozen lists will be fetched only if not present. 94s 94s Before a sync, you can edit the list of URLs that will be fetched with the 94s following command: "list edit to_fetch" 94s 94s Argument : duration of cache validity (in seconds). 94s ON> Change the colors of your rendered text. 94s 94s "theme ELEMENT COLOR" 94s 94s ELEMENT is one of: window_title, window_subtitle, title, 94s subtitle,subsubtitle,link,oneline_link,new_link,image_link,preformatted,blockquote. 94s 94s COLOR is one or many (separated by space) of: bold, faint, italic, underline, black, 94s red, green, yellow, blue, purple, cyan, white. 94s 94s Each color can alternatively be prefaced with "bright_". 94s ON> Add index items as waypoints on a tour, which is basically a FIFO 94s queue of gemini items. 94s 94s `tour` or `t` alone brings you to the next item in your tour. 94s Items can be added with `tour 1 2 3 4` or ranges like `tour 1-4`. 94s All items in current menu can be added with `tour *`. 94s All items in $LIST can be added with `tour $LIST`. 94s Current item can be added back to the end of the tour with `tour .`. 94s Current tour can be listed with `tour ls` and scrubbed with `tour clear`. 94s ON> Print the url of the current page. 94s Use "url XX" where XX is a number to print the url of link XX. 94s "url" can also be piped to the shell, using the pipe "|" 94s ON> Display version and system information. 94s ON> Search on wikipedia using the configured Gemini interface. 94s The first word should be the two letters code for the language. 94s Exemple : "wikipedia en Gemini protocol" 94s But you can also use abbreviations to go faster: 94s "wen Gemini protocol". (your abbreviation might be missing, report the bug) 94s The interface used can be modified with the command: 94s "set wikipedia URL" where URL should contains two "%s", the first 94s one used for the language, the second for the search string. 94s ON> Open the specified XKCD comics (a number is required as parameter) 94s ON> Exit Offpunk. 94s ON> Exit Offpunk. 94s ON> You can close your screen! 94s 94s # cert calls a submenu which expects then a blank line to get outside. 94s # find will call the pager 94s # gus and search will launch the client to the search engine. 94s # reload will call the pager 94s # wikipedia will require test to have Internet access 94s cat << END | offpunk 94s abbrevs 94s add 94s archive 94s back 94s blackbox 94s bookmarks 94s cat 94s cert 94s 94s copy 94s forward 94s go 94s handler 94s history 94s info 94s list 94s ls 94s mark 94s move 94s offline 94s online 94s open 94s redirect 94s root 94s save 94s set 94s shell echo test 94s subscribe 94s 94s sync 94s tour 94s theme 94s url 94s exit 94s END 94s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 94s Welcome to Offpunk! 94s Type `help` to get the list of available command. 94s ON> 94s Command Aliases: 94s ================ 94s .. up 94s a add 94s b back 94s bb blackbox 94s bm bookmarks 94s book bookmarks 94s cert certs 94s cp copy 94s f forward 94s g go 94s h history 94s hist history 94s l view 94s less view 94s man help 94s mv move 94s n next 94s off offline 94s on online 94s p previous 94s prev previous 94s q quit 94s r reload 94s s save 94s se search 94s / find 94s t tour 94s u up 94s v view 94s w wikipedia 94s wen wikipedia en 94s wfr wikipedia fr 94s wes wikipedia es 94s abbrevs alias 94s 94s ON> You need to 'go' somewhere, first 94s ON> You need to 'go' somewhere, first 94s ON> ON> What? 94s ON> List bookmarks does not exist. Create it with list create bookmarks 94s ON> What? 94s ON> You need to 'go' somewhere, first 94s ON> ON> No content to copy, visit a page first 94s ON> ON> Install xsel/xclip (X11) or wl-clipboard (Wayland) to get URLs from your clipboard 94s Go where? (hint: simply copy an URL in your clipboard) 94s ON> ON> List history does not exist. Create it with list create history 94s ON> You need to 'go' somewhere, first 94s ON> No lists yet. Use `list create` 94s ON> You need to 'go' somewhere, first 94s ON> You need to 'go' somewhere, first 94s ON> LIST argument is required as the target for your move 94s ON> Offpunk is now offline and will only access cached content 94s OFF> Offpunk is online and will access the network 94s ON> You need to 'go' somewhere, first 94s ON> Current redirections: 94s -------------------- 94s *reddit.com -> teddit.net 94s *medium.com -> scribe.rip 94s *admanager.google.com -> blocked 94s *google-health-ads.blogspot.com -> blocked 94s *ads.yahoo.com -> blocked 94s *google-analytics.com -> blocked 94s twitter.com -> blocked 94s facebook.com -> blocked 94s *tiktok.com -> blocked 94s *advertising.theguardian.com -> blocked 94s facebook.net -> blocked 94s *doubleclick.net -> blocked 94s *advertising.amazon.com -> blocked 94s *firebase.google.com -> blocked 94s youtu.be -> blocked 94s *google-webfonts-helper.herokuapp.com -> blocked 94s x.com -> blocked 94s youtube.com -> blocked 94s *advertise.newrepublic.com -> blocked 94s *licdn.com -> blocked 94s linkedin.com -> blocked 94s fbcdn.net -> blocked 94s 94s To add new, use "redirect origine.com destination.org" 94s To remove a redirect, use "redirect origine.com NONE" 94s To completely block a website, use "redirect origine.com BLOCK" 94s To block also subdomains, prefix with *: "redirect *origine.com BLOCK" 94s ON> You need to 'go' somewhere, first 94s ON> You need to 'go' somewhere, first 94s ON> accept_bad_ssl_certificates False 94s archives_size 200 94s auto_follow_redirects True 94s beta False 94s debug False 94s default_protocol gemini 94s editor None 94s ftr_site_config None 94s history_size 200 94s images_mode readable 94s max_size_download 10 94s preformat_wrap False 94s redirects True 94s search gemini://kennedy.gemi.dev/search?%s 94s short_timeout 5 94s timeout 600 94s tls_mode tofu 94s width 72 94s wikipedia gemini://gemi.dev/cgi-bin/wp.cgi/view/%s?%s 94s ON> test 94s ON> You need to 'go' somewhere, first 94s ON> ON> * * * 0 to fetch in tour * * * 94s End of sync 94s ON> End of tour. 94s ON> window_title set to ['red', 'bold'] 94s window_subtitle set to ['red', 'faint'] 94s title set to ['blue', 'bold', 'underline'] 94s subtitle set to ['blue'] 94s subsubtitle set to ['blue', 'faint'] 94s link set to ['blue', 'faint'] 94s new_link set to ['bold'] 94s oneline_link set to [] 94s image_link set to ['yellow', 'faint'] 94s preformatted set to ['faint'] 94s blockquote set to ['italic'] 94s prompt_on set to ['green'] 94s prompt_off set to ['green'] 94s ON> You need to 'go' somewhere, first 94s ON> You can close your screen! 94s 94s # 2. Checks against gemini file 94s cat << END | offpunk 94s go file://$PWD/index.gmi 94s quit 94s END 94s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 94s Welcome to Offpunk! 94s Type `help` to get the list of available command. 94s ON> index.gmi (7 items) (local file) 94s OFFPUNK - An Offline-First Browser for the Smolnet 94s 94s Offpunk is a command-line browser and feed reader dedicated to browsing 94s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 94s is optimised to be used offline with rare connections but works as well 94s when connected. 94s 94s Offpunk is optimised for reading and supports readability mode, 94s displaying pictures, subscribing to pages or RSS feeds, managing complex 94s lists of bookmarks. Its integrated help and easy commands make it a 94s perfect tool for command-line novices while power-users will be amazed 94s by its shell integration. 94s 94s Offpunk is written in Python 3 by Ploum. It aims to be portable and 94s minimise dependencies, making them optional. It supports 94s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 94s 94s 94s [1] Installing Offpunk and dependencies 94s [2] First steps 94s [3] Configuring Offpunk 94s [4] Using Offpunk offline 94s [5] Lists and subscriptions 94s [6] Shell and OS integrations 94s [7] Roadmap & Contributions 94s 94s  94s ON> You can close your screen! 94s 94s # 3. Test netcache command 94s # 3.0 Basic 94s netcache --help 94s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 94s usage: netcache [-h] [--path] [--ids] [--offline] [--max-size MAX_SIZE] 94s [--timeout TIMEOUT] [--cache-validity CACHE_VALIDITY] 94s [URL ...] 94s 94s Netcache is a command-line tool to retrieve, cache and access networked 94s content. By default, netcache will returns a cached version of a given URL, 94s downloading it only if a cache version doesn't exist. A validity duration, in 94s seconds, can also be given so netcache downloads the content only if the 94s existing cache is older than the validity. 94s 94s positional arguments: 94s URL download URL and returns the content or the path to a 94s cached version 94s 94s options: 94s -h, --help show this help message and exit 94s --path return path to the cache instead of the content of the 94s cache 94s --ids return a list of id's for the gemini-site instead of 94s the content of the cache 94s --offline Do not attempt to download, return cached version or 94s error 94s --max-size MAX_SIZE Cancel download of items above that size (value in 94s Mb). 94s --timeout TIMEOUT Time to wait before cancelling connection (in second). 94s --cache-validity CACHE_VALIDITY 94s maximum age, in second, of the cached version before 94s redownloading a new version 94s # 3.1 Various suboptions 94s OUT="$(netcache --path "file://$PWD/index.gmi")" 95s echo "$OUT" | grep -q "$PWD/index.gmi" 95s # (Note that the file local do not feed the user's cache.) 95s # 3.2 Main functionality 95s netcache "file://$PWD/index.gmi" 95s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 95s # OFFPUNK - An Offline-First Browser for the Smolnet 95s 95s 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. 95s 95s 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. 95s 95s 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. 95s 95s 95s => install.gmi Installing Offpunk and dependencies 95s => tutorial.gmi First steps 95s => config.gmi Configuring Offpunk 95s => offline.gmi Using Offpunk offline 95s => lists.gmi Lists and subscriptions 95s => shell.gmi Shell and OS integrations 95s => dev.gmi Roadmap & Contributions 95s 95s 95s netcache --offline "file://$PWD/index.gmi" 95s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 95s # OFFPUNK - An Offline-First Browser for the Smolnet 95s 95s 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. 95s 95s 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. 95s 95s 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. 95s 95s 95s => install.gmi Installing Offpunk and dependencies 95s => tutorial.gmi First steps 95s => config.gmi Configuring Offpunk 95s => offline.gmi Using Offpunk offline 95s => lists.gmi Lists and subscriptions 95s => shell.gmi Shell and OS integrations 95s => dev.gmi Roadmap & Contributions 95s 95s 95s netcache --max-size 1 "file://$PWD/index.gmi" 95s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 95s # OFFPUNK - An Offline-First Browser for the Smolnet 95s 95s 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. 95s 95s 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. 95s 95s 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. 95s 95s 95s => install.gmi Installing Offpunk and dependencies 95s => tutorial.gmi First steps 95s => config.gmi Configuring Offpunk 95s => offline.gmi Using Offpunk offline 95s => lists.gmi Lists and subscriptions 95s => shell.gmi Shell and OS integrations 95s => dev.gmi Roadmap & Contributions 95s 95s 95s # Note that testing the --timeout looks to need Internet, so we'll skip this 95s # option for now. 95s 95s # 4. Test ansicat 95s # 4.0 Basic 95s ansicat --help 95s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 95s usage: ansicat [-h] 95s [--format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext}] 95s [--mime MIME] [--url [URL ...]] [--mode MODE] 95s [INPUT ...] 95s 95s ansicat is a terminal rendering tool that will render multiple formats (HTML, 95s Gemtext, RSS, Gophermap, Image) into ANSI text and colors. When used on a 95s file, ansicat will try to autodetect the format. When used with standard 95s input, the format must be manually specified. If the content contains links, 95s the original URL of the content can be specified in order to correctly modify 95s relatives links. 95s 95s positional arguments: 95s INPUT Path to the text to render (default to stdin) 95s 95s options: 95s -h, --help show this help message and exit 95s --format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext} 95s Renderer to use. Available: auto, gemtext, html, feed, 95s gopher, image, folder, plaintext 95s --mime MIME Mime of the content to parse 95s --url [URL ...] Original URL of the content 95s --mode MODE Which mode should be used to render: normal (default), 95s full or source. With HTML, the normal mode try to 95s extract the article. 95s # 4.1 Test some ansicat formats and options 95s # WARNING: there is something about autopkgtest environment that causes the two 95s # below commands to crash, but running them by hand works perfectly. 95s # This may indicate fragility in the tool, but it is curious that the 95s # 4.2 section below gave no difficulty: if this crashes too, then it 95s # may be reasonable to skip it as well. 95s #ansicat --format plaintext index.gmi 95s #ansicat --mime text/plain index.gmi 95s # 4.2 Main functionality 95s ansicat --url "file://$PWD/index.gmi" index.gmi 96s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 96s Format or mime should be specified when running with stdin 96s 96s # 5. Test opnk 96s # 5.0 Basic 96s opnk --help 96s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 96s usage: opnk [-h] [--mode MODE] [--cache-validity CACHE_VALIDITY] [INPUT ...] 96s 96s opnk is an universal open command tool that will try to display any file in 96s the pager less after rendering its content with ansicat. If that fails, opnk 96s will fallback to opening the file with xdg-open. If given an URL as input 96s instead of a path, opnk will rely on netcache to get the networked content. 96s 96s positional arguments: 96s INPUT Path to the file or URL to open 96s 96s options: 96s -h, --help show this help message and exit 96s --mode MODE Which mode should be used to render: normal (default), 96s full or source. With HTML, the normal mode try to 96s extract the article. 96s --cache-validity CACHE_VALIDITY 96s maximum age, in second, of the cached version before 96s redownloading a new version 96s # 5.1 Open some things (but stick to not needing Internet). 96s opnk /usr/share/doc/offpunk/copyright 96s copyright (3 items) (local file) 96s Format: https://www.debian.org/doc/packaging-manuals/copyright- 96s format/1.0/ 96s Upstream-Name: Offpunk 96s Upstream-Contact: Lionel "Ploum" Dricot 96s Source: https://git.sr.ht/~lioploum/offpunk/ 96s 96s Files: * 96s Copyright: 2019-2020, Solderpunk 96s 2021-2025, Ploum and contributors. 96s License: AGPL-3+ 96s Comment: Derived from AV-98[1] by Solderpunk. 96s [1]: https://tildegit.org/solderpunk/AV-98 96s 96s Files: netcache_migration.py 96s Copyright: 2023, Sotiris Papatheodorou 96s License: BSD-2-Clause 96s Redistribution and use in source and binary forms, with or without 96s modification, are permitted provided that the following conditions are 96s met: 96s . 96s 1. Redistributions of source code must retain the above copyright 96s notice, this list of conditions and the following disclaimer. 96s . 96s 2. Redistributions in binary form must reproduce the above copyright 96s notice, this list of conditions and the following disclaimer in the 96s documentation and/or other materials provided with the 96s distribution. 96s . 96s THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS 96s IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 96s TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 96s PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 96s HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 96s SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 96s LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 96s DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 96s THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 96s (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 96s OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 96s 96s Files: cert_migration.py 96s Copyright: 2024, Bert Livens 96s License: AGPL-3 96s This program is free software: you can redistribute it and/or modify it 96s under the terms of the GNU Affero General Public License as published 96s by the Free Software Foundation, version 3 of the License only. 96s . 96s This program is distributed in the hope that it will be useful, but 96s WITHOUT ANY WARRANTY; without even the implied warranty of 96s MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 96s Affero General Public License for more details. 96s . 96s A copy of the GNU Affero General Public License is available below. 96s 96s Files: debian/* 96s Copyright: 2023-2025, Étienne Mollier 96s License: AGPL-3+ 96s 96s License: AGPL-3+ 96s Copyright (C) 2007 Free Software Foundation, Inc. 96s Everyone is permitted to copy and distribute verbatim copies 96s of this license document, but changing it is not allowed. 96s . 96s Preamble 96s . 96s The GNU Affero General Public License is a free, copyleft license for 96s software and other kinds of works, specifically designed to ensure 96s cooperation with the community in the case of network server software. 96s . 96s The licenses for most software and other practical works are designed 96s to take away your freedom to share and change the works. By contrast, 96s our General Public Licenses are intended to guarantee your freedom to 96s share and change all versions of a program--to make sure it remains 96s free 96s software for all its users. 96s . 96s When we speak of free software, we are referring to freedom, not 96s price. Our General Public Licenses are designed to make sure that you 96s have the freedom to distribute copies of free software (and charge for 96s them if you wish), that you receive source code or can get it if you 96s want it, that you can change the software or use pieces of it in new 96s free programs, and that you know you can do these things. 96s . 96s Developers that use our General Public Licenses protect your rights 96s with two steps: (1) assert copyright on the software, and (2) offer 96s you this License which gives you legal permission to copy, distribute 96s and/or modify the software. 96s . 96s A secondary benefit of defending all users' freedom is that 96s improvements made in alternate versions of the program, if they 96s receive widespread use, become available for other developers to 96s incorporate. Many developers of free software are heartened and 96s encouraged by the resulting cooperation. However, in the case of 96s software used on network servers, this result may fail to come about. 96s The GNU General Public License permits making a modified version and 96s letting the public access it on a server without ever releasing its 96s source code to the public. 96s . 96s The GNU Affero General Public License is designed specifically to 96s ensure that, in such cases, the modified source code becomes available 96s to the community. It requires the operator of a network server to 96s provide the source code of the modified version running there to the 96s users of that server. Therefore, public use of a modified version, on 96s a publicly accessible server, gives the public access to the source 96s code of the modified version. 96s . 96s An older license, called the Affero General Public License and 96s published by Affero, was designed to accomplish similar goals. This is 96s a different license, not a version of the Affero GPL, but Affero has 96s released a new version of the Affero GPL which permits relicensing 96s under 96s this license. 96s . 96s The precise terms and conditions for copying, distribution and 96s modification follow. 96s . 96s TERMS AND CONDITIONS 96s . 96s 0. Definitions. 96s . 96s "This License" refers to version 3 of the GNU Affero General Public 96s License. 96s . 96s "Copyright" also means copyright-like laws that apply to other kinds of 96s works, such as semiconductor masks. 96s . 96s "The Program" refers to any copyrightable work licensed under this 96s License. Each licensee is addressed as "you". "Licensees" and 96s "recipients" may be individuals or organizations. 96s . 96s To "modify" a work means to copy from or adapt all or part of the work 96s in a fashion requiring copyright permission, other than the making of 96s an 96s exact copy. The resulting work is called a "modified version" of the 96s earlier work or a work "based on" the earlier work. 96s . 96s A "covered work" means either the unmodified Program or a work based 96s on the Program. 96s . 96s To "propagate" a work means to do anything with it that, without 96s permission, would make you directly or secondarily liable for 96s infringement under applicable copyright law, except executing it on a 96s computer or modifying a private copy. Propagation includes copying, 96s distribution (with or without modification), making available to the 96s public, and in some countries other activities as well. 96s . 96s To "convey" a work means any kind of propagation that enables other 96s parties to make or receive copies. Mere interaction with a user 96s through 96s a computer network, with no transfer of a copy, is not conveying. 96s . 96s An interactive user interface displays "Appropriate Legal Notices" 96s to the extent that it includes a convenient and prominently visible 96s feature that (1) displays an appropriate copyright notice, and (2) 96s tells the user that there is no warranty for the work (except to the 96s extent that warranties are provided), that licensees may convey the 96s work under this License, and how to view a copy of this License. If 96s the interface presents a list of user commands or options, such as a 96s menu, a prominent item in the list meets this criterion. 96s . 96s 1. Source Code. 96s . 96s The "source code" for a work means the preferred form of the work 96s for making modifications to it. "Object code" means any non-source 96s form of a work. 96s . 96s A "Standard Interface" means an interface that either is an official 96s standard defined by a recognized standards body, or, in the case of 96s interfaces specified for a particular programming language, one that 96s is widely used among developers working in that language. 96s . 96s The "System Libraries" of an executable work include anything, other 96s than the work as a whole, that (a) is included in the normal form of 96s packaging a Major Component, but which is not part of that Major 96s Component, and (b) serves only to enable use of the work with that 96s Major Component, or to implement a Standard Interface for which an 96s implementation is available to the public in source code form. A 96s "Major Component", in this context, means a major essential component 96s (kernel, window system, and so on) of the specific operating system 96s (if any) on which the executable work runs, or a compiler used to 96s produce the work, or an object code interpreter used to run it. 96s . 96s The "Corresponding Source" for a work in object code form means all 96s the source code needed to generate, install, and (for an executable 96s work) run the object code and to modify the work, including scripts to 96s control those activities. However, it does not include the work's 96s System Libraries, or general-purpose tools or generally available free 96s programs which are used unmodified in performing those activities but 96s which are not part of the work. For example, Corresponding Source 96s includes interface definition files associated with source files for 96s the work, and the source code for shared libraries and dynamically 96s linked subprograms that the work is specifically designed to require, 96s such as by intimate data communication or control flow between those 96s subprograms and other parts of the work. 96s . 96s The Corresponding Source need not include anything that users 96s can regenerate automatically from other parts of the Corresponding 96s Source. 96s . 96s The Corresponding Source for a work in source code form is that 96s same work. 96s . 96s 2. Basic Permissions. 96s . 96s All rights granted under this License are granted for the term of 96s copyright on the Program, and are irrevocable provided the stated 96s conditions are met. This License explicitly affirms your unlimited 96s permission to run the unmodified Program. The output from running a 96s covered work is covered by this License only if the output, given its 96s content, constitutes a covered work. This License acknowledges your 96s rights of fair use or other equivalent, as provided by copyright law. 96s . 96s You may make, run and propagate covered works that you do not 96s convey, without conditions so long as your license otherwise remains 96s in force. You may convey covered works to others for the sole purpose 96s of having them make modifications exclusively for you, or provide you 96s with facilities for running those works, provided that you comply with 96s the terms of this License in conveying all material for which you do 96s not control copyright. Those thus making or running the covered works 96s for you must do so exclusively on your behalf, under your direction 96s and control, on terms that prohibit them from making any copies of 96s your copyrighted material outside their relationship with you. 96s . 96s Conveying under any other circumstances is permitted solely under 96s the conditions stated below. Sublicensing is not allowed; section 10 96s makes it unnecessary. 96s . 96s 3. Protecting Users' Legal Rights From Anti-Circumvention Law. 96s . 96s No covered work shall be deemed part of an effective technological 96s measure under any applicable law fulfilling obligations under article 96s 11 of the WIPO copyright treaty adopted on 20 December 1996, or 96s similar laws prohibiting or restricting circumvention of such 96s measures. 96s . 96s When you convey a covered work, you waive any legal power to forbid 96s circumvention of technological measures to the extent such 96s circumvention 96s is effected by exercising rights under this License with respect to 96s the covered work, and you disclaim any intention to limit operation or 96s modification of the work as a means of enforcing, against the work's 96s users, your or third parties' legal rights to forbid circumvention of 96s technological measures. 96s . 96s 4. Conveying Verbatim Copies. 96s . 96s You may convey verbatim copies of the Program's source code as you 96s receive it, in any medium, provided that you conspicuously and 96s appropriately publish on each copy an appropriate copyright notice; 96s keep intact all notices stating that this License and any 96s non-permissive terms added in accord with section 7 apply to the code; 96s keep intact all notices of the absence of any warranty; and give all 96s recipients a copy of this License along with the Program. 96s . 96s You may charge any price or no price for each copy that you convey, 96s and you may offer support or warranty protection for a fee. 96s . 96s 5. Conveying Modified Source Versions. 96s . 96s You may convey a work based on the Program, or the modifications to 96s produce it from the Program, in the form of source code under the 96s terms of section 4, provided that you also meet all of these 96s conditions: 96s . 96s a) The work must carry prominent notices stating that you modified 96s it, and giving a relevant date. 96s . 96s b) The work must carry prominent notices stating that it is 96s released under this License and any conditions added under section 96s 7. This requirement modifies the requirement in section 4 to 96s "keep intact all notices". 96s . 96s c) You must license the entire work, as a whole, under this 96s License to anyone who comes into possession of a copy. This 96s License will therefore apply, along with any applicable section 7 96s additional terms, to the whole of the work, and all its parts, 96s regardless of how they are packaged. This License gives no 96s permission to license the work in any other way, but it does not 96s invalidate such permission if you have separately received it. 96s . 96s d) If the work has interactive user interfaces, each must display 96s Appropriate Legal Notices; however, if the Program has interactive 96s interfaces that do not display Appropriate Legal Notices, your 96s work need not make them do so. 96s . 96s A compilation of a covered work with other separate and independent 96s works, which are not by their nature extensions of the covered work, 96s and which are not combined with it such as to form a larger program, 96s in or on a volume of a storage or distribution medium, is called an 96s "aggregate" if the compilation and its resulting copyright are not 96s used to limit the access or legal rights of the compilation's users 96s beyond what the individual works permit. Inclusion of a covered work 96s in an aggregate does not cause this License to apply to the other 96s parts of the aggregate. 96s . 96s 6. Conveying Non-Source Forms. 96s . 96s You may convey a covered work in object code form under the terms 96s of sections 4 and 5, provided that you also convey the 96s machine-readable Corresponding Source under the terms of this License, 96s in one of these ways: 96s . 96s a) Convey the object code in, or embodied in, a physical product 96s (including a physical distribution medium), accompanied by the 96s Corresponding Source fixed on a durable physical medium 96s customarily used for software interchange. 96s . 96s b) Convey the object code in, or embodied in, a physical product 96s (including a physical distribution medium), accompanied by a 96s written offer, valid for at least three years and valid for as 96s long as you offer spare parts or customer support for that product 96s model, to give anyone who possesses the object code either (1) a 96s copy of the Corresponding Source for all the software in the 96s product that is covered by this License, on a durable physical 96s medium customarily used for software interchange, for a price no 96s more than your reasonable cost of physically performing this 96s conveying of source, or (2) access to copy the 96s Corresponding Source from a network server at no charge. 96s . 96s c) Convey individual copies of the object code with a copy of the 96s written offer to provide the Corresponding Source. This 96s alternative is allowed only occasionally and noncommercially, and 96s only if you received the object code with such an offer, in accord 96s with subsection 6b. 96s . 96s d) Convey the object code by offering access from a designated 96s place (gratis or for a charge), and offer equivalent access to the 96s Corresponding Source in the same way through the same place at no 96s further charge. You need not require recipients to copy the 96s Corresponding Source along with the object code. If the place to 96s copy the object code is a network server, the Corresponding Source 96s may be on a different server (operated by you or a third party) 96s that supports equivalent copying facilities, provided you maintain 96s clear directions next to the object code saying where to find the 96s Corresponding Source. Regardless of what server hosts the 96s Corresponding Source, you remain obligated to ensure that it is 96s available for as long as needed to satisfy these requirements. 96s . 96s e) Convey the object code using peer-to-peer transmission, provided 96s you inform other peers where the object code and Corresponding 96s Source of the work are being offered to the general public at no 96s charge under subsection 6d. 96s . 96s A separable portion of the object code, whose source code is excluded 96s from the Corresponding Source as a System Library, need not be 96s included in conveying the object code work. 96s . 96s A "User Product" is either (1) a "consumer product", which means any 96s tangible personal property which is normally used for personal, family, 96s or household purposes, or (2) anything designed or sold for 96s incorporation 96s into a dwelling. In determining whether a product is a consumer 96s product, 96s doubtful cases shall be resolved in favor of coverage. For a 96s particular 96s product received by a particular user, "normally used" refers to a 96s typical or common use of that class of product, regardless of the 96s status 96s of the particular user or of the way in which the particular user 96s actually uses, or expects or is expected to use, the product. A 96s product 96s is a consumer product regardless of whether the product has substantial 96s commercial, industrial or non-consumer uses, unless such uses represent 96s the only significant mode of use of the product. 96s . 96s "Installation Information" for a User Product means any methods, 96s procedures, authorization keys, or other information required to 96s install 96s and execute modified versions of a covered work in that User Product 96s from 96s a modified version of its Corresponding Source. The information must 96s suffice to ensure that the continued functioning of the modified object 96s code is in no case prevented or interfered with solely because 96s modification has been made. 96s . 96s If you convey an object code work under this section in, or with, or 96s specifically for use in, a User Product, and the conveying occurs as 96s part of a transaction in which the right of possession and use of the 96s User Product is transferred to the recipient in perpetuity or for a 96s fixed term (regardless of how the transaction is characterized), the 96s Corresponding Source conveyed under this section must be accompanied 96s by the Installation Information. But this requirement does not apply 96s if neither you nor any third party retains the ability to install 96s modified object code on the User Product (for example, the work has 96s been installed in ROM). 96s . 96s The requirement to provide Installation Information does not include a 96s requirement to continue to provide support service, warranty, or 96s updates 96s for a work that has been modified or installed by the recipient, or for 96s the User Product in which it has been modified or installed. Access to 96s a 96s network may be denied when the modification itself materially and 96s adversely affects the operation of the network or violates the rules 96s and 96s protocols for communication across the network. 96s . 96s Corresponding Source conveyed, and Installation Information provided, 96s in accord with this section must be in a format that is publicly 96s documented (and with an implementation available to the public in 96s source code form), and must require no special password or key for 96s unpacking, reading or copying. 96s . 96s 7. Additional Terms. 96s . 96s "Additional permissions" are terms that supplement the terms of this 96s License by making exceptions from one or more of its conditions. 96s Additional permissions that are applicable to the entire Program shall 96s be treated as though they were included in this License, to the extent 96s that they are valid under applicable law. If additional permissions 96s apply only to part of the Program, that part may be used separately 96s under those permissions, but the entire Program remains governed by 96s this License without regard to the additional permissions. 96s . 96s When you convey a copy of a covered work, you may at your option 96s remove any additional permissions from that copy, or from any part of 96s it. (Additional permissions may be written to require their own 96s removal in certain cases when you modify the work.) You may place 96s additional permissions on material, added by you to a covered work, 96s for which you have or can give appropriate copyright permission. 96s . 96s Notwithstanding any other provision of this License, for material you 96s add to a covered work, you may (if authorized by the copyright holders 96s of 96s that material) supplement the terms of this License with terms: 96s . 96s a) Disclaiming warranty or limiting liability differently from the 96s terms of sections 15 and 16 of this License; or 96s . 96s b) Requiring preservation of specified reasonable legal notices or 96s author attributions in that material or in the Appropriate Legal 96s Notices displayed by works containing it; or 96s . 96s c) Prohibiting misrepresentation of the origin of that material, or 96s requiring that modified versions of such material be marked in 96s reasonable ways as different from the original version; or 96s . 96s d) Limiting the use for publicity purposes of names of licensors or 96s authors of the material; or 96s . 96s e) Declining to grant rights under trademark law for use of some 96s trade names, trademarks, or service marks; or 96s . 96s f) Requiring indemnification of licensors and authors of that 96s material by anyone who conveys the material (or modified versions 96s of 96s it) with contractual assumptions of liability to the recipient, for 96s any liability that these contractual assumptions directly impose on 96s those licensors and authors. 96s . 96s All other non-permissive additional terms are considered "further 96s restrictions" within the meaning of section 10. If the Program as you 96s received it, or any part of it, contains a notice stating that it is 96s governed by this License along with a term that is a further 96s restriction, you may remove that term. If a license document contains 96s a further restriction but permits relicensing or conveying under this 96s License, you may add to a covered work material governed by the terms 96s of that license document, provided that the further restriction does 96s not survive such relicensing or conveying. 96s . 96s If you add terms to a covered work in accord with this section, you 96s must place, in the relevant source files, a statement of the 96s additional terms that apply to those files, or a notice indicating 96s where to find the applicable terms. 96s . 96s Additional terms, permissive or non-permissive, may be stated in the 96s form of a separately written license, or stated as exceptions; 96s the above requirements apply either way. 96s . 96s 8. Termination. 96s . 96s You may not propagate or modify a covered work except as expressly 96s provided under this License. Any attempt otherwise to propagate or 96s modify it is void, and will automatically terminate your rights under 96s this License (including any patent licenses granted under the third 96s paragraph of section 11). 96s . 96s However, if you cease all violation of this License, then your 96s license from a particular copyright holder is reinstated (a) 96s provisionally, unless and until the copyright holder explicitly and 96s finally terminates your license, and (b) permanently, if the copyright 96s holder fails to notify you of the violation by some reasonable means 96s prior to 60 days after the cessation. 96s . 96s Moreover, your license from a particular copyright holder is 96s reinstated permanently if the copyright holder notifies you of the 96s violation by some reasonable means, this is the first time you have 96s received notice of violation of this License (for any work) from that 96s copyright holder, and you cure the violation prior to 30 days after 96s your receipt of the notice. 96s . 96s Termination of your rights under this section does not terminate the 96s licenses of parties who have received copies or rights from you under 96s this License. If your rights have been terminated and not permanently 96s reinstated, you do not qualify to receive new licenses for the same 96s material under section 10. 96s . 96s 9. Acceptance Not Required for Having Copies. 96s . 96s You are not required to accept this License in order to receive or 96s run a copy of the Program. Ancillary propagation of a covered work 96s occurring solely as a consequence of using peer-to-peer transmission 96s to receive a copy likewise does not require acceptance. However, 96s nothing other than this License grants you permission to propagate or 96s modify any covered work. These actions infringe copyright if you do 96s not accept this License. Therefore, by modifying or propagating a 96s covered work, you indicate your acceptance of this License to do so. 96s . 96s 10. Automatic Licensing of Downstream Recipients. 96s . 96s Each time you convey a covered work, the recipient automatically 96s receives a license from the original licensors, to run, modify and 96s propagate that work, subject to this License. You are not responsible 96s for enforcing compliance by third parties with this License. 96s . 96s An "entity transaction" is a transaction transferring control of an 96s organization, or substantially all assets of one, or subdividing an 96s organization, or merging organizations. If propagation of a covered 96s work results from an entity transaction, each party to that 96s transaction who receives a copy of the work also receives whatever 96s licenses to the work the party's predecessor in interest had or could 96s give under the previous paragraph, plus a right to possession of the 96s Corresponding Source of the work from the predecessor in interest, if 96s the predecessor has it or can get it with reasonable efforts. 96s . 96s You may not impose any further restrictions on the exercise of the 96s rights granted or affirmed under this License. For example, you may 96s not impose a license fee, royalty, or other charge for exercise of 96s rights granted under this License, and you may not initiate litigation 96s (including a cross-claim or counterclaim in a lawsuit) alleging that 96s any patent claim is infringed by making, using, selling, offering for 96s sale, or importing the Program or any portion of it. 96s . 96s 11. Patents. 96s . 96s A "contributor" is a copyright holder who authorizes use under this 96s License of the Program or a work on which the Program is based. The 96s work thus licensed is called the contributor's "contributor version". 96s . 96s A contributor's "essential patent claims" are all patent claims 96s owned or controlled by the contributor, whether already acquired or 96s hereafter acquired, that would be infringed by some manner, permitted 96s by this License, of making, using, or selling its contributor version, 96s but do not include claims that would be infringed only as a 96s consequence of further modification of the contributor version. For 96s purposes of this definition, "control" includes the right to grant 96s patent sublicenses in a manner consistent with the requirements of 96s this License. 96s . 96s Each contributor grants you a non-exclusive, worldwide, royalty-free 96s patent license under the contributor's essential patent claims, to 96s make, use, sell, offer for sale, import and otherwise run, modify and 96s propagate the contents of its contributor version. 96s . 96s In the following three paragraphs, a "patent license" is any express 96s agreement or commitment, however denominated, not to enforce a patent 96s (such as an express permission to practice a patent or covenant not to 96s sue for patent infringement). To "grant" such a patent license to a 96s party means to make such an agreement or commitment not to enforce a 96s patent against the party. 96s . 96s If you convey a covered work, knowingly relying on a patent license, 96s and the Corresponding Source of the work is not available for anyone 96s to copy, free of charge and under the terms of this License, through a 96s publicly available network server or other readily accessible means, 96s then you must either (1) cause the Corresponding Source to be so 96s available, or (2) arrange to deprive yourself of the benefit of the 96s patent license for this particular work, or (3) arrange, in a manner 96s consistent with the requirements of this License, to extend the patent 96s license to downstream recipients. "Knowingly relying" means you have 96s actual knowledge that, but for the patent license, your conveying the 96s covered work in a country, or your recipient's use of the covered work 96s in a country, would infringe one or more identifiable patents in that 96s country that you have reason to believe are valid. 96s . 96s If, pursuant to or in connection with a single transaction or 96s arrangement, you convey, or propagate by procuring conveyance of, a 96s covered work, and grant a patent license to some of the parties 96s receiving the covered work authorizing them to use, propagate, modify 96s or convey a specific copy of the covered work, then the patent license 96s you grant is automatically extended to all recipients of the covered 96s work and works based on it. 96s . 96s A patent license is "discriminatory" if it does not include within 96s the scope of its coverage, prohibits the exercise of, or is 96s conditioned on the non-exercise of one or more of the rights that are 96s specifically granted under this License. You may not convey a covered 96s work if you are a party to an arrangement with a third party that is 96s in the business of distributing software, under which you make payment 96s to the third party based on the extent of your activity of conveying 96s the work, and under which the third party grants, to any of the 96s parties who would receive the covered work from you, a discriminatory 96s patent license (a) in connection with copies of the covered work 96s conveyed by you (or copies made from those copies), or (b) primarily 96s for and in connection with specific products or compilations that 96s contain the covered work, unless you entered into that arrangement, 96s or that patent license was granted, prior to 28 March 2007. 96s . 96s Nothing in this License shall be construed as excluding or limiting 96s any implied license or other defenses to infringement that may 96s otherwise be available to you under applicable patent law. 96s . 96s 12. No Surrender of Others' Freedom. 96s . 96s If conditions are imposed on you (whether by court order, agreement or 96s otherwise) that contradict the conditions of this License, they do not 96s excuse you from the conditions of this License. If you cannot convey a 96s covered work so as to satisfy simultaneously your obligations under 96s this 96s License and any other pertinent obligations, then as a consequence you 96s may 96s not convey it at all. For example, if you agree to terms that obligate 96s you 96s to collect a royalty for further conveying from those to whom you 96s convey 96s the Program, the only way you could satisfy both those terms and this 96s License would be to refrain entirely from conveying the Program. 96s . 96s 13. Remote Network Interaction; Use with the GNU General Public 96s License. 96s . 96s Notwithstanding any other provision of this License, if you modify the 96s Program, your modified version must prominently offer all users 96s interacting with it remotely through a computer network (if your 96s version 96s supports such interaction) an opportunity to receive the Corresponding 96s Source of your version by providing access to the Corresponding Source 96s from a network server at no charge, through some standard or customary 96s means of facilitating copying of software. This Corresponding Source 96s shall include the Corresponding Source for any work covered by version 96s 3 96s of the GNU General Public License that is incorporated pursuant to the 96s following paragraph. 96s . 96s Notwithstanding any other provision of this License, you have 96s permission to link or combine any covered work with a work licensed 96s under version 3 of the GNU General Public License into a single 96s combined work, and to convey the resulting work. The terms of this 96s License will continue to apply to the part which is the covered work, 96s but the work with which it is combined will remain governed by version 96s 3 of the GNU General Public License. 96s . 96s 14. Revised Versions of this License. 96s . 96s The Free Software Foundation may publish revised and/or new versions of 96s the GNU Affero General Public License from time to time. Such new 96s versions 96s will be similar in spirit to the present version, but may differ in 96s detail to 96s address new problems or concerns. 96s . 96s Each version is given a distinguishing version number. If the 96s Program specifies that a certain numbered version of the GNU Affero 96s General 96s Public License "or any later version" applies to it, you have the 96s option of following the terms and conditions either of that numbered 96s version or of any later version published by the Free Software 96s Foundation. If the Program does not specify a version number of the 96s GNU Affero General Public License, you may choose any version ever 96s published 96s by the Free Software Foundation. 96s . 96s If the Program specifies that a proxy can decide which future 96s versions of the GNU Affero General Public License can be used, that 96s proxy's 96s public statement of acceptance of a version permanently authorizes you 96s to choose that version for the Program. 96s . 96s Later license versions may give you additional or different 96s permissions. However, no additional obligations are imposed on any 96s author or copyright holder as a result of your choosing to follow a 96s later version. 96s . 96s 15. Disclaimer of Warranty. 96s . 96s THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY 96s APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT 96s HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT 96s WARRANTY 96s OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED 96s TO, 96s THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 96s PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE 96s PROGRAM 96s IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST 96s OF 96s ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 96s . 96s 16. Limitation of Liability. 96s . 96s IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 96s WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR 96s CONVEYS 96s THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING 96s ANY 96s GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF 96s THE 96s USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS 96s OF 96s DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR 96s THIRD 96s PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 96s PROGRAMS), 96s EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY 96s OF 96s SUCH DAMAGES. 96s . 96s 17. Interpretation of Sections 15 and 16. 96s . 96s If the disclaimer of warranty and limitation of liability provided 96s above cannot be given local legal effect according to their terms, 96s reviewing courts shall apply local law that most closely approximates 96s an absolute waiver of all civil liability in connection with the 96s Program, unless a warranty or assumption of liability accompanies a 96s copy of the Program in return for a fee. 96s . 96s END OF TERMS AND CONDITIONS 96s . 96s How to Apply These Terms to Your New Programs 96s . 96s If you develop a new program, and you want it to be of the greatest 96s possible use to the public, the best way to achieve this is to make it 96s free software which everyone can redistribute and change under these 96s terms. 96s . 96s To do so, attach the following notices to the program. It is safest 96s to attach them to the start of each source file to most effectively 96s state the exclusion of warranty; and each file should have at least 96s the "copyright" line and a pointer to where the full notice is found. 96s . 96s 96s Copyright (C) 96s . 96s This program is free software: you can redistribute it and/or 96s modify 96s it under the terms of the GNU Affero General Public License as 96s published by 96s the Free Software Foundation, either version 3 of the License, or 96s (at your option) any later version. 96s . 96s This program is distributed in the hope that it will be useful, 96s but WITHOUT ANY WARRANTY; without even the implied warranty of 96s MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 96s GNU Affero General Public License for more details. 96s . 96s You should have received a copy of the GNU Affero General Public 96s License 96s along with this program. If not, see 96s . 96s . 96s Also add information on how to contact you by electronic and paper 96s mail. 96s . 96s If your software can interact with users remotely through a computer 96s network, you should also make sure that it provides a way for users to 96s get its source. For example, if your program is a web application, its 96s interface could display a "Source" link that leads users to an archive 96s of the code. There are many ways you could offer source, and different 96s solutions will be better for different programs; see section 13 for the 96s specific requirements. 96s . 96s You should also get your employer (if you work as a programmer) or 96s school, 96s if any, to sign a "copyright disclaimer" for the program, if necessary. 96s For more information on this, and how to apply and follow the GNU AGPL, 96s see 96s . 96s To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 96s # 5.2 Main functionality 96s opnk index.gmi 96s 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 To render images inline, you need either chafa >= 1.10 or timg > 1.3.2 97s autopkgtest [05:53:55]: test run-commands: -----------------------] 97s autopkgtest [05:53:55]: test run-commands: - - - - - - - - - - results - - - - - - - - - - 97s run-commands PASS 98s autopkgtest [05:53:56]: test run-commands: preparing testbed 98s Reading package lists... 98s Building dependency tree... 98s Reading state information... 98s Solving dependencies... 98s The following NEW packages will be installed: 98s chafa fontconfig fontconfig-config fonts-dejavu-core fonts-dejavu-mono 98s libaom3 libasound2-data libasound2t64 libass9 libasyncns0 libavc1394-0 98s libavcodec61 libavdevice61 libavfilter10 libavformat61 libavif16 libavutil59 98s libbluray3 libbs2b0 libcaca0 libcairo-gobject2 libcairo2 libcdio-cdda2t64 98s libcdio-paranoia2t64 libcdio19t64 libchafa0t64 libchromaprint1 libcjson1 98s libcodec2-1.2 libdatrie1 libdav1d7 libdc1394-25 libde265-0 libdecor-0-0 98s libdeflate0 libdrm-amdgpu1 libdvdnav4 libdvdread8t64 libexif12 98s libfftw3-double3 libflac14 libflite1 libfontconfig1 libfreetype6 libgbm1 98s libgdk-pixbuf-2.0-0 libgdk-pixbuf2.0-common libgl1 libgl1-mesa-dri libglvnd0 98s libglx-mesa0 libglx0 libgme0 libgomp1 libgpgme11t64 libgpgmepp6t64 98s libgraphicsmagick++-q16-12t64 libgraphicsmagick-q16-3t64 libgraphite2-3 98s libgsm1 libharfbuzz0b libheif-plugin-aomdec libheif-plugin-libde265 libheif1 98s libice6 libiec61883-0 libjack-jackd2-0 libjbig0 libjpeg-turbo8 libjpeg8 98s libjxl0.11 liblcms2-2 liblilv-0-0 libmbedcrypto16 libmp3lame0 libmpg123-0t64 98s libmysofa1 libnorm1t64 libnspr4 libnss3 libogg0 libopenal-data libopenal1 98s libopenjp2-7 libopenmpt0t64 libopenslide0 libopus0 libpango-1.0-0 98s libpangocairo-1.0-0 libpangoft2-1.0-0 libpgm-5.3-0t64 libpixman-1-0 98s libplacebo349 libpoppler-glib8t64 libpoppler147 libpostproc58 libpulse0 98s librabbitmq4 librav1e0.7 libraw1394-11 librist4 librsvg2-2 librubberband2 98s libsamplerate0 libsdl2-2.0-0 libserd-0-0 libsharpyuv0 libshine3 libsixel1 98s libsm6 libsnappy1v5 libsndfile1 libsodium23 libsord-0-0 libsoxr0 libspeex1 98s libsratom-0-0 libsrt1.5-gnutls libssh-4 libsvtav1enc2 libswresample5 98s libswscale8 libthai-data libthai0 libtheoradec1 libtheoraenc1 libtiff6 98s libturbojpeg0 libtwolame0 libudfread3 libunibreak6 libva-drm2 libva-x11-2 98s libva2 libvdpau1 libvidstab1.1 libvorbis0a libvorbisenc2 libvorbisfile3 98s libvpx9 libvulkan1 libwayland-client0 libwayland-cursor0 libwayland-egl1 98s libwebp7 libwebpdemux2 libwebpmux3 libwmflite-0.2-7 libx11-xcb1 libx264-165 98s libx265-215 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-randr0 98s libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb-xfixes0 98s libxcursor1 libxfixes3 libxi6 libxmu6 libxrandr2 libxrender1 libxshmfence1 98s libxss1 libxt6t64 libxv1 libxvidcore4 libxxf86vm1 libyuv0 libzimg2 98s libzix-0-0 libzmq5 libzvbi-common libzvbi0t64 mesa-libgallium 98s ocl-icd-libopencl1 timg wl-clipboard x11-common xclip xsel 98s 0 upgraded, 185 newly installed, 0 to remove and 0 not upgraded. 98s Need to get 90.2 MB of archives. 98s After this operation, 238 MB of additional disk space will be used. 98s Get:1 http://ftpmaster.internal/ubuntu resolute/universe s390x libchafa0t64 s390x 1.14.5-1 [114 kB] 99s Get:2 http://ftpmaster.internal/ubuntu resolute/main s390x libaom3 s390x 3.12.1-1 [1491 kB] 100s Get:3 http://ftpmaster.internal/ubuntu resolute/universe s390x libdav1d7 s390x 1.5.1-1 [312 kB] 101s Get:4 http://ftpmaster.internal/ubuntu resolute/universe s390x librav1e0.7 s390x 0.7.1-9 [845 kB] 101s Get:5 http://ftpmaster.internal/ubuntu resolute/universe s390x libsvtav1enc2 s390x 2.3.0+dfsg-1 [2294 kB] 104s Get:6 http://ftpmaster.internal/ubuntu resolute/main s390x libjpeg-turbo8 s390x 2.1.5-4ubuntu2 [147 kB] 104s Get:7 http://ftpmaster.internal/ubuntu resolute/main s390x libjpeg8 s390x 8c-2ubuntu11 [2146 B] 104s Get:8 http://ftpmaster.internal/ubuntu resolute/main s390x libyuv0 s390x 0.0.1916.20250814-1 [129 kB] 104s Get:9 http://ftpmaster.internal/ubuntu resolute/universe s390x libavif16 s390x 1.3.0-1ubuntu1 [125 kB] 104s Get:10 http://ftpmaster.internal/ubuntu resolute/main s390x libfreetype6 s390x 2.13.3+dfsg-1build1 [430 kB] 104s Get:11 http://ftpmaster.internal/ubuntu resolute/main s390x fonts-dejavu-mono all 2.37-8 [502 kB] 105s Get:12 http://ftpmaster.internal/ubuntu resolute/main s390x fonts-dejavu-core all 2.37-8 [835 kB] 107s Get:13 http://ftpmaster.internal/ubuntu resolute/main s390x fontconfig-config s390x 2.15.0-2.3ubuntu1 [38.1 kB] 107s Get:14 http://ftpmaster.internal/ubuntu resolute/main s390x libfontconfig1 s390x 2.15.0-2.3ubuntu1 [149 kB] 107s Get:15 http://ftpmaster.internal/ubuntu resolute/main s390x libpixman-1-0 s390x 0.44.0-3 [201 kB] 107s Get:16 http://ftpmaster.internal/ubuntu resolute/main s390x libxcb-render0 s390x 1.17.0-2build1 [16.9 kB] 107s Get:17 http://ftpmaster.internal/ubuntu resolute/main s390x libxcb-shm0 s390x 1.17.0-2build1 [5916 B] 107s Get:18 http://ftpmaster.internal/ubuntu resolute/main s390x libxrender1 s390x 1:0.9.12-1 [20.9 kB] 107s Get:19 http://ftpmaster.internal/ubuntu resolute/main s390x libcairo2 s390x 1.18.4-1build1 [580 kB] 107s Get:20 http://ftpmaster.internal/ubuntu resolute/main s390x libcairo-gobject2 s390x 1.18.4-1build1 [127 kB] 108s Get:21 http://ftpmaster.internal/ubuntu resolute/main s390x libgdk-pixbuf2.0-common all 2.44.4+dfsg-1 [8584 B] 108s Get:22 http://ftpmaster.internal/ubuntu resolute/main s390x libdeflate0 s390x 1.23-2 [46.0 kB] 108s Get:23 http://ftpmaster.internal/ubuntu resolute/main s390x libjbig0 s390x 2.1-6.1ubuntu2 [33.1 kB] 108s Get:24 http://ftpmaster.internal/ubuntu resolute/main s390x libsharpyuv0 s390x 1.5.0-0.1 [16.7 kB] 108s Get:25 http://ftpmaster.internal/ubuntu resolute/main s390x libwebp7 s390x 1.5.0-0.1 [210 kB] 108s Get:26 http://ftpmaster.internal/ubuntu resolute/main s390x libtiff6 s390x 4.7.0-3ubuntu3 [222 kB] 108s Get:27 http://ftpmaster.internal/ubuntu resolute/main s390x libgdk-pixbuf-2.0-0 s390x 2.44.4+dfsg-1 [156 kB] 108s Get:28 http://ftpmaster.internal/ubuntu resolute/main s390x fontconfig s390x 2.15.0-2.3ubuntu1 [191 kB] 108s Get:29 http://ftpmaster.internal/ubuntu resolute/main s390x libgraphite2-3 s390x 1.3.14-2ubuntu1 [79.8 kB] 109s Get:30 http://ftpmaster.internal/ubuntu resolute/main s390x libharfbuzz0b s390x 12.1.0-1 [576 kB] 109s Get:31 http://ftpmaster.internal/ubuntu resolute/main s390x libthai-data all 0.1.29-2build1 [158 kB] 109s Get:32 http://ftpmaster.internal/ubuntu resolute/main s390x libdatrie1 s390x 0.2.13-4 [20.4 kB] 109s Get:33 http://ftpmaster.internal/ubuntu resolute/main s390x libthai0 s390x 0.1.29-2build1 [20.7 kB] 109s Get:34 http://ftpmaster.internal/ubuntu resolute/main s390x libpango-1.0-0 s390x 1.56.3-2 [253 kB] 110s Get:35 http://ftpmaster.internal/ubuntu resolute/main s390x libpangoft2-1.0-0 s390x 1.56.3-2 [51.8 kB] 110s Get:36 http://ftpmaster.internal/ubuntu resolute/main s390x libpangocairo-1.0-0 s390x 1.56.3-2 [28.4 kB] 110s Get:37 http://ftpmaster.internal/ubuntu resolute/main s390x librsvg2-2 s390x 2.60.0+dfsg-1build1 [1989 kB] 112s Get:38 http://ftpmaster.internal/ubuntu resolute/main s390x libwebpdemux2 s390x 1.5.0-0.1 [12.6 kB] 112s Get:39 http://ftpmaster.internal/ubuntu resolute/universe s390x chafa s390x 1.14.5-1 [87.0 kB] 112s Get:40 http://ftpmaster.internal/ubuntu resolute/main s390x libasound2-data all 1.2.14-1ubuntu1 [21.2 kB] 112s Get:41 http://ftpmaster.internal/ubuntu resolute/main s390x libasound2t64 s390x 1.2.14-1ubuntu1 [414 kB] 112s Get:42 http://ftpmaster.internal/ubuntu resolute/universe s390x libunibreak6 s390x 6.1-3 [25.9 kB] 112s Get:43 http://ftpmaster.internal/ubuntu resolute/universe s390x libass9 s390x 1:0.17.3-1 [110 kB] 113s Get:44 http://ftpmaster.internal/ubuntu resolute/main s390x libasyncns0 s390x 0.8-6build4 [11.4 kB] 113s Get:45 http://ftpmaster.internal/ubuntu resolute/main s390x libva2 s390x 2.22.0-3ubuntu3 [75.4 kB] 113s Get:46 http://ftpmaster.internal/ubuntu resolute/main s390x libva-drm2 s390x 2.22.0-3ubuntu3 [7000 B] 113s Get:47 http://ftpmaster.internal/ubuntu resolute/main s390x libx11-xcb1 s390x 2:1.8.12-1build1 [7972 B] 113s Get:48 http://ftpmaster.internal/ubuntu resolute/main s390x libxcb-dri3-0 s390x 1.17.0-2build1 [7688 B] 113s Get:49 http://ftpmaster.internal/ubuntu resolute/main s390x libxfixes3 s390x 1:6.0.0-2build1 [11.3 kB] 113s Get:50 http://ftpmaster.internal/ubuntu resolute/universe s390x libva-x11-2 s390x 2.22.0-3ubuntu3 [12.3 kB] 113s Get:51 http://ftpmaster.internal/ubuntu resolute/main s390x libvdpau1 s390x 1.5-3 [28.2 kB] 113s Get:52 http://ftpmaster.internal/ubuntu resolute/main s390x ocl-icd-libopencl1 s390x 2.3.3-1 [44.9 kB] 113s Get:53 http://ftpmaster.internal/ubuntu resolute/universe s390x libavutil59 s390x 7:7.1.2-1ubuntu3 [454 kB] 114s Get:54 http://ftpmaster.internal/ubuntu resolute/universe s390x libcodec2-1.2 s390x 1.2.0-3 [9027 kB] 123s Get:55 http://ftpmaster.internal/ubuntu resolute/universe s390x libgsm1 s390x 1.0.22-1build1 [32.7 kB] 123s Get:56 http://ftpmaster.internal/ubuntu resolute/main s390x liblcms2-2 s390x 2.16-2 [175 kB] 123s Get:57 http://ftpmaster.internal/ubuntu resolute/main s390x libjxl0.11 s390x 0.11.1-6ubuntu1 [1188 kB] 124s Get:58 http://ftpmaster.internal/ubuntu resolute/main s390x libmp3lame0 s390x 3.100-6build1 [160 kB] 124s Get:59 http://ftpmaster.internal/ubuntu resolute/main s390x libopenjp2-7 s390x 2.5.3-2.1 [207 kB] 124s Get:60 http://ftpmaster.internal/ubuntu resolute/main s390x libopus0 s390x 1.5.2-2 [2928 kB] 126s Get:61 http://ftpmaster.internal/ubuntu resolute/universe s390x libshine3 s390x 3.1.1-3 [46.2 kB] 126s Get:62 http://ftpmaster.internal/ubuntu resolute/main s390x libsnappy1v5 s390x 1.2.2-1 [33.0 kB] 126s Get:63 http://ftpmaster.internal/ubuntu resolute/main s390x libspeex1 s390x 1.2.1-3 [70.7 kB] 126s Get:64 http://ftpmaster.internal/ubuntu resolute/main s390x libgomp1 s390x 15.2.0-5ubuntu1 [154 kB] 126s Get:65 http://ftpmaster.internal/ubuntu resolute/universe s390x libsoxr0 s390x 0.1.3-4build3 [69.5 kB] 126s Get:66 http://ftpmaster.internal/ubuntu resolute/universe s390x libswresample5 s390x 7:7.1.2-1ubuntu3 [65.0 kB] 126s Get:67 http://ftpmaster.internal/ubuntu resolute/main s390x libtheoradec1 s390x 1.2.0~alpha1+dfsg-6 [68.6 kB] 126s Get:68 http://ftpmaster.internal/ubuntu resolute/main s390x libogg0 s390x 1.3.5-3build1 [24.4 kB] 127s Get:69 http://ftpmaster.internal/ubuntu resolute/main s390x libtheoraenc1 s390x 1.2.0~alpha1+dfsg-6 [142 kB] 127s Get:70 http://ftpmaster.internal/ubuntu resolute/main s390x libtwolame0 s390x 0.4.0-2build3 [56.4 kB] 127s Get:71 http://ftpmaster.internal/ubuntu resolute/main s390x libvorbis0a s390x 1.3.7-3build1 [113 kB] 127s Get:72 http://ftpmaster.internal/ubuntu resolute/main s390x libvorbisenc2 s390x 1.3.7-3build1 [80.1 kB] 127s Get:73 http://ftpmaster.internal/ubuntu resolute/main s390x libvpx9 s390x 1.15.0-2.1build1 [1697 kB] 128s Get:74 http://ftpmaster.internal/ubuntu resolute/main s390x libwebpmux3 s390x 1.5.0-0.1 [25.8 kB] 128s Get:75 http://ftpmaster.internal/ubuntu resolute/universe s390x libx264-165 s390x 2:0.165.3222+gitb35605ac-3 [597 kB] 128s Get:76 http://ftpmaster.internal/ubuntu resolute/universe s390x libx265-215 s390x 4.1-3 [887 kB] 129s Get:77 http://ftpmaster.internal/ubuntu resolute/universe s390x libxvidcore4 s390x 2:1.3.7-1build1 [214 kB] 129s Get:78 http://ftpmaster.internal/ubuntu resolute/universe s390x libzvbi-common all 0.2.44-1ubuntu1 [42.9 kB] 129s Get:79 http://ftpmaster.internal/ubuntu resolute/universe s390x libzvbi0t64 s390x 0.2.44-1ubuntu1 [275 kB] 129s Get:80 http://ftpmaster.internal/ubuntu resolute/universe s390x libavcodec61 s390x 7:7.1.2-1ubuntu3 [8344 kB] 133s Get:81 http://ftpmaster.internal/ubuntu resolute/main s390x libraw1394-11 s390x 2.1.2-2build3 [28.3 kB] 133s Get:82 http://ftpmaster.internal/ubuntu resolute/main s390x libavc1394-0 s390x 0.5.4-5build3 [15.8 kB] 133s Get:83 http://ftpmaster.internal/ubuntu resolute/universe s390x libudfread3 s390x 1.2.0-2 [17.5 kB] 133s Get:84 http://ftpmaster.internal/ubuntu resolute/universe s390x libbluray3 s390x 1:1.4.0-3 [138 kB] 133s Get:85 http://ftpmaster.internal/ubuntu resolute/universe s390x libchromaprint1 s390x 1.5.1-7 [34.2 kB] 133s Get:86 http://ftpmaster.internal/ubuntu resolute/universe s390x libdvdread8t64 s390x 6.1.3-2 [54.6 kB] 133s Get:87 http://ftpmaster.internal/ubuntu resolute/universe s390x libdvdnav4 s390x 6.1.1-3build1 [40.3 kB] 133s Get:88 http://ftpmaster.internal/ubuntu resolute/universe s390x libgme0 s390x 0.6.3-7build1 [150 kB] 134s Get:89 http://ftpmaster.internal/ubuntu resolute/main s390x libmpg123-0t64 s390x 1.32.10-1 [179 kB] 134s Get:90 http://ftpmaster.internal/ubuntu resolute/main s390x libvorbisfile3 s390x 1.3.7-3build1 [18.3 kB] 134s Get:91 http://ftpmaster.internal/ubuntu resolute/universe s390x libopenmpt0t64 s390x 0.7.13-1build1 [733 kB] 134s Get:92 http://ftpmaster.internal/ubuntu resolute/main s390x librabbitmq4 s390x 0.15.0-1build1 [38.0 kB] 134s Get:93 http://ftpmaster.internal/ubuntu resolute/universe s390x libcjson1 s390x 1.7.18-3.1 [23.3 kB] 134s Get:94 http://ftpmaster.internal/ubuntu resolute/universe s390x libmbedcrypto16 s390x 3.6.2-3ubuntu1 [261 kB] 134s Get:95 http://ftpmaster.internal/ubuntu resolute/universe s390x librist4 s390x 0.2.11+dfsg-1 [77.5 kB] 134s Get:96 http://ftpmaster.internal/ubuntu resolute/universe s390x libsrt1.5-gnutls s390x 1.5.4-1 [345 kB] 134s Get:97 http://ftpmaster.internal/ubuntu resolute/main s390x libssh-4 s390x 0.11.2-1build1 [204 kB] 135s Get:98 http://ftpmaster.internal/ubuntu resolute/universe s390x libnorm1t64 s390x 1.5.9+dfsg-3.1build2 [159 kB] 135s Get:99 http://ftpmaster.internal/ubuntu resolute/universe s390x libpgm-5.3-0t64 s390x 5.3.128~dfsg-2.1build1 [169 kB] 135s Get:100 http://ftpmaster.internal/ubuntu resolute/main s390x libsodium23 s390x 1.0.18-1build3 [138 kB] 135s Get:101 http://ftpmaster.internal/ubuntu resolute/universe s390x libzmq5 s390x 4.3.5-1build2 [258 kB] 135s Get:102 http://ftpmaster.internal/ubuntu resolute/universe s390x libavformat61 s390x 7:7.1.2-1ubuntu3 [1321 kB] 137s Get:103 http://ftpmaster.internal/ubuntu resolute/universe s390x libbs2b0 s390x 3.1.0+dfsg-8 [10.8 kB] 137s Get:104 http://ftpmaster.internal/ubuntu resolute/universe s390x libflite1 s390x 2.2-7 [13.6 MB] 151s Get:105 http://ftpmaster.internal/ubuntu resolute/universe s390x libserd-0-0 s390x 0.32.4-1 [44.1 kB] 151s Get:106 http://ftpmaster.internal/ubuntu resolute/universe s390x libzix-0-0 s390x 0.6.2-1 [27.1 kB] 151s Get:107 http://ftpmaster.internal/ubuntu resolute/universe s390x libsord-0-0 s390x 0.16.18-1 [15.8 kB] 151s Get:108 http://ftpmaster.internal/ubuntu resolute/universe s390x libsratom-0-0 s390x 0.6.18-1 [17.0 kB] 151s Get:109 http://ftpmaster.internal/ubuntu resolute/universe s390x liblilv-0-0 s390x 0.24.26-1 [41.4 kB] 151s Get:110 http://ftpmaster.internal/ubuntu resolute/universe s390x libmysofa1 s390x 1.3.3+dfsg-1ubuntu1 [1160 kB] 152s Get:111 http://ftpmaster.internal/ubuntu resolute/main s390x libvulkan1 s390x 1.4.321.0-1 [147 kB] 152s Get:112 http://ftpmaster.internal/ubuntu resolute/universe s390x libplacebo349 s390x 7.349.0-3 [3077 kB] 156s Get:113 http://ftpmaster.internal/ubuntu resolute/universe s390x libpostproc58 s390x 7:7.1.2-1ubuntu3 [70.9 kB] 156s Get:114 http://ftpmaster.internal/ubuntu resolute/main s390x libfftw3-double3 s390x 3.3.10-2fakesync1build2 [512 kB] 156s Get:115 http://ftpmaster.internal/ubuntu resolute/main s390x libsamplerate0 s390x 0.2.2-4build1 [1344 kB] 158s Get:116 http://ftpmaster.internal/ubuntu resolute/universe s390x librubberband2 s390x 3.3.0+dfsg-2build2 [139 kB] 158s Get:117 http://ftpmaster.internal/ubuntu resolute/universe s390x libswscale8 s390x 7:7.1.2-1ubuntu3 [223 kB] 158s Get:118 http://ftpmaster.internal/ubuntu resolute/universe s390x libvidstab1.1 s390x 1.1.0-2build1 [45.8 kB] 158s Get:119 http://ftpmaster.internal/ubuntu resolute/universe s390x libzimg2 s390x 3.0.5+ds1-1build1 [86.6 kB] 158s Get:120 http://ftpmaster.internal/ubuntu resolute/universe s390x libavfilter10 s390x 7:7.1.2-1ubuntu3 [4986 kB] 161s Get:121 http://ftpmaster.internal/ubuntu resolute/main s390x libcaca0 s390x 0.99.beta20-5 [215 kB] 161s Get:122 http://ftpmaster.internal/ubuntu resolute/main s390x libcdio19t64 s390x 2.2.0-4 [64.8 kB] 161s Get:123 http://ftpmaster.internal/ubuntu resolute/main s390x libcdio-cdda2t64 s390x 10.2+2.0.2-1 [17.6 kB] 161s Get:124 http://ftpmaster.internal/ubuntu resolute/main s390x libcdio-paranoia2t64 s390x 10.2+2.0.2-1 [18.8 kB] 162s Get:125 http://ftpmaster.internal/ubuntu resolute/universe s390x libdc1394-25 s390x 2.2.6-5 [101 kB] 162s Get:126 http://ftpmaster.internal/ubuntu resolute/main s390x libglvnd0 s390x 1.7.0-1build2 [107 kB] 162s Get:127 http://ftpmaster.internal/ubuntu resolute/main s390x libxcb-glx0 s390x 1.17.0-2build1 [25.6 kB] 162s Get:128 http://ftpmaster.internal/ubuntu resolute/main s390x libxcb-present0 s390x 1.17.0-2build1 [6346 B] 162s Get:129 http://ftpmaster.internal/ubuntu resolute/main s390x libxcb-xfixes0 s390x 1.17.0-2build1 [10.6 kB] 162s Get:130 http://ftpmaster.internal/ubuntu resolute/main s390x libxxf86vm1 s390x 1:1.1.4-1build4 [9630 B] 162s Get:131 http://ftpmaster.internal/ubuntu resolute/main s390x libdrm-amdgpu1 s390x 2.4.127-1ubuntu1 [22.7 kB] 162s Get:132 http://ftpmaster.internal/ubuntu resolute/main s390x libxcb-randr0 s390x 1.17.0-2build1 [19.0 kB] 162s Get:133 http://ftpmaster.internal/ubuntu resolute/main s390x libxcb-sync1 s390x 1.17.0-2build1 [9530 B] 162s Get:134 http://ftpmaster.internal/ubuntu resolute/main s390x libxshmfence1 s390x 1.3.3-1 [5202 B] 162s Get:135 http://ftpmaster.internal/ubuntu resolute/main s390x mesa-libgallium s390x 25.2.3-1ubuntu1 [8319 kB] 169s Get:136 http://ftpmaster.internal/ubuntu resolute/main s390x libgbm1 s390x 25.2.3-1ubuntu1 [34.7 kB] 169s Get:137 http://ftpmaster.internal/ubuntu resolute/main s390x libgl1-mesa-dri s390x 25.2.3-1ubuntu1 [36.0 kB] 169s Get:138 http://ftpmaster.internal/ubuntu resolute/main s390x libglx-mesa0 s390x 25.2.3-1ubuntu1 [114 kB] 169s Get:139 http://ftpmaster.internal/ubuntu resolute/main s390x libglx0 s390x 1.7.0-1build2 [30.9 kB] 169s Get:140 http://ftpmaster.internal/ubuntu resolute/main s390x libgl1 s390x 1.7.0-1build2 [135 kB] 169s Get:141 http://ftpmaster.internal/ubuntu resolute/main s390x libiec61883-0 s390x 1.2.0-7 [26.1 kB] 170s Get:142 http://ftpmaster.internal/ubuntu resolute/main s390x libjack-jackd2-0 s390x 1.9.22~dfsg-5 [291 kB] 170s Get:143 http://ftpmaster.internal/ubuntu resolute/universe s390x libopenal-data all 1:1.24.2-1 [162 kB] 170s Get:144 http://ftpmaster.internal/ubuntu resolute/universe s390x libopenal1 s390x 1:1.24.2-1 [708 kB] 170s Get:145 http://ftpmaster.internal/ubuntu resolute/main s390x libflac14 s390x 1.5.0+ds-4 [166 kB] 170s Get:146 http://ftpmaster.internal/ubuntu resolute/main s390x libsndfile1 s390x 1.2.2-3 [247 kB] 171s Get:147 http://ftpmaster.internal/ubuntu resolute/main s390x libpulse0 s390x 1:17.0+dfsg1-2ubuntu3 [311 kB] 171s Get:148 http://ftpmaster.internal/ubuntu resolute/main s390x libwayland-client0 s390x 1.24.0-1build1 [29.2 kB] 171s Get:149 http://ftpmaster.internal/ubuntu resolute/main s390x libdecor-0-0 s390x 0.2.2-2 [16.2 kB] 171s Get:150 http://ftpmaster.internal/ubuntu resolute/main s390x libwayland-cursor0 s390x 1.24.0-1build1 [11.5 kB] 171s Get:151 http://ftpmaster.internal/ubuntu resolute/main s390x libwayland-egl1 s390x 1.24.0-1build1 [6258 B] 171s Get:152 http://ftpmaster.internal/ubuntu resolute/main s390x libxcursor1 s390x 1:1.2.3-1 [23.4 kB] 171s Get:153 http://ftpmaster.internal/ubuntu resolute/main s390x libxi6 s390x 2:1.8.2-1 [35.4 kB] 171s Get:154 http://ftpmaster.internal/ubuntu resolute/main s390x libxrandr2 s390x 2:1.5.4-1 [20.8 kB] 171s Get:155 http://ftpmaster.internal/ubuntu resolute/main s390x x11-common all 1:7.7+24ubuntu1 [22.4 kB] 171s Get:156 http://ftpmaster.internal/ubuntu resolute/main s390x libxss1 s390x 1:1.2.3-1build3 [7396 B] 171s Get:157 http://ftpmaster.internal/ubuntu resolute/main s390x libsdl2-2.0-0 s390x 2.32.4+dfsg-1 [776 kB] 171s Get:158 http://ftpmaster.internal/ubuntu resolute/main s390x libxcb-shape0 s390x 1.17.0-2build1 [6306 B] 171s Get:159 http://ftpmaster.internal/ubuntu resolute/main s390x libxv1 s390x 2:1.0.11-1.1build1 [11.3 kB] 171s Get:160 http://ftpmaster.internal/ubuntu resolute/universe s390x libavdevice61 s390x 7:7.1.2-1ubuntu3 [83.3 kB] 171s Get:161 http://ftpmaster.internal/ubuntu resolute/main s390x libde265-0 s390x 1.0.16-1 [175 kB] 172s Get:162 http://ftpmaster.internal/ubuntu resolute/main s390x libexif12 s390x 0.6.25-1 [87.2 kB] 172s Get:163 http://ftpmaster.internal/ubuntu resolute/main s390x libgpgme11t64 s390x 1.24.2-3ubuntu2 [154 kB] 172s Get:164 http://ftpmaster.internal/ubuntu resolute/main s390x libgpgmepp6t64 s390x 1.24.2-3ubuntu2 [123 kB] 172s Get:165 http://ftpmaster.internal/ubuntu resolute/main s390x libheif-plugin-aomdec s390x 1.20.2-1 [12.3 kB] 172s Get:166 http://ftpmaster.internal/ubuntu resolute/main s390x libheif-plugin-libde265 s390x 1.20.2-1 [9750 B] 172s Get:167 http://ftpmaster.internal/ubuntu resolute/main s390x libheif1 s390x 1.20.2-1 [505 kB] 172s Get:168 http://ftpmaster.internal/ubuntu resolute/main s390x libwmflite-0.2-7 s390x 0.2.13-1.1build3 [72.1 kB] 172s Get:169 http://ftpmaster.internal/ubuntu resolute/universe s390x libgraphicsmagick-q16-3t64 s390x 1.4+really1.3.45+hg17696-1build1 [1325 kB] 173s Get:170 http://ftpmaster.internal/ubuntu resolute/universe s390x libgraphicsmagick++-q16-12t64 s390x 1.4+really1.3.45+hg17696-1build1 [122 kB] 173s Get:171 http://ftpmaster.internal/ubuntu resolute/main s390x libice6 s390x 2:1.1.1-1 [45.4 kB] 173s Get:172 http://ftpmaster.internal/ubuntu resolute/main s390x libnspr4 s390x 2:4.36-1ubuntu2 [125 kB] 173s Get:173 http://ftpmaster.internal/ubuntu resolute/main s390x libnss3 s390x 2:3.114-1 [1506 kB] 174s Get:174 http://ftpmaster.internal/ubuntu resolute/universe s390x libopenslide0 s390x 3.4.1+dfsg-7build3 [88.9 kB] 174s Get:175 http://ftpmaster.internal/ubuntu resolute/main s390x libpoppler147 s390x 25.03.0-11.1 [1252 kB] 175s Get:176 http://ftpmaster.internal/ubuntu resolute/main s390x libpoppler-glib8t64 s390x 25.03.0-11.1 [163 kB] 175s Get:177 http://ftpmaster.internal/ubuntu resolute/main s390x libsm6 s390x 2:1.2.6-1 [18.3 kB] 175s Get:178 http://ftpmaster.internal/ubuntu resolute/universe s390x libturbojpeg0 s390x 1:2.1.5-4ubuntu2 [200 kB] 175s Get:179 http://ftpmaster.internal/ubuntu resolute/main s390x libxt6t64 s390x 1:1.2.1-1.3 [180 kB] 175s Get:180 http://ftpmaster.internal/ubuntu resolute/main s390x libxmu6 s390x 2:1.1.3-3build3 [51.8 kB] 175s Get:181 http://ftpmaster.internal/ubuntu resolute/universe s390x libsixel1 s390x 1.10.5-1 [131 kB] 175s Get:182 http://ftpmaster.internal/ubuntu resolute/universe s390x timg s390x 1.6.0-1build2 [1124 kB] 176s Get:183 http://ftpmaster.internal/ubuntu resolute/universe s390x wl-clipboard s390x 2.2.1-2 [33.3 kB] 176s Get:184 http://ftpmaster.internal/ubuntu resolute/universe s390x xclip s390x 0.13-4 [17.8 kB] 176s Get:185 http://ftpmaster.internal/ubuntu resolute/universe s390x xsel s390x 1.2.1-1 [21.1 kB] 176s Fetched 90.2 MB in 1min 18s (1162 kB/s) 176s Selecting previously unselected package libchafa0t64:s390x. 176s (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 ... 57290 files and directories currently installed.) 176s Preparing to unpack .../000-libchafa0t64_1.14.5-1_s390x.deb ... 176s Unpacking libchafa0t64:s390x (1.14.5-1) ... 176s Selecting previously unselected package libaom3:s390x. 176s Preparing to unpack .../001-libaom3_3.12.1-1_s390x.deb ... 176s Unpacking libaom3:s390x (3.12.1-1) ... 176s Selecting previously unselected package libdav1d7:s390x. 176s Preparing to unpack .../002-libdav1d7_1.5.1-1_s390x.deb ... 176s Unpacking libdav1d7:s390x (1.5.1-1) ... 176s Selecting previously unselected package librav1e0.7:s390x. 176s Preparing to unpack .../003-librav1e0.7_0.7.1-9_s390x.deb ... 176s Unpacking librav1e0.7:s390x (0.7.1-9) ... 176s Selecting previously unselected package libsvtav1enc2:s390x. 176s Preparing to unpack .../004-libsvtav1enc2_2.3.0+dfsg-1_s390x.deb ... 176s Unpacking libsvtav1enc2:s390x (2.3.0+dfsg-1) ... 176s Selecting previously unselected package libjpeg-turbo8:s390x. 176s Preparing to unpack .../005-libjpeg-turbo8_2.1.5-4ubuntu2_s390x.deb ... 176s Unpacking libjpeg-turbo8:s390x (2.1.5-4ubuntu2) ... 176s Selecting previously unselected package libjpeg8:s390x. 176s Preparing to unpack .../006-libjpeg8_8c-2ubuntu11_s390x.deb ... 176s Unpacking libjpeg8:s390x (8c-2ubuntu11) ... 176s Selecting previously unselected package libyuv0:s390x. 176s Preparing to unpack .../007-libyuv0_0.0.1916.20250814-1_s390x.deb ... 176s Unpacking libyuv0:s390x (0.0.1916.20250814-1) ... 176s Selecting previously unselected package libavif16:s390x. 176s Preparing to unpack .../008-libavif16_1.3.0-1ubuntu1_s390x.deb ... 176s Unpacking libavif16:s390x (1.3.0-1ubuntu1) ... 176s Selecting previously unselected package libfreetype6:s390x. 176s Preparing to unpack .../009-libfreetype6_2.13.3+dfsg-1build1_s390x.deb ... 176s Unpacking libfreetype6:s390x (2.13.3+dfsg-1build1) ... 176s Selecting previously unselected package fonts-dejavu-mono. 176s Preparing to unpack .../010-fonts-dejavu-mono_2.37-8_all.deb ... 176s Unpacking fonts-dejavu-mono (2.37-8) ... 176s Selecting previously unselected package fonts-dejavu-core. 177s Preparing to unpack .../011-fonts-dejavu-core_2.37-8_all.deb ... 177s Unpacking fonts-dejavu-core (2.37-8) ... 177s Selecting previously unselected package fontconfig-config. 177s Preparing to unpack .../012-fontconfig-config_2.15.0-2.3ubuntu1_s390x.deb ... 177s Unpacking fontconfig-config (2.15.0-2.3ubuntu1) ... 177s Selecting previously unselected package libfontconfig1:s390x. 177s Preparing to unpack .../013-libfontconfig1_2.15.0-2.3ubuntu1_s390x.deb ... 177s Unpacking libfontconfig1:s390x (2.15.0-2.3ubuntu1) ... 177s Selecting previously unselected package libpixman-1-0:s390x. 177s Preparing to unpack .../014-libpixman-1-0_0.44.0-3_s390x.deb ... 177s Unpacking libpixman-1-0:s390x (0.44.0-3) ... 177s Selecting previously unselected package libxcb-render0:s390x. 177s Preparing to unpack .../015-libxcb-render0_1.17.0-2build1_s390x.deb ... 177s Unpacking libxcb-render0:s390x (1.17.0-2build1) ... 177s Selecting previously unselected package libxcb-shm0:s390x. 177s Preparing to unpack .../016-libxcb-shm0_1.17.0-2build1_s390x.deb ... 177s Unpacking libxcb-shm0:s390x (1.17.0-2build1) ... 177s Selecting previously unselected package libxrender1:s390x. 177s Preparing to unpack .../017-libxrender1_1%3a0.9.12-1_s390x.deb ... 177s Unpacking libxrender1:s390x (1:0.9.12-1) ... 177s Selecting previously unselected package libcairo2:s390x. 177s Preparing to unpack .../018-libcairo2_1.18.4-1build1_s390x.deb ... 177s Unpacking libcairo2:s390x (1.18.4-1build1) ... 177s Selecting previously unselected package libcairo-gobject2:s390x. 177s Preparing to unpack .../019-libcairo-gobject2_1.18.4-1build1_s390x.deb ... 177s Unpacking libcairo-gobject2:s390x (1.18.4-1build1) ... 177s Selecting previously unselected package libgdk-pixbuf2.0-common. 177s Preparing to unpack .../020-libgdk-pixbuf2.0-common_2.44.4+dfsg-1_all.deb ... 177s Unpacking libgdk-pixbuf2.0-common (2.44.4+dfsg-1) ... 177s Selecting previously unselected package libdeflate0:s390x. 177s Preparing to unpack .../021-libdeflate0_1.23-2_s390x.deb ... 177s Unpacking libdeflate0:s390x (1.23-2) ... 177s Selecting previously unselected package libjbig0:s390x. 177s Preparing to unpack .../022-libjbig0_2.1-6.1ubuntu2_s390x.deb ... 177s Unpacking libjbig0:s390x (2.1-6.1ubuntu2) ... 177s Selecting previously unselected package libsharpyuv0:s390x. 177s Preparing to unpack .../023-libsharpyuv0_1.5.0-0.1_s390x.deb ... 177s Unpacking libsharpyuv0:s390x (1.5.0-0.1) ... 177s Selecting previously unselected package libwebp7:s390x. 177s Preparing to unpack .../024-libwebp7_1.5.0-0.1_s390x.deb ... 177s Unpacking libwebp7:s390x (1.5.0-0.1) ... 177s Selecting previously unselected package libtiff6:s390x. 177s Preparing to unpack .../025-libtiff6_4.7.0-3ubuntu3_s390x.deb ... 177s Unpacking libtiff6:s390x (4.7.0-3ubuntu3) ... 177s Selecting previously unselected package libgdk-pixbuf-2.0-0:s390x. 177s Preparing to unpack .../026-libgdk-pixbuf-2.0-0_2.44.4+dfsg-1_s390x.deb ... 177s Unpacking libgdk-pixbuf-2.0-0:s390x (2.44.4+dfsg-1) ... 177s Selecting previously unselected package fontconfig. 177s Preparing to unpack .../027-fontconfig_2.15.0-2.3ubuntu1_s390x.deb ... 177s Unpacking fontconfig (2.15.0-2.3ubuntu1) ... 177s Selecting previously unselected package libgraphite2-3:s390x. 177s Preparing to unpack .../028-libgraphite2-3_1.3.14-2ubuntu1_s390x.deb ... 177s Unpacking libgraphite2-3:s390x (1.3.14-2ubuntu1) ... 177s Selecting previously unselected package libharfbuzz0b:s390x. 177s Preparing to unpack .../029-libharfbuzz0b_12.1.0-1_s390x.deb ... 177s Unpacking libharfbuzz0b:s390x (12.1.0-1) ... 177s Selecting previously unselected package libthai-data. 177s Preparing to unpack .../030-libthai-data_0.1.29-2build1_all.deb ... 177s Unpacking libthai-data (0.1.29-2build1) ... 177s Selecting previously unselected package libdatrie1:s390x. 177s Preparing to unpack .../031-libdatrie1_0.2.13-4_s390x.deb ... 177s Unpacking libdatrie1:s390x (0.2.13-4) ... 177s Selecting previously unselected package libthai0:s390x. 177s Preparing to unpack .../032-libthai0_0.1.29-2build1_s390x.deb ... 177s Unpacking libthai0:s390x (0.1.29-2build1) ... 177s Selecting previously unselected package libpango-1.0-0:s390x. 177s Preparing to unpack .../033-libpango-1.0-0_1.56.3-2_s390x.deb ... 177s Unpacking libpango-1.0-0:s390x (1.56.3-2) ... 177s Selecting previously unselected package libpangoft2-1.0-0:s390x. 177s Preparing to unpack .../034-libpangoft2-1.0-0_1.56.3-2_s390x.deb ... 177s Unpacking libpangoft2-1.0-0:s390x (1.56.3-2) ... 177s Selecting previously unselected package libpangocairo-1.0-0:s390x. 177s Preparing to unpack .../035-libpangocairo-1.0-0_1.56.3-2_s390x.deb ... 177s Unpacking libpangocairo-1.0-0:s390x (1.56.3-2) ... 177s Selecting previously unselected package librsvg2-2:s390x. 177s Preparing to unpack .../036-librsvg2-2_2.60.0+dfsg-1build1_s390x.deb ... 177s Unpacking librsvg2-2:s390x (2.60.0+dfsg-1build1) ... 177s Selecting previously unselected package libwebpdemux2:s390x. 177s Preparing to unpack .../037-libwebpdemux2_1.5.0-0.1_s390x.deb ... 177s Unpacking libwebpdemux2:s390x (1.5.0-0.1) ... 177s Selecting previously unselected package chafa. 177s Preparing to unpack .../038-chafa_1.14.5-1_s390x.deb ... 177s Unpacking chafa (1.14.5-1) ... 177s Selecting previously unselected package libasound2-data. 177s Preparing to unpack .../039-libasound2-data_1.2.14-1ubuntu1_all.deb ... 177s Unpacking libasound2-data (1.2.14-1ubuntu1) ... 177s Selecting previously unselected package libasound2t64:s390x. 177s Preparing to unpack .../040-libasound2t64_1.2.14-1ubuntu1_s390x.deb ... 177s Unpacking libasound2t64:s390x (1.2.14-1ubuntu1) ... 177s Selecting previously unselected package libunibreak6:s390x. 177s Preparing to unpack .../041-libunibreak6_6.1-3_s390x.deb ... 177s Unpacking libunibreak6:s390x (6.1-3) ... 177s Selecting previously unselected package libass9:s390x. 177s Preparing to unpack .../042-libass9_1%3a0.17.3-1_s390x.deb ... 177s Unpacking libass9:s390x (1:0.17.3-1) ... 177s Selecting previously unselected package libasyncns0:s390x. 177s Preparing to unpack .../043-libasyncns0_0.8-6build4_s390x.deb ... 177s Unpacking libasyncns0:s390x (0.8-6build4) ... 177s Selecting previously unselected package libva2:s390x. 177s Preparing to unpack .../044-libva2_2.22.0-3ubuntu3_s390x.deb ... 177s Unpacking libva2:s390x (2.22.0-3ubuntu3) ... 177s Selecting previously unselected package libva-drm2:s390x. 177s Preparing to unpack .../045-libva-drm2_2.22.0-3ubuntu3_s390x.deb ... 177s Unpacking libva-drm2:s390x (2.22.0-3ubuntu3) ... 177s Selecting previously unselected package libx11-xcb1:s390x. 177s Preparing to unpack .../046-libx11-xcb1_2%3a1.8.12-1build1_s390x.deb ... 177s Unpacking libx11-xcb1:s390x (2:1.8.12-1build1) ... 177s Selecting previously unselected package libxcb-dri3-0:s390x. 177s Preparing to unpack .../047-libxcb-dri3-0_1.17.0-2build1_s390x.deb ... 177s Unpacking libxcb-dri3-0:s390x (1.17.0-2build1) ... 177s Selecting previously unselected package libxfixes3:s390x. 177s Preparing to unpack .../048-libxfixes3_1%3a6.0.0-2build1_s390x.deb ... 177s Unpacking libxfixes3:s390x (1:6.0.0-2build1) ... 177s Selecting previously unselected package libva-x11-2:s390x. 177s Preparing to unpack .../049-libva-x11-2_2.22.0-3ubuntu3_s390x.deb ... 177s Unpacking libva-x11-2:s390x (2.22.0-3ubuntu3) ... 177s Selecting previously unselected package libvdpau1:s390x. 177s Preparing to unpack .../050-libvdpau1_1.5-3_s390x.deb ... 177s Unpacking libvdpau1:s390x (1.5-3) ... 177s Selecting previously unselected package ocl-icd-libopencl1:s390x. 177s Preparing to unpack .../051-ocl-icd-libopencl1_2.3.3-1_s390x.deb ... 177s Unpacking ocl-icd-libopencl1:s390x (2.3.3-1) ... 177s Selecting previously unselected package libavutil59:s390x. 177s Preparing to unpack .../052-libavutil59_7%3a7.1.2-1ubuntu3_s390x.deb ... 177s Unpacking libavutil59:s390x (7:7.1.2-1ubuntu3) ... 177s Selecting previously unselected package libcodec2-1.2:s390x. 177s Preparing to unpack .../053-libcodec2-1.2_1.2.0-3_s390x.deb ... 177s Unpacking libcodec2-1.2:s390x (1.2.0-3) ... 177s Selecting previously unselected package libgsm1:s390x. 177s Preparing to unpack .../054-libgsm1_1.0.22-1build1_s390x.deb ... 177s Unpacking libgsm1:s390x (1.0.22-1build1) ... 177s Selecting previously unselected package liblcms2-2:s390x. 177s Preparing to unpack .../055-liblcms2-2_2.16-2_s390x.deb ... 177s Unpacking liblcms2-2:s390x (2.16-2) ... 177s Selecting previously unselected package libjxl0.11:s390x. 177s Preparing to unpack .../056-libjxl0.11_0.11.1-6ubuntu1_s390x.deb ... 177s Unpacking libjxl0.11:s390x (0.11.1-6ubuntu1) ... 177s Selecting previously unselected package libmp3lame0:s390x. 177s Preparing to unpack .../057-libmp3lame0_3.100-6build1_s390x.deb ... 177s Unpacking libmp3lame0:s390x (3.100-6build1) ... 177s Selecting previously unselected package libopenjp2-7:s390x. 177s Preparing to unpack .../058-libopenjp2-7_2.5.3-2.1_s390x.deb ... 177s Unpacking libopenjp2-7:s390x (2.5.3-2.1) ... 177s Selecting previously unselected package libopus0:s390x. 177s Preparing to unpack .../059-libopus0_1.5.2-2_s390x.deb ... 177s Unpacking libopus0:s390x (1.5.2-2) ... 177s Selecting previously unselected package libshine3:s390x. 177s Preparing to unpack .../060-libshine3_3.1.1-3_s390x.deb ... 177s Unpacking libshine3:s390x (3.1.1-3) ... 177s Selecting previously unselected package libsnappy1v5:s390x. 177s Preparing to unpack .../061-libsnappy1v5_1.2.2-1_s390x.deb ... 177s Unpacking libsnappy1v5:s390x (1.2.2-1) ... 177s Selecting previously unselected package libspeex1:s390x. 177s Preparing to unpack .../062-libspeex1_1.2.1-3_s390x.deb ... 177s Unpacking libspeex1:s390x (1.2.1-3) ... 177s Selecting previously unselected package libgomp1:s390x. 177s Preparing to unpack .../063-libgomp1_15.2.0-5ubuntu1_s390x.deb ... 177s Unpacking libgomp1:s390x (15.2.0-5ubuntu1) ... 177s Selecting previously unselected package libsoxr0:s390x. 177s Preparing to unpack .../064-libsoxr0_0.1.3-4build3_s390x.deb ... 177s Unpacking libsoxr0:s390x (0.1.3-4build3) ... 177s Selecting previously unselected package libswresample5:s390x. 177s Preparing to unpack .../065-libswresample5_7%3a7.1.2-1ubuntu3_s390x.deb ... 177s Unpacking libswresample5:s390x (7:7.1.2-1ubuntu3) ... 177s Selecting previously unselected package libtheoradec1:s390x. 177s Preparing to unpack .../066-libtheoradec1_1.2.0~alpha1+dfsg-6_s390x.deb ... 177s Unpacking libtheoradec1:s390x (1.2.0~alpha1+dfsg-6) ... 177s Selecting previously unselected package libogg0:s390x. 177s Preparing to unpack .../067-libogg0_1.3.5-3build1_s390x.deb ... 177s Unpacking libogg0:s390x (1.3.5-3build1) ... 177s Selecting previously unselected package libtheoraenc1:s390x. 177s Preparing to unpack .../068-libtheoraenc1_1.2.0~alpha1+dfsg-6_s390x.deb ... 177s Unpacking libtheoraenc1:s390x (1.2.0~alpha1+dfsg-6) ... 177s Selecting previously unselected package libtwolame0:s390x. 177s Preparing to unpack .../069-libtwolame0_0.4.0-2build3_s390x.deb ... 177s Unpacking libtwolame0:s390x (0.4.0-2build3) ... 177s Selecting previously unselected package libvorbis0a:s390x. 177s Preparing to unpack .../070-libvorbis0a_1.3.7-3build1_s390x.deb ... 177s Unpacking libvorbis0a:s390x (1.3.7-3build1) ... 177s Selecting previously unselected package libvorbisenc2:s390x. 177s Preparing to unpack .../071-libvorbisenc2_1.3.7-3build1_s390x.deb ... 177s Unpacking libvorbisenc2:s390x (1.3.7-3build1) ... 178s Selecting previously unselected package libvpx9:s390x. 178s Preparing to unpack .../072-libvpx9_1.15.0-2.1build1_s390x.deb ... 178s Unpacking libvpx9:s390x (1.15.0-2.1build1) ... 178s Selecting previously unselected package libwebpmux3:s390x. 178s Preparing to unpack .../073-libwebpmux3_1.5.0-0.1_s390x.deb ... 178s Unpacking libwebpmux3:s390x (1.5.0-0.1) ... 178s Selecting previously unselected package libx264-165:s390x. 178s Preparing to unpack .../074-libx264-165_2%3a0.165.3222+gitb35605ac-3_s390x.deb ... 178s Unpacking libx264-165:s390x (2:0.165.3222+gitb35605ac-3) ... 178s Selecting previously unselected package libx265-215:s390x. 178s Preparing to unpack .../075-libx265-215_4.1-3_s390x.deb ... 178s Unpacking libx265-215:s390x (4.1-3) ... 178s Selecting previously unselected package libxvidcore4:s390x. 178s Preparing to unpack .../076-libxvidcore4_2%3a1.3.7-1build1_s390x.deb ... 178s Unpacking libxvidcore4:s390x (2:1.3.7-1build1) ... 178s Selecting previously unselected package libzvbi-common. 178s Preparing to unpack .../077-libzvbi-common_0.2.44-1ubuntu1_all.deb ... 178s Unpacking libzvbi-common (0.2.44-1ubuntu1) ... 178s Selecting previously unselected package libzvbi0t64:s390x. 178s Preparing to unpack .../078-libzvbi0t64_0.2.44-1ubuntu1_s390x.deb ... 178s Unpacking libzvbi0t64:s390x (0.2.44-1ubuntu1) ... 178s Selecting previously unselected package libavcodec61:s390x. 178s Preparing to unpack .../079-libavcodec61_7%3a7.1.2-1ubuntu3_s390x.deb ... 178s Unpacking libavcodec61:s390x (7:7.1.2-1ubuntu3) ... 178s Selecting previously unselected package libraw1394-11:s390x. 178s Preparing to unpack .../080-libraw1394-11_2.1.2-2build3_s390x.deb ... 178s Unpacking libraw1394-11:s390x (2.1.2-2build3) ... 178s Selecting previously unselected package libavc1394-0:s390x. 178s Preparing to unpack .../081-libavc1394-0_0.5.4-5build3_s390x.deb ... 178s Unpacking libavc1394-0:s390x (0.5.4-5build3) ... 178s Selecting previously unselected package libudfread3:s390x. 178s Preparing to unpack .../082-libudfread3_1.2.0-2_s390x.deb ... 178s Unpacking libudfread3:s390x (1.2.0-2) ... 178s Selecting previously unselected package libbluray3:s390x. 178s Preparing to unpack .../083-libbluray3_1%3a1.4.0-3_s390x.deb ... 178s Unpacking libbluray3:s390x (1:1.4.0-3) ... 178s Selecting previously unselected package libchromaprint1:s390x. 178s Preparing to unpack .../084-libchromaprint1_1.5.1-7_s390x.deb ... 178s Unpacking libchromaprint1:s390x (1.5.1-7) ... 178s Selecting previously unselected package libdvdread8t64:s390x. 178s Preparing to unpack .../085-libdvdread8t64_6.1.3-2_s390x.deb ... 178s Unpacking libdvdread8t64:s390x (6.1.3-2) ... 178s Selecting previously unselected package libdvdnav4:s390x. 178s Preparing to unpack .../086-libdvdnav4_6.1.1-3build1_s390x.deb ... 178s Unpacking libdvdnav4:s390x (6.1.1-3build1) ... 178s Selecting previously unselected package libgme0:s390x. 178s Preparing to unpack .../087-libgme0_0.6.3-7build1_s390x.deb ... 178s Unpacking libgme0:s390x (0.6.3-7build1) ... 178s Selecting previously unselected package libmpg123-0t64:s390x. 178s Preparing to unpack .../088-libmpg123-0t64_1.32.10-1_s390x.deb ... 178s Unpacking libmpg123-0t64:s390x (1.32.10-1) ... 178s Selecting previously unselected package libvorbisfile3:s390x. 178s Preparing to unpack .../089-libvorbisfile3_1.3.7-3build1_s390x.deb ... 178s Unpacking libvorbisfile3:s390x (1.3.7-3build1) ... 178s Selecting previously unselected package libopenmpt0t64:s390x. 178s Preparing to unpack .../090-libopenmpt0t64_0.7.13-1build1_s390x.deb ... 178s Unpacking libopenmpt0t64:s390x (0.7.13-1build1) ... 178s Selecting previously unselected package librabbitmq4:s390x. 178s Preparing to unpack .../091-librabbitmq4_0.15.0-1build1_s390x.deb ... 178s Unpacking librabbitmq4:s390x (0.15.0-1build1) ... 178s Selecting previously unselected package libcjson1:s390x. 178s Preparing to unpack .../092-libcjson1_1.7.18-3.1_s390x.deb ... 178s Unpacking libcjson1:s390x (1.7.18-3.1) ... 178s Selecting previously unselected package libmbedcrypto16:s390x. 178s Preparing to unpack .../093-libmbedcrypto16_3.6.2-3ubuntu1_s390x.deb ... 178s Unpacking libmbedcrypto16:s390x (3.6.2-3ubuntu1) ... 178s Selecting previously unselected package librist4:s390x. 178s Preparing to unpack .../094-librist4_0.2.11+dfsg-1_s390x.deb ... 178s Unpacking librist4:s390x (0.2.11+dfsg-1) ... 178s Selecting previously unselected package libsrt1.5-gnutls:s390x. 178s Preparing to unpack .../095-libsrt1.5-gnutls_1.5.4-1_s390x.deb ... 178s Unpacking libsrt1.5-gnutls:s390x (1.5.4-1) ... 178s Selecting previously unselected package libssh-4:s390x. 178s Preparing to unpack .../096-libssh-4_0.11.2-1build1_s390x.deb ... 178s Unpacking libssh-4:s390x (0.11.2-1build1) ... 178s Selecting previously unselected package libnorm1t64:s390x. 178s Preparing to unpack .../097-libnorm1t64_1.5.9+dfsg-3.1build2_s390x.deb ... 178s Unpacking libnorm1t64:s390x (1.5.9+dfsg-3.1build2) ... 178s Selecting previously unselected package libpgm-5.3-0t64:s390x. 178s Preparing to unpack .../098-libpgm-5.3-0t64_5.3.128~dfsg-2.1build1_s390x.deb ... 178s Unpacking libpgm-5.3-0t64:s390x (5.3.128~dfsg-2.1build1) ... 178s Selecting previously unselected package libsodium23:s390x. 178s Preparing to unpack .../099-libsodium23_1.0.18-1build3_s390x.deb ... 178s Unpacking libsodium23:s390x (1.0.18-1build3) ... 178s Selecting previously unselected package libzmq5:s390x. 178s Preparing to unpack .../100-libzmq5_4.3.5-1build2_s390x.deb ... 178s Unpacking libzmq5:s390x (4.3.5-1build2) ... 178s Selecting previously unselected package libavformat61:s390x. 178s Preparing to unpack .../101-libavformat61_7%3a7.1.2-1ubuntu3_s390x.deb ... 178s Unpacking libavformat61:s390x (7:7.1.2-1ubuntu3) ... 178s Selecting previously unselected package libbs2b0:s390x. 178s Preparing to unpack .../102-libbs2b0_3.1.0+dfsg-8_s390x.deb ... 178s Unpacking libbs2b0:s390x (3.1.0+dfsg-8) ... 178s Selecting previously unselected package libflite1:s390x. 178s Preparing to unpack .../103-libflite1_2.2-7_s390x.deb ... 178s Unpacking libflite1:s390x (2.2-7) ... 178s Selecting previously unselected package libserd-0-0:s390x. 178s Preparing to unpack .../104-libserd-0-0_0.32.4-1_s390x.deb ... 178s Unpacking libserd-0-0:s390x (0.32.4-1) ... 178s Selecting previously unselected package libzix-0-0:s390x. 178s Preparing to unpack .../105-libzix-0-0_0.6.2-1_s390x.deb ... 178s Unpacking libzix-0-0:s390x (0.6.2-1) ... 178s Selecting previously unselected package libsord-0-0:s390x. 178s Preparing to unpack .../106-libsord-0-0_0.16.18-1_s390x.deb ... 178s Unpacking libsord-0-0:s390x (0.16.18-1) ... 178s Selecting previously unselected package libsratom-0-0:s390x. 178s Preparing to unpack .../107-libsratom-0-0_0.6.18-1_s390x.deb ... 178s Unpacking libsratom-0-0:s390x (0.6.18-1) ... 178s Selecting previously unselected package liblilv-0-0:s390x. 178s Preparing to unpack .../108-liblilv-0-0_0.24.26-1_s390x.deb ... 178s Unpacking liblilv-0-0:s390x (0.24.26-1) ... 178s Selecting previously unselected package libmysofa1:s390x. 178s Preparing to unpack .../109-libmysofa1_1.3.3+dfsg-1ubuntu1_s390x.deb ... 178s Unpacking libmysofa1:s390x (1.3.3+dfsg-1ubuntu1) ... 178s Selecting previously unselected package libvulkan1:s390x. 178s Preparing to unpack .../110-libvulkan1_1.4.321.0-1_s390x.deb ... 178s Unpacking libvulkan1:s390x (1.4.321.0-1) ... 178s Selecting previously unselected package libplacebo349:s390x. 178s Preparing to unpack .../111-libplacebo349_7.349.0-3_s390x.deb ... 178s Unpacking libplacebo349:s390x (7.349.0-3) ... 178s Selecting previously unselected package libpostproc58:s390x. 178s Preparing to unpack .../112-libpostproc58_7%3a7.1.2-1ubuntu3_s390x.deb ... 178s Unpacking libpostproc58:s390x (7:7.1.2-1ubuntu3) ... 178s Selecting previously unselected package libfftw3-double3:s390x. 178s Preparing to unpack .../113-libfftw3-double3_3.3.10-2fakesync1build2_s390x.deb ... 178s Unpacking libfftw3-double3:s390x (3.3.10-2fakesync1build2) ... 178s Selecting previously unselected package libsamplerate0:s390x. 178s Preparing to unpack .../114-libsamplerate0_0.2.2-4build1_s390x.deb ... 178s Unpacking libsamplerate0:s390x (0.2.2-4build1) ... 178s Selecting previously unselected package librubberband2:s390x. 178s Preparing to unpack .../115-librubberband2_3.3.0+dfsg-2build2_s390x.deb ... 178s Unpacking librubberband2:s390x (3.3.0+dfsg-2build2) ... 178s Selecting previously unselected package libswscale8:s390x. 178s Preparing to unpack .../116-libswscale8_7%3a7.1.2-1ubuntu3_s390x.deb ... 178s Unpacking libswscale8:s390x (7:7.1.2-1ubuntu3) ... 178s Selecting previously unselected package libvidstab1.1:s390x. 178s Preparing to unpack .../117-libvidstab1.1_1.1.0-2build1_s390x.deb ... 178s Unpacking libvidstab1.1:s390x (1.1.0-2build1) ... 178s Selecting previously unselected package libzimg2:s390x. 178s Preparing to unpack .../118-libzimg2_3.0.5+ds1-1build1_s390x.deb ... 178s Unpacking libzimg2:s390x (3.0.5+ds1-1build1) ... 178s Selecting previously unselected package libavfilter10:s390x. 178s Preparing to unpack .../119-libavfilter10_7%3a7.1.2-1ubuntu3_s390x.deb ... 178s Unpacking libavfilter10:s390x (7:7.1.2-1ubuntu3) ... 178s Selecting previously unselected package libcaca0:s390x. 178s Preparing to unpack .../120-libcaca0_0.99.beta20-5_s390x.deb ... 178s Unpacking libcaca0:s390x (0.99.beta20-5) ... 178s Selecting previously unselected package libcdio19t64:s390x. 178s Preparing to unpack .../121-libcdio19t64_2.2.0-4_s390x.deb ... 178s Unpacking libcdio19t64:s390x (2.2.0-4) ... 179s Selecting previously unselected package libcdio-cdda2t64:s390x. 179s Preparing to unpack .../122-libcdio-cdda2t64_10.2+2.0.2-1_s390x.deb ... 179s Unpacking libcdio-cdda2t64:s390x (10.2+2.0.2-1) ... 179s Selecting previously unselected package libcdio-paranoia2t64:s390x. 179s Preparing to unpack .../123-libcdio-paranoia2t64_10.2+2.0.2-1_s390x.deb ... 179s Unpacking libcdio-paranoia2t64:s390x (10.2+2.0.2-1) ... 179s Selecting previously unselected package libdc1394-25:s390x. 179s Preparing to unpack .../124-libdc1394-25_2.2.6-5_s390x.deb ... 179s Unpacking libdc1394-25:s390x (2.2.6-5) ... 179s Selecting previously unselected package libglvnd0:s390x. 179s Preparing to unpack .../125-libglvnd0_1.7.0-1build2_s390x.deb ... 179s Unpacking libglvnd0:s390x (1.7.0-1build2) ... 179s Selecting previously unselected package libxcb-glx0:s390x. 179s Preparing to unpack .../126-libxcb-glx0_1.17.0-2build1_s390x.deb ... 179s Unpacking libxcb-glx0:s390x (1.17.0-2build1) ... 179s Selecting previously unselected package libxcb-present0:s390x. 179s Preparing to unpack .../127-libxcb-present0_1.17.0-2build1_s390x.deb ... 179s Unpacking libxcb-present0:s390x (1.17.0-2build1) ... 179s Selecting previously unselected package libxcb-xfixes0:s390x. 179s Preparing to unpack .../128-libxcb-xfixes0_1.17.0-2build1_s390x.deb ... 179s Unpacking libxcb-xfixes0:s390x (1.17.0-2build1) ... 179s Selecting previously unselected package libxxf86vm1:s390x. 179s Preparing to unpack .../129-libxxf86vm1_1%3a1.1.4-1build4_s390x.deb ... 179s Unpacking libxxf86vm1:s390x (1:1.1.4-1build4) ... 179s Selecting previously unselected package libdrm-amdgpu1:s390x. 179s Preparing to unpack .../130-libdrm-amdgpu1_2.4.127-1ubuntu1_s390x.deb ... 179s Unpacking libdrm-amdgpu1:s390x (2.4.127-1ubuntu1) ... 179s Selecting previously unselected package libxcb-randr0:s390x. 179s Preparing to unpack .../131-libxcb-randr0_1.17.0-2build1_s390x.deb ... 179s Unpacking libxcb-randr0:s390x (1.17.0-2build1) ... 179s Selecting previously unselected package libxcb-sync1:s390x. 179s Preparing to unpack .../132-libxcb-sync1_1.17.0-2build1_s390x.deb ... 179s Unpacking libxcb-sync1:s390x (1.17.0-2build1) ... 179s Selecting previously unselected package libxshmfence1:s390x. 179s Preparing to unpack .../133-libxshmfence1_1.3.3-1_s390x.deb ... 179s Unpacking libxshmfence1:s390x (1.3.3-1) ... 179s Selecting previously unselected package mesa-libgallium:s390x. 179s Preparing to unpack .../134-mesa-libgallium_25.2.3-1ubuntu1_s390x.deb ... 179s Unpacking mesa-libgallium:s390x (25.2.3-1ubuntu1) ... 179s Selecting previously unselected package libgbm1:s390x. 179s Preparing to unpack .../135-libgbm1_25.2.3-1ubuntu1_s390x.deb ... 179s Unpacking libgbm1:s390x (25.2.3-1ubuntu1) ... 179s Selecting previously unselected package libgl1-mesa-dri:s390x. 179s Preparing to unpack .../136-libgl1-mesa-dri_25.2.3-1ubuntu1_s390x.deb ... 179s Unpacking libgl1-mesa-dri:s390x (25.2.3-1ubuntu1) ... 179s Selecting previously unselected package libglx-mesa0:s390x. 179s Preparing to unpack .../137-libglx-mesa0_25.2.3-1ubuntu1_s390x.deb ... 179s Unpacking libglx-mesa0:s390x (25.2.3-1ubuntu1) ... 179s Selecting previously unselected package libglx0:s390x. 179s Preparing to unpack .../138-libglx0_1.7.0-1build2_s390x.deb ... 179s Unpacking libglx0:s390x (1.7.0-1build2) ... 179s Selecting previously unselected package libgl1:s390x. 179s Preparing to unpack .../139-libgl1_1.7.0-1build2_s390x.deb ... 179s Unpacking libgl1:s390x (1.7.0-1build2) ... 179s Selecting previously unselected package libiec61883-0:s390x. 179s Preparing to unpack .../140-libiec61883-0_1.2.0-7_s390x.deb ... 179s Unpacking libiec61883-0:s390x (1.2.0-7) ... 179s Selecting previously unselected package libjack-jackd2-0:s390x. 179s Preparing to unpack .../141-libjack-jackd2-0_1.9.22~dfsg-5_s390x.deb ... 179s Unpacking libjack-jackd2-0:s390x (1.9.22~dfsg-5) ... 179s Selecting previously unselected package libopenal-data. 179s Preparing to unpack .../142-libopenal-data_1%3a1.24.2-1_all.deb ... 179s Unpacking libopenal-data (1:1.24.2-1) ... 179s Selecting previously unselected package libopenal1:s390x. 179s Preparing to unpack .../143-libopenal1_1%3a1.24.2-1_s390x.deb ... 179s Unpacking libopenal1:s390x (1:1.24.2-1) ... 179s Selecting previously unselected package libflac14:s390x. 179s Preparing to unpack .../144-libflac14_1.5.0+ds-4_s390x.deb ... 179s Unpacking libflac14:s390x (1.5.0+ds-4) ... 179s Selecting previously unselected package libsndfile1:s390x. 179s Preparing to unpack .../145-libsndfile1_1.2.2-3_s390x.deb ... 179s Unpacking libsndfile1:s390x (1.2.2-3) ... 179s Selecting previously unselected package libpulse0:s390x. 179s Preparing to unpack .../146-libpulse0_1%3a17.0+dfsg1-2ubuntu3_s390x.deb ... 179s Unpacking libpulse0:s390x (1:17.0+dfsg1-2ubuntu3) ... 179s Selecting previously unselected package libwayland-client0:s390x. 179s Preparing to unpack .../147-libwayland-client0_1.24.0-1build1_s390x.deb ... 179s Unpacking libwayland-client0:s390x (1.24.0-1build1) ... 179s Selecting previously unselected package libdecor-0-0:s390x. 179s Preparing to unpack .../148-libdecor-0-0_0.2.2-2_s390x.deb ... 179s Unpacking libdecor-0-0:s390x (0.2.2-2) ... 179s Selecting previously unselected package libwayland-cursor0:s390x. 179s Preparing to unpack .../149-libwayland-cursor0_1.24.0-1build1_s390x.deb ... 179s Unpacking libwayland-cursor0:s390x (1.24.0-1build1) ... 179s Selecting previously unselected package libwayland-egl1:s390x. 179s Preparing to unpack .../150-libwayland-egl1_1.24.0-1build1_s390x.deb ... 179s Unpacking libwayland-egl1:s390x (1.24.0-1build1) ... 179s Selecting previously unselected package libxcursor1:s390x. 179s Preparing to unpack .../151-libxcursor1_1%3a1.2.3-1_s390x.deb ... 179s Unpacking libxcursor1:s390x (1:1.2.3-1) ... 179s Selecting previously unselected package libxi6:s390x. 179s Preparing to unpack .../152-libxi6_2%3a1.8.2-1_s390x.deb ... 179s Unpacking libxi6:s390x (2:1.8.2-1) ... 179s Selecting previously unselected package libxrandr2:s390x. 179s Preparing to unpack .../153-libxrandr2_2%3a1.5.4-1_s390x.deb ... 179s Unpacking libxrandr2:s390x (2:1.5.4-1) ... 179s Selecting previously unselected package x11-common. 179s Preparing to unpack .../154-x11-common_1%3a7.7+24ubuntu1_all.deb ... 179s Unpacking x11-common (1:7.7+24ubuntu1) ... 179s Selecting previously unselected package libxss1:s390x. 179s Preparing to unpack .../155-libxss1_1%3a1.2.3-1build3_s390x.deb ... 179s Unpacking libxss1:s390x (1:1.2.3-1build3) ... 179s Selecting previously unselected package libsdl2-2.0-0:s390x. 179s Preparing to unpack .../156-libsdl2-2.0-0_2.32.4+dfsg-1_s390x.deb ... 179s Unpacking libsdl2-2.0-0:s390x (2.32.4+dfsg-1) ... 179s Selecting previously unselected package libxcb-shape0:s390x. 179s Preparing to unpack .../157-libxcb-shape0_1.17.0-2build1_s390x.deb ... 179s Unpacking libxcb-shape0:s390x (1.17.0-2build1) ... 179s Selecting previously unselected package libxv1:s390x. 179s Preparing to unpack .../158-libxv1_2%3a1.0.11-1.1build1_s390x.deb ... 179s Unpacking libxv1:s390x (2:1.0.11-1.1build1) ... 179s Selecting previously unselected package libavdevice61:s390x. 179s Preparing to unpack .../159-libavdevice61_7%3a7.1.2-1ubuntu3_s390x.deb ... 179s Unpacking libavdevice61:s390x (7:7.1.2-1ubuntu3) ... 179s Selecting previously unselected package libde265-0:s390x. 179s Preparing to unpack .../160-libde265-0_1.0.16-1_s390x.deb ... 179s Unpacking libde265-0:s390x (1.0.16-1) ... 179s Selecting previously unselected package libexif12:s390x. 179s Preparing to unpack .../161-libexif12_0.6.25-1_s390x.deb ... 179s Unpacking libexif12:s390x (0.6.25-1) ... 179s Selecting previously unselected package libgpgme11t64:s390x. 179s Preparing to unpack .../162-libgpgme11t64_1.24.2-3ubuntu2_s390x.deb ... 179s Unpacking libgpgme11t64:s390x (1.24.2-3ubuntu2) ... 179s Selecting previously unselected package libgpgmepp6t64:s390x. 179s Preparing to unpack .../163-libgpgmepp6t64_1.24.2-3ubuntu2_s390x.deb ... 179s Unpacking libgpgmepp6t64:s390x (1.24.2-3ubuntu2) ... 179s Selecting previously unselected package libheif-plugin-aomdec:s390x. 179s Preparing to unpack .../164-libheif-plugin-aomdec_1.20.2-1_s390x.deb ... 179s Unpacking libheif-plugin-aomdec:s390x (1.20.2-1) ... 179s Selecting previously unselected package libheif-plugin-libde265:s390x. 179s Preparing to unpack .../165-libheif-plugin-libde265_1.20.2-1_s390x.deb ... 179s Unpacking libheif-plugin-libde265:s390x (1.20.2-1) ... 179s Selecting previously unselected package libheif1:s390x. 179s Preparing to unpack .../166-libheif1_1.20.2-1_s390x.deb ... 179s Unpacking libheif1:s390x (1.20.2-1) ... 179s Selecting previously unselected package libwmflite-0.2-7:s390x. 179s Preparing to unpack .../167-libwmflite-0.2-7_0.2.13-1.1build3_s390x.deb ... 179s Unpacking libwmflite-0.2-7:s390x (0.2.13-1.1build3) ... 179s Selecting previously unselected package libgraphicsmagick-q16-3t64. 179s Preparing to unpack .../168-libgraphicsmagick-q16-3t64_1.4+really1.3.45+hg17696-1build1_s390x.deb ... 179s Unpacking libgraphicsmagick-q16-3t64 (1.4+really1.3.45+hg17696-1build1) ... 179s Selecting previously unselected package libgraphicsmagick++-q16-12t64. 179s Preparing to unpack .../169-libgraphicsmagick++-q16-12t64_1.4+really1.3.45+hg17696-1build1_s390x.deb ... 179s Unpacking libgraphicsmagick++-q16-12t64 (1.4+really1.3.45+hg17696-1build1) ... 179s Selecting previously unselected package libice6:s390x. 179s Preparing to unpack .../170-libice6_2%3a1.1.1-1_s390x.deb ... 179s Unpacking libice6:s390x (2:1.1.1-1) ... 179s Selecting previously unselected package libnspr4:s390x. 179s Preparing to unpack .../171-libnspr4_2%3a4.36-1ubuntu2_s390x.deb ... 179s Unpacking libnspr4:s390x (2:4.36-1ubuntu2) ... 179s Selecting previously unselected package libnss3:s390x. 179s Preparing to unpack .../172-libnss3_2%3a3.114-1_s390x.deb ... 179s Unpacking libnss3:s390x (2:3.114-1) ... 179s Selecting previously unselected package libopenslide0. 179s Preparing to unpack .../173-libopenslide0_3.4.1+dfsg-7build3_s390x.deb ... 179s Unpacking libopenslide0 (3.4.1+dfsg-7build3) ... 179s Selecting previously unselected package libpoppler147:s390x. 179s Preparing to unpack .../174-libpoppler147_25.03.0-11.1_s390x.deb ... 179s Unpacking libpoppler147:s390x (25.03.0-11.1) ... 179s Selecting previously unselected package libpoppler-glib8t64:s390x. 179s Preparing to unpack .../175-libpoppler-glib8t64_25.03.0-11.1_s390x.deb ... 179s Unpacking libpoppler-glib8t64:s390x (25.03.0-11.1) ... 179s Selecting previously unselected package libsm6:s390x. 179s Preparing to unpack .../176-libsm6_2%3a1.2.6-1_s390x.deb ... 179s Unpacking libsm6:s390x (2:1.2.6-1) ... 179s Selecting previously unselected package libturbojpeg0:s390x. 179s Preparing to unpack .../177-libturbojpeg0_1%3a2.1.5-4ubuntu2_s390x.deb ... 179s Unpacking libturbojpeg0:s390x (1:2.1.5-4ubuntu2) ... 179s Selecting previously unselected package libxt6t64:s390x. 179s Preparing to unpack .../178-libxt6t64_1%3a1.2.1-1.3_s390x.deb ... 179s Unpacking libxt6t64:s390x (1:1.2.1-1.3) ... 179s Selecting previously unselected package libxmu6:s390x. 179s Preparing to unpack .../179-libxmu6_2%3a1.1.3-3build3_s390x.deb ... 179s Unpacking libxmu6:s390x (2:1.1.3-3build3) ... 179s Selecting previously unselected package libsixel1:s390x. 179s Preparing to unpack .../180-libsixel1_1.10.5-1_s390x.deb ... 179s Unpacking libsixel1:s390x (1.10.5-1) ... 179s Selecting previously unselected package timg. 179s Preparing to unpack .../181-timg_1.6.0-1build2_s390x.deb ... 179s Unpacking timg (1.6.0-1build2) ... 179s Selecting previously unselected package wl-clipboard. 179s Preparing to unpack .../182-wl-clipboard_2.2.1-2_s390x.deb ... 179s Unpacking wl-clipboard (2.2.1-2) ... 179s Selecting previously unselected package xclip. 179s Preparing to unpack .../183-xclip_0.13-4_s390x.deb ... 179s Unpacking xclip (0.13-4) ... 179s Selecting previously unselected package xsel. 179s Preparing to unpack .../184-xsel_1.2.1-1_s390x.deb ... 179s Unpacking xsel (1.2.1-1) ... 179s Setting up libgme0:s390x (0.6.3-7build1) ... 179s Setting up libchromaprint1:s390x (1.5.1-7) ... 179s Setting up libgraphite2-3:s390x (1.3.14-2ubuntu1) ... 179s Setting up xsel (1.2.1-1) ... 179s Setting up libxcb-dri3-0:s390x (1.17.0-2build1) ... 179s Setting up liblcms2-2:s390x (2.16-2) ... 179s Setting up libpixman-1-0:s390x (0.44.0-3) ... 179s Setting up libdvdread8t64:s390x (6.1.3-2) ... 179s Setting up libnorm1t64:s390x (1.5.9+dfsg-3.1build2) ... 179s Setting up libsharpyuv0:s390x (1.5.0-0.1) ... 179s Setting up libaom3:s390x (3.12.1-1) ... 179s Setting up libx11-xcb1:s390x (2:1.8.12-1build1) ... 179s Setting up librabbitmq4:s390x (0.15.0-1build1) ... 179s Setting up libraw1394-11:s390x (2.1.2-2build3) ... 179s Setting up libsodium23:s390x (1.0.18-1build3) ... 179s Setting up libudfread3:s390x (1.2.0-2) ... 180s Setting up libxcb-xfixes0:s390x (1.17.0-2build1) ... 180s Setting up libogg0:s390x (1.3.5-3build1) ... 180s Setting up libspeex1:s390x (1.2.1-3) ... 180s Setting up libshine3:s390x (3.1.1-3) ... 180s Setting up libcaca0:s390x (0.99.beta20-5) ... 180s Setting up libwmflite-0.2-7:s390x (0.2.13-1.1build3) ... 180s Setting up libxi6:s390x (2:1.8.2-1) ... 180s Setting up libtwolame0:s390x (0.4.0-2build3) ... 180s Setting up libxrender1:s390x (1:0.9.12-1) ... 180s Setting up libdatrie1:s390x (0.2.13-4) ... 180s Setting up libgsm1:s390x (1.0.22-1build1) ... 180s Setting up libxcb-render0:s390x (1.17.0-2build1) ... 180s Setting up libzix-0-0:s390x (0.6.2-1) ... 180s Setting up libx264-165:s390x (2:0.165.3222+gitb35605ac-3) ... 180s Setting up libglvnd0:s390x (1.7.0-1build2) ... 180s Setting up libcodec2-1.2:s390x (1.2.0-3) ... 180s Setting up libxcb-glx0:s390x (1.17.0-2build1) ... 180s Setting up libgdk-pixbuf2.0-common (2.44.4+dfsg-1) ... 180s Setting up libmysofa1:s390x (1.3.3+dfsg-1ubuntu1) ... 180s Setting up libxcb-shape0:s390x (1.17.0-2build1) ... 180s Setting up x11-common (1:7.7+24ubuntu1) ... 180s Setting up libcdio19t64:s390x (2.2.0-4) ... 180s Setting up libdeflate0:s390x (1.23-2) ... 180s Setting up libxcb-shm0:s390x (1.17.0-2build1) ... 180s Setting up libchafa0t64:s390x (1.14.5-1) ... 180s Setting up libmpg123-0t64:s390x (1.32.10-1) ... 180s Setting up libgomp1:s390x (15.2.0-5ubuntu1) ... 180s Setting up libcjson1:s390x (1.7.18-3.1) ... 180s Setting up libxvidcore4:s390x (2:1.3.7-1build1) ... 180s Setting up libturbojpeg0:s390x (1:2.1.5-4ubuntu2) ... 180s Setting up libjbig0:s390x (2.1-6.1ubuntu2) ... 180s Setting up libxxf86vm1:s390x (1:1.1.4-1build4) ... 180s Setting up libsnappy1v5:s390x (1.2.2-1) ... 180s Setting up libcdio-cdda2t64:s390x (10.2+2.0.2-1) ... 180s Setting up libxcb-present0:s390x (1.17.0-2build1) ... 180s Setting up libasound2-data (1.2.14-1ubuntu1) ... 180s Setting up libpgm-5.3-0t64:s390x (5.3.128~dfsg-2.1build1) ... 180s Setting up libtheoraenc1:s390x (1.2.0~alpha1+dfsg-6) ... 180s Setting up libasound2t64:s390x (1.2.14-1ubuntu1) ... 180s Setting up libva2:s390x (2.22.0-3ubuntu3) ... 180s Setting up libfreetype6:s390x (2.13.3+dfsg-1build1) ... 180s Setting up libsvtav1enc2:s390x (2.3.0+dfsg-1) ... 180s Setting up libnspr4:s390x (2:4.36-1ubuntu2) ... 180s Setting up libxfixes3:s390x (1:6.0.0-2build1) ... 180s Setting up libxcb-sync1:s390x (1.17.0-2build1) ... 180s Setting up libopus0:s390x (1.5.2-2) ... 180s Setting up libexif12:s390x (0.6.25-1) ... 180s Setting up libsixel1:s390x (1.10.5-1) ... 180s Setting up libcdio-paranoia2t64:s390x (10.2+2.0.2-1) ... 180s Setting up libdc1394-25:s390x (2.2.6-5) ... 180s Setting up libxv1:s390x (2:1.0.11-1.1build1) ... 180s Setting up fonts-dejavu-mono (2.37-8) ... 180s Setting up libvorbis0a:s390x (1.3.7-3build1) ... 180s Setting up libxrandr2:s390x (2:1.5.4-1) ... 180s Setting up fonts-dejavu-core (2.37-8) ... 180s Setting up libflac14:s390x (1.5.0+ds-4) ... 180s Setting up libjpeg-turbo8:s390x (2.1.5-4ubuntu2) ... 180s Setting up libfftw3-double3:s390x (3.3.10-2fakesync1build2) ... 180s Setting up libssh-4:s390x (0.11.2-1build1) ... 180s Setting up libvulkan1:s390x (1.4.321.0-1) ... 180s Setting up libwebp7:s390x (1.5.0-0.1) ... 180s Setting up libvidstab1.1:s390x (1.1.0-2build1) ... 180s Setting up libvpx9:s390x (1.15.0-2.1build1) ... 180s Setting up libsrt1.5-gnutls:s390x (1.5.4-1) ... 180s Setting up libflite1:s390x (2.2-7) ... 180s Setting up libdav1d7:s390x (1.5.1-1) ... 180s Setting up libva-drm2:s390x (2.22.0-3ubuntu3) ... 180s Setting up ocl-icd-libopencl1:s390x (2.3.3-1) ... 180s Setting up libasyncns0:s390x (0.8-6build4) ... 180s Setting up libxshmfence1:s390x (1.3.3-1) ... 180s Setting up libvdpau1:s390x (1.5-3) ... 180s Setting up libbs2b0:s390x (3.1.0+dfsg-8) ... 180s Setting up libxcb-randr0:s390x (1.17.0-2build1) ... 180s Setting up librav1e0.7:s390x (0.7.1-9) ... 180s Setting up libzimg2:s390x (3.0.5+ds1-1build1) ... 180s Setting up libopenjp2-7:s390x (2.5.3-2.1) ... 180s Setting up libharfbuzz0b:s390x (12.1.0-1) ... 180s Setting up libopenal-data (1:1.24.2-1) ... 180s Setting up libthai-data (0.1.29-2build1) ... 180s Setting up libunibreak6:s390x (6.1-3) ... 180s Setting up libgpgme11t64:s390x (1.24.2-3ubuntu2) ... 180s Setting up libwayland-egl1:s390x (1.24.0-1build1) ... 180s Setting up libxss1:s390x (1:1.2.3-1build3) ... 180s Setting up libmbedcrypto16:s390x (3.6.2-3ubuntu1) ... 180s Setting up libde265-0:s390x (1.0.16-1) ... 180s Setting up libx265-215:s390x (4.1-3) ... 180s Setting up libsamplerate0:s390x (0.2.2-4build1) ... 180s Setting up libva-x11-2:s390x (2.22.0-3ubuntu3) ... 180s Setting up libwebpmux3:s390x (1.5.0-0.1) ... 180s Setting up libjxl0.11:s390x (0.11.1-6ubuntu1) ... 180s Setting up libzvbi-common (0.2.44-1ubuntu1) ... 180s Setting up libmp3lame0:s390x (3.100-6build1) ... 180s Setting up libvorbisenc2:s390x (1.3.7-3build1) ... 180s Setting up libdvdnav4:s390x (6.1.1-3build1) ... 180s Setting up libiec61883-0:s390x (1.2.0-7) ... 180s Setting up libserd-0-0:s390x (0.32.4-1) ... 180s Setting up libdrm-amdgpu1:s390x (2.4.127-1ubuntu1) ... 180s Setting up libwayland-client0:s390x (1.24.0-1build1) ... 180s Setting up libjpeg8:s390x (8c-2ubuntu11) ... 180s Setting up libavc1394-0:s390x (0.5.4-5build3) ... 180s Setting up wl-clipboard (2.2.1-2) ... 180s Setting up libgpgmepp6t64:s390x (1.24.2-3ubuntu2) ... 180s Setting up libice6:s390x (2:1.1.1-1) ... 180s Setting up mesa-libgallium:s390x (25.2.3-1ubuntu1) ... 180s Setting up libzmq5:s390x (4.3.5-1build2) ... 180s Setting up libzvbi0t64:s390x (0.2.44-1ubuntu1) ... 180s Setting up libgbm1:s390x (25.2.3-1ubuntu1) ... 180s Setting up libsoxr0:s390x (0.1.3-4build3) ... 180s Setting up fontconfig-config (2.15.0-2.3ubuntu1) ... 180s Setting up libwebpdemux2:s390x (1.5.0-0.1) ... 180s Setting up libxcursor1:s390x (1:1.2.3-1) ... 180s Setting up libgl1-mesa-dri:s390x (25.2.3-1ubuntu1) ... 180s Setting up libnss3:s390x (2:3.114-1) ... 180s Setting up libopenal1:s390x (1:1.24.2-1) ... 180s Setting up libavutil59:s390x (7:7.1.2-1ubuntu3) ... 180s Setting up libpostproc58:s390x (7:7.1.2-1ubuntu3) ... 180s Setting up librist4:s390x (0.2.11+dfsg-1) ... 180s Setting up libthai0:s390x (0.1.29-2build1) ... 180s Setting up libvorbisfile3:s390x (1.3.7-3build1) ... 180s Setting up libswresample5:s390x (7:7.1.2-1ubuntu3) ... 180s Setting up libswscale8:s390x (7:7.1.2-1ubuntu3) ... 180s Setting up libplacebo349:s390x (7.349.0-3) ... 180s Setting up librubberband2:s390x (3.3.0+dfsg-2build2) ... 180s Setting up libjack-jackd2-0:s390x (1.9.22~dfsg-5) ... 180s Setting up libsord-0-0:s390x (0.16.18-1) ... 180s Setting up libtiff6:s390x (4.7.0-3ubuntu3) ... 180s Setting up libwayland-cursor0:s390x (1.24.0-1build1) ... 180s Setting up libsratom-0-0:s390x (0.6.18-1) ... 180s Setting up libdecor-0-0:s390x (0.2.2-2) ... 180s Setting up libgdk-pixbuf-2.0-0:s390x (2.44.4+dfsg-1) ... 180s Setting up libfontconfig1:s390x (2.15.0-2.3ubuntu1) ... 180s Setting up libsndfile1:s390x (1.2.2-3) ... 180s Setting up libyuv0:s390x (0.0.1916.20250814-1) ... 180s Setting up libsm6:s390x (2:1.2.6-1) ... 180s Setting up liblilv-0-0:s390x (0.24.26-1) ... 180s Setting up libopenmpt0t64:s390x (0.7.13-1build1) ... 180s Setting up fontconfig (2.15.0-2.3ubuntu1) ... 182s Regenerating fonts cache... done. 182s Setting up libavif16:s390x (1.3.0-1ubuntu1) ... 182s Setting up libglx-mesa0:s390x (25.2.3-1ubuntu1) ... 182s Setting up libpoppler147:s390x (25.03.0-11.1) ... 182s Setting up libglx0:s390x (1.7.0-1build2) ... 182s Setting up libpulse0:s390x (1:17.0+dfsg1-2ubuntu3) ... 182s Setting up libpango-1.0-0:s390x (1.56.3-2) ... 182s Setting up libcairo2:s390x (1.18.4-1build1) ... 182s Setting up libpoppler-glib8t64:s390x (25.03.0-11.1) ... 182s Setting up libgl1:s390x (1.7.0-1build2) ... 182s Setting up libass9:s390x (1:0.17.3-1) ... 182s Setting up libtheoradec1:s390x (1.2.0~alpha1+dfsg-6) ... 182s Setting up libxt6t64:s390x (1:1.2.1-1.3) ... 182s Setting up libbluray3:s390x (1:1.4.0-3) ... 182s Setting up libcairo-gobject2:s390x (1.18.4-1build1) ... 182s Setting up libpangoft2-1.0-0:s390x (1.56.3-2) ... 182s Setting up libopenslide0 (3.4.1+dfsg-7build3) ... 182s Setting up libsdl2-2.0-0:s390x (2.32.4+dfsg-1) ... 182s Setting up libpangocairo-1.0-0:s390x (1.56.3-2) ... 182s Setting up libxmu6:s390x (2:1.1.3-3build3) ... 182s Setting up librsvg2-2:s390x (2.60.0+dfsg-1build1) ... 182s Setting up xclip (0.13-4) ... 182s Setting up libavcodec61:s390x (7:7.1.2-1ubuntu3) ... 182s Setting up chafa (1.14.5-1) ... 182s Setting up libavformat61:s390x (7:7.1.2-1ubuntu3) ... 182s Setting up libavfilter10:s390x (7:7.1.2-1ubuntu3) ... 182s Setting up libavdevice61:s390x (7:7.1.2-1ubuntu3) ... 182s Setting up libheif1:s390x (1.20.2-1) ... 182s Setting up libheif-plugin-aomdec:s390x (1.20.2-1) ... 182s Setting up libheif-plugin-libde265:s390x (1.20.2-1) ... 182s Setting up libgraphicsmagick-q16-3t64 (1.4+really1.3.45+hg17696-1build1) ... 182s Setting up libgraphicsmagick++-q16-12t64 (1.4+really1.3.45+hg17696-1build1) ... 182s Setting up timg (1.6.0-1build2) ... 182s Processing triggers for libc-bin (2.42-0ubuntu3) ... 182s Processing triggers for man-db (2.13.1-1) ... 184s autopkgtest [05:55:22]: test run-commands: [----------------------- 184s 184s # 0. Basic arguments 184s offpunk --version 184s Offpunk 2.7.1 184s offpunk --help 184s usage: offpunk [-h] [--bookmarks] [--command [COMMAND ...]] 184s [--config-file FILE] [--sync] [--assume-yes] [--disable-http] 184s [--fetch-later] [--depth DEPTH] [--images-mode IMAGES_MODE] 184s [--cache-validity CACHE_VALIDITY] [--version] [--features] 184s [URL ...] 184s 184s Offline-First Gemini/Web/Gopher/RSS reader and browser 184s 184s positional arguments: 184s URL Arguments should be URL to be fetched or, if --sync is 184s used, lists 184s 184s options: 184s -h, --help show this help message and exit 184s --bookmarks start with your list of bookmarks 184s --command [COMMAND ...] 184s Launch this command after startup 184s --config-file FILE use this particular config file instead of default 184s --sync run non-interactively to build cache by exploring 184s lists passed as argument. Without argument, all lists 184s are fetched. 184s --assume-yes assume-yes when asked questions about 184s certificates/redirections during sync (lower security) 184s --disable-http do not try to get http(s) links (but already cached 184s will be displayed) 184s --fetch-later run non-interactively with an URL as argument to fetch 184s it later 184s --depth DEPTH depth of the cache to build. Default is 1. More is 184s crazy. Use at your own risks! 184s --images-mode IMAGES_MODE 184s the mode to use to choose which images to download in 184s a HTML page. one of (None, readable, full). Warning: 184s full will slowdown your sync. 184s --cache-validity CACHE_VALIDITY 184s duration for which a cache is valid before sync 184s (seconds) 184s --version display version information and quit 184s --features display available features and dependancies then quit 184s offpunk --features 185s moving from tofu.db to certificates as files 185s Upgrading cache to version 1: migrating index.txt to gophermap 185s Offpunk 2.7.1 185s =========== 185s System: linux 185s Python: 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 185s 185s Highly recommended: 185s - python-cryptography : Installed 185s - xdg-open : Installed 185s 185s Web browsing: 185s - python-requests : Installed 185s - python-feedparser : Installed 185s - python-bs4 : Installed 185s - python-readability : Installed 185s - timg 1.3.2+ : Installed 185s - chafa 1.10+ : Installed 185s 185s Nice to have: 185s - python-setproctitle : Installed 185s - X11 clipboard (xsel or xclip) : Installed 185s - Wayland clipboard (wl-clipboard): Installed 185s 185s Features : 185s - Render images (chafa or timg) : Installed 185s - Render HTML (bs4, readability) : Installed 185s - Render Atom/RSS feeds (feedparser) : Installed 185s - Connect to http/https (requests) : Installed 185s - Detect text encoding (python-chardet) : Installed 185s - restore last position (less 572+) : Installed 185s 185s Config directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.config/offpunk/ 185s User Data directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.local/share/offpunk/ 185s Cache directoy : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.cache/offpunk/ 185s echo quit | offpunk --bookmarks 185s Creating config directory /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.config/offpunk/ 185s Welcome to Offpunk! 185s Type `help` to get the list of available command. 185s List bookmarks does not exist. Create it with list create bookmarks 185s ON> You can close your screen! 185s 185s # 1. Basic commands 185s cat << END | offpunk 185s version 185s help 185s help abbrevs 185s help add 185s help back 185s help blackbox 185s help bookmarks 185s help cat 185s help cert 185s help copy 185s help find 185s help forward 185s help go 185s help gus 185s help handler 185s help help 185s help history 185s help info 185s help list 185s help ls 185s help mark 185s help move 185s help offline 185s help online 185s help open 185s help redirect 185s help reload 185s help root 185s help save 185s help set 185s help shell echo test 185s help subscribe 185s help sync 185s help theme 185s help tour 185s help url 185s help version 185s help wikipedia 185s help xkcd 185s help exit 185s help quit 185s quit 185s END 185s Welcome to Offpunk! 185s Type `help` to get the list of available command. 185s ON> Offpunk 2.7.1 185s =========== 185s System: linux 185s Python: 3.13.9 (main, Oct 15 2025, 14:56:22) [GCC 15.2.0] 185s 185s Highly recommended: 185s - python-cryptography : Installed 185s - xdg-open : Installed 185s 185s Web browsing: 185s - python-requests : Installed 185s - python-feedparser : Installed 185s - python-bs4 : Installed 185s - python-readability : Installed 185s - timg 1.3.2+ : Installed 185s - chafa 1.10+ : Installed 185s 185s Nice to have: 185s - python-setproctitle : Installed 185s - X11 clipboard (xsel or xclip) : Installed 185s - Wayland clipboard (wl-clipboard): Installed 185s 185s Features : 185s - Render images (chafa or timg) : Installed 185s - Render HTML (bs4, readability) : Installed 185s - Render Atom/RSS feeds (feedparser) : Installed 185s - Connect to http/https (requests) : Installed 185s - Detect text encoding (python-chardet) : Installed 185s - restore last position (less 572+) : Installed 185s 185s Config directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.config/offpunk/ 185s User Data directory : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.local/share/offpunk/ 185s Cache directoy : /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/.cache/offpunk/ 185s ON> 185s Documented commands (type help ): 185s ======================================== 185s add copy gus ls quit set tutorial xkcd 185s alias exit handler mark redirect shell up 185s archive feed help move reload subscribe url 185s back find history offline root sync version 185s bookmarks forward info online save theme view 185s certs go list open search tour wikipedia 185s 185s ON> abbrevs is an alias for 'alias' 185s See the list of aliases with 'abbrevs' 185s 'help alias': 185s Create or modifiy an alias 185s alias : show all existing aliases 185s alias ALIAS : show the command linked to ALIAS 185s alias ALIAS CMD : create or replace existing ALIAS to be linked to command CMD 185s ON> Add the current URL to the list specified as argument. 185s If no argument given, URL is added to Bookmarks. 185s You can pass a link number as the second argument to add the link. 185s "add $LIST XX" will add link number XX to $LIST 185s ON> Go back to the previous gemini item. 185s ON> *** No help on blackbox 185s ON> Show or access the bookmarks menu. 185s 'bookmarks' shows all bookmarks. 185s 'bookmarks n' navigates immediately to item n in the bookmark menu. 185s Bookmarks are stored using the 'add' command. 185s ON> *** No help on cat 185s ON> cert is an alias for 'certs' 185s See the list of aliases with 'abbrevs' 185s 'help certs': 185s Manage your client certificates (identities) for a site. 185s `certs` will display all valid certificates for the current site 185s `certs new ` will create a new certificate, if no url is specified, the current open site will be used. 185s ON> Copy the content of the last visited page as gemtext/html in the clipboard. 185s Use with "url" as argument to only copy the adress. 185s Use with "raw" to copy ANSI content as seen in your terminal (with colour codes). 185s Use with "cache" to copy the path of the cached content. 185s Use with "title" to copy the title of the page. 185s Use with "link" to copy a link in the gemtext format to that page with the title. 185s ON> Find in current page by displaying only relevant lines (grep). 185s ON> Go forward to the next gemini item. 185s ON> Go to a gemini URL or marked item. 185s ON> Submit a search query to the geminispace.info search engine. 185s ON> View or set handler commands for different MIME types. 185s handler MIMETYPE : see handler for MIMETYPE 185s handler MIMETYPE CMD : set handler for MIMETYPE to CMD 185s in the CMD, %s will be replaced by the filename. 185s if no %s, it will be added at the end. 185s MIMETYPE can be the true mimetype or the file extension. 185s 185s Examples: 185s handler application/pdf zathura %s 185s handler .odt lowriter 185s handler docx lowriter 185s ON> ALARM! Recursion detected! ALARM! Prepare to eject! 185s ON> Display history. 185s ON> Display information about current page. 185s ON> Manage list of bookmarked pages. 185s - list : display available lists 185s - list $LIST : display pages in $LIST 185s - list create $NEWLIST : create a new list 185s - list edit $LIST : edit the list 185s - list subscribe $LIST : during sync, add new links found in listed pages to tour 185s - list freeze $LIST : don’t update pages in list during sync if a cache already exists 185s - list normal $LIST : update pages in list during sync but don’t add anything to tour 185s - list delete $LIST : delete a list permanently (a confirmation is required) 185s - list help : print this help 185s See also : 185s - add $LIST (to add current page to $LIST or, by default, to bookmarks) 185s - move $LIST (to add current page to list while removing from all others) 185s - archive (to remove current page from all lists while adding to archives) 185s 185s There’s no "delete" on purpose. The use of "archive" is recommended. 185s 185s The following lists cannot be removed or frozen but can be edited with "list edit" 185s - list archives : contains last 200 archived URLs 185s - history : contains last 200 visisted URLs 185s - to_fetch : contains URLs that will be fetch during the next sync 185s - tour : contains the next URLs to visit during a tour (see "help tour") 185s ON> List contents of current index. 185s Use 'ls -l' to see URLs. 185s ON> Mark the current item with a single letter. This letter can then 185s be passed to the 'go' command to return to the current item later. 185s Think of it like marks in vi: 'mark a'='ma' and 'go a'=''a'. 185s Marks are temporary until shutdown (not saved to disk). 185s ON> move LIST will add the current page to the list LIST. 185s With a major twist: current page will be removed from all other lists. 185s If current page was not in a list, this command is similar to `add LIST`. 185s ON> Use Offpunk offline by only accessing cached content 185s ON> Use Offpunk online with a direct connection 185s ON> Open current item with the configured handler or xdg-open. 185s Use "open url" to open current URL in a browser. 185s Use "open 2 4" to open links 2 and 4 185s You can combine with "open url 2 4" to open URL of links 185s see "handler" command to set your handler. 185s ON> Display and manage the list of redirected URLs. This features is mostly useful to use privacy-friendly frontends for popular websites. 185s ON> Reload the current URL. 185s ON> Go to root selector of the server hosting current item. 185s ON> Save an item to the filesystem. 185s 'save n filename' saves menu item n to the specified filename. 185s 'save filename' saves the last viewed item to the specified filename. 185s 'save n' saves menu item n to an automagic filename. 185s ON> View or set various options. 185s ON> *** No help on shell echo test 185s ON> Subscribe to current page by saving it in the "subscribed" list. 185s If a new link is found in the page during a --sync, the new link is automatically 185s fetched and added to your next tour. 185s To unsubscribe, remove the page from the "subscribed" list. 185s ON> Synchronize all bookmarks lists and URLs from the to_fetch list. 185s - New elements in pages in subscribed lists will be added to tour 185s - Elements in list to_fetch will be retrieved and added to tour 185s - Normal lists will be synchronized and updated 185s - Frozen lists will be fetched only if not present. 185s 185s Before a sync, you can edit the list of URLs that will be fetched with the 185s following command: "list edit to_fetch" 185s 185s Argument : duration of cache validity (in seconds). 185s ON> Change the colors of your rendered text. 185s 185s "theme ELEMENT COLOR" 185s 185s ELEMENT is one of: window_title, window_subtitle, title, 185s subtitle,subsubtitle,link,oneline_link,new_link,image_link,preformatted,blockquote. 185s 185s COLOR is one or many (separated by space) of: bold, faint, italic, underline, black, 185s red, green, yellow, blue, purple, cyan, white. 185s 185s Each color can alternatively be prefaced with "bright_". 185s ON> Add index items as waypoints on a tour, which is basically a FIFO 185s queue of gemini items. 185s 185s `tour` or `t` alone brings you to the next item in your tour. 185s Items can be added with `tour 1 2 3 4` or ranges like `tour 1-4`. 185s All items in current menu can be added with `tour *`. 185s All items in $LIST can be added with `tour $LIST`. 185s Current item can be added back to the end of the tour with `tour .`. 185s Current tour can be listed with `tour ls` and scrubbed with `tour clear`. 185s ON> Print the url of the current page. 185s Use "url XX" where XX is a number to print the url of link XX. 185s "url" can also be piped to the shell, using the pipe "|" 185s ON> Display version and system information. 185s ON> Search on wikipedia using the configured Gemini interface. 185s The first word should be the two letters code for the language. 185s Exemple : "wikipedia en Gemini protocol" 185s But you can also use abbreviations to go faster: 185s "wen Gemini protocol". (your abbreviation might be missing, report the bug) 185s The interface used can be modified with the command: 185s "set wikipedia URL" where URL should contains two "%s", the first 185s one used for the language, the second for the search string. 185s ON> Open the specified XKCD comics (a number is required as parameter) 185s ON> Exit Offpunk. 185s ON> Exit Offpunk. 185s ON> You can close your screen! 185s 185s # cert calls a submenu which expects then a blank line to get outside. 185s # find will call the pager 185s # gus and search will launch the client to the search engine. 185s # reload will call the pager 185s # wikipedia will require test to have Internet access 185s cat << END | offpunk 185s abbrevs 185s add 185s archive 185s back 185s blackbox 185s bookmarks 185s cat 185s cert 185s 185s copy 185s forward 185s go 185s handler 185s history 185s info 185s list 185s ls 185s mark 185s move 185s offline 185s online 185s open 185s redirect 185s root 185s save 185s set 185s shell echo test 185s subscribe 185s 185s sync 185s tour 185s theme 185s url 185s exit 185s END 185s Welcome to Offpunk! 185s Type `help` to get the list of available command. 185s ON> 185s Command Aliases: 185s ================ 185s .. up 185s a add 185s b back 185s bb blackbox 185s bm bookmarks 185s book bookmarks 185s cert certs 185s cp copy 185s f forward 185s g go 185s h history 185s hist history 185s l view 185s less view 185s man help 185s mv move 185s n next 185s off offline 185s on online 185s p previous 185s prev previous 185s q quit 185s r reload 185s s save 185s se search 185s / find 185s t tour 185s u up 185s v view 185s w wikipedia 185s wen wikipedia en 185s wfr wikipedia fr 185s wes wikipedia es 185s abbrevs alias 185s 185s ON> You need to 'go' somewhere, first 185s ON> You need to 'go' somewhere, first 185s ON> ON> What? 185s ON> List bookmarks does not exist. Create it with list create bookmarks 185s ON> What? 185s ON> You need to 'go' somewhere, first 185s ON> ON> No content to copy, visit a page first 185s ON> ON> Go where? (hint: simply copy an URL in your clipboard) 185s ON> ON> List history does not exist. Create it with list create history 185s ON> You need to 'go' somewhere, first 185s ON> No lists yet. Use `list create` 185s ON> You need to 'go' somewhere, first 185s ON> You need to 'go' somewhere, first 185s ON> LIST argument is required as the target for your move 185s ON> Offpunk is now offline and will only access cached content 185s OFF> Offpunk is online and will access the network 185s ON> You need to 'go' somewhere, first 185s ON> Current redirections: 185s -------------------- 185s *reddit.com -> teddit.net 185s *medium.com -> scribe.rip 185s *advertising.theguardian.com -> blocked 185s youtube.com -> blocked 185s fbcdn.net -> blocked 185s *google-analytics.com -> blocked 185s *tiktok.com -> blocked 185s *google-health-ads.blogspot.com -> blocked 185s *advertising.amazon.com -> blocked 185s *google-webfonts-helper.herokuapp.com -> blocked 185s linkedin.com -> blocked 185s *ads.yahoo.com -> blocked 185s *doubleclick.net -> blocked 185s x.com -> blocked 185s *advertise.newrepublic.com -> blocked 185s *admanager.google.com -> blocked 185s *firebase.google.com -> blocked 185s facebook.com -> blocked 185s youtu.be -> blocked 185s facebook.net -> blocked 185s twitter.com -> blocked 185s *licdn.com -> blocked 185s 185s To add new, use "redirect origine.com destination.org" 185s To remove a redirect, use "redirect origine.com NONE" 185s To completely block a website, use "redirect origine.com BLOCK" 185s To block also subdomains, prefix with *: "redirect *origine.com BLOCK" 185s ON> You need to 'go' somewhere, first 185s ON> You need to 'go' somewhere, first 185s ON> accept_bad_ssl_certificates False 185s archives_size 200 185s auto_follow_redirects True 185s beta False 185s debug False 185s default_protocol gemini 185s editor None 185s ftr_site_config None 185s history_size 200 185s images_mode readable 185s max_size_download 10 185s preformat_wrap False 185s redirects True 185s search gemini://kennedy.gemi.dev/search?%s 185s short_timeout 5 185s timeout 600 185s tls_mode tofu 185s width 72 185s wikipedia gemini://gemi.dev/cgi-bin/wp.cgi/view/%s?%s 185s ON> test 185s ON> You need to 'go' somewhere, first 185s ON> ON> * * * 0 to fetch in tour * * * 185s End of sync 185s ON> End of tour. 185s ON> window_title set to ['red', 'bold'] 185s window_subtitle set to ['red', 'faint'] 185s title set to ['blue', 'bold', 'underline'] 185s subtitle set to ['blue'] 185s subsubtitle set to ['blue', 'faint'] 185s link set to ['blue', 'faint'] 185s new_link set to ['bold'] 185s oneline_link set to [] 185s image_link set to ['yellow', 'faint'] 185s preformatted set to ['faint'] 185s blockquote set to ['italic'] 185s prompt_on set to ['green'] 185s prompt_off set to ['green'] 185s ON> You need to 'go' somewhere, first 185s ON> You can close your screen! 186s 186s # 2. Checks against gemini file 186s cat << END | offpunk 186s go file://$PWD/index.gmi 186s quit 186s END 186s Welcome to Offpunk! 186s Type `help` to get the list of available command. 186s ON> index.gmi (7 items) (local file) 186s OFFPUNK - An Offline-First Browser for the Smolnet 186s 186s Offpunk is a command-line browser and feed reader dedicated to browsing 186s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 186s is optimised to be used offline with rare connections but works as well 186s when connected. 186s 186s Offpunk is optimised for reading and supports readability mode, 186s displaying pictures, subscribing to pages or RSS feeds, managing complex 186s lists of bookmarks. Its integrated help and easy commands make it a 186s perfect tool for command-line novices while power-users will be amazed 186s by its shell integration. 186s 186s Offpunk is written in Python 3 by Ploum. It aims to be portable and 186s minimise dependencies, making them optional. It supports 186s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 186s 186s 186s [1] Installing Offpunk and dependencies 186s [2] First steps 186s [3] Configuring Offpunk 186s [4] Using Offpunk offline 186s [5] Lists and subscriptions 186s [6] Shell and OS integrations 186s [7] Roadmap & Contributions 186s 186s  186s ON> You can close your screen! 186s 186s # 3. Test netcache command 186s # 3.0 Basic 186s netcache --help 186s usage: netcache [-h] [--path] [--ids] [--offline] [--max-size MAX_SIZE] 186s [--timeout TIMEOUT] [--cache-validity CACHE_VALIDITY] 186s [URL ...] 186s 186s Netcache is a command-line tool to retrieve, cache and access networked 186s content. By default, netcache will returns a cached version of a given URL, 186s downloading it only if a cache version doesn't exist. A validity duration, in 186s seconds, can also be given so netcache downloads the content only if the 186s existing cache is older than the validity. 186s 186s positional arguments: 186s URL download URL and returns the content or the path to a 186s cached version 186s 186s options: 186s -h, --help show this help message and exit 186s --path return path to the cache instead of the content of the 186s cache 186s --ids return a list of id's for the gemini-site instead of 186s the content of the cache 186s --offline Do not attempt to download, return cached version or 186s error 186s --max-size MAX_SIZE Cancel download of items above that size (value in 186s Mb). 186s --timeout TIMEOUT Time to wait before cancelling connection (in second). 186s --cache-validity CACHE_VALIDITY 186s maximum age, in second, of the cached version before 186s redownloading a new version 186s # 3.1 Various suboptions 186s OUT="$(netcache --path "file://$PWD/index.gmi")" 186s echo "$OUT" | grep -q "$PWD/index.gmi" 186s # (Note that the file local do not feed the user's cache.) 186s # 3.2 Main functionality 186s netcache "file://$PWD/index.gmi" 187s # OFFPUNK - An Offline-First Browser for the Smolnet 187s 187s 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. 187s 187s 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. 187s 187s 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. 187s 187s 187s => install.gmi Installing Offpunk and dependencies 187s => tutorial.gmi First steps 187s => config.gmi Configuring Offpunk 187s => offline.gmi Using Offpunk offline 187s => lists.gmi Lists and subscriptions 187s => shell.gmi Shell and OS integrations 187s => dev.gmi Roadmap & Contributions 187s 187s 187s netcache --offline "file://$PWD/index.gmi" 187s # OFFPUNK - An Offline-First Browser for the Smolnet 187s 187s 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. 187s 187s 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. 187s 187s 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. 187s 187s 187s => install.gmi Installing Offpunk and dependencies 187s => tutorial.gmi First steps 187s => config.gmi Configuring Offpunk 187s => offline.gmi Using Offpunk offline 187s => lists.gmi Lists and subscriptions 187s => shell.gmi Shell and OS integrations 187s => dev.gmi Roadmap & Contributions 187s 187s 187s netcache --max-size 1 "file://$PWD/index.gmi" 187s # OFFPUNK - An Offline-First Browser for the Smolnet 187s 187s 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. 187s 187s 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. 187s 187s 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. 187s 187s 187s => install.gmi Installing Offpunk and dependencies 187s => tutorial.gmi First steps 187s => config.gmi Configuring Offpunk 187s => offline.gmi Using Offpunk offline 187s => lists.gmi Lists and subscriptions 187s => shell.gmi Shell and OS integrations 187s => dev.gmi Roadmap & Contributions 187s 187s 187s # Note that testing the --timeout looks to need Internet, so we'll skip this 187s # option for now. 187s 187s # 4. Test ansicat 187s # 4.0 Basic 187s ansicat --help 187s usage: ansicat [-h] 187s [--format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext}] 187s [--mime MIME] [--url [URL ...]] [--mode MODE] 187s [INPUT ...] 187s 187s ansicat is a terminal rendering tool that will render multiple formats (HTML, 187s Gemtext, RSS, Gophermap, Image) into ANSI text and colors. When used on a 187s file, ansicat will try to autodetect the format. When used with standard 187s input, the format must be manually specified. If the content contains links, 187s the original URL of the content can be specified in order to correctly modify 187s relatives links. 187s 187s positional arguments: 187s INPUT Path to the text to render (default to stdin) 187s 187s options: 187s -h, --help show this help message and exit 187s --format {auto,gemtext,html,feed,gopher,image,folder,text,plaintext} 187s Renderer to use. Available: auto, gemtext, html, feed, 187s gopher, image, folder, plaintext 187s --mime MIME Mime of the content to parse 187s --url [URL ...] Original URL of the content 187s --mode MODE Which mode should be used to render: normal (default), 187s full or source. With HTML, the normal mode try to 187s extract the article. 187s # 4.1 Test some ansicat formats and options 187s # WARNING: there is something about autopkgtest environment that causes the two 187s # below commands to crash, but running them by hand works perfectly. 187s # This may indicate fragility in the tool, but it is curious that the 187s # 4.2 section below gave no difficulty: if this crashes too, then it 187s # may be reasonable to skip it as well. 187s #ansicat --format plaintext index.gmi 187s #ansicat --mime text/plain index.gmi 187s # 4.2 Main functionality 187s ansicat --url "file://$PWD/index.gmi" index.gmi 188s Format or mime should be specified when running with stdin 188s 188s # 5. Test opnk 188s # 5.0 Basic 188s opnk --help 188s usage: opnk [-h] [--mode MODE] [--cache-validity CACHE_VALIDITY] [INPUT ...] 188s 188s opnk is an universal open command tool that will try to display any file in 188s the pager less after rendering its content with ansicat. If that fails, opnk 188s will fallback to opening the file with xdg-open. If given an URL as input 188s instead of a path, opnk will rely on netcache to get the networked content. 188s 188s positional arguments: 188s INPUT Path to the file or URL to open 188s 188s options: 188s -h, --help show this help message and exit 188s --mode MODE Which mode should be used to render: normal (default), 188s full or source. With HTML, the normal mode try to 188s extract the article. 188s --cache-validity CACHE_VALIDITY 188s maximum age, in second, of the cached version before 188s redownloading a new version 188s # 5.1 Open some things (but stick to not needing Internet). 188s opnk /usr/share/doc/offpunk/copyright 188s copyright (3 items) (local file) 188s Format: https://www.debian.org/doc/packaging-manuals/copyright- 188s format/1.0/ 188s Upstream-Name: Offpunk 188s Upstream-Contact: Lionel "Ploum" Dricot 188s Source: https://git.sr.ht/~lioploum/offpunk/ 188s 188s Files: * 188s Copyright: 2019-2020, Solderpunk 188s 2021-2025, Ploum and contributors. 188s License: AGPL-3+ 188s Comment: Derived from AV-98[1] by Solderpunk. 188s [1]: https://tildegit.org/solderpunk/AV-98 188s 188s Files: netcache_migration.py 188s Copyright: 2023, Sotiris Papatheodorou 188s License: BSD-2-Clause 188s Redistribution and use in source and binary forms, with or without 188s modification, are permitted provided that the following conditions are 188s met: 188s . 188s 1. Redistributions of source code must retain the above copyright 188s notice, this list of conditions and the following disclaimer. 188s . 188s 2. Redistributions in binary form must reproduce the above copyright 188s notice, this list of conditions and the following disclaimer in the 188s documentation and/or other materials provided with the 188s distribution. 188s . 188s THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS 188s IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 188s TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 188s PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 188s HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 188s SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 188s LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 188s DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 188s THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 188s (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 188s OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 188s 188s Files: cert_migration.py 188s Copyright: 2024, Bert Livens 188s License: AGPL-3 188s This program is free software: you can redistribute it and/or modify it 188s under the terms of the GNU Affero General Public License as published 188s by the Free Software Foundation, version 3 of the License only. 188s . 188s This program is distributed in the hope that it will be useful, but 188s WITHOUT ANY WARRANTY; without even the implied warranty of 188s MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 188s Affero General Public License for more details. 188s . 188s A copy of the GNU Affero General Public License is available below. 188s 188s Files: debian/* 188s Copyright: 2023-2025, Étienne Mollier 188s License: AGPL-3+ 188s 188s License: AGPL-3+ 188s Copyright (C) 2007 Free Software Foundation, Inc. 188s Everyone is permitted to copy and distribute verbatim copies 188s of this license document, but changing it is not allowed. 188s . 188s Preamble 188s . 188s The GNU Affero General Public License is a free, copyleft license for 188s software and other kinds of works, specifically designed to ensure 188s cooperation with the community in the case of network server software. 188s . 188s The licenses for most software and other practical works are designed 188s to take away your freedom to share and change the works. By contrast, 188s our General Public Licenses are intended to guarantee your freedom to 188s share and change all versions of a program--to make sure it remains 188s free 188s software for all its users. 188s . 188s When we speak of free software, we are referring to freedom, not 188s price. Our General Public Licenses are designed to make sure that you 188s have the freedom to distribute copies of free software (and charge for 188s them if you wish), that you receive source code or can get it if you 188s want it, that you can change the software or use pieces of it in new 188s free programs, and that you know you can do these things. 188s . 188s Developers that use our General Public Licenses protect your rights 188s with two steps: (1) assert copyright on the software, and (2) offer 188s you this License which gives you legal permission to copy, distribute 188s and/or modify the software. 188s . 188s A secondary benefit of defending all users' freedom is that 188s improvements made in alternate versions of the program, if they 188s receive widespread use, become available for other developers to 188s incorporate. Many developers of free software are heartened and 188s encouraged by the resulting cooperation. However, in the case of 188s software used on network servers, this result may fail to come about. 188s The GNU General Public License permits making a modified version and 188s letting the public access it on a server without ever releasing its 188s source code to the public. 188s . 188s The GNU Affero General Public License is designed specifically to 188s ensure that, in such cases, the modified source code becomes available 188s to the community. It requires the operator of a network server to 188s provide the source code of the modified version running there to the 188s users of that server. Therefore, public use of a modified version, on 188s a publicly accessible server, gives the public access to the source 188s code of the modified version. 188s . 188s An older license, called the Affero General Public License and 188s published by Affero, was designed to accomplish similar goals. This is 188s a different license, not a version of the Affero GPL, but Affero has 188s released a new version of the Affero GPL which permits relicensing 188s under 188s this license. 188s . 188s The precise terms and conditions for copying, distribution and 188s modification follow. 188s . 188s TERMS AND CONDITIONS 188s . 188s 0. Definitions. 188s . 188s "This License" refers to version 3 of the GNU Affero General Public 188s License. 188s . 188s "Copyright" also means copyright-like laws that apply to other kinds of 188s works, such as semiconductor masks. 188s . 188s "The Program" refers to any copyrightable work licensed under this 188s License. Each licensee is addressed as "you". "Licensees" and 188s "recipients" may be individuals or organizations. 188s . 188s To "modify" a work means to copy from or adapt all or part of the work 188s in a fashion requiring copyright permission, other than the making of 188s an 188s exact copy. The resulting work is called a "modified version" of the 188s earlier work or a work "based on" the earlier work. 188s . 188s A "covered work" means either the unmodified Program or a work based 188s on the Program. 188s . 188s To "propagate" a work means to do anything with it that, without 188s permission, would make you directly or secondarily liable for 188s infringement under applicable copyright law, except executing it on a 188s computer or modifying a private copy. Propagation includes copying, 188s distribution (with or without modification), making available to the 188s public, and in some countries other activities as well. 188s . 188s To "convey" a work means any kind of propagation that enables other 188s parties to make or receive copies. Mere interaction with a user 188s through 188s a computer network, with no transfer of a copy, is not conveying. 188s . 188s An interactive user interface displays "Appropriate Legal Notices" 188s to the extent that it includes a convenient and prominently visible 188s feature that (1) displays an appropriate copyright notice, and (2) 188s tells the user that there is no warranty for the work (except to the 188s extent that warranties are provided), that licensees may convey the 188s work under this License, and how to view a copy of this License. If 188s the interface presents a list of user commands or options, such as a 188s menu, a prominent item in the list meets this criterion. 188s . 188s 1. Source Code. 188s . 188s The "source code" for a work means the preferred form of the work 188s for making modifications to it. "Object code" means any non-source 188s form of a work. 188s . 188s A "Standard Interface" means an interface that either is an official 188s standard defined by a recognized standards body, or, in the case of 188s interfaces specified for a particular programming language, one that 188s is widely used among developers working in that language. 188s . 188s The "System Libraries" of an executable work include anything, other 188s than the work as a whole, that (a) is included in the normal form of 188s packaging a Major Component, but which is not part of that Major 188s Component, and (b) serves only to enable use of the work with that 188s Major Component, or to implement a Standard Interface for which an 188s implementation is available to the public in source code form. A 188s "Major Component", in this context, means a major essential component 188s (kernel, window system, and so on) of the specific operating system 188s (if any) on which the executable work runs, or a compiler used to 188s produce the work, or an object code interpreter used to run it. 188s . 188s The "Corresponding Source" for a work in object code form means all 188s the source code needed to generate, install, and (for an executable 188s work) run the object code and to modify the work, including scripts to 188s control those activities. However, it does not include the work's 188s System Libraries, or general-purpose tools or generally available free 188s programs which are used unmodified in performing those activities but 188s which are not part of the work. For example, Corresponding Source 188s includes interface definition files associated with source files for 188s the work, and the source code for shared libraries and dynamically 188s linked subprograms that the work is specifically designed to require, 188s such as by intimate data communication or control flow between those 188s subprograms and other parts of the work. 188s . 188s The Corresponding Source need not include anything that users 188s can regenerate automatically from other parts of the Corresponding 188s Source. 188s . 188s The Corresponding Source for a work in source code form is that 188s same work. 188s . 188s 2. Basic Permissions. 188s . 188s All rights granted under this License are granted for the term of 188s copyright on the Program, and are irrevocable provided the stated 188s conditions are met. This License explicitly affirms your unlimited 188s permission to run the unmodified Program. The output from running a 188s covered work is covered by this License only if the output, given its 188s content, constitutes a covered work. This License acknowledges your 188s rights of fair use or other equivalent, as provided by copyright law. 188s . 188s You may make, run and propagate covered works that you do not 188s convey, without conditions so long as your license otherwise remains 188s in force. You may convey covered works to others for the sole purpose 188s of having them make modifications exclusively for you, or provide you 188s with facilities for running those works, provided that you comply with 188s the terms of this License in conveying all material for which you do 188s not control copyright. Those thus making or running the covered works 188s for you must do so exclusively on your behalf, under your direction 188s and control, on terms that prohibit them from making any copies of 188s your copyrighted material outside their relationship with you. 188s . 188s Conveying under any other circumstances is permitted solely under 188s the conditions stated below. Sublicensing is not allowed; section 10 188s makes it unnecessary. 188s . 188s 3. Protecting Users' Legal Rights From Anti-Circumvention Law. 188s . 188s No covered work shall be deemed part of an effective technological 188s measure under any applicable law fulfilling obligations under article 188s 11 of the WIPO copyright treaty adopted on 20 December 1996, or 188s similar laws prohibiting or restricting circumvention of such 188s measures. 188s . 188s When you convey a covered work, you waive any legal power to forbid 188s circumvention of technological measures to the extent such 188s circumvention 188s is effected by exercising rights under this License with respect to 188s the covered work, and you disclaim any intention to limit operation or 188s modification of the work as a means of enforcing, against the work's 188s users, your or third parties' legal rights to forbid circumvention of 188s technological measures. 188s . 188s 4. Conveying Verbatim Copies. 188s . 188s You may convey verbatim copies of the Program's source code as you 188s receive it, in any medium, provided that you conspicuously and 188s appropriately publish on each copy an appropriate copyright notice; 188s keep intact all notices stating that this License and any 188s non-permissive terms added in accord with section 7 apply to the code; 188s keep intact all notices of the absence of any warranty; and give all 188s recipients a copy of this License along with the Program. 188s . 188s You may charge any price or no price for each copy that you convey, 188s and you may offer support or warranty protection for a fee. 188s . 188s 5. Conveying Modified Source Versions. 188s . 188s You may convey a work based on the Program, or the modifications to 188s produce it from the Program, in the form of source code under the 188s terms of section 4, provided that you also meet all of these 188s conditions: 188s . 188s a) The work must carry prominent notices stating that you modified 188s it, and giving a relevant date. 188s . 188s b) The work must carry prominent notices stating that it is 188s released under this License and any conditions added under section 188s 7. This requirement modifies the requirement in section 4 to 188s "keep intact all notices". 188s . 188s c) You must license the entire work, as a whole, under this 188s License to anyone who comes into possession of a copy. This 188s License will therefore apply, along with any applicable section 7 188s additional terms, to the whole of the work, and all its parts, 188s regardless of how they are packaged. This License gives no 188s permission to license the work in any other way, but it does not 188s invalidate such permission if you have separately received it. 188s . 188s d) If the work has interactive user interfaces, each must display 188s Appropriate Legal Notices; however, if the Program has interactive 188s interfaces that do not display Appropriate Legal Notices, your 188s work need not make them do so. 188s . 188s A compilation of a covered work with other separate and independent 188s works, which are not by their nature extensions of the covered work, 188s and which are not combined with it such as to form a larger program, 188s in or on a volume of a storage or distribution medium, is called an 188s "aggregate" if the compilation and its resulting copyright are not 188s used to limit the access or legal rights of the compilation's users 188s beyond what the individual works permit. Inclusion of a covered work 188s in an aggregate does not cause this License to apply to the other 188s parts of the aggregate. 188s . 188s 6. Conveying Non-Source Forms. 188s . 188s You may convey a covered work in object code form under the terms 188s of sections 4 and 5, provided that you also convey the 188s machine-readable Corresponding Source under the terms of this License, 188s in one of these ways: 188s . 188s a) Convey the object code in, or embodied in, a physical product 188s (including a physical distribution medium), accompanied by the 188s Corresponding Source fixed on a durable physical medium 188s customarily used for software interchange. 188s . 188s b) Convey the object code in, or embodied in, a physical product 188s (including a physical distribution medium), accompanied by a 188s written offer, valid for at least three years and valid for as 188s long as you offer spare parts or customer support for that product 188s model, to give anyone who possesses the object code either (1) a 188s copy of the Corresponding Source for all the software in the 188s product that is covered by this License, on a durable physical 188s medium customarily used for software interchange, for a price no 188s more than your reasonable cost of physically performing this 188s conveying of source, or (2) access to copy the 188s Corresponding Source from a network server at no charge. 188s . 188s c) Convey individual copies of the object code with a copy of the 188s written offer to provide the Corresponding Source. This 188s alternative is allowed only occasionally and noncommercially, and 188s only if you received the object code with such an offer, in accord 188s with subsection 6b. 188s . 188s d) Convey the object code by offering access from a designated 188s place (gratis or for a charge), and offer equivalent access to the 188s Corresponding Source in the same way through the same place at no 188s further charge. You need not require recipients to copy the 188s Corresponding Source along with the object code. If the place to 188s copy the object code is a network server, the Corresponding Source 188s may be on a different server (operated by you or a third party) 188s that supports equivalent copying facilities, provided you maintain 188s clear directions next to the object code saying where to find the 188s Corresponding Source. Regardless of what server hosts the 188s Corresponding Source, you remain obligated to ensure that it is 188s available for as long as needed to satisfy these requirements. 188s . 188s e) Convey the object code using peer-to-peer transmission, provided 188s you inform other peers where the object code and Corresponding 188s Source of the work are being offered to the general public at no 188s charge under subsection 6d. 188s . 188s A separable portion of the object code, whose source code is excluded 188s from the Corresponding Source as a System Library, need not be 188s included in conveying the object code work. 188s . 188s A "User Product" is either (1) a "consumer product", which means any 188s tangible personal property which is normally used for personal, family, 188s or household purposes, or (2) anything designed or sold for 188s incorporation 188s into a dwelling. In determining whether a product is a consumer 188s product, 188s doubtful cases shall be resolved in favor of coverage. For a 188s particular 188s product received by a particular user, "normally used" refers to a 188s typical or common use of that class of product, regardless of the 188s status 188s of the particular user or of the way in which the particular user 188s actually uses, or expects or is expected to use, the product. A 188s product 188s is a consumer product regardless of whether the product has substantial 188s commercial, industrial or non-consumer uses, unless such uses represent 188s the only significant mode of use of the product. 188s . 188s "Installation Information" for a User Product means any methods, 188s procedures, authorization keys, or other information required to 188s install 188s and execute modified versions of a covered work in that User Product 188s from 188s a modified version of its Corresponding Source. The information must 188s suffice to ensure that the continued functioning of the modified object 188s code is in no case prevented or interfered with solely because 188s modification has been made. 188s . 188s If you convey an object code work under this section in, or with, or 188s specifically for use in, a User Product, and the conveying occurs as 188s part of a transaction in which the right of possession and use of the 188s User Product is transferred to the recipient in perpetuity or for a 188s fixed term (regardless of how the transaction is characterized), the 188s Corresponding Source conveyed under this section must be accompanied 188s by the Installation Information. But this requirement does not apply 188s if neither you nor any third party retains the ability to install 188s modified object code on the User Product (for example, the work has 188s been installed in ROM). 188s . 188s The requirement to provide Installation Information does not include a 188s requirement to continue to provide support service, warranty, or 188s updates 188s for a work that has been modified or installed by the recipient, or for 188s the User Product in which it has been modified or installed. Access to 188s a 188s network may be denied when the modification itself materially and 188s adversely affects the operation of the network or violates the rules 188s and 188s protocols for communication across the network. 188s . 188s Corresponding Source conveyed, and Installation Information provided, 188s in accord with this section must be in a format that is publicly 188s documented (and with an implementation available to the public in 188s source code form), and must require no special password or key for 188s unpacking, reading or copying. 188s . 188s 7. Additional Terms. 188s . 188s "Additional permissions" are terms that supplement the terms of this 188s License by making exceptions from one or more of its conditions. 188s Additional permissions that are applicable to the entire Program shall 188s be treated as though they were included in this License, to the extent 188s that they are valid under applicable law. If additional permissions 188s apply only to part of the Program, that part may be used separately 188s under those permissions, but the entire Program remains governed by 188s this License without regard to the additional permissions. 188s . 188s When you convey a copy of a covered work, you may at your option 188s remove any additional permissions from that copy, or from any part of 188s it. (Additional permissions may be written to require their own 188s removal in certain cases when you modify the work.) You may place 188s additional permissions on material, added by you to a covered work, 188s for which you have or can give appropriate copyright permission. 188s . 188s Notwithstanding any other provision of this License, for material you 188s add to a covered work, you may (if authorized by the copyright holders 188s of 188s that material) supplement the terms of this License with terms: 188s . 188s a) Disclaiming warranty or limiting liability differently from the 188s terms of sections 15 and 16 of this License; or 188s . 188s b) Requiring preservation of specified reasonable legal notices or 188s author attributions in that material or in the Appropriate Legal 188s Notices displayed by works containing it; or 188s . 188s c) Prohibiting misrepresentation of the origin of that material, or 188s requiring that modified versions of such material be marked in 188s reasonable ways as different from the original version; or 188s . 188s d) Limiting the use for publicity purposes of names of licensors or 188s authors of the material; or 188s . 188s e) Declining to grant rights under trademark law for use of some 188s trade names, trademarks, or service marks; or 188s . 188s f) Requiring indemnification of licensors and authors of that 188s material by anyone who conveys the material (or modified versions 188s of 188s it) with contractual assumptions of liability to the recipient, for 188s any liability that these contractual assumptions directly impose on 188s those licensors and authors. 188s . 188s All other non-permissive additional terms are considered "further 188s restrictions" within the meaning of section 10. If the Program as you 188s received it, or any part of it, contains a notice stating that it is 188s governed by this License along with a term that is a further 188s restriction, you may remove that term. If a license document contains 188s a further restriction but permits relicensing or conveying under this 188s License, you may add to a covered work material governed by the terms 188s of that license document, provided that the further restriction does 188s not survive such relicensing or conveying. 188s . 188s If you add terms to a covered work in accord with this section, you 188s must place, in the relevant source files, a statement of the 188s additional terms that apply to those files, or a notice indicating 188s where to find the applicable terms. 188s . 188s Additional terms, permissive or non-permissive, may be stated in the 188s form of a separately written license, or stated as exceptions; 188s the above requirements apply either way. 188s . 188s 8. Termination. 188s . 188s You may not propagate or modify a covered work except as expressly 188s provided under this License. Any attempt otherwise to propagate or 188s modify it is void, and will automatically terminate your rights under 188s this License (including any patent licenses granted under the third 188s paragraph of section 11). 188s . 188s However, if you cease all violation of this License, then your 188s license from a particular copyright holder is reinstated (a) 188s provisionally, unless and until the copyright holder explicitly and 188s finally terminates your license, and (b) permanently, if the copyright 188s holder fails to notify you of the violation by some reasonable means 188s prior to 60 days after the cessation. 188s . 188s Moreover, your license from a particular copyright holder is 188s reinstated permanently if the copyright holder notifies you of the 188s violation by some reasonable means, this is the first time you have 188s received notice of violation of this License (for any work) from that 188s copyright holder, and you cure the violation prior to 30 days after 188s your receipt of the notice. 188s . 188s Termination of your rights under this section does not terminate the 188s licenses of parties who have received copies or rights from you under 188s this License. If your rights have been terminated and not permanently 188s reinstated, you do not qualify to receive new licenses for the same 188s material under section 10. 188s . 188s 9. Acceptance Not Required for Having Copies. 188s . 188s You are not required to accept this License in order to receive or 188s run a copy of the Program. Ancillary propagation of a covered work 188s occurring solely as a consequence of using peer-to-peer transmission 188s to receive a copy likewise does not require acceptance. However, 188s nothing other than this License grants you permission to propagate or 188s modify any covered work. These actions infringe copyright if you do 188s not accept this License. Therefore, by modifying or propagating a 188s covered work, you indicate your acceptance of this License to do so. 188s . 188s 10. Automatic Licensing of Downstream Recipients. 188s . 188s Each time you convey a covered work, the recipient automatically 188s receives a license from the original licensors, to run, modify and 188s propagate that work, subject to this License. You are not responsible 188s for enforcing compliance by third parties with this License. 188s . 188s An "entity transaction" is a transaction transferring control of an 188s organization, or substantially all assets of one, or subdividing an 188s organization, or merging organizations. If propagation of a covered 188s work results from an entity transaction, each party to that 188s transaction who receives a copy of the work also receives whatever 188s licenses to the work the party's predecessor in interest had or could 188s give under the previous paragraph, plus a right to possession of the 188s Corresponding Source of the work from the predecessor in interest, if 188s the predecessor has it or can get it with reasonable efforts. 188s . 188s You may not impose any further restrictions on the exercise of the 188s rights granted or affirmed under this License. For example, you may 188s not impose a license fee, royalty, or other charge for exercise of 188s rights granted under this License, and you may not initiate litigation 188s (including a cross-claim or counterclaim in a lawsuit) alleging that 188s any patent claim is infringed by making, using, selling, offering for 188s sale, or importing the Program or any portion of it. 188s . 188s 11. Patents. 188s . 188s A "contributor" is a copyright holder who authorizes use under this 188s License of the Program or a work on which the Program is based. The 188s work thus licensed is called the contributor's "contributor version". 188s . 188s A contributor's "essential patent claims" are all patent claims 188s owned or controlled by the contributor, whether already acquired or 188s hereafter acquired, that would be infringed by some manner, permitted 188s by this License, of making, using, or selling its contributor version, 188s but do not include claims that would be infringed only as a 188s consequence of further modification of the contributor version. For 188s purposes of this definition, "control" includes the right to grant 188s patent sublicenses in a manner consistent with the requirements of 188s this License. 188s . 188s Each contributor grants you a non-exclusive, worldwide, royalty-free 188s patent license under the contributor's essential patent claims, to 188s make, use, sell, offer for sale, import and otherwise run, modify and 188s propagate the contents of its contributor version. 188s . 188s In the following three paragraphs, a "patent license" is any express 188s agreement or commitment, however denominated, not to enforce a patent 188s (such as an express permission to practice a patent or covenant not to 188s sue for patent infringement). To "grant" such a patent license to a 188s party means to make such an agreement or commitment not to enforce a 188s patent against the party. 188s . 188s If you convey a covered work, knowingly relying on a patent license, 188s and the Corresponding Source of the work is not available for anyone 188s to copy, free of charge and under the terms of this License, through a 188s publicly available network server or other readily accessible means, 188s then you must either (1) cause the Corresponding Source to be so 188s available, or (2) arrange to deprive yourself of the benefit of the 188s patent license for this particular work, or (3) arrange, in a manner 188s consistent with the requirements of this License, to extend the patent 188s license to downstream recipients. "Knowingly relying" means you have 188s actual knowledge that, but for the patent license, your conveying the 188s covered work in a country, or your recipient's use of the covered work 188s in a country, would infringe one or more identifiable patents in that 188s country that you have reason to believe are valid. 188s . 188s If, pursuant to or in connection with a single transaction or 188s arrangement, you convey, or propagate by procuring conveyance of, a 188s covered work, and grant a patent license to some of the parties 188s receiving the covered work authorizing them to use, propagate, modify 188s or convey a specific copy of the covered work, then the patent license 188s you grant is automatically extended to all recipients of the covered 188s work and works based on it. 188s . 188s A patent license is "discriminatory" if it does not include within 188s the scope of its coverage, prohibits the exercise of, or is 188s conditioned on the non-exercise of one or more of the rights that are 188s specifically granted under this License. You may not convey a covered 188s work if you are a party to an arrangement with a third party that is 188s in the business of distributing software, under which you make payment 188s to the third party based on the extent of your activity of conveying 188s the work, and under which the third party grants, to any of the 188s parties who would receive the covered work from you, a discriminatory 188s patent license (a) in connection with copies of the covered work 188s conveyed by you (or copies made from those copies), or (b) primarily 188s for and in connection with specific products or compilations that 188s contain the covered work, unless you entered into that arrangement, 188s or that patent license was granted, prior to 28 March 2007. 188s . 188s Nothing in this License shall be construed as excluding or limiting 188s any implied license or other defenses to infringement that may 188s otherwise be available to you under applicable patent law. 188s . 188s 12. No Surrender of Others' Freedom. 188s . 188s If conditions are imposed on you (whether by court order, agreement or 188s otherwise) that contradict the conditions of this License, they do not 188s excuse you from the conditions of this License. If you cannot convey a 188s covered work so as to satisfy simultaneously your obligations under 188s this 188s License and any other pertinent obligations, then as a consequence you 188s may 188s not convey it at all. For example, if you agree to terms that obligate 188s you 188s to collect a royalty for further conveying from those to whom you 188s convey 188s the Program, the only way you could satisfy both those terms and this 188s License would be to refrain entirely from conveying the Program. 188s . 188s 13. Remote Network Interaction; Use with the GNU General Public 188s License. 188s . 188s Notwithstanding any other provision of this License, if you modify the 188s Program, your modified version must prominently offer all users 188s interacting with it remotely through a computer network (if your 188s version 188s supports such interaction) an opportunity to receive the Corresponding 188s Source of your version by providing access to the Corresponding Source 188s from a network server at no charge, through some standard or customary 188s means of facilitating copying of software. This Corresponding Source 188s shall include the Corresponding Source for any work covered by version 188s 3 188s of the GNU General Public License that is incorporated pursuant to the 188s following paragraph. 188s . 188s Notwithstanding any other provision of this License, you have 188s permission to link or combine any covered work with a work licensed 188s under version 3 of the GNU General Public License into a single 188s combined work, and to convey the resulting work. The terms of this 188s License will continue to apply to the part which is the covered work, 188s but the work with which it is combined will remain governed by version 188s 3 of the GNU General Public License. 188s . 188s 14. Revised Versions of this License. 188s . 188s The Free Software Foundation may publish revised and/or new versions of 188s the GNU Affero General Public License from time to time. Such new 188s versions 188s will be similar in spirit to the present version, but may differ in 188s detail to 188s address new problems or concerns. 188s . 188s Each version is given a distinguishing version number. If the 188s Program specifies that a certain numbered version of the GNU Affero 188s General 188s Public License "or any later version" applies to it, you have the 188s option of following the terms and conditions either of that numbered 188s version or of any later version published by the Free Software 188s Foundation. If the Program does not specify a version number of the 188s GNU Affero General Public License, you may choose any version ever 188s published 188s by the Free Software Foundation. 188s . 188s If the Program specifies that a proxy can decide which future 188s versions of the GNU Affero General Public License can be used, that 188s proxy's 188s public statement of acceptance of a version permanently authorizes you 188s to choose that version for the Program. 188s . 188s Later license versions may give you additional or different 188s permissions. However, no additional obligations are imposed on any 188s author or copyright holder as a result of your choosing to follow a 188s later version. 188s . 188s 15. Disclaimer of Warranty. 188s . 188s THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY 188s APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT 188s HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT 188s WARRANTY 188s OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED 188s TO, 188s THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 188s PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE 188s PROGRAM 188s IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST 188s OF 188s ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 188s . 188s 16. Limitation of Liability. 188s . 188s IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 188s WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR 188s CONVEYS 188s THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING 188s ANY 188s GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF 188s THE 188s USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS 188s OF 188s DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR 188s THIRD 188s PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 188s PROGRAMS), 188s EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY 188s OF 188s SUCH DAMAGES. 188s . 188s 17. Interpretation of Sections 15 and 16. 188s . 188s If the disclaimer of warranty and limitation of liability provided 188s above cannot be given local legal effect according to their terms, 188s reviewing courts shall apply local law that most closely approximates 188s an absolute waiver of all civil liability in connection with the 188s Program, unless a warranty or assumption of liability accompanies a 188s copy of the Program in return for a fee. 188s . 188s END OF TERMS AND CONDITIONS 188s . 188s How to Apply These Terms to Your New Programs 188s . 188s If you develop a new program, and you want it to be of the greatest 188s possible use to the public, the best way to achieve this is to make it 188s free software which everyone can redistribute and change under these 188s terms. 188s . 188s To do so, attach the following notices to the program. It is safest 188s to attach them to the start of each source file to most effectively 188s state the exclusion of warranty; and each file should have at least 188s the "copyright" line and a pointer to where the full notice is found. 188s . 188s 188s Copyright (C) 188s . 188s This program is free software: you can redistribute it and/or 188s modify 188s it under the terms of the GNU Affero General Public License as 188s published by 188s the Free Software Foundation, either version 3 of the License, or 188s (at your option) any later version. 188s . 188s This program is distributed in the hope that it will be useful, 188s but WITHOUT ANY WARRANTY; without even the implied warranty of 188s MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 188s GNU Affero General Public License for more details. 188s . 188s You should have received a copy of the GNU Affero General Public 188s License 188s along with this program. If not, see 188s . 188s . 188s Also add information on how to contact you by electronic and paper 188s mail. 188s . 188s If your software can interact with users remotely through a computer 188s network, you should also make sure that it provides a way for users to 188s get its source. For example, if your program is a web application, its 188s interface could display a "Source" link that leads users to an archive 188s of the code. There are many ways you could offer source, and different 188s solutions will be better for different programs; see section 13 for the 188s specific requirements. 188s . 188s You should also get your employer (if you work as a programmer) or 188s school, 188s if any, to sign a "copyright disclaimer" for the program, if necessary. 188s For more information on this, and how to apply and follow the GNU AGPL, 188s see 188s . 188s # 5.2 Main functionality 188s opnk index.gmi 189s index.gmi (7 items) (local file) 189s OFFPUNK - An Offline-First Browser for the Smolnet 189s 189s Offpunk is a command-line browser and feed reader dedicated to browsing 189s the Web, Gemini, Gopher and Spartan. Thanks to its permanent cache, it 189s is optimised to be used offline with rare connections but works as well 189s when connected. 189s 189s Offpunk is optimised for reading and supports readability mode, 189s displaying pictures, subscribing to pages or RSS feeds, managing complex 189s lists of bookmarks. Its integrated help and easy commands make it a 189s perfect tool for command-line novices while power-users will be amazed 189s by its shell integration. 189s 189s Offpunk is written in Python 3 by Ploum. It aims to be portable and 189s minimise dependencies, making them optional. It supports 189s http/https/gopher/gemini/spartan on both IPv4 and IPv6. 189s 189s 189s [1] Installing Offpunk and dependencies 189s [2] First steps 189s [3] Configuring Offpunk 189s [4] Using Offpunk offline 189s [5] Lists and subscriptions 189s [6] Shell and OS integrations 189s [7] Roadmap & Contributions 189s 189s  189s autopkgtest [05:55:27]: test run-commands: -----------------------] 190s run-commands PASS 190s autopkgtest [05:55:28]: test run-commands: - - - - - - - - - - results - - - - - - - - - - 190s autopkgtest [05:55:28]: test pybuild-autopkgtest: preparing testbed 212s Creating nova instance adt-resolute-s390x-offpunk-20251028-055217-juju-7f2275-prod-proposed-migration-environment-2-14e964c4-7262-4e5b-9053-a2a3880ee370 from image adt/ubuntu-resolute-s390x-server-20251028.img (UUID 222a8a17-8cdf-422e-baeb-91db113eb3ff)... 247s autopkgtest [05:56:25]: testbed dpkg architecture: s390x 247s autopkgtest [05:56:25]: testbed apt version: 3.1.8ubuntu1 247s autopkgtest [05:56:25]: @@@@@@@@@@@@@@@@@@@@ test bed setup 247s autopkgtest [05:56:25]: testbed release detected to be: resolute 248s autopkgtest [05:56:26]: updating testbed package index (apt update) 248s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [87.8 kB] 248s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 249s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 249s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 249s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [61.7 kB] 249s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [216 kB] 249s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [3342 kB] 251s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5856 B] 251s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main s390x Packages [231 kB] 251s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/restricted s390x Packages [940 B] 251s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/universe s390x Packages [692 kB] 251s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse s390x Packages [5116 B] 251s Fetched 4642 kB in 3s (1413 kB/s) 252s Reading package lists... 253s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 253s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 253s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 253s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 254s Reading package lists... 254s Reading package lists... 254s Building dependency tree... 254s Reading state information... 254s Calculating upgrade... 254s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 254s autopkgtest [05:56:32]: upgrading testbed (apt dist-upgrade and autopurge) 255s Reading package lists... 255s Building dependency tree... 255s Reading state information... 255s Calculating upgrade... 255s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 255s Reading package lists... 255s Building dependency tree... 255s Reading state information... 255s Solving dependencies... 255s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 259s Reading package lists... 259s Building dependency tree... 259s Reading state information... 259s Solving dependencies... 259s The following NEW packages will be installed: 259s autoconf automake autopoint autotools-dev build-essential cpp cpp-15 259s cpp-15-s390x-linux-gnu cpp-s390x-linux-gnu debhelper debugedit dh-autoreconf 259s dh-python dh-strip-nondeterminism dwz g++ g++-15 g++-15-s390x-linux-gnu 259s g++-s390x-linux-gnu gcc gcc-15 gcc-15-s390x-linux-gnu gcc-s390x-linux-gnu 259s gettext intltool-debian libarchive-zip-perl libasan8 libcc1-0 259s libdebhelper-perl libfile-stripnondeterminism-perl libgcc-15-dev libgomp1 259s libisl23 libitm1 libmpc3 libstdc++-15-dev libtool libubsan1 m4 offpunk 259s po-debconf pybuild-plugin-autopkgtest pybuild-plugin-pyproject python3-all 259s python3-build python3-hatchling python3-iniconfig python3-installer 259s python3-packaging python3-pathspec python3-pluggy python3-pyproject-hooks 259s python3-pytest python3-pytest-mock python3-trove-classifiers python3-wheel 259s 0 upgraded, 56 newly installed, 0 to remove and 0 not upgraded. 259s Need to get 56.6 MB of archives. 259s After this operation, 180 MB of additional disk space will be used. 259s Get:1 http://ftpmaster.internal/ubuntu resolute/main s390x m4 s390x 1.4.19-8 [259 kB] 260s Get:2 http://ftpmaster.internal/ubuntu resolute/main s390x autoconf all 2.72-3.1ubuntu1 [384 kB] 260s Get:3 http://ftpmaster.internal/ubuntu resolute/main s390x autotools-dev all 20240727.1 [43.4 kB] 260s Get:4 http://ftpmaster.internal/ubuntu resolute/main s390x automake all 1:1.17-4ubuntu1 [572 kB] 260s Get:5 http://ftpmaster.internal/ubuntu resolute/main s390x autopoint all 0.23.1-2build2 [619 kB] 261s Get:6 http://ftpmaster.internal/ubuntu resolute/main s390x libisl23 s390x 0.27-1 [704 kB] 261s Get:7 http://ftpmaster.internal/ubuntu resolute/main s390x libmpc3 s390x 1.3.1-1build3 [57.6 kB] 261s Get:8 http://ftpmaster.internal/ubuntu resolute/main s390x cpp-15-s390x-linux-gnu s390x 15.2.0-5ubuntu1 [10.2 MB] 264s Get:9 http://ftpmaster.internal/ubuntu resolute/main s390x cpp-15 s390x 15.2.0-5ubuntu1 [1024 B] 264s Get:10 http://ftpmaster.internal/ubuntu resolute/main s390x cpp-s390x-linux-gnu s390x 4:15.2.0-4ubuntu1 [5746 B] 264s Get:11 http://ftpmaster.internal/ubuntu resolute/main s390x cpp s390x 4:15.2.0-4ubuntu1 [22.4 kB] 264s Get:12 http://ftpmaster.internal/ubuntu resolute/main s390x libcc1-0 s390x 15.2.0-5ubuntu1 [50.0 kB] 264s Get:13 http://ftpmaster.internal/ubuntu resolute/main s390x libgomp1 s390x 15.2.0-5ubuntu1 [154 kB] 264s Get:14 http://ftpmaster.internal/ubuntu resolute/main s390x libitm1 s390x 15.2.0-5ubuntu1 [30.9 kB] 264s Get:15 http://ftpmaster.internal/ubuntu resolute/main s390x libasan8 s390x 15.2.0-5ubuntu1 [2969 kB] 265s Get:16 http://ftpmaster.internal/ubuntu resolute/main s390x libubsan1 s390x 15.2.0-5ubuntu1 [1211 kB] 266s Get:17 http://ftpmaster.internal/ubuntu resolute/main s390x libgcc-15-dev s390x 15.2.0-5ubuntu1 [1045 kB] 266s Get:18 http://ftpmaster.internal/ubuntu resolute/main s390x gcc-15-s390x-linux-gnu s390x 15.2.0-5ubuntu1 [19.9 MB] 271s Get:19 http://ftpmaster.internal/ubuntu resolute/main s390x gcc-15 s390x 15.2.0-5ubuntu1 [512 kB] 272s Get:20 http://ftpmaster.internal/ubuntu resolute/main s390x gcc-s390x-linux-gnu s390x 4:15.2.0-4ubuntu1 [1208 B] 272s Get:21 http://ftpmaster.internal/ubuntu resolute/main s390x gcc s390x 4:15.2.0-4ubuntu1 [5018 B] 272s Get:22 http://ftpmaster.internal/ubuntu resolute/main s390x libstdc++-15-dev s390x 15.2.0-5ubuntu1 [2658 kB] 272s Get:23 http://ftpmaster.internal/ubuntu resolute/main s390x g++-15-s390x-linux-gnu s390x 15.2.0-5ubuntu1 [11.7 MB] 276s Get:24 http://ftpmaster.internal/ubuntu resolute/main s390x g++-15 s390x 15.2.0-5ubuntu1 [23.7 kB] 276s Get:25 http://ftpmaster.internal/ubuntu resolute/main s390x g++-s390x-linux-gnu s390x 4:15.2.0-4ubuntu1 [956 B] 276s Get:26 http://ftpmaster.internal/ubuntu resolute/main s390x g++ s390x 4:15.2.0-4ubuntu1 [1078 B] 276s Get:27 http://ftpmaster.internal/ubuntu resolute/main s390x build-essential s390x 12.12ubuntu1 [5090 B] 276s Get:28 http://ftpmaster.internal/ubuntu resolute/main s390x libdebhelper-perl all 13.24.2ubuntu1 [95.7 kB] 276s Get:29 http://ftpmaster.internal/ubuntu resolute/main s390x libtool all 2.5.4-4build1 [169 kB] 276s Get:30 http://ftpmaster.internal/ubuntu resolute/main s390x dh-autoreconf all 21 [12.5 kB] 276s Get:31 http://ftpmaster.internal/ubuntu resolute/main s390x libarchive-zip-perl all 1.68-1 [90.2 kB] 276s Get:32 http://ftpmaster.internal/ubuntu resolute/main s390x libfile-stripnondeterminism-perl all 1.14.2-1 [20.4 kB] 276s Get:33 http://ftpmaster.internal/ubuntu resolute/main s390x dh-strip-nondeterminism all 1.14.2-1 [5098 B] 276s Get:34 http://ftpmaster.internal/ubuntu resolute/main s390x debugedit s390x 1:5.2-3 [52.8 kB] 276s Get:35 http://ftpmaster.internal/ubuntu resolute/main s390x dwz s390x 0.16-2 [121 kB] 277s Get:36 http://ftpmaster.internal/ubuntu resolute/main s390x gettext s390x 0.23.1-2build2 [1062 kB] 277s Get:37 http://ftpmaster.internal/ubuntu resolute/main s390x intltool-debian all 0.35.0+20060710.6 [23.2 kB] 277s Get:38 http://ftpmaster.internal/ubuntu resolute/main s390x po-debconf all 1.0.21+nmu1 [233 kB] 277s Get:39 http://ftpmaster.internal/ubuntu resolute/main s390x debhelper all 13.24.2ubuntu1 [896 kB] 277s Get:40 http://ftpmaster.internal/ubuntu resolute/universe s390x dh-python all 6.20250414 [119 kB] 277s Get:41 http://ftpmaster.internal/ubuntu resolute/universe s390x offpunk all 2.7.1-1 [74.0 kB] 277s Get:42 http://ftpmaster.internal/ubuntu resolute/universe s390x pybuild-plugin-autopkgtest all 6.20250414 [1746 B] 277s Get:43 http://ftpmaster.internal/ubuntu resolute/main s390x python3-packaging all 25.0-1 [52.8 kB] 277s Get:44 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-pyproject-hooks all 1.2.0-1 [10.2 kB] 277s Get:45 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-wheel all 0.46.1-2 [22.1 kB] 277s Get:46 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-build all 1.2.2-4 [31.0 kB] 277s Get:47 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-installer all 0.7.0+dfsg1-3 [17.4 kB] 277s Get:48 http://ftpmaster.internal/ubuntu resolute/universe s390x pybuild-plugin-pyproject all 6.20250414 [1728 B] 277s Get:49 http://ftpmaster.internal/ubuntu resolute/main s390x python3-all s390x 3.13.7-1 [886 B] 277s Get:50 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-pathspec all 0.12.1-1 [24.5 kB] 277s Get:51 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-pluggy all 1.6.0-1 [21.0 kB] 277s Get:52 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-trove-classifiers all 2025.4.28.22-1 [11.0 kB] 277s Get:53 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-hatchling all 1.27.0-1 [47.1 kB] 277s Get:54 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-iniconfig all 1.1.1-2 [6024 B] 277s Get:55 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-pytest all 8.3.5-2 [252 kB] 277s Get:56 http://ftpmaster.internal/ubuntu resolute/universe s390x python3-pytest-mock all 3.14.0-3 [11.8 kB] 278s Fetched 56.6 MB in 18s (3109 kB/s) 278s Selecting previously unselected package m4. 278s (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 ... 56948 files and directories currently installed.) 278s Preparing to unpack .../00-m4_1.4.19-8_s390x.deb ... 278s Unpacking m4 (1.4.19-8) ... 278s Selecting previously unselected package autoconf. 278s Preparing to unpack .../01-autoconf_2.72-3.1ubuntu1_all.deb ... 278s Unpacking autoconf (2.72-3.1ubuntu1) ... 278s Selecting previously unselected package autotools-dev. 278s Preparing to unpack .../02-autotools-dev_20240727.1_all.deb ... 278s Unpacking autotools-dev (20240727.1) ... 278s Selecting previously unselected package automake. 278s Preparing to unpack .../03-automake_1%3a1.17-4ubuntu1_all.deb ... 278s Unpacking automake (1:1.17-4ubuntu1) ... 278s Selecting previously unselected package autopoint. 278s Preparing to unpack .../04-autopoint_0.23.1-2build2_all.deb ... 278s Unpacking autopoint (0.23.1-2build2) ... 278s Selecting previously unselected package libisl23:s390x. 278s Preparing to unpack .../05-libisl23_0.27-1_s390x.deb ... 278s Unpacking libisl23:s390x (0.27-1) ... 278s Selecting previously unselected package libmpc3:s390x. 278s Preparing to unpack .../06-libmpc3_1.3.1-1build3_s390x.deb ... 278s Unpacking libmpc3:s390x (1.3.1-1build3) ... 278s Selecting previously unselected package cpp-15-s390x-linux-gnu. 278s Preparing to unpack .../07-cpp-15-s390x-linux-gnu_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking cpp-15-s390x-linux-gnu (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package cpp-15. 278s Preparing to unpack .../08-cpp-15_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking cpp-15 (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package cpp-s390x-linux-gnu. 278s Preparing to unpack .../09-cpp-s390x-linux-gnu_4%3a15.2.0-4ubuntu1_s390x.deb ... 278s Unpacking cpp-s390x-linux-gnu (4:15.2.0-4ubuntu1) ... 278s Selecting previously unselected package cpp. 278s Preparing to unpack .../10-cpp_4%3a15.2.0-4ubuntu1_s390x.deb ... 278s Unpacking cpp (4:15.2.0-4ubuntu1) ... 278s Selecting previously unselected package libcc1-0:s390x. 278s Preparing to unpack .../11-libcc1-0_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking libcc1-0:s390x (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package libgomp1:s390x. 278s Preparing to unpack .../12-libgomp1_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking libgomp1:s390x (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package libitm1:s390x. 278s Preparing to unpack .../13-libitm1_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking libitm1:s390x (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package libasan8:s390x. 278s Preparing to unpack .../14-libasan8_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking libasan8:s390x (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package libubsan1:s390x. 278s Preparing to unpack .../15-libubsan1_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking libubsan1:s390x (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package libgcc-15-dev:s390x. 278s Preparing to unpack .../16-libgcc-15-dev_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking libgcc-15-dev:s390x (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package gcc-15-s390x-linux-gnu. 278s Preparing to unpack .../17-gcc-15-s390x-linux-gnu_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking gcc-15-s390x-linux-gnu (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package gcc-15. 278s Preparing to unpack .../18-gcc-15_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking gcc-15 (15.2.0-5ubuntu1) ... 278s Selecting previously unselected package gcc-s390x-linux-gnu. 278s Preparing to unpack .../19-gcc-s390x-linux-gnu_4%3a15.2.0-4ubuntu1_s390x.deb ... 278s Unpacking gcc-s390x-linux-gnu (4:15.2.0-4ubuntu1) ... 278s Selecting previously unselected package gcc. 278s Preparing to unpack .../20-gcc_4%3a15.2.0-4ubuntu1_s390x.deb ... 278s Unpacking gcc (4:15.2.0-4ubuntu1) ... 278s Selecting previously unselected package libstdc++-15-dev:s390x. 278s Preparing to unpack .../21-libstdc++-15-dev_15.2.0-5ubuntu1_s390x.deb ... 278s Unpacking libstdc++-15-dev:s390x (15.2.0-5ubuntu1) ... 279s Selecting previously unselected package g++-15-s390x-linux-gnu. 279s Preparing to unpack .../22-g++-15-s390x-linux-gnu_15.2.0-5ubuntu1_s390x.deb ... 279s Unpacking g++-15-s390x-linux-gnu (15.2.0-5ubuntu1) ... 279s Selecting previously unselected package g++-15. 279s Preparing to unpack .../23-g++-15_15.2.0-5ubuntu1_s390x.deb ... 279s Unpacking g++-15 (15.2.0-5ubuntu1) ... 279s Selecting previously unselected package g++-s390x-linux-gnu. 279s Preparing to unpack .../24-g++-s390x-linux-gnu_4%3a15.2.0-4ubuntu1_s390x.deb ... 279s Unpacking g++-s390x-linux-gnu (4:15.2.0-4ubuntu1) ... 279s Selecting previously unselected package g++. 279s Preparing to unpack .../25-g++_4%3a15.2.0-4ubuntu1_s390x.deb ... 279s Unpacking g++ (4:15.2.0-4ubuntu1) ... 279s Selecting previously unselected package build-essential. 279s Preparing to unpack .../26-build-essential_12.12ubuntu1_s390x.deb ... 279s Unpacking build-essential (12.12ubuntu1) ... 279s Selecting previously unselected package libdebhelper-perl. 279s Preparing to unpack .../27-libdebhelper-perl_13.24.2ubuntu1_all.deb ... 279s Unpacking libdebhelper-perl (13.24.2ubuntu1) ... 279s Selecting previously unselected package libtool. 279s Preparing to unpack .../28-libtool_2.5.4-4build1_all.deb ... 279s Unpacking libtool (2.5.4-4build1) ... 279s Selecting previously unselected package dh-autoreconf. 279s Preparing to unpack .../29-dh-autoreconf_21_all.deb ... 279s Unpacking dh-autoreconf (21) ... 279s Selecting previously unselected package libarchive-zip-perl. 279s Preparing to unpack .../30-libarchive-zip-perl_1.68-1_all.deb ... 279s Unpacking libarchive-zip-perl (1.68-1) ... 279s Selecting previously unselected package libfile-stripnondeterminism-perl. 279s Preparing to unpack .../31-libfile-stripnondeterminism-perl_1.14.2-1_all.deb ... 279s Unpacking libfile-stripnondeterminism-perl (1.14.2-1) ... 279s Selecting previously unselected package dh-strip-nondeterminism. 279s Preparing to unpack .../32-dh-strip-nondeterminism_1.14.2-1_all.deb ... 279s Unpacking dh-strip-nondeterminism (1.14.2-1) ... 279s Selecting previously unselected package debugedit. 279s Preparing to unpack .../33-debugedit_1%3a5.2-3_s390x.deb ... 279s Unpacking debugedit (1:5.2-3) ... 279s Selecting previously unselected package dwz. 279s Preparing to unpack .../34-dwz_0.16-2_s390x.deb ... 279s Unpacking dwz (0.16-2) ... 279s Selecting previously unselected package gettext. 279s Preparing to unpack .../35-gettext_0.23.1-2build2_s390x.deb ... 279s Unpacking gettext (0.23.1-2build2) ... 279s Selecting previously unselected package intltool-debian. 279s Preparing to unpack .../36-intltool-debian_0.35.0+20060710.6_all.deb ... 279s Unpacking intltool-debian (0.35.0+20060710.6) ... 279s Selecting previously unselected package po-debconf. 279s Preparing to unpack .../37-po-debconf_1.0.21+nmu1_all.deb ... 279s Unpacking po-debconf (1.0.21+nmu1) ... 279s Selecting previously unselected package debhelper. 279s Preparing to unpack .../38-debhelper_13.24.2ubuntu1_all.deb ... 279s Unpacking debhelper (13.24.2ubuntu1) ... 279s Selecting previously unselected package dh-python. 279s Preparing to unpack .../39-dh-python_6.20250414_all.deb ... 279s Unpacking dh-python (6.20250414) ... 279s Selecting previously unselected package offpunk. 279s Preparing to unpack .../40-offpunk_2.7.1-1_all.deb ... 279s Unpacking offpunk (2.7.1-1) ... 279s Selecting previously unselected package pybuild-plugin-autopkgtest. 279s Preparing to unpack .../41-pybuild-plugin-autopkgtest_6.20250414_all.deb ... 279s Unpacking pybuild-plugin-autopkgtest (6.20250414) ... 279s Selecting previously unselected package python3-packaging. 279s Preparing to unpack .../42-python3-packaging_25.0-1_all.deb ... 279s Unpacking python3-packaging (25.0-1) ... 279s Selecting previously unselected package python3-pyproject-hooks. 279s Preparing to unpack .../43-python3-pyproject-hooks_1.2.0-1_all.deb ... 279s Unpacking python3-pyproject-hooks (1.2.0-1) ... 279s Selecting previously unselected package python3-wheel. 279s Preparing to unpack .../44-python3-wheel_0.46.1-2_all.deb ... 279s Unpacking python3-wheel (0.46.1-2) ... 279s Selecting previously unselected package python3-build. 279s Preparing to unpack .../45-python3-build_1.2.2-4_all.deb ... 279s Unpacking python3-build (1.2.2-4) ... 279s Selecting previously unselected package python3-installer. 279s Preparing to unpack .../46-python3-installer_0.7.0+dfsg1-3_all.deb ... 279s Unpacking python3-installer (0.7.0+dfsg1-3) ... 279s Selecting previously unselected package pybuild-plugin-pyproject. 279s Preparing to unpack .../47-pybuild-plugin-pyproject_6.20250414_all.deb ... 279s Unpacking pybuild-plugin-pyproject (6.20250414) ... 279s Selecting previously unselected package python3-all. 279s Preparing to unpack .../48-python3-all_3.13.7-1_s390x.deb ... 279s Unpacking python3-all (3.13.7-1) ... 279s Selecting previously unselected package python3-pathspec. 279s Preparing to unpack .../49-python3-pathspec_0.12.1-1_all.deb ... 279s Unpacking python3-pathspec (0.12.1-1) ... 279s Selecting previously unselected package python3-pluggy. 279s Preparing to unpack .../50-python3-pluggy_1.6.0-1_all.deb ... 279s Unpacking python3-pluggy (1.6.0-1) ... 279s Selecting previously unselected package python3-trove-classifiers. 279s Preparing to unpack .../51-python3-trove-classifiers_2025.4.28.22-1_all.deb ... 279s Unpacking python3-trove-classifiers (2025.4.28.22-1) ... 279s Selecting previously unselected package python3-hatchling. 279s Preparing to unpack .../52-python3-hatchling_1.27.0-1_all.deb ... 279s Unpacking python3-hatchling (1.27.0-1) ... 279s Selecting previously unselected package python3-iniconfig. 279s Preparing to unpack .../53-python3-iniconfig_1.1.1-2_all.deb ... 279s Unpacking python3-iniconfig (1.1.1-2) ... 279s Selecting previously unselected package python3-pytest. 279s Preparing to unpack .../54-python3-pytest_8.3.5-2_all.deb ... 279s Unpacking python3-pytest (8.3.5-2) ... 279s Selecting previously unselected package python3-pytest-mock. 279s Preparing to unpack .../55-python3-pytest-mock_3.14.0-3_all.deb ... 279s Unpacking python3-pytest-mock (3.14.0-3) ... 279s Setting up dh-python (6.20250414) ... 279s Setting up python3-iniconfig (1.1.1-2) ... 279s Setting up libarchive-zip-perl (1.68-1) ... 279s Setting up libdebhelper-perl (13.24.2ubuntu1) ... 279s Setting up m4 (1.4.19-8) ... 279s Setting up python3-all (3.13.7-1) ... 279s Setting up libgomp1:s390x (15.2.0-5ubuntu1) ... 279s Setting up autotools-dev (20240727.1) ... 279s Setting up python3-packaging (25.0-1) ... 279s Setting up python3-pyproject-hooks (1.2.0-1) ... 279s Setting up libmpc3:s390x (1.3.1-1build3) ... 279s Setting up autopoint (0.23.1-2build2) ... 279s Setting up python3-installer (0.7.0+dfsg1-3) ... 279s Setting up autoconf (2.72-3.1ubuntu1) ... 279s Setting up python3-pluggy (1.6.0-1) ... 280s Setting up libubsan1:s390x (15.2.0-5ubuntu1) ... 280s Setting up dwz (0.16-2) ... 280s Setting up offpunk (2.7.1-1) ... 280s Setting up python3-trove-classifiers (2025.4.28.22-1) ... 280s Setting up libasan8:s390x (15.2.0-5ubuntu1) ... 280s Setting up debugedit (1:5.2-3) ... 280s Setting up libisl23:s390x (0.27-1) ... 280s Setting up python3-pathspec (0.12.1-1) ... 280s Setting up libcc1-0:s390x (15.2.0-5ubuntu1) ... 280s Setting up libitm1:s390x (15.2.0-5ubuntu1) ... 280s Setting up automake (1:1.17-4ubuntu1) ... 280s update-alternatives: using /usr/bin/automake-1.17 to provide /usr/bin/automake (automake) in auto mode 280s Setting up libfile-stripnondeterminism-perl (1.14.2-1) ... 280s Setting up gettext (0.23.1-2build2) ... 280s Setting up libgcc-15-dev:s390x (15.2.0-5ubuntu1) ... 280s Setting up python3-pytest (8.3.5-2) ... 280s Setting up python3-wheel (0.46.1-2) ... 280s Setting up intltool-debian (0.35.0+20060710.6) ... 280s Setting up libstdc++-15-dev:s390x (15.2.0-5ubuntu1) ... 280s Setting up dh-strip-nondeterminism (1.14.2-1) ... 280s Setting up python3-pytest-mock (3.14.0-3) ... 280s Setting up cpp-15-s390x-linux-gnu (15.2.0-5ubuntu1) ... 280s Setting up python3-hatchling (1.27.0-1) ... 280s Setting up python3-build (1.2.2-4) ... 280s Setting up gcc-15-s390x-linux-gnu (15.2.0-5ubuntu1) ... 280s Setting up g++-15-s390x-linux-gnu (15.2.0-5ubuntu1) ... 280s Setting up cpp-s390x-linux-gnu (4:15.2.0-4ubuntu1) ... 280s Setting up pybuild-plugin-pyproject (6.20250414) ... 280s Setting up po-debconf (1.0.21+nmu1) ... 280s Setting up gcc-s390x-linux-gnu (4:15.2.0-4ubuntu1) ... 280s Setting up cpp-15 (15.2.0-5ubuntu1) ... 280s Setting up cpp (4:15.2.0-4ubuntu1) ... 280s Setting up g++-s390x-linux-gnu (4:15.2.0-4ubuntu1) ... 280s Setting up gcc-15 (15.2.0-5ubuntu1) ... 280s Setting up g++-15 (15.2.0-5ubuntu1) ... 280s Setting up libtool (2.5.4-4build1) ... 280s Setting up gcc (4:15.2.0-4ubuntu1) ... 280s Setting up dh-autoreconf (21) ... 280s Setting up g++ (4:15.2.0-4ubuntu1) ... 280s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 280s Setting up build-essential (12.12ubuntu1) ... 280s Setting up debhelper (13.24.2ubuntu1) ... 280s Setting up pybuild-plugin-autopkgtest (6.20250414) ... 280s Processing triggers for install-info (7.1.1-1ubuntu1) ... 280s Processing triggers for libc-bin (2.42-0ubuntu3) ... 280s Processing triggers for man-db (2.13.1-1) ... 284s autopkgtest [05:57:02]: test pybuild-autopkgtest: pybuild-autopkgtest 284s autopkgtest [05:57:02]: test pybuild-autopkgtest: [----------------------- 284s pybuild-autopkgtest 284s I: pybuild base:311: cd /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/build; python3.13 -m pytest tests 284s ============================= test session starts ============================== 284s platform linux -- Python 3.13.9, pytest-8.3.5, pluggy-1.6.0 284s rootdir: /tmp/autopkgtest.TOIPv7/autopkgtest_tmp/build 284s configfile: pyproject.toml 284s plugins: typeguard-4.4.2, mock-3.14.0 284s collected 2 items 284s 284s tests/geminiclient_test.py .. [100%] 284s 284s ============================== 2 passed in 0.10s =============================== 285s autopkgtest [05:57:03]: test pybuild-autopkgtest: -----------------------] 285s pybuild-autopkgtest PASS 285s autopkgtest [05:57:03]: test pybuild-autopkgtest: - - - - - - - - - - results - - - - - - - - - - 286s autopkgtest [05:57:04]: @@@@@@@@@@@@@@@@@@@@ summary 286s run-commands PASS 286s run-commands PASS 286s run-commands PASS 286s pybuild-autopkgtest PASS