diff --git a/CONTRIBUTORS b/CONTRIBUTORS
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -6,3 +6,4 @@
 Hezekiah Maina
 Boris Baldassari
 Léo Andrès
+Franck Bret
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -55,6 +55,7 @@
         [swh.cli.subcommands]
         lister=swh.lister.cli
         [swh.workers]
+        lister.arch=swh.lister.arch:register
         lister.bitbucket=swh.lister.bitbucket:register
         lister.cgit=swh.lister.cgit:register
         lister.cran=swh.lister.cran:register
diff --git a/swh/lister/arch/__init__.py b/swh/lister/arch/__init__.py
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/__init__.py
@@ -0,0 +1,12 @@
+# Copyright (C) 2022 the Software Heritage developers
+# License: GNU General Public License version 3, or any later version
+# See top-level LICENSE file for more information
+
+
+def register():
+    from .lister import ArchLister
+
+    return {
+        "lister": ArchLister,
+        "task_modules": ["%s.tasks" % __name__],
+    }
diff --git a/swh/lister/arch/lister.py b/swh/lister/arch/lister.py
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/lister.py
@@ -0,0 +1,448 @@
+# Copyright (C) 2022  The Software Heritage developers
+# See the AUTHORS file at the top-level directory of this distribution
+# License: GNU General Public License version 3, or any later version
+# See top-level LICENSE file for more information
+import datetime
+import logging
+from pathlib import Path
+import re
+import tarfile
+from typing import Any, Dict, Iterator, List, Optional
+from urllib.parse import unquote, urljoin
+
+from bs4 import BeautifulSoup
+import requests
+
+from swh.model.hashutil import hash_to_hex
+from swh.scheduler.interface import SchedulerInterface
+from swh.scheduler.model import ListedOrigin
+
+from ..pattern import CredentialsType, StatelessLister
+
+logger = logging.getLogger(__name__)
+
+# Aliasing the page results returned by `get_pages` method from the lister.
+ArchListerPage = List[Dict[str, Any]]
+
+
+def size_to_bytes(size: str) -> int:
+    """Convert human readable file size to bytes.
+
+    Resulting value is an approximation as input value is in most case rounded.
+
+    Args:
+        size: A string representing a human readable file size (eg: '500K')
+
+    Returns:
+        A decimal representation of file size
+
+        Examples::
+
+            >>> size_to_bytes("500")
+            500
+            >>> size_to_bytes("1K")
+            1000
+    """
+    units = {
+        "K": 1000,
+        "M": 1000**2,
+        "G": 1000**3,
+        "T": 1000**4,
+        "P": 1000**5,
+        "E": 1000**6,
+        "Z": 1000**7,
+        "Y": 1000**8,
+    }
+    if size.endswith(tuple(units)):
+        v, u = (size[:-1], size[-1])
+        return int(v) * units[u]
+    else:
+        return int(size)
+
+
+class ArchLister(StatelessLister[ArchListerPage]):
+    """List Arch linux origins from 'core', 'extra', and 'community' repositories
+
+    For 'official' Arch Linux it downloads core.tar.gz, extra.tar.gz and community.tar.gz
+    from https://archive.archlinux.org/repos/last/ extract to a temp directory and
+    then walks through each 'desc' files.
+
+    Each 'desc' file describe the latest released version of a package and helps
+    to build an origin url from where scrapping artifacts metadata.
+
+    For 'arm' Arch Linux it follow the same discovery process parsing 'desc' files.
+    The main difference is that we can't get existing versions of an arm package
+    because https://archlinuxarm.org does not have an 'archive' website or api.
+    """
+
+    LISTER_NAME = "arch"
+    VISIT_TYPE = "arch"
+    INSTANCE = "arch"
+
+    DESTINATION_PATH = Path("/tmp/archlinux_archive")
+
+    ARCH_PACKAGE_URL_PATTERN = "{base_url}/packages/{repo}/{arch}/{pkgname}"
+    ARCH_PACKAGE_VERSIONS_URL_PATTERN = "{base_url}/packages/{pkgname[0]}/{pkgname}"
+    ARCH_PACKAGE_DOWNLOAD_URL_PATTERN = (
+        "{base_url}/packages/{pkgname[0]}/{pkgname}/{filename}"
+    )
+    ARCH_API_URL_PATTERN = "{base_url}/packages/{repo}/{arch}/{pkgname}/json"
+
+    ARM_PACKAGE_URL_PATTERN = "{base_url}/packages/{arch}/{pkgname}"
+    ARM_PACKAGE_DOWNLOAD_URL_PATTERN = "{base_url}/{arch}/{repo}/{filename}"
+
+    def __init__(
+        self,
+        scheduler: SchedulerInterface,
+        credentials: Optional[CredentialsType] = None,
+        flavours: Dict[str, Any] = {
+            "official": {
+                "archs": ["x86_64"],
+                "repos": ["core", "extra", "community"],
+                "base_info_url": "https://archlinux.org",
+                "base_archive_url": "https://archive.archlinux.org",
+                "base_mirror_url": "",
+                "base_api_url": "https://archlinux.org",
+            },
+            "arm": {
+                "archs": ["armv7h", "aarch64"],
+                "repos": ["core", "extra", "community"],
+                "base_info_url": "https://archlinuxarm.org",
+                "base_archive_url": "",
+                "base_mirror_url": "https://uk.mirror.archlinuxarm.org",
+                "base_api_url": "",
+            },
+        },
+    ):
+        super().__init__(
+            scheduler=scheduler,
+            credentials=credentials,
+            url=flavours["official"]["base_info_url"],
+            instance=self.INSTANCE,
+        )
+
+        self.flavours = flavours
+
+    def scrap_package_versions(
+        self, name: str, repo: str, base_url: str
+    ) -> List[Dict[str, Any]]:
+        """Given a package 'name' and 'repo', make an http call to origin url and parse its content
+        to get package versions artifacts data.
+        That method is suitable only for 'official' Arch Linux, not 'arm'.
+
+        Args:
+            name: Package name
+            repo: The repository the package belongs to (one of self.repos)
+
+        Returns:
+            A list of dict of version
+
+            Example::
+
+                [
+                    {"url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20190211-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20190211-1",
+                    "length": 180000,
+                    "filename": "dialog-1:1.3_20190211-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-02-13T08:36:00"},
+                ]
+        """
+        url = self.ARCH_PACKAGE_VERSIONS_URL_PATTERN.format(
+            pkgname=name, base_url=base_url
+        )
+        soup = BeautifulSoup(requests.get(url).text, "html.parser")
+        links = soup.find_all("a", href=True)
+
+        # drop the first line (used to go to up directory)
+        if links[0].attrs["href"] == "../":
+            links.pop(0)
+
+        versions = []
+
+        for link in links:
+            # filename displayed can be cropped if name is too long, get it from href instead
+            filename = unquote(link.attrs["href"])
+
+            if filename.endswith((".tar.xz", ".tar.zst")):
+                # Extract arch from filename
+                arch_rex = re.compile(
+                    rf"^{re.escape(name)}-(?P<version>.*)-(?P<arch>any|i686|x86_64)"
+                    rf"(.pkg.tar.(?:zst|xz))$"
+                )
+                m = arch_rex.match(filename)
+                if m is None:
+                    logger.error(
+                        "Can not find a match for architecture in %(filename)s"
+                        % dict(filename=filename)
+                    )
+                else:
+                    arch = m.group("arch")
+                    version = m.group("version")
+
+                # Extract last_modified and an approximate file size
+                raw_text = link.next_sibling
+                raw_text_rex = re.compile(
+                    r"^(?P<last_modified>\d+-\w+-\d+ \d\d:\d\d)\s+(?P<size>\w+)$"
+                )
+                s = raw_text_rex.search(raw_text.strip())
+                if s is None:
+                    logger.error(
+                        "Can not find a match for 'last_modified' and/or "
+                        "'size' in '%(raw_text)s'" % dict(raw_text=raw_text)
+                    )
+                else:
+                    assert s.groups()
+                    assert len(s.groups()) == 2
+                    last_modified_str, size = s.groups()
+
+                # format as expected
+                last_modified = datetime.datetime.strptime(
+                    last_modified_str, "%d-%b-%Y %H:%M"
+                ).isoformat()
+
+                length = size_to_bytes(size)  # we want bytes
+
+                # link url is relative, format a canonical one
+                url = self.ARCH_PACKAGE_DOWNLOAD_URL_PATTERN.format(
+                    base_url=base_url, pkgname=name, filename=filename
+                )
+                versions.append(
+                    dict(
+                        name=name,
+                        version=version,
+                        repo=repo,
+                        arch=arch,
+                        filename=filename,
+                        url=url,
+                        last_modified=last_modified,
+                        length=length,
+                    )
+                )
+        return versions
+
+    def get_repo_archive(self, url: str, destination_path: Path) -> Path:
+        """Given an url and a destination path, retrieve and extract .tar.gz archive
+        which contains 'desc' file for each package.
+        Each .tar.gz archive corresponds to an Arch Linux repo ('core', 'extra', 'community').
+
+        Args:
+            url: url of the .tar.gz archive to download
+            destination_path: the path on disk where to extract archive
+
+        Returns:
+            a directory Path where the archive has been extracted to.
+        """
+        res = requests.get(url)
+        destination_path.parent.mkdir(parents=True, exist_ok=True)
+        destination_path.write_bytes(res.content)
+
+        extract_to = Path(str(destination_path).split(".tar.gz")[0])
+        tar = tarfile.open(destination_path)
+        tar.extractall(path=extract_to)
+        tar.close()
+
+        return extract_to
+
+    def parse_desc_file(
+        self,
+        path: Path,
+        repo: str,
+        base_url: str,
+        dl_url_fmt: str,
+    ) -> Dict[str, Any]:
+        """Extract package information from a 'desc' file.
+        There are subtle differences between parsing 'official' and 'arm' des files
+
+        Args:
+            path: A path to a 'desc' file on disk
+            repo: The repo the package belongs to
+
+        Returns:
+            A dict of metadata
+
+            Example::
+
+                {'api_url': 'https://archlinux.org/packages/core/x86_64/dialog/json',
+                 'arch': 'x86_64',
+                 'base': 'dialog',
+                 'builddate': '1650081535',
+                 'csize': '203028',
+                 'desc': 'A tool to display dialog boxes from shell scripts',
+                 'filename': 'dialog-1:1.3_20220414-1-x86_64.pkg.tar.zst',
+                 'isize': '483988',
+                 'license': 'LGPL2.1',
+                 'md5sum': '06407c0cb11c50d7bf83d600f2e8107c',
+                 'name': 'dialog',
+                 'packager': 'Evangelos Foutras <foutrelis@archlinux.org>',
+                 'pgpsig': 'pgpsig content xxx',
+                 'project_url': 'https://invisible-island.net/dialog/',
+                 'provides': 'libdialog.so=15-64',
+                 'repo': 'core',
+                 'sha256sum': 'ef8c8971f591de7db0f455970ef5d81d5aced1ddf139f963f16f6730b1851fa7',
+                 'url': 'https://archive.archlinux.org/packages/.all/dialog-1:1.3_20220414-1-x86_64.pkg.tar.zst',  # noqa: B950
+                 'version': '1:1.3_20220414-1'}
+        """
+        rex = re.compile(r"^\%(?P<k>\w+)\%\n(?P<v>.*)\n$", re.M)
+        with path.open("rb") as content:
+            parsed = rex.findall(content.read().decode())
+            data = {entry[0].lower(): entry[1] for entry in parsed}
+
+            if "url" in data.keys():
+                data["project_url"] = data["url"]
+
+            assert data["name"]
+            assert data["filename"]
+            assert data["arch"]
+
+            data["repo"] = repo
+            data["url"] = urljoin(
+                base_url,
+                dl_url_fmt.format(
+                    base_url=base_url,
+                    pkgname=data["name"],
+                    filename=data["filename"],
+                    arch=data["arch"],
+                    repo=repo,
+                ),
+            )
+
+            assert data["md5sum"]
+            assert data["sha256sum"]
+            data["checksums"] = {
+                "md5sum": hash_to_hex(data["md5sum"]),
+                "sha256sum": hash_to_hex(data["sha256sum"]),
+            }
+        return data
+
+    def get_pages(self) -> Iterator[ArchListerPage]:
+        """Yield an iterator sorted by name in ascending order of pages.
+
+        Each page is a list of package belonging to a flavour ('official', 'arm'),
+        and a repo ('core', 'extra', 'community')
+        """
+
+        for name, flavour in self.flavours.items():
+            for arch in flavour["archs"]:
+                for repo in flavour["repos"]:
+                    page = []
+                    if name == "official":
+                        prefix = urljoin(flavour["base_archive_url"], "/repos/last/")
+                        filename = f"{repo}.files.tar.gz"
+                        archive_url = urljoin(prefix, f"{repo}/os/{arch}/{filename}")
+                        destination_path = Path(self.DESTINATION_PATH, arch, filename)
+                        base_url = flavour["base_archive_url"]
+                        dl_url_fmt = self.ARCH_PACKAGE_DOWNLOAD_URL_PATTERN
+                        base_info_url = flavour["base_info_url"]
+                        info_url_fmt = self.ARCH_PACKAGE_URL_PATTERN
+                    elif name == "arm":
+                        filename = f"{repo}.files.tar.gz"
+                        archive_url = urljoin(
+                            flavour["base_mirror_url"], f"{arch}/{repo}/{filename}"
+                        )
+                        destination_path = Path(self.DESTINATION_PATH, arch, filename)
+                        base_url = flavour["base_mirror_url"]
+                        dl_url_fmt = self.ARM_PACKAGE_DOWNLOAD_URL_PATTERN
+                        base_info_url = flavour["base_info_url"]
+                        info_url_fmt = self.ARM_PACKAGE_URL_PATTERN
+
+                    archive = self.get_repo_archive(
+                        url=archive_url, destination_path=destination_path
+                    )
+
+                    assert archive
+
+                    packages_desc = list(archive.glob("**/desc"))
+                    logger.debug(
+                        "Processing %(instance)s source packages info from "
+                        "%(flavour)s %(arch)s %(repo)s repository, "
+                        "(%(qty)s packages)."
+                        % dict(
+                            instance=self.instance,
+                            flavour=name,
+                            arch=arch,
+                            repo=repo,
+                            qty=len(packages_desc),
+                        )
+                    )
+
+                    for package_desc in packages_desc:
+                        data = self.parse_desc_file(
+                            path=package_desc,
+                            repo=repo,
+                            base_url=base_url,
+                            dl_url_fmt=dl_url_fmt,
+                        )
+
+                        assert data["builddate"]
+                        last_modified = datetime.datetime.fromtimestamp(
+                            float(data["builddate"]), tz=datetime.timezone.utc
+                        )
+
+                        assert data["name"]
+                        assert data["filename"]
+                        assert data["arch"]
+                        url = info_url_fmt.format(
+                            base_url=base_info_url,
+                            pkgname=data["name"],
+                            filename=data["filename"],
+                            repo=repo,
+                            arch=data["arch"],
+                        )
+
+                        assert data["version"]
+                        if name == "official":
+                            # find all versions of a package scrapping archive
+                            versions = self.scrap_package_versions(
+                                name=data["name"],
+                                repo=repo,
+                                base_url=base_url,
+                            )
+                        elif name == "arm":
+                            # There is no way to get related versions of a package,
+                            # but 'data' represents the latest released version,
+                            # use it in this case
+                            assert data["builddate"]
+                            assert data["csize"]
+                            assert data["url"]
+                            versions = [
+                                dict(
+                                    name=data["name"],
+                                    version=data["version"],
+                                    repo=repo,
+                                    arch=data["arch"],
+                                    filename=data["filename"],
+                                    url=data["url"],
+                                    last_modified=last_modified.replace(
+                                        tzinfo=None
+                                    ).isoformat(timespec="seconds"),
+                                    length=int(data["csize"]),
+                                )
+                            ]
+
+                        package = {
+                            "name": data["name"],
+                            "version": data["version"],
+                            "last_modified": last_modified,
+                            "url": url,
+                            "versions": versions,
+                            "data": data,
+                        }
+                        page.append(package)
+                    yield page
+
+    def get_origins_from_page(self, page: ArchListerPage) -> Iterator[ListedOrigin]:
+        """Iterate on all arch pages and yield ListedOrigin instances."""
+        assert self.lister_obj.id is not None
+        for origin in page:
+            yield ListedOrigin(
+                lister_id=self.lister_obj.id,
+                visit_type=self.VISIT_TYPE,
+                url=origin["url"],
+                last_update=origin["last_modified"],
+                extra_loader_arguments={
+                    "artifacts": origin["versions"],
+                },
+            )
diff --git a/swh/lister/arch/tasks.py b/swh/lister/arch/tasks.py
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tasks.py
@@ -0,0 +1,19 @@
+# Copyright (C) 2022  The Software Heritage developers
+# See the AUTHORS file at the top-level directory of this distribution
+# License: GNU General Public License version 3, or any later version
+# See top-level LICENSE file for more information
+
+from celery import shared_task
+
+from swh.lister.arch.lister import ArchLister
+
+
+@shared_task(name=__name__ + ".ArchListerTask")
+def list_arch(**lister_args):
+    """Lister task for Arch Linux"""
+    return ArchLister.from_configfile(**lister_args).run().dict()
+
+
+@shared_task(name=__name__ + ".ping")
+def _ping():
+    return "OK"
diff --git a/swh/lister/arch/tests/__init__.py b/swh/lister/arch/tests/__init__.py
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tests/__init__.py
@@ -0,0 +1,31 @@
+# Copyright (C) 2022 the Software Heritage developers
+# License: GNU General Public License version 3, or any later version
+# See top-level LICENSE file for more information
+
+import os
+from pathlib import PosixPath
+import subprocess
+from typing import Optional, Union
+
+# TODO: prepare_repository_from_archive method is duplicated from crates lister tests,
+# centralize to tests utils?
+
+
+def prepare_repository_from_archive(
+    archive_path: str,
+    filename: Optional[str] = None,
+    tmp_path: Union[PosixPath, str] = "/tmp",
+) -> str:
+    """Given an existing archive_path, uncompress it.
+    Returns a file repo url which can be used as origin url.
+
+    This does not deal with the case where the archive passed along does not exist.
+    """
+    if not isinstance(tmp_path, str):
+        tmp_path = str(tmp_path)
+    # uncompress folder/repositories/dump for the loader to ingest
+    subprocess.check_output(["tar", "xf", archive_path, "-C", tmp_path])
+    # build the origin url (or some derivative form)
+    _fname = filename if filename else os.path.basename(archive_path)
+    repo_url = f"file://{tmp_path}/{_fname}"
+    return repo_url
diff --git a/swh/lister/arch/tests/data/fake_archlinux_archives_init.sh b/swh/lister/arch/tests/data/fake_archlinux_archives_init.sh
new file mode 100755
--- /dev/null
+++ b/swh/lister/arch/tests/data/fake_archlinux_archives_init.sh
@@ -0,0 +1,905 @@
+#!/usr/bin/env bash
+
+# Script to generate fake-.tar.gz files and fake http responses for
+# archive.archlinux.org and mirror.archlinuxarm.org
+# For tests purposes only
+
+set -euo pipefail
+
+# files and directories
+mkdir https_archive.archlinux.org
+mkdir https_uk.mirror.archlinuxarm.org
+
+mkdir -p tmp_dir/archives/
+cd tmp_dir/archives/
+
+mkdir -p core.files
+mkdir -p core.files/gzip-1.12-1
+mkdir -p core.files/dialog-1:1.3_20220414-1
+
+mkdir -p extra.files
+mkdir -p extra.files/mercurial-6.1.2-1
+mkdir -p extra.files/libasyncns-0.8+3+g68cd5af-3
+
+mkdir -p community.files
+mkdir -p community.files/python-hglib-2.6.2-4
+mkdir -p community.files/gnome-code-assistance-3:3.16.1+r14+gaad6437-1
+
+echo -e """%FILENAME%
+gzip-1.12-1-x86_64.pkg.tar.zst
+
+%NAME%
+gzip
+
+%BASE%
+gzip
+
+%VERSION%
+1.12-1
+
+%DESC%
+GNU compression utility
+
+%GROUPS%
+base-devel
+
+%CSIZE%
+81552
+
+%ISIZE%
+150448
+
+%MD5SUM%
+3e72c94305917d00d9e361a687cf0a3e
+
+%SHA256SUM%
+0ee561edfbc1c7c6a204f7cfa43437c3362311b4fd09ea0541134aaea3a8cc07
+
+%PGPSIG%
+iQIzBAABCgAdFiEE4kC1fixGMLp2ji8m/BtUfI2BcsgFAmJPIMEACgkQ/BtUfI2BcsjDTw//Zzu/G+1B2qKIwqy7s/3WieNflLj8PdroF2V+5/W9O70zY4P3edkzjJVCjp9j8esIwfacDfgJvqpdQE5oBJKrwtp3FHEKSRXYUwkOWeGcxO9F8scRclqPYIybfeD3zp0hL2iXE3x4NOg46znlYXqr19Nnovb0Pf0XQ3x8B8qwk997aUvmJz40iQ31EOuQ/PaxboOdiGPkAfflBYdcoDS2XprT5Po9bNoHen5qdN55eF3mipOVZMiynZoHVwgWT/lVwEuAUMxPMLW/QAHn7UEyWIii+ysUZCECf7sVUHOtdro4Y3bUl85JlyFx113dvJDy7QVX4qh89YFLHb0E3ml64wa+I5/q8Y2l7FRPr07n6yhb+MDQcA9hteDOzYzhT7gThrtJAEVJSHxxlGoC/GHgPTWwc7RD80OUcAiGJBUjxYUOKy/CBJ7H4zaRCa28CWrh7IEqDUu6hrCZQHAzmAYbF8X8BnIAAg7jkH3tlH8zwtw3eFxATWgSWfPFsl7jPdGwSUjmff1YvOCjh8r4YFuqqejZQSsUWnO9vE37DCVod7qSBPLzJOfCyPpSoouDC3p+vxhJ5Da5vkqUJk017QYDcGxMMyS1joAPBzkkesca7Ej+eHovfEA5mMLmRHR7lULPBnMjz9IW2i0MvRPt4m8wlFucUAUsrMiTn0WM+V2k2qI=
+
+%URL%
+https://www.gnu.org/software/gzip/
+
+%LICENSE%
+GPL3
+
+%ARCH%
+x86_64
+
+%BUILDDATE%
+1649352820
+
+%PACKAGER%
+Levente Polyak <anthraxx@archlinux.org>
+
+%DEPENDS%
+glibc
+bash
+less
+""" > core.files/gzip-1.12-1/desc
+
+echo -e """%FILENAME%
+dialog-1:1.3_20220414-1-x86_64.pkg.tar.zst
+
+%NAME%
+dialog
+
+%BASE%
+dialog
+
+%VERSION%
+1:1.3_20220414-1
+
+%DESC%
+A tool to display dialog boxes from shell scripts
+
+%CSIZE%
+203028
+
+%ISIZE%
+483988
+
+%MD5SUM%
+06407c0cb11c50d7bf83d600f2e8107c
+
+%SHA256SUM%
+ef8c8971f591de7db0f455970ef5d81d5aced1ddf139f963f16f6730b1851fa7
+
+%PGPSIG%
+iQEzBAABCAAdFiEEhs/8qRjPOvRxR1iAUeixSKmZnDQFAmJaPyAACgkQUeixSKmZnDQvZAf/X3qO7Wg6f+tnQ4qciRcRpegsExNRfKo6S1XhA9C0BC0LJDcTRHG1C7+NVB6dSSL5SdOSVTEACjDc2APppNuPDOxFtzl9doYMHqYTSud2yEUPpE8K+3mhcyHpeOxJC6ZIsQWOjug9FTBwUCUo6s5nHjkmRpsK0zYgK9ezmOSZXlS3QSNRaGbKzn1JM8BOUv5Y29f8nTCXNn1m6RW0yAlyz4rdHDVWfaBFvYL7IC/6uwA+92LB3egyEzYx6uuRvvlBR75Rh+IATBxfwLo1bNNEmFWA/W6vooICjF2E23zk4yaKw08f+V2fjRDn9Hs/i2B4bNNNWeOf5q7j7y5EnBbmeQ==
+
+%URL%
+https://invisible-island.net/dialog/
+
+%LICENSE%
+LGPL2.1
+
+%ARCH%
+x86_64
+
+%BUILDDATE%
+1650081535
+
+%PACKAGER%
+Evangelos Foutras <foutrelis@archlinux.org>
+
+%PROVIDES%
+libdialog.so=15-64
+
+%DEPENDS%
+sh
+ncurses
+""" > core.files/dialog-1:1.3_20220414-1/desc
+
+echo -e """%FILENAME%
+mercurial-6.1.2-1-x86_64.pkg.tar.zst
+
+%NAME%
+mercurial
+
+%BASE%
+mercurial
+
+%VERSION%
+6.1.2-1
+
+%DESC%
+A scalable distributed SCM tool
+
+%CSIZE%
+5034047
+
+%ISIZE%
+26912816
+
+%MD5SUM%
+037ff48bf6127e9d37ad7da7026a6dc0
+
+%SHA256SUM%
+be33e7bf800d1e84714cd40029d103873e65f5a72dea19d6ad935f3439512cf8
+
+%PGPSIG%
+iQEzBAABCAAdFiEEFRnVq6Zb9vwrc8dWek52CV2KUuQFAmJ2UgAACgkQek52CV2KUuRecggAo3nP9o1hmew82njxj8i0Nab8Ih2wXfutxDSNjOr5UFH5ei8wD60EU2iyZK0YhXI+cozoRlDI6lIjcvWiDH3s9m09xoCX/HAnPfaWkCo9h8DEQX/qxHKc8o87UPVebkLNqKGSu/xXd+n3A5gVl1pI3+7HpaXwOFuTtSFpb+hQ46kW2of+q1NaMpAsLX68uQ0rfaurvIkLZFZDK4zBnRxHXrPMlnj6KbCy/U3/H/ySQTSdfa3YiFe5KzL5dcbPlryCGC4N+xhEn/PYc7OL5I/1iEY9F4sggZQOUh4wXUkv6hc0Xp6Htp7kMKuJUoPJt8kaeUZnIWkB1CCBP5IxnET7Ag==
+
+%URL%
+https://www.mercurial-scm.org/
+
+%LICENSE%
+GPL
+
+%ARCH%
+x86_64
+
+%BUILDDATE%
+1651921313
+
+%PACKAGER%
+Antonio Rojas <arojas@archlinux.org>
+
+%DEPENDS%
+python
+
+%OPTDEPENDS%
+tk: for the hgk GUI
+
+%MAKEDEPENDS%
+python-docutils
+""" > extra.files/mercurial-6.1.2-1/desc
+
+echo -e """%FILENAME%
+libasyncns-0.8+3+g68cd5af-3-x86_64.pkg.tar.zst
+
+%NAME%
+libasyncns
+
+%BASE%
+libasyncns
+
+%VERSION%
+0.8+3+g68cd5af-3
+
+%DESC%
+A C library for executing name service queries asynchronously
+
+%CSIZE%
+17036
+
+%ISIZE%
+48763
+
+%MD5SUM%
+0aad62f00eab3d0ec7798cb5b4a6eddd
+
+%SHA256SUM%
+a0262e191dd3b00343e79e3521159c963e26b7a438d4cc44137c64cf0da90516
+
+%PGPSIG%
+iQIzBAABCAAdFiEEtZcfLFwQqaCMYAMPeGxj8zDXy5IFAl7DmIIACgkQeGxj8zDXy5IE8w/7BRDCV4cdGG/2DK0ezqicrMTmpRjiN0Zh14s39V/wHt4VmU786y0fjR/2UfvxncnDqBTmiPbe6Ilv5vQ/4aHbRObqeVFD76iMKAPmBWLOvI8rGLlZjK9zLOKTHwKb7EBk4D4HrF/zd/c1Mz5rGkF/RAgchDT2G4NTozG3SUA1cL3TWgvPn4CIEeq2XTO01GCqXMiavdSuyAEIzKjc9zNPQ/2N1qQ2zPuzjbkEEk4Tk2ewKUQbKcVYpp+iwxm5sUFqd/mpnT4scve7bsHm0VduZbz5mqz2fg57/RU8qQ6GjLZjEHQGE2B3YUWzZlxN2x4+skXN7CRNmfAVyoe7C6hsED8cyKx+J8V+hk67xeIfEm0KCOhegpL/TM/O7xR9w5y3WFmN0VS96l5do9hZkkzNn7o64hvjtEypo/sCF/46KqHwJNezukbWENIWJcHYu8EqLaZsTFD+vQ8iXk7xy2ocQQTIfFlThNwPG+oGK8holQjOhdn8C+m8mG5QFQmUqhcPch4qRsUq1uY3CFooIX4pRghkIyrFwmwhxiao2HLegKS9v5RqMCGxJ3jPXT0tB7s56fpC3D2moCJtaN+GUsU3YW/a0gHgIhzCC7HJYZ+T+MkG5LW3Lb5swMXa4Qe5GcSzc1w+cpMurQKANGNk382TO5CRmo3e+dO4CLaXmUGOjGw=
+
+%URL%
+http://0pointer.de/lennart/projects/libasyncns
+
+%LICENSE%
+LGPL
+
+%ARCH%
+x86_64
+
+%BUILDDATE%
+1589876807
+
+%PACKAGER%
+Felix Yan <felixonmars@archlinux.org>
+
+%DEPENDS%
+glibc
+
+%MAKEDEPENDS%
+git
+lynx
+""" > extra.files/libasyncns-0.8+3+g68cd5af-3/desc
+
+echo -e """%FILENAME%
+python-hglib-2.6.2-4-any.pkg.tar.zst
+
+%NAME%
+python-hglib
+
+%BASE%
+python-hglib
+
+%VERSION%
+2.6.2-4
+
+%DESC%
+A library with a fast, convenient interface to Mercurial. It uses Mercurial's command server for communication with hg.
+
+%CSIZE%
+44083
+
+%ISIZE%
+242821
+
+%MD5SUM%
+ecc6598834dc216efd938466a2425eae
+
+%SHA256SUM%
+fd273811023e8c58090d65118d27f5c10ad10ea5d1fbdbcf88c730327cea0952
+
+%PGPSIG%
+iQEzBAABCAAdFiEEhs/8qRjPOvRxR1iAUeixSKmZnDQFAmGpaF0ACgkQUeixSKmZnDSHMwf/bCyNUXK2BoZfdNe0hTZJ54M9FgMZC81QPINAugjxpwOYd5zK43PB/n1t5rNpC2jy8G8J5Yuq8eJr5aFV9GB/yeDDlf3gqtOHQteYZjl+oGcfqtVF4i6/e4rXd1mvRH7fFxI18rLThL3Pei+cblh6iZ0NVVqbrd2opURuUvAPwYLN+/YNurFNdS5E1K+TDpMaunA9flatLFV6Cqn3kkyWh0aMT4hN0bv2kvS0AnD3iKh7YTeaHvx1y4o33zcVRDjepcV4ywE6wozteM+Xcelu3XUlZC6luNX05XsQ7x3fKJTFmXrz3y7vYwhq427nuyVEE/yujZLOhBIqLl2VGRUBfQ==
+
+%URL%
+https://pypi.python.org/pypi/python-hglib
+
+%LICENSE%
+MIT
+
+%ARCH%
+any
+
+%BUILDDATE%
+1638492205
+
+%PACKAGER%
+Evangelos Foutras <foutrelis@archlinux.org>
+
+%DEPENDS%
+python
+mercurial
+
+%CHECKDEPENDS%
+python-nose
+""" > community.files/python-hglib-2.6.2-4/desc
+
+echo -e """%FILENAME%
+gnome-code-assistance-2:3.16.1+14+gaad6437-2-x86_64.pkg.tar.zst
+
+%NAME%
+gnome-code-assistance
+
+%BASE%
+gnome-code-assistance
+
+%VERSION%
+2:3.16.1+14+gaad6437-2
+
+%DESC%
+Code assistance services for GNOME
+
+%GROUPS%
+gnome-extra
+
+%CSIZE%
+1854253
+
+%ISIZE%
+6795615
+
+%MD5SUM%
+eadcf1a6bb70a3e564f260b7fc58135a
+
+%SHA256SUM%
+6fd0c80b63d205a1edf5c39c7a62d16499e802566f2451c2b85cd28c9bc30ec7
+
+%PGPSIG%
+iQIzBAABCAAdFiEEtZcfLFwQqaCMYAMPeGxj8zDXy5IFAmGpWGMACgkQeGxj8zDXy5L5FA/8CXB1h17mEitVHfHvtUbQy/5eZ+REzHQzmtk8SJ5oMk9ojxTuQh95M4gEQrp55g/BWxuXSbnCXu8N0SRpaKgX67kqJn3vnoHGnjobr80L7TXqSEtXj15/153VuoFg5atmbsOgIdgkCzhAJJKxIt0nGfPlegLxHIZ7Ig06dzI9dc2W+cKotnWW6QuRn1CYD28ZKvBhMhBmjcDu6Rj1muz5NvO80HABP7+AVRsqd2eGJdoX/BmBBqjEGnPtXE1wY/uCuG+XWLy2MeV5ps4f8LYubNOa0KIutyEe6IX+29aQGhawI2G4d04azoTBZpy6xtocJzyW+P+vTxcv/4jhj5E6v7izJy34LTShnHd5J/UWiXl50HWKjJbVPN4o0rWX3EptDHX0gyj+1lvS5Za12Lyy8oGeID10T7N8mcEVREM8XylKz7O7wSaKKbVOXQVAWZ/mQwk7GuWOgGH/nPtVgyNNdHSh+3urPzhuvMSoytJmRo4FbOyRju1Zb3RbbIDWA04Dh7DLH1CvxZ53JkNt0wHZFVt792hmZ4o/wFMVXoNrUnHuI9G1sT8TcYjSmiXlZ7l5cyLo6AsvsFUY2ZuBNXz+3M3CzGyGoAV0Hi2SYl5FaZHuKoFh+P5Xk5ngm42kyoAiQKfrled3ff5fWXqU0jbGDUte+QuLcsKYKZ20YhjP2nc=
+
+%URL%
+https://wiki.gnome.org/Projects/CodeAssistance
+
+%LICENSE%
+GPL3
+
+%ARCH%
+x86_64
+
+%BUILDDATE%
+1638488044
+
+%PACKAGER%
+Felix Yan <felixonmars@archlinux.org>
+
+%DEPENDS%
+libgee
+python-dbus
+python-gobject
+python-pylint
+python-pyflakes
+python-pycodestyle
+python-lxml
+python-simplejson
+ruby-dbus
+ruby-sass
+
+%OPTDEPENDS%
+clang: Assistance for C and C++
+gjs: Assistance for JavaScript
+go: Assistance for Go
+
+%MAKEDEPENDS%
+intltool
+gobject-introspection
+llvm
+clang
+gjs
+go
+gnome-common
+git
+""" > community.files/gnome-code-assistance-3:3.16.1+r14+gaad6437-1/desc
+
+# Tar archives
+tar -czf ../../https_archive.archlinux.org/repos_last_core_os_x86_64_core.files.tar.gz core.files/*
+tar -czf ../../https_archive.archlinux.org/repos_last_extra_os_x86_64_extra.files.tar.gz extra.files/*
+tar -czf ../../https_archive.archlinux.org/repos_last_community_os_x86_64_community.files.tar.gz community.files/*
+
+
+# Fixtures for archlinuxarm.org
+
+mkdir -p arm/aarch64/core.files/gzip-1.12-1
+mkdir -p arm/armv7h/core.files/gzip-1.12-1
+
+mkdir -p arm/aarch64/extra.files/mercurial-6.1.2-1
+mkdir -p arm/armv7h/extra.files/mercurial-6.1.2-1
+
+mkdir -p arm/aarch64/community.files/python-hglib-2.6.2-4
+mkdir -p arm/armv7h/community.files/python-hglib-2.6.2-4
+
+echo -e """%FILENAME%
+gzip-1.12-1-aarch64.pkg.tar.xz
+
+%NAME%
+gzip
+
+%BASE%
+gzip
+
+%VERSION%
+1.12-1
+
+%DESC%
+GNU compression utility
+
+%GROUPS%
+base-devel
+
+%CSIZE%
+79640
+
+%ISIZE%
+162688
+
+%MD5SUM%
+97d1e76302213f0499f45aa4a4d329cc
+
+%SHA256SUM%
+9065fdaf21dfcac231b0e5977599b37596a0d964f48ec0a6bff628084d636d4c
+
+%PGPSIG%
+iQIzBAABCAAdFiEEaLNTfzmjE7PldNBndxk/FSvb5qYFAmJPUuQACgkQdxk/FSvb5qZTvhAAxa3rIyWh/hXRePyAkPKl14YhopF4FDoyoCA9DJBz8bJ0qCe7IE/lCFgIH3CFPOVQxDttxo2q6KHt/Di2P5TYMyXrkoDdB9dwuku0DPIsYzhAp1PVFUTUe599c8rNVGTn/k62WvcK7jxD0p8niHjveVRjwmJ+uZf3a9AGoedNsQN94I/dnWu2ggFUBXF6c77ak78ED7k2xTlBv2fSK9Jkzkcjxtc4kZKjxzF4NVTnNVJkz6UgFUyESausSfE/ub247pdmk0zTHTPodPKtwuECA8ZwsRrETf5if0WjX81E9ox7AtZ7mcBNuZKdeuBaU4WW3sqH60G3t8c3ZmpxzYWJCOdsiUwYkAu6bw7yvEREdm2J6ZZx4CE59b+1hepO8/BKg+Gxe9jNrSaEqug6SaueXO68Gk3uPqVRbgcXNg6TyHEKPcEhBQS8mzpvTomUOt6A9XCiwVVbuyCfltYKxLwQRh1BeWv2Y3KCjkT4oudxWVXW3FxYjFriw+g6RA41MZ9f+jVMr2cE+QidqN/GmuR8RrFQZhJZ9iZx7S4DrPyxLToPPnTIzRuBJKlDXBgEfIB8cbSSDpZU5SfILZYYHfr9j5hYED765t3959pqBqJ9wPJ0qmydGWInM1M2o1lRyEisWtwTHaAv9LSMklSaMCRPIydqnsdjkHPLAUYlE8yTuRE=
+
+%URL%
+https://www.gnu.org/software/gzip/
+
+%LICENSE%
+GPL3
+
+%ARCH%
+aarch64
+
+%BUILDDATE%
+1649365694
+
+%PACKAGER%
+Arch Linux ARM Build System <builder+seattle@archlinuxarm.org>""" > arm/aarch64/core.files/gzip-1.12-1/desc
+
+echo -e """%FILENAME%
+gzip-1.12-1-armv7h.pkg.tar.xz
+
+%NAME%
+gzip
+
+%BASE%
+gzip
+
+%VERSION%
+1.12-1
+
+%DESC%
+GNU compression utility
+
+%GROUPS%
+base-devel
+
+%CSIZE%
+78468
+
+%ISIZE%
+153864
+
+%MD5SUM%
+490c9e28db91740f1adcea64cb6ec1aa
+
+%SHA256SUM%
+4ffc8bbede3bbdd9dd6ad6f85bb689b3f4b985655e56285691db2a1346eaf0e7
+
+%PGPSIG%
+iQIzBAABCAAdFiEEaLNTfzmjE7PldNBndxk/FSvb5qYFAmJPUxgACgkQdxk/FSvb5qZZkBAAwllACKZT9wnFxCcPvZGl/fkHzMs0nyWEsP+JbMaQQaKnSmh8DfklBi+V2rBCRAJiDwBhLjxSS+maW3uxbfaMgNGTl3lSlwvfIz9pUl+OxwS4WB3uMZLNvebVuqO9FQIAB+MdT8ZnWRFRlnj1WPGuDndkZDLlmOqNLWNOgkNS2FAXC0s1nKVGOM8Wd2llYlQkqCglVgOcj4PCmkSBX/BtFJ5gUeelATJiaKQSxN8xFaFbYStlzUe6HhE5Ou2wLHE+XYCEFIgvkoTgZ3eZQbQrV7z/hFW1iv+h9RBbEUcFAZGPbemC3C/PDRMJQySucNEsxCn3huI2KYx0RJunKVJ83QSGJr6xYzSZvCckC9LjHL8DnOOgn+bKJGNc+hBA5EH5/otc17Sr1H+mhx54duc5rH/kUxNg8RwsUEMCgeIw3YQnxeN8GVDbHfsshzk2S+dzOsOZwH+Y0BOknXfQYdssKLKHdktfS2G6t3izZqaflOFLXc5429KAAHldJ+NpYpsKPhCMWYEtdD9Cb21FrdePrlA20BTK02v897gw6qu01vDn7S9fKyQDOjTwO9UZB/S3w99srxwZ3MD6EQH4eLyvD7FSNPYlwiB+WNh+J3+9acHHE9iZ4OCyuutBYf9Pjvwiu9dY1PurqNl3Wd++B/MBYoAX2G6hJr8y8bOF1WBvIhQ=
+
+%URL%
+https://www.gnu.org/software/gzip/
+
+%LICENSE%
+GPL3
+
+%ARCH%
+armv7h
+
+%BUILDDATE%
+1649365715
+
+%PACKAGER%
+Arch Linux ARM Build System <builder+xu4@archlinuxarm.org>""" > arm/armv7h/core.files/gzip-1.12-1/desc
+
+echo -e """%FILENAME%
+mercurial-6.1.3-1-aarch64.pkg.tar.xz
+
+%NAME%
+mercurial
+
+%BASE%
+mercurial
+
+%VERSION%
+6.1.3-1
+
+%DESC%
+A scalable distributed SCM tool
+
+%CSIZE%
+4931228
+
+%ISIZE%
+26959193
+
+%MD5SUM%
+0464390744f42faba80c323ee7c72406
+
+%SHA256SUM%
+635edb47117e7bda0b821d86e61906c802bd880d4a30a64185d9feec1bd25db6
+
+%PGPSIG%
+iQIzBAABCAAdFiEEaLNTfzmjE7PldNBndxk/FSvb5qYFAmKZNusACgkQdxk/FSvb5qaIkg/9FuZemlogqBd7AJA2hi9o/jtcX2nj6m12w76PeZXXgZ9//lV+BVb/fjOThz+ndfmGU34vuyfIDrbolajjWcSUtfwlhIohETbrwHfFTNp2GzA4TmKxl1Mw40ibHP+NptgB0i5z+FRUt5RJyfUBokQqSLzcUr5g1XhSmpEBCDC2tR2nZiq4miW4tJIRwM3HBvAJAtdfRGxGi5rs+Qd2hblTRGITfUA1QJxgq6WJjTbuRPb+BN0ohXHMk9GXVQXh0Df8u9WjleQiPT310W/gXNCd9THfYQr2iC1rbd12/oQsgvEelZuN9ZEtzUmFW5KyCjot4uSxj6jV0fa+nxA4Iyqmma2JzUvF9daObxPWbpD3d1Y+i68J/60ekAnN/7cI+YMBjGtCNzJkOW09Hk+gqHe6/ePwejvkvxqENXwLTMBp57Jjg/+RDJ2gvlNfGPskknLqxc6gz59J9fK/ytC9IwTIF54EDPbtAfLcukxG0HKeGZ54bHsE5397UrdqB8auSVsqkZzlauhJs9QaLnbtBBYaFYRgnmRBj3TMYbJRP+1qgxEOQHUOFLwnDGyfOInozxY0pip3GBbICoxFxss39YzeeR4PVqobLWJQq/uNsJhBmVG6dbYGoHsgWHhl2uTalu//mQhMZgcRBRgZ6FqjniSdme/feXMvacHY7n/OrPWiNPY=
+
+%URL%
+https://www.mercurial-scm.org/
+
+%LICENSE%
+GPL
+
+%ARCH%
+aarch64
+
+%BUILDDATE%
+1654208118
+
+%PACKAGER%
+Arch Linux ARM Build System <builder+n1@archlinuxarm.org>""" > arm/aarch64/extra.files/mercurial-6.1.2-1/desc
+
+echo -e """%FILENAME%
+mercurial-6.1.3-1-armv7h.pkg.tar.xz
+
+%NAME%
+mercurial
+
+%BASE%
+mercurial
+
+%VERSION%
+6.1.3-1
+
+%DESC%
+A scalable distributed SCM tool
+
+%CSIZE%
+4897816
+
+%ISIZE%
+26853841
+
+%MD5SUM%
+453effa55e32be3ef9de5a58f322b9c4
+
+%SHA256SUM%
+c1321de5890a6f53d41c1a5e339733be145221828703f13bccf3e7fc22612396
+
+%PGPSIG%
+iQIzBAABCAAdFiEEaLNTfzmjE7PldNBndxk/FSvb5qYFAmKZNpkACgkQdxk/FSvb5qabaw//Z/NRzDzAlQdEYE3sBB6eJSum9HQrUQDHX7c0fl+wyc0sc+thzfUVueQzFi9EkoTZb9zyuTYGt5KPdQ4cAfEj0ikwxDrS1RFzGyre30OgyQfbGMGnC1BQG4TOLWwS+mFn/tMoeriuMtgHoljsbjn+bSI2JONW6U/kf0s726/HDvmKFLyhHsF6ZGlOQC+ASBR84CY496Yc1SJTnQmGaWzDmF2zfK7OxMkVvVJw7Zi0OgF1L+WEIHHgS0T+bYk6rLX3xxgwQ37XczN9+SSFTM77bF1LfJIlLbLspaE6m8EJnpsTnX8nCvGWfbdPhDqGLdVw6hnNMLPFIXxXuY3KgfwGUX1UKxfvHpbjR0uYvW32Xs85lqsHZShtmaWYTJMDjiLht/6d8uAQLPAOjdDneyaCf0XEMHor8yAd9zcVmSgd/s+TJQYtWK9fsl+QVk8WS484iSSRPZFtVzJpqg1TYulaWha6DZCCidVkryStHnoGi+3vti/9FtUs7jn086PzDfugj9DoV7ixJ6edxIgp7r3TYgzzVTHuyhXBOaE0dp+IX3ekcMF7C37qrfS9uVIVVtMYvnQRICULYlB0LLHvrK1+m4z4ETpqNrjNevcUChns24rnJmmdkOEv/pzmAR7oYmX8rFda8wgiYfciBQzi71XcmP/SyIQud3UJUbvZjiTBRGk=
+
+%URL%
+https://www.mercurial-scm.org/
+
+%LICENSE%
+GPL
+
+%ARCH%
+armv7h
+
+%BUILDDATE%
+1654207988
+
+%PACKAGER%
+Arch Linux ARM Build System <builder+xu2@archlinuxarm.org>""" > arm/armv7h/extra.files/mercurial-6.1.2-1/desc
+
+echo -e """%FILENAME%
+python-hglib-2.6.2-4-any.pkg.tar.xz
+
+%NAME%
+python-hglib
+
+%BASE%
+python-hglib
+
+%VERSION%
+2.6.2-4
+
+%DESC%
+A library with a fast, convenient interface to Mercurial. It uses Mercurial's command server for communication with hg.
+
+%CSIZE%
+41432
+
+%ISIZE%
+242769
+
+%MD5SUM%
+0f763d5e85c4ffe728153f2836838674
+
+%SHA256SUM%
+7a873e20d1822403c8ecf0c790de02439368000e9b1b74881788a9faea8c81b6
+
+%PGPSIG%
+iQIzBAABCAAdFiEEaLNTfzmjE7PldNBndxk/FSvb5qYFAmG4xMQACgkQdxk/FSvb5qboEQ/+PMN4p7cUqEuArNug8UW0h8sG8vXJXyjQo3HxdhIswuNItuBiCaTzFRH+M5Dnoh+Jy+9wLvbzqLnPXkOTgFTBakjyZ8Bxkt1lTYUOUmqCaR3s1nqajOqIRKAAjUuh1oIiM8Hyyfsgrd244jPtRFlL3y6RPgjfd8M9euV9WCxIRVR0ztnvLURlE+yyGVjv6g4rfcwcIPEjV3XUKRd8kLyWkBwDMUgM8rbeVLZjKxdAa1N3XTAikgUi7IJDafpC83IfTzWhBQFaIJ0yQG2FE5FSbY6GlpcpAIktXwxCTBEXYVRtl+tQwDVoLqgExVBMvCza9Nsstav1WwgKnqMIc5HwfNhSPjKoLPKERYhGVpKwY0doal0rfr1gFn4ZOE/WBwCrAFscB9MWhZ/WFXQiWrXfl72YCh6fCdZN5S5xdculOebehgmXP409AE9N0VVM0iCOIG1P9YTv9OWr5VZnUpezKMVXztUHmlAXTkN1dCgPiA34OJ4ExlceNMqbb/ltie0dkRiFRnbat0wIt1KXmhcei4qw0IaFbQo/dvFvigUJ21BUTqzC6ktFICdmL8dJeRjfC7ysu1u/uU+Rq60J/vI6DK1R06oJ5wqVumMdGY4NliZDTooV3+s6M3m/hDkx9IKVn6h+bSTkqiEkgDf/AD3xrKWtO15c1xpA6YeFTkEWL/w=
+
+%URL%
+https://pypi.python.org/pypi/python-hglib
+
+%LICENSE%
+MIT
+
+%ARCH%
+any
+
+%BUILDDATE%
+1639498940
+
+%PACKAGER%
+Arch Linux ARM Build System <builder+seattle@archlinuxarm.org>""" > arm/aarch64/community.files/python-hglib-2.6.2-4/desc
+
+echo -e """%FILENAME%
+python-hglib-2.6.2-4-any.pkg.tar.xz
+
+%NAME%
+python-hglib
+
+%BASE%
+python-hglib
+
+%VERSION%
+2.6.2-4
+
+%DESC%
+A library with a fast, convenient interface to Mercurial. It uses Mercurial's command server for communication with hg.
+
+%CSIZE%
+41408
+
+%ISIZE%
+242769
+
+%MD5SUM%
+198ef7d6dd40d778a0bf585cce30b1c8
+
+%SHA256SUM%
+4b0f51e57f22ddc0dbe308244fc1db85b9e9f721396dbcfbcab38bcb4fe16e10
+
+%PGPSIG%
+iQIzBAABCAAdFiEEaLNTfzmjE7PldNBndxk/FSvb5qYFAmG5GNYACgkQdxk/FSvb5qZa6g/7BcAPCxD5zwY2cBVe5XuwzsTU4cDGoPJ8zVmj9NEpKnoheF29Lfs+dibguAzfox110DhJebVVmS6HeFpQ6QUQtNaO4cser5XBGgF5PTVa4y+gKXiHCOuzmp+iEKmt6u5Gp1lDoMRJb+EvkRRMO51DXCODMvZbj32fyfiVNZsZR5nffQbQ0AWiJ+xeYZVD/7i+mj+wDLtG3+r9KoFFV6C+ZU5g3NDKoHLgLVQLStfiQSDVtIjemPp+CwWQ6AUpC7vzxiPg5X5JdWj5hw/9AgVJHMWqa2q2YgDOPQzLBGgFCRRED96IYoc1ID7ZzI4tXZIQ8L9N4NkIVMyNdZzc1G9XiwOpg360nKNqbfp3igN12Lg8wqXeYdYVdh1xoo3mVIiJ0oo7fygQpRk5RU/UHcahaxcCQgeMvivaW3Xjb3BM4iKcKJb8GcSPdndTKzJlKOAUk+lD5rGICO5tLSKzkoQzB+ULDitEBU9E2VJ1KAczd7d6xZ3IqjO9GUhHIVRvlK31hQcBUA9g0bwZciZlv8M1ZqSeoeZ8SXvk57a92tGvqbfrjMqK9j7DXsi5w6CIGunV1ceHoVIxzzCboBYZU0cLkUpL9jzU0YXPN7Y2F2Lkn0/uVa0xd9HwSqVTyR88k4aqoL618hcbVoHh9EziU/Oc+ME4YB1VYH7kj66Ob/9Y9gI=
+
+%URL%
+https://pypi.python.org/pypi/python-hglib
+
+%LICENSE%
+MIT
+
+%ARCH%
+any
+
+%BUILDDATE%
+1639520456
+
+%PACKAGER%
+Arch Linux ARM Build System <builder+xu1@archlinuxarm.org>
+""" > arm/armv7h/community.files/python-hglib-2.6.2-4/desc
+
+# Tar arm indexes to convenient path and filename
+tar -czf ../../https_uk.mirror.archlinuxarm.org/aarch64_core_core.files.tar.gz arm/aarch64/core.files/*
+tar -czf ../../https_uk.mirror.archlinuxarm.org/aarch64_extra_extra.files.tar.gz arm/aarch64/extra.files/*
+tar -czf ../../https_uk.mirror.archlinuxarm.org/aarch64_community_community.files.tar.gz arm/aarch64/community.files/*
+
+tar -czf ../../https_uk.mirror.archlinuxarm.org/armv7h_core_core.files.tar.gz arm/armv7h/core.files/*
+tar -czf ../../https_uk.mirror.archlinuxarm.org/armv7h_extra_extra.files.tar.gz arm/armv7h/extra.files/*
+tar -czf ../../https_uk.mirror.archlinuxarm.org/armv7h_community_community.files.tar.gz arm/armv7h/community.files/*
+
+# archive.archlinux.org directory listing html responses (to get packages related versions listing)
+
+cd ../../
+
+echo """<html>
+<head><title>Index of /packages/g/gzip/</title></head>
+<body>
+<h1>Index of /packages/g/gzip/</h1><hr><pre><a href="../">../</a>
+<a href="gzip-1.10-1-x86_64.pkg.tar.xz">gzip-1.10-1-x86_64.pkg.tar.xz</a>                      30-Dec-2018 18:38     78K
+<a href="gzip-1.10-1-x86_64.pkg.tar.xz.sig">gzip-1.10-1-x86_64.pkg.tar.xz.sig</a>                  30-Dec-2018 18:38     558
+<a href="gzip-1.10-2-x86_64.pkg.tar.xz">gzip-1.10-2-x86_64.pkg.tar.xz</a>                      06-Oct-2019 16:02     78K
+<a href="gzip-1.10-2-x86_64.pkg.tar.xz.sig">gzip-1.10-2-x86_64.pkg.tar.xz.sig</a>                  06-Oct-2019 16:02     558
+<a href="gzip-1.10-3-x86_64.pkg.tar.xz">gzip-1.10-3-x86_64.pkg.tar.xz</a>                      13-Nov-2019 15:55     78K
+<a href="gzip-1.10-3-x86_64.pkg.tar.xz.sig">gzip-1.10-3-x86_64.pkg.tar.xz.sig</a>                  13-Nov-2019 15:55     566
+<a href="gzip-1.11-1-x86_64.pkg.tar.zst">gzip-1.11-1-x86_64.pkg.tar.zst</a>                     04-Sep-2021 02:02     82K
+<a href="gzip-1.11-1-x86_64.pkg.tar.zst.sig">gzip-1.11-1-x86_64.pkg.tar.zst.sig</a>                 04-Sep-2021 02:02     558
+<a href="gzip-1.12-1-x86_64.pkg.tar.zst">gzip-1.12-1-x86_64.pkg.tar.zst</a>                     07-Apr-2022 17:35     80K
+<a href="gzip-1.12-1-x86_64.pkg.tar.zst.sig">gzip-1.12-1-x86_64.pkg.tar.zst.sig</a>                 07-Apr-2022 17:35     566
+</pre><hr></body>
+</html>""" > https_archive.archlinux.org/packages_g_gzip
+
+echo -e """<html>
+<head><title>Index of /packages/d/dialog/</title></head>
+<body>
+<h1>Index of /packages/d/dialog/</h1><hr><pre><a href="../">../</a>
+<a href="dialog-1%3A1.3_20190211-1-x86_64.pkg.tar.xz">dialog-1:1.3_20190211-1-x86_64.pkg.tar.xz</a>          13-Feb-2019 08:36    180K
+<a href="dialog-1%3A1.3_20190211-1-x86_64.pkg.tar.xz.sig">dialog-1:1.3_20190211-1-x86_64.pkg.tar.xz.sig</a>      13-Feb-2019 08:36     310
+<a href="dialog-1%3A1.3_20190724-1-x86_64.pkg.tar.xz">dialog-1:1.3_20190724-1-x86_64.pkg.tar.xz</a>          26-Jul-2019 21:39    180K
+<a href="dialog-1%3A1.3_20190724-1-x86_64.pkg.tar.xz.sig">dialog-1:1.3_20190724-1-x86_64.pkg.tar.xz.sig</a>      26-Jul-2019 21:43     310
+<a href="dialog-1%3A1.3_20190728-1-x86_64.pkg.tar.xz">dialog-1:1.3_20190728-1-x86_64.pkg.tar.xz</a>          29-Jul-2019 12:10    180K
+<a href="dialog-1%3A1.3_20190728-1-x86_64.pkg.tar.xz.sig">dialog-1:1.3_20190728-1-x86_64.pkg.tar.xz.sig</a>      29-Jul-2019 12:10     310
+<a href="dialog-1%3A1.3_20190806-1-x86_64.pkg.tar.xz">dialog-1:1.3_20190806-1-x86_64.pkg.tar.xz</a>          07-Aug-2019 04:19    182K
+<a href="dialog-1%3A1.3_20190806-1-x86_64.pkg.tar.xz.sig">dialog-1:1.3_20190806-1-x86_64.pkg.tar.xz.sig</a>      07-Aug-2019 04:19     310
+<a href="dialog-1%3A1.3_20190808-1-x86_64.pkg.tar.xz">dialog-1:1.3_20190808-1-x86_64.pkg.tar.xz</a>          09-Aug-2019 22:49    182K
+<a href="dialog-1%3A1.3_20190808-1-x86_64.pkg.tar.xz.sig">dialog-1:1.3_20190808-1-x86_64.pkg.tar.xz.sig</a>      09-Aug-2019 22:50     310
+<a href="dialog-1%3A1.3_20191110-1-x86_64.pkg.tar.xz">dialog-1:1.3_20191110-1-x86_64.pkg.tar.xz</a>          11-Nov-2019 11:15    183K
+<a href="dialog-1%3A1.3_20191110-1-x86_64.pkg.tar.xz.sig">dialog-1:1.3_20191110-1-x86_64.pkg.tar.xz.sig</a>      11-Nov-2019 11:17     310
+<a href="dialog-1%3A1.3_20191110-2-x86_64.pkg.tar.xz">dialog-1:1.3_20191110-2-x86_64.pkg.tar.xz</a>          13-Nov-2019 17:40    183K
+<a href="dialog-1%3A1.3_20191110-2-x86_64.pkg.tar.xz.sig">dialog-1:1.3_20191110-2-x86_64.pkg.tar.xz.sig</a>      13-Nov-2019 17:41     310
+<a href="dialog-1%3A1.3_20191209-1-x86_64.pkg.tar.xz">dialog-1:1.3_20191209-1-x86_64.pkg.tar.xz</a>          10-Dec-2019 09:56    183K
+<a href="dialog-1%3A1.3_20191209-1-x86_64.pkg.tar.xz.sig">dialog-1:1.3_20191209-1-x86_64.pkg.tar.xz.sig</a>      10-Dec-2019 09:57     310
+<a href="dialog-1%3A1.3_20191210-1-x86_64.pkg.tar.xz">dialog-1:1.3_20191210-1-x86_64.pkg.tar.xz</a>          12-Dec-2019 15:55    184K
+<a href="dialog-1%3A1.3_20191210-1-x86_64.pkg.tar.xz.sig">dialog-1:1.3_20191210-1-x86_64.pkg.tar.xz.sig</a>      12-Dec-2019 15:56     310
+<a href="dialog-1%3A1.3_20200228-1-x86_64.pkg.tar.zst">dialog-1:1.3_20200228-1-x86_64.pkg.tar.zst</a>         06-Mar-2020 02:21    196K
+<a href="dialog-1%3A1.3_20200228-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20200228-1-x86_64.pkg.tar.zst.sig</a>     06-Mar-2020 02:22     310
+<a href="dialog-1%3A1.3_20200327-1-x86_64.pkg.tar.zst">dialog-1:1.3_20200327-1-x86_64.pkg.tar.zst</a>         29-Mar-2020 17:08    196K
+<a href="dialog-1%3A1.3_20200327-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20200327-1-x86_64.pkg.tar.zst.sig</a>     29-Mar-2020 17:09     310
+<a href="dialog-1%3A1.3_20201126-1-x86_64.pkg.tar.zst">dialog-1:1.3_20201126-1-x86_64.pkg.tar.zst</a>         27-Nov-2020 12:19    199K
+<a href="dialog-1%3A1.3_20201126-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20201126-1-x86_64.pkg.tar.zst.sig</a>     27-Nov-2020 12:20     310
+<a href="dialog-1%3A1.3_20210117-1-x86_64.pkg.tar.zst">dialog-1:1.3_20210117-1-x86_64.pkg.tar.zst</a>         18-Jan-2021 18:05    200K
+<a href="dialog-1%3A1.3_20210117-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20210117-1-x86_64.pkg.tar.zst.sig</a>     18-Jan-2021 18:05     310
+<a href="dialog-1%3A1.3_20210306-1-x86_64.pkg.tar.zst">dialog-1:1.3_20210306-1-x86_64.pkg.tar.zst</a>         07-Mar-2021 11:40    201K
+<a href="dialog-1%3A1.3_20210306-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20210306-1-x86_64.pkg.tar.zst.sig</a>     07-Mar-2021 11:41     310
+<a href="dialog-1%3A1.3_20210319-1-x86_64.pkg.tar.zst">dialog-1:1.3_20210319-1-x86_64.pkg.tar.zst</a>         20-Mar-2021 00:12    201K
+<a href="dialog-1%3A1.3_20210319-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20210319-1-x86_64.pkg.tar.zst.sig</a>     20-Mar-2021 00:13     310
+<a href="dialog-1%3A1.3_20210324-1-x86_64.pkg.tar.zst">dialog-1:1.3_20210324-1-x86_64.pkg.tar.zst</a>         26-Mar-2021 17:53    201K
+<a href="dialog-1%3A1.3_20210324-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20210324-1-x86_64.pkg.tar.zst.sig</a>     26-Mar-2021 17:53     310
+<a href="dialog-1%3A1.3_20210509-1-x86_64.pkg.tar.zst">dialog-1:1.3_20210509-1-x86_64.pkg.tar.zst</a>         16-May-2021 02:04    198K
+<a href="dialog-1%3A1.3_20210509-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20210509-1-x86_64.pkg.tar.zst.sig</a>     16-May-2021 02:04     310
+<a href="dialog-1%3A1.3_20210530-1-x86_64.pkg.tar.zst">dialog-1:1.3_20210530-1-x86_64.pkg.tar.zst</a>         31-May-2021 14:59    198K
+<a href="dialog-1%3A1.3_20210530-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20210530-1-x86_64.pkg.tar.zst.sig</a>     31-May-2021 15:00     310
+<a href="dialog-1%3A1.3_20210621-1-x86_64.pkg.tar.zst">dialog-1:1.3_20210621-1-x86_64.pkg.tar.zst</a>         23-Jun-2021 02:59    199K
+<a href="dialog-1%3A1.3_20210621-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20210621-1-x86_64.pkg.tar.zst.sig</a>     23-Jun-2021 03:00     310
+<a href="dialog-1%3A1.3_20211107-1-x86_64.pkg.tar.zst">dialog-1:1.3_20211107-1-x86_64.pkg.tar.zst</a>         09-Nov-2021 14:06    197K
+<a href="dialog-1%3A1.3_20211107-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20211107-1-x86_64.pkg.tar.zst.sig</a>     09-Nov-2021 14:13     310
+<a href="dialog-1%3A1.3_20211214-1-x86_64.pkg.tar.zst">dialog-1:1.3_20211214-1-x86_64.pkg.tar.zst</a>         14-Dec-2021 09:26    197K
+<a href="dialog-1%3A1.3_20211214-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20211214-1-x86_64.pkg.tar.zst.sig</a>     14-Dec-2021 09:27     310
+<a href="dialog-1%3A1.3_20220117-1-x86_64.pkg.tar.zst">dialog-1:1.3_20220117-1-x86_64.pkg.tar.zst</a>         19-Jan-2022 09:56    199K
+<a href="dialog-1%3A1.3_20220117-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20220117-1-x86_64.pkg.tar.zst.sig</a>     19-Jan-2022 09:56     310
+<a href="dialog-1%3A1.3_20220414-1-x86_64.pkg.tar.zst">dialog-1:1.3_20220414-1-x86_64.pkg.tar.zst</a>         16-Apr-2022 03:59    198K
+<a href="dialog-1%3A1.3_20220414-1-x86_64.pkg.tar.zst.sig">dialog-1:1.3_20220414-1-x86_64.pkg.tar.zst.sig</a>     16-Apr-2022 03:59     310
+</pre><hr></body>
+</html>""" > https_archive.archlinux.org/packages_d_dialog
+
+echo -e """
+<html>
+<head><title>Index of /packages/m/mercurial/</title></head>
+<body>
+<h1>Index of /packages/m/mercurial/</h1><hr><pre><a href="../">../</a>
+<a href="mercurial-4.8.2-1-x86_64.pkg.tar.xz">mercurial-4.8.2-1-x86_64.pkg.tar.xz</a>                15-Jan-2019 20:31      4M
+<a href="mercurial-4.8.2-1-x86_64.pkg.tar.xz.sig">mercurial-4.8.2-1-x86_64.pkg.tar.xz.sig</a>            15-Jan-2019 20:31     310
+<a href="mercurial-4.9-1-x86_64.pkg.tar.xz">mercurial-4.9-1-x86_64.pkg.tar.xz</a>                  12-Feb-2019 06:15      4M
+<a href="mercurial-4.9-1-x86_64.pkg.tar.xz.sig">mercurial-4.9-1-x86_64.pkg.tar.xz.sig</a>              12-Feb-2019 06:15     310
+<a href="mercurial-4.9.1-1-x86_64.pkg.tar.xz">mercurial-4.9.1-1-x86_64.pkg.tar.xz</a>                30-Mar-2019 17:40      4M
+<a href="mercurial-4.9.1-1-x86_64.pkg.tar.xz.sig">mercurial-4.9.1-1-x86_64.pkg.tar.xz.sig</a>            30-Mar-2019 17:40     310
+<a href="mercurial-5.0-1-x86_64.pkg.tar.xz">mercurial-5.0-1-x86_64.pkg.tar.xz</a>                  10-May-2019 08:44      4M
+<a href="mercurial-5.0-1-x86_64.pkg.tar.xz.sig">mercurial-5.0-1-x86_64.pkg.tar.xz.sig</a>              10-May-2019 08:44     310
+<a href="mercurial-5.0.1-1-x86_64.pkg.tar.xz">mercurial-5.0.1-1-x86_64.pkg.tar.xz</a>                10-Jun-2019 18:05      4M
+<a href="mercurial-5.0.1-1-x86_64.pkg.tar.xz.sig">mercurial-5.0.1-1-x86_64.pkg.tar.xz.sig</a>            10-Jun-2019 18:05     310
+<a href="mercurial-5.0.2-1-x86_64.pkg.tar.xz">mercurial-5.0.2-1-x86_64.pkg.tar.xz</a>                10-Jul-2019 04:58      4M
+<a href="mercurial-5.0.2-1-x86_64.pkg.tar.xz.sig">mercurial-5.0.2-1-x86_64.pkg.tar.xz.sig</a>            10-Jul-2019 04:58     310
+<a href="mercurial-5.1-1-x86_64.pkg.tar.xz">mercurial-5.1-1-x86_64.pkg.tar.xz</a>                  17-Aug-2019 19:58      4M
+<a href="mercurial-5.1-1-x86_64.pkg.tar.xz.sig">mercurial-5.1-1-x86_64.pkg.tar.xz.sig</a>              17-Aug-2019 19:58     310
+<a href="mercurial-5.1.2-1-x86_64.pkg.tar.xz">mercurial-5.1.2-1-x86_64.pkg.tar.xz</a>                08-Oct-2019 08:38      4M
+<a href="mercurial-5.1.2-1-x86_64.pkg.tar.xz.sig">mercurial-5.1.2-1-x86_64.pkg.tar.xz.sig</a>            08-Oct-2019 08:38     310
+<a href="mercurial-5.2-1-x86_64.pkg.tar.xz">mercurial-5.2-1-x86_64.pkg.tar.xz</a>                  28-Nov-2019 06:41      4M
+<a href="mercurial-5.2-1-x86_64.pkg.tar.xz.sig">mercurial-5.2-1-x86_64.pkg.tar.xz.sig</a>              28-Nov-2019 06:41     310
+<a href="mercurial-5.2.1-1-x86_64.pkg.tar.zst">mercurial-5.2.1-1-x86_64.pkg.tar.zst</a>               06-Jan-2020 12:35      4M
+<a href="mercurial-5.2.1-1-x86_64.pkg.tar.zst.sig">mercurial-5.2.1-1-x86_64.pkg.tar.zst.sig</a>           06-Jan-2020 12:35     310
+<a href="mercurial-5.2.2-1-x86_64.pkg.tar.zst">mercurial-5.2.2-1-x86_64.pkg.tar.zst</a>               15-Jan-2020 14:07      5M
+<a href="mercurial-5.2.2-1-x86_64.pkg.tar.zst.sig">mercurial-5.2.2-1-x86_64.pkg.tar.zst.sig</a>           15-Jan-2020 14:07     310
+<a href="mercurial-5.2.2-2-x86_64.pkg.tar.zst">mercurial-5.2.2-2-x86_64.pkg.tar.zst</a>               30-Jan-2020 20:05      4M
+<a href="mercurial-5.2.2-2-x86_64.pkg.tar.zst.sig">mercurial-5.2.2-2-x86_64.pkg.tar.zst.sig</a>           30-Jan-2020 20:05     310
+<a href="mercurial-5.3-1-x86_64.pkg.tar.zst">mercurial-5.3-1-x86_64.pkg.tar.zst</a>                 13-Feb-2020 21:40      5M
+<a href="mercurial-5.3-1-x86_64.pkg.tar.zst.sig">mercurial-5.3-1-x86_64.pkg.tar.zst.sig</a>             13-Feb-2020 21:40     566
+<a href="mercurial-5.3.1-1-x86_64.pkg.tar.zst">mercurial-5.3.1-1-x86_64.pkg.tar.zst</a>               07-Mar-2020 23:58      4M
+<a href="mercurial-5.3.1-1-x86_64.pkg.tar.zst.sig">mercurial-5.3.1-1-x86_64.pkg.tar.zst.sig</a>           07-Mar-2020 23:58     310
+<a href="mercurial-5.3.2-1-x86_64.pkg.tar.zst">mercurial-5.3.2-1-x86_64.pkg.tar.zst</a>               05-Apr-2020 17:48      4M
+<a href="mercurial-5.3.2-1-x86_64.pkg.tar.zst.sig">mercurial-5.3.2-1-x86_64.pkg.tar.zst.sig</a>           05-Apr-2020 17:48     310
+<a href="mercurial-5.4-1-x86_64.pkg.tar.zst">mercurial-5.4-1-x86_64.pkg.tar.zst</a>                 10-May-2020 17:19      5M
+<a href="mercurial-5.4-1-x86_64.pkg.tar.zst.sig">mercurial-5.4-1-x86_64.pkg.tar.zst.sig</a>             10-May-2020 17:19     310
+<a href="mercurial-5.4-2-x86_64.pkg.tar.zst">mercurial-5.4-2-x86_64.pkg.tar.zst</a>                 04-Jun-2020 13:38      5M
+<a href="mercurial-5.4-2-x86_64.pkg.tar.zst.sig">mercurial-5.4-2-x86_64.pkg.tar.zst.sig</a>             04-Jun-2020 13:38     310
+<a href="mercurial-5.4.1-1-x86_64.pkg.tar.zst">mercurial-5.4.1-1-x86_64.pkg.tar.zst</a>               06-Jun-2020 12:28      5M
+<a href="mercurial-5.4.1-1-x86_64.pkg.tar.zst.sig">mercurial-5.4.1-1-x86_64.pkg.tar.zst.sig</a>           06-Jun-2020 12:28     310
+<a href="mercurial-5.4.2-1-x86_64.pkg.tar.zst">mercurial-5.4.2-1-x86_64.pkg.tar.zst</a>               02-Jul-2020 21:35      5M
+<a href="mercurial-5.4.2-1-x86_64.pkg.tar.zst.sig">mercurial-5.4.2-1-x86_64.pkg.tar.zst.sig</a>           02-Jul-2020 21:35     566
+<a href="mercurial-5.5-1-x86_64.pkg.tar.zst">mercurial-5.5-1-x86_64.pkg.tar.zst</a>                 05-Aug-2020 10:39      5M
+<a href="mercurial-5.5-1-x86_64.pkg.tar.zst.sig">mercurial-5.5-1-x86_64.pkg.tar.zst.sig</a>             05-Aug-2020 10:39     310
+<a href="mercurial-5.5.1-1-x86_64.pkg.tar.zst">mercurial-5.5.1-1-x86_64.pkg.tar.zst</a>               03-Sep-2020 19:05      5M
+<a href="mercurial-5.5.1-1-x86_64.pkg.tar.zst.sig">mercurial-5.5.1-1-x86_64.pkg.tar.zst.sig</a>           03-Sep-2020 19:05     310
+<a href="mercurial-5.5.2-1-x86_64.pkg.tar.zst">mercurial-5.5.2-1-x86_64.pkg.tar.zst</a>               07-Oct-2020 20:05      5M
+<a href="mercurial-5.5.2-1-x86_64.pkg.tar.zst.sig">mercurial-5.5.2-1-x86_64.pkg.tar.zst.sig</a>           07-Oct-2020 20:05     310
+<a href="mercurial-5.6-1-x86_64.pkg.tar.zst">mercurial-5.6-1-x86_64.pkg.tar.zst</a>                 03-Nov-2020 17:26      5M
+<a href="mercurial-5.6-1-x86_64.pkg.tar.zst.sig">mercurial-5.6-1-x86_64.pkg.tar.zst.sig</a>             03-Nov-2020 17:26     310
+<a href="mercurial-5.6-2-x86_64.pkg.tar.zst">mercurial-5.6-2-x86_64.pkg.tar.zst</a>                 09-Nov-2020 16:54      5M
+<a href="mercurial-5.6-2-x86_64.pkg.tar.zst.sig">mercurial-5.6-2-x86_64.pkg.tar.zst.sig</a>             09-Nov-2020 16:54     310
+<a href="mercurial-5.6-3-x86_64.pkg.tar.zst">mercurial-5.6-3-x86_64.pkg.tar.zst</a>                 11-Nov-2020 15:20      5M
+<a href="mercurial-5.6-3-x86_64.pkg.tar.zst.sig">mercurial-5.6-3-x86_64.pkg.tar.zst.sig</a>             11-Nov-2020 15:20     310
+<a href="mercurial-5.6.1-1-x86_64.pkg.tar.zst">mercurial-5.6.1-1-x86_64.pkg.tar.zst</a>               05-Dec-2020 12:29      5M
+<a href="mercurial-5.6.1-1-x86_64.pkg.tar.zst.sig">mercurial-5.6.1-1-x86_64.pkg.tar.zst.sig</a>           05-Dec-2020 12:29     310
+<a href="mercurial-5.7-1-x86_64.pkg.tar.zst">mercurial-5.7-1-x86_64.pkg.tar.zst</a>                 04-Feb-2021 08:41      5M
+<a href="mercurial-5.7-1-x86_64.pkg.tar.zst.sig">mercurial-5.7-1-x86_64.pkg.tar.zst.sig</a>             04-Feb-2021 08:41     310
+<a href="mercurial-5.7.1-1-x86_64.pkg.tar.zst">mercurial-5.7.1-1-x86_64.pkg.tar.zst</a>               11-Mar-2021 07:51      5M
+<a href="mercurial-5.7.1-1-x86_64.pkg.tar.zst.sig">mercurial-5.7.1-1-x86_64.pkg.tar.zst.sig</a>           11-Mar-2021 07:51     310
+<a href="mercurial-5.8-1-x86_64.pkg.tar.zst">mercurial-5.8-1-x86_64.pkg.tar.zst</a>                 04-May-2021 17:55      5M
+<a href="mercurial-5.8-1-x86_64.pkg.tar.zst.sig">mercurial-5.8-1-x86_64.pkg.tar.zst.sig</a>             04-May-2021 17:55     310
+<a href="mercurial-5.8-2-x86_64.pkg.tar.zst">mercurial-5.8-2-x86_64.pkg.tar.zst</a>                 08-May-2021 22:08      5M
+<a href="mercurial-5.8-2-x86_64.pkg.tar.zst.sig">mercurial-5.8-2-x86_64.pkg.tar.zst.sig</a>             08-May-2021 22:08     310
+<a href="mercurial-5.8.1-1-x86_64.pkg.tar.zst">mercurial-5.8.1-1-x86_64.pkg.tar.zst</a>               13-Jul-2021 07:04      5M
+<a href="mercurial-5.8.1-1-x86_64.pkg.tar.zst.sig">mercurial-5.8.1-1-x86_64.pkg.tar.zst.sig</a>           13-Jul-2021 07:04     310
+<a href="mercurial-5.9.1-1-x86_64.pkg.tar.zst">mercurial-5.9.1-1-x86_64.pkg.tar.zst</a>               01-Sep-2021 12:48      5M
+<a href="mercurial-5.9.1-1-x86_64.pkg.tar.zst.sig">mercurial-5.9.1-1-x86_64.pkg.tar.zst.sig</a>           01-Sep-2021 12:48     310
+<a href="mercurial-5.9.1-2-x86_64.pkg.tar.zst">mercurial-5.9.1-2-x86_64.pkg.tar.zst</a>               24-Sep-2021 17:39      5M
+<a href="mercurial-5.9.1-2-x86_64.pkg.tar.zst.sig">mercurial-5.9.1-2-x86_64.pkg.tar.zst.sig</a>           24-Sep-2021 17:39     310
+<a href="mercurial-5.9.2-1-x86_64.pkg.tar.zst">mercurial-5.9.2-1-x86_64.pkg.tar.zst</a>               07-Oct-2021 21:52      5M
+<a href="mercurial-5.9.2-1-x86_64.pkg.tar.zst.sig">mercurial-5.9.2-1-x86_64.pkg.tar.zst.sig</a>           07-Oct-2021 21:52     310
+<a href="mercurial-5.9.3-1-x86_64.pkg.tar.zst">mercurial-5.9.3-1-x86_64.pkg.tar.zst</a>               27-Oct-2021 07:20      5M
+<a href="mercurial-5.9.3-1-x86_64.pkg.tar.zst.sig">mercurial-5.9.3-1-x86_64.pkg.tar.zst.sig</a>           27-Oct-2021 07:20     310
+<a href="mercurial-6.0-1-x86_64.pkg.tar.zst">mercurial-6.0-1-x86_64.pkg.tar.zst</a>                 25-Nov-2021 17:10      5M
+<a href="mercurial-6.0-1-x86_64.pkg.tar.zst.sig">mercurial-6.0-1-x86_64.pkg.tar.zst.sig</a>             25-Nov-2021 17:10     310
+<a href="mercurial-6.0-2-x86_64.pkg.tar.zst">mercurial-6.0-2-x86_64.pkg.tar.zst</a>                 30-Nov-2021 20:53      5M
+<a href="mercurial-6.0-2-x86_64.pkg.tar.zst.sig">mercurial-6.0-2-x86_64.pkg.tar.zst.sig</a>             30-Nov-2021 20:53     310
+<a href="mercurial-6.0-3-x86_64.pkg.tar.zst">mercurial-6.0-3-x86_64.pkg.tar.zst</a>                 02-Dec-2021 12:06      5M
+<a href="mercurial-6.0-3-x86_64.pkg.tar.zst.sig">mercurial-6.0-3-x86_64.pkg.tar.zst.sig</a>             02-Dec-2021 12:06     310
+<a href="mercurial-6.0.1-1-x86_64.pkg.tar.zst">mercurial-6.0.1-1-x86_64.pkg.tar.zst</a>               08-Jan-2022 10:07      5M
+<a href="mercurial-6.0.1-1-x86_64.pkg.tar.zst.sig">mercurial-6.0.1-1-x86_64.pkg.tar.zst.sig</a>           08-Jan-2022 10:07     310
+<a href="mercurial-6.0.2-1-x86_64.pkg.tar.zst">mercurial-6.0.2-1-x86_64.pkg.tar.zst</a>               03-Feb-2022 13:28      5M
+<a href="mercurial-6.0.2-1-x86_64.pkg.tar.zst.sig">mercurial-6.0.2-1-x86_64.pkg.tar.zst.sig</a>           03-Feb-2022 13:28     310
+<a href="mercurial-6.0.3-1-x86_64.pkg.tar.zst">mercurial-6.0.3-1-x86_64.pkg.tar.zst</a>               23-Feb-2022 20:50      5M
+<a href="mercurial-6.0.3-1-x86_64.pkg.tar.zst.sig">mercurial-6.0.3-1-x86_64.pkg.tar.zst.sig</a>           23-Feb-2022 20:50     310
+<a href="mercurial-6.1-1-x86_64.pkg.tar.zst">mercurial-6.1-1-x86_64.pkg.tar.zst</a>                 03-Mar-2022 18:06      5M
+<a href="mercurial-6.1-1-x86_64.pkg.tar.zst.sig">mercurial-6.1-1-x86_64.pkg.tar.zst.sig</a>             03-Mar-2022 18:06     310
+<a href="mercurial-6.1-2-x86_64.pkg.tar.zst">mercurial-6.1-2-x86_64.pkg.tar.zst</a>                 04-Mar-2022 08:37      5M
+<a href="mercurial-6.1-2-x86_64.pkg.tar.zst.sig">mercurial-6.1-2-x86_64.pkg.tar.zst.sig</a>             04-Mar-2022 08:37     310
+<a href="mercurial-6.1.1-1-x86_64.pkg.tar.zst">mercurial-6.1.1-1-x86_64.pkg.tar.zst</a>               07-Apr-2022 18:26      5M
+<a href="mercurial-6.1.1-1-x86_64.pkg.tar.zst.sig">mercurial-6.1.1-1-x86_64.pkg.tar.zst.sig</a>           07-Apr-2022 18:26     310
+<a href="mercurial-6.1.2-1-x86_64.pkg.tar.zst">mercurial-6.1.2-1-x86_64.pkg.tar.zst</a>               07-May-2022 11:03      5M
+<a href="mercurial-6.1.2-1-x86_64.pkg.tar.zst.sig">mercurial-6.1.2-1-x86_64.pkg.tar.zst.sig</a>           07-May-2022 11:03     310
+</pre><hr></body>
+</html>""" > https_archive.archlinux.org/packages_m_mercurial
+
+echo -e """<html>
+<head><title>Index of /packages/l/libasyncns/</title></head>
+<body>
+<h1>Index of /packages/l/libasyncns/</h1><hr><pre><a href="../">../</a>
+<a href="libasyncns-0.8%2B3%2Bg68cd5af-2-x86_64.pkg.tar.xz">libasyncns-0.8+3+g68cd5af-2-x86_64.pkg.tar.xz</a>      09-Nov-2018 23:39     16K
+<a href="libasyncns-0.8%2B3%2Bg68cd5af-2-x86_64.pkg.tar.xz.sig">libasyncns-0.8+3+g68cd5af-2-x86_64.pkg.tar.xz.sig</a>  09-Nov-2018 23:39     310
+<a href="libasyncns-0.8%2B3%2Bg68cd5af-3-x86_64.pkg.tar.zst">libasyncns-0.8+3+g68cd5af-3-x86_64.pkg.tar.zst</a>     19-May-2020 08:28     17K
+<a href="libasyncns-0.8%2B3%2Bg68cd5af-3-x86_64.pkg.tar.zst.sig">libasyncns-0.8+3+g68cd5af-3-x86_64.pkg.tar.zst.sig</a> 19-May-2020 08:28     566
+<a href="libasyncns-1%3A0.8%2Br3%2Bg68cd5af-1-x86_64.pkg.tar.zst">libasyncns-1:0.8+r3+g68cd5af-1-x86_64.pkg.tar.zst</a>  18-May-2022 17:23     17K
+<a href="libasyncns-1%3A0.8%2Br3%2Bg68cd5af-1-x86_64.pkg.tar.zst.sig">libasyncns-1:0.8+r3+g68cd5af-1-x86_64.pkg.tar.z..&gt;</a> 18-May-2022 17:23     141
+</pre><hr></body>
+</html>""" > https_archive.archlinux.org/packages_l_libasyncns
+
+echo -e """<html>
+<head><title>Index of /packages/p/python-hglib/</title></head>
+<body>
+<h1>Index of /packages/p/python-hglib/</h1><hr><pre><a href="../">../</a>
+<a href="python-hglib-2.6.1-3-any.pkg.tar.xz">python-hglib-2.6.1-3-any.pkg.tar.xz</a>                06-Nov-2019 14:08     40K
+<a href="python-hglib-2.6.1-3-any.pkg.tar.xz.sig">python-hglib-2.6.1-3-any.pkg.tar.xz.sig</a>            06-Nov-2019 14:08     566
+<a href="python-hglib-2.6.2-1-any.pkg.tar.zst">python-hglib-2.6.2-1-any.pkg.tar.zst</a>               19-Nov-2020 22:29     43K
+<a href="python-hglib-2.6.2-1-any.pkg.tar.zst.sig">python-hglib-2.6.2-1-any.pkg.tar.zst.sig</a>           19-Nov-2020 22:29     566
+<a href="python-hglib-2.6.2-2-any.pkg.tar.zst">python-hglib-2.6.2-2-any.pkg.tar.zst</a>               19-Nov-2020 22:31     43K
+<a href="python-hglib-2.6.2-2-any.pkg.tar.zst.sig">python-hglib-2.6.2-2-any.pkg.tar.zst.sig</a>           19-Nov-2020 22:31     566
+<a href="python-hglib-2.6.2-3-any.pkg.tar.zst">python-hglib-2.6.2-3-any.pkg.tar.zst</a>               19-Nov-2020 22:35     43K
+<a href="python-hglib-2.6.2-3-any.pkg.tar.zst.sig">python-hglib-2.6.2-3-any.pkg.tar.zst.sig</a>           19-Nov-2020 22:35     566
+<a href="python-hglib-2.6.2-4-any.pkg.tar.zst">python-hglib-2.6.2-4-any.pkg.tar.zst</a>               03-Dec-2021 00:44     43K
+<a href="python-hglib-2.6.2-4-any.pkg.tar.zst.sig">python-hglib-2.6.2-4-any.pkg.tar.zst.sig</a>           03-Dec-2021 00:44     310
+</pre><hr></body>
+</html>""" > https_archive.archlinux.org/packages_p_python-hglib
+
+echo -e """<html>
+<head><title>Index of /packages/g/gnome-code-assistance/</title></head>
+<body>
+<h1>Index of /packages/g/gnome-code-assistance/</h1><hr><pre><a href="../">../</a>
+<a href="gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-1-x86_64.pkg.tar.xz">gnome-code-assistance-1:3.16.1+15+g0fd8b5f-1-x8..&gt;</a> 10-Nov-2019 20:55      2M
+<a href="gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-1-x86_64.pkg.tar.xz.sig">gnome-code-assistance-1:3.16.1+15+g0fd8b5f-1-x8..&gt;</a> 10-Nov-2019 20:56     310
+<a href="gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-2-x86_64.pkg.tar.zst">gnome-code-assistance-1:3.16.1+15+g0fd8b5f-2-x8..&gt;</a> 28-Mar-2020 15:58      2M
+<a href="gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-2-x86_64.pkg.tar.zst.sig">gnome-code-assistance-1:3.16.1+15+g0fd8b5f-2-x8..&gt;</a> 28-Mar-2020 15:58     310
+<a href="gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-3-x86_64.pkg.tar.zst">gnome-code-assistance-1:3.16.1+15+g0fd8b5f-3-x8..&gt;</a> 05-Jul-2020 15:28      2M
+<a href="gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-3-x86_64.pkg.tar.zst.sig">gnome-code-assistance-1:3.16.1+15+g0fd8b5f-3-x8..&gt;</a> 05-Jul-2020 15:28     590
+<a href="gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-4-x86_64.pkg.tar.zst">gnome-code-assistance-1:3.16.1+15+g0fd8b5f-4-x8..&gt;</a> 12-Nov-2020 17:28      2M
+<a href="gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-4-x86_64.pkg.tar.zst.sig">gnome-code-assistance-1:3.16.1+15+g0fd8b5f-4-x8..&gt;</a> 12-Nov-2020 17:29     310
+<a href="gnome-code-assistance-2%3A3.16.1%2B14%2Bgaad6437-1-x86_64.pkg.tar.zst">gnome-code-assistance-2:3.16.1+14+gaad6437-1-x8..&gt;</a> 24-Feb-2021 16:30      2M
+<a href="gnome-code-assistance-2%3A3.16.1%2B14%2Bgaad6437-1-x86_64.pkg.tar.zst.sig">gnome-code-assistance-2:3.16.1+14+gaad6437-1-x8..&gt;</a> 24-Feb-2021 16:30     141
+<a href="gnome-code-assistance-2%3A3.16.1%2B14%2Bgaad6437-2-x86_64.pkg.tar.zst">gnome-code-assistance-2:3.16.1+14+gaad6437-2-x8..&gt;</a> 02-Dec-2021 23:36      2M
+<a href="gnome-code-assistance-2%3A3.16.1%2B14%2Bgaad6437-2-x86_64.pkg.tar.zst.sig">gnome-code-assistance-2:3.16.1+14+gaad6437-2-x8..&gt;</a> 02-Dec-2021 23:36     566
+<a href="gnome-code-assistance-3.16.1%2B14%2Bgaad6437-1-x86_64.pkg.tar.xz">gnome-code-assistance-3.16.1+14+gaad6437-1-x86_..&gt;</a> 15-Mar-2019 19:23      2M
+<a href="gnome-code-assistance-3.16.1%2B14%2Bgaad6437-1-x86_64.pkg.tar.xz.sig">gnome-code-assistance-3.16.1+14+gaad6437-1-x86_..&gt;</a> 15-Mar-2019 19:23     310
+<a href="gnome-code-assistance-3.16.1%2B14%2Bgaad6437-2-x86_64.pkg.tar.xz">gnome-code-assistance-3.16.1+14+gaad6437-2-x86_..&gt;</a> 24-Aug-2019 20:05      2M
+<a href="gnome-code-assistance-3.16.1%2B14%2Bgaad6437-2-x86_64.pkg.tar.xz.sig">gnome-code-assistance-3.16.1+14+gaad6437-2-x86_..&gt;</a> 24-Aug-2019 20:05     310
+<a href="gnome-code-assistance-3.16.1%2B15%2Bgb9ffc4d-1-x86_64.pkg.tar.xz">gnome-code-assistance-3.16.1+15+gb9ffc4d-1-x86_..&gt;</a> 25-Aug-2019 20:55      2M
+<a href="gnome-code-assistance-3.16.1%2B15%2Bgb9ffc4d-1-x86_64.pkg.tar.xz.sig">gnome-code-assistance-3.16.1+15+gb9ffc4d-1-x86_..&gt;</a> 25-Aug-2019 20:55     310
+<a href="gnome-code-assistance-3%3A3.16.1%2Br14%2Bgaad6437-1-x86_64.pkg.tar.zst">gnome-code-assistance-3:3.16.1+r14+gaad6437-1-x..&gt;</a> 18-May-2022 17:23      2M
+<a href="gnome-code-assistance-3%3A3.16.1%2Br14%2Bgaad6437-1-x86_64.pkg.tar.zst.sig">gnome-code-assistance-3:3.16.1+r14+gaad6437-1-x..&gt;</a> 18-May-2022 17:23     141
+</pre><hr></body>
+</html>""" > https_archive.archlinux.org/packages_g_gnome-code-assistance
+
+# Clean up removing tmp_dir
+rm -rf tmp_dir/
diff --git a/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_d_dialog b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_d_dialog
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_d_dialog
@@ -0,0 +1,52 @@
+<html>
+<head><title>Index of /packages/d/dialog/</title></head>
+<body>
+<h1>Index of /packages/d/dialog/</h1><hr><pre><a href=../>../</a>
+<a href=dialog-1%3A1.3_20190211-1-x86_64.pkg.tar.xz>dialog-1:1.3_20190211-1-x86_64.pkg.tar.xz</a>          13-Feb-2019 08:36    180K
+<a href=dialog-1%3A1.3_20190211-1-x86_64.pkg.tar.xz.sig>dialog-1:1.3_20190211-1-x86_64.pkg.tar.xz.sig</a>      13-Feb-2019 08:36     310
+<a href=dialog-1%3A1.3_20190724-1-x86_64.pkg.tar.xz>dialog-1:1.3_20190724-1-x86_64.pkg.tar.xz</a>          26-Jul-2019 21:39    180K
+<a href=dialog-1%3A1.3_20190724-1-x86_64.pkg.tar.xz.sig>dialog-1:1.3_20190724-1-x86_64.pkg.tar.xz.sig</a>      26-Jul-2019 21:43     310
+<a href=dialog-1%3A1.3_20190728-1-x86_64.pkg.tar.xz>dialog-1:1.3_20190728-1-x86_64.pkg.tar.xz</a>          29-Jul-2019 12:10    180K
+<a href=dialog-1%3A1.3_20190728-1-x86_64.pkg.tar.xz.sig>dialog-1:1.3_20190728-1-x86_64.pkg.tar.xz.sig</a>      29-Jul-2019 12:10     310
+<a href=dialog-1%3A1.3_20190806-1-x86_64.pkg.tar.xz>dialog-1:1.3_20190806-1-x86_64.pkg.tar.xz</a>          07-Aug-2019 04:19    182K
+<a href=dialog-1%3A1.3_20190806-1-x86_64.pkg.tar.xz.sig>dialog-1:1.3_20190806-1-x86_64.pkg.tar.xz.sig</a>      07-Aug-2019 04:19     310
+<a href=dialog-1%3A1.3_20190808-1-x86_64.pkg.tar.xz>dialog-1:1.3_20190808-1-x86_64.pkg.tar.xz</a>          09-Aug-2019 22:49    182K
+<a href=dialog-1%3A1.3_20190808-1-x86_64.pkg.tar.xz.sig>dialog-1:1.3_20190808-1-x86_64.pkg.tar.xz.sig</a>      09-Aug-2019 22:50     310
+<a href=dialog-1%3A1.3_20191110-1-x86_64.pkg.tar.xz>dialog-1:1.3_20191110-1-x86_64.pkg.tar.xz</a>          11-Nov-2019 11:15    183K
+<a href=dialog-1%3A1.3_20191110-1-x86_64.pkg.tar.xz.sig>dialog-1:1.3_20191110-1-x86_64.pkg.tar.xz.sig</a>      11-Nov-2019 11:17     310
+<a href=dialog-1%3A1.3_20191110-2-x86_64.pkg.tar.xz>dialog-1:1.3_20191110-2-x86_64.pkg.tar.xz</a>          13-Nov-2019 17:40    183K
+<a href=dialog-1%3A1.3_20191110-2-x86_64.pkg.tar.xz.sig>dialog-1:1.3_20191110-2-x86_64.pkg.tar.xz.sig</a>      13-Nov-2019 17:41     310
+<a href=dialog-1%3A1.3_20191209-1-x86_64.pkg.tar.xz>dialog-1:1.3_20191209-1-x86_64.pkg.tar.xz</a>          10-Dec-2019 09:56    183K
+<a href=dialog-1%3A1.3_20191209-1-x86_64.pkg.tar.xz.sig>dialog-1:1.3_20191209-1-x86_64.pkg.tar.xz.sig</a>      10-Dec-2019 09:57     310
+<a href=dialog-1%3A1.3_20191210-1-x86_64.pkg.tar.xz>dialog-1:1.3_20191210-1-x86_64.pkg.tar.xz</a>          12-Dec-2019 15:55    184K
+<a href=dialog-1%3A1.3_20191210-1-x86_64.pkg.tar.xz.sig>dialog-1:1.3_20191210-1-x86_64.pkg.tar.xz.sig</a>      12-Dec-2019 15:56     310
+<a href=dialog-1%3A1.3_20200228-1-x86_64.pkg.tar.zst>dialog-1:1.3_20200228-1-x86_64.pkg.tar.zst</a>         06-Mar-2020 02:21    196K
+<a href=dialog-1%3A1.3_20200228-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20200228-1-x86_64.pkg.tar.zst.sig</a>     06-Mar-2020 02:22     310
+<a href=dialog-1%3A1.3_20200327-1-x86_64.pkg.tar.zst>dialog-1:1.3_20200327-1-x86_64.pkg.tar.zst</a>         29-Mar-2020 17:08    196K
+<a href=dialog-1%3A1.3_20200327-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20200327-1-x86_64.pkg.tar.zst.sig</a>     29-Mar-2020 17:09     310
+<a href=dialog-1%3A1.3_20201126-1-x86_64.pkg.tar.zst>dialog-1:1.3_20201126-1-x86_64.pkg.tar.zst</a>         27-Nov-2020 12:19    199K
+<a href=dialog-1%3A1.3_20201126-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20201126-1-x86_64.pkg.tar.zst.sig</a>     27-Nov-2020 12:20     310
+<a href=dialog-1%3A1.3_20210117-1-x86_64.pkg.tar.zst>dialog-1:1.3_20210117-1-x86_64.pkg.tar.zst</a>         18-Jan-2021 18:05    200K
+<a href=dialog-1%3A1.3_20210117-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20210117-1-x86_64.pkg.tar.zst.sig</a>     18-Jan-2021 18:05     310
+<a href=dialog-1%3A1.3_20210306-1-x86_64.pkg.tar.zst>dialog-1:1.3_20210306-1-x86_64.pkg.tar.zst</a>         07-Mar-2021 11:40    201K
+<a href=dialog-1%3A1.3_20210306-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20210306-1-x86_64.pkg.tar.zst.sig</a>     07-Mar-2021 11:41     310
+<a href=dialog-1%3A1.3_20210319-1-x86_64.pkg.tar.zst>dialog-1:1.3_20210319-1-x86_64.pkg.tar.zst</a>         20-Mar-2021 00:12    201K
+<a href=dialog-1%3A1.3_20210319-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20210319-1-x86_64.pkg.tar.zst.sig</a>     20-Mar-2021 00:13     310
+<a href=dialog-1%3A1.3_20210324-1-x86_64.pkg.tar.zst>dialog-1:1.3_20210324-1-x86_64.pkg.tar.zst</a>         26-Mar-2021 17:53    201K
+<a href=dialog-1%3A1.3_20210324-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20210324-1-x86_64.pkg.tar.zst.sig</a>     26-Mar-2021 17:53     310
+<a href=dialog-1%3A1.3_20210509-1-x86_64.pkg.tar.zst>dialog-1:1.3_20210509-1-x86_64.pkg.tar.zst</a>         16-May-2021 02:04    198K
+<a href=dialog-1%3A1.3_20210509-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20210509-1-x86_64.pkg.tar.zst.sig</a>     16-May-2021 02:04     310
+<a href=dialog-1%3A1.3_20210530-1-x86_64.pkg.tar.zst>dialog-1:1.3_20210530-1-x86_64.pkg.tar.zst</a>         31-May-2021 14:59    198K
+<a href=dialog-1%3A1.3_20210530-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20210530-1-x86_64.pkg.tar.zst.sig</a>     31-May-2021 15:00     310
+<a href=dialog-1%3A1.3_20210621-1-x86_64.pkg.tar.zst>dialog-1:1.3_20210621-1-x86_64.pkg.tar.zst</a>         23-Jun-2021 02:59    199K
+<a href=dialog-1%3A1.3_20210621-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20210621-1-x86_64.pkg.tar.zst.sig</a>     23-Jun-2021 03:00     310
+<a href=dialog-1%3A1.3_20211107-1-x86_64.pkg.tar.zst>dialog-1:1.3_20211107-1-x86_64.pkg.tar.zst</a>         09-Nov-2021 14:06    197K
+<a href=dialog-1%3A1.3_20211107-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20211107-1-x86_64.pkg.tar.zst.sig</a>     09-Nov-2021 14:13     310
+<a href=dialog-1%3A1.3_20211214-1-x86_64.pkg.tar.zst>dialog-1:1.3_20211214-1-x86_64.pkg.tar.zst</a>         14-Dec-2021 09:26    197K
+<a href=dialog-1%3A1.3_20211214-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20211214-1-x86_64.pkg.tar.zst.sig</a>     14-Dec-2021 09:27     310
+<a href=dialog-1%3A1.3_20220117-1-x86_64.pkg.tar.zst>dialog-1:1.3_20220117-1-x86_64.pkg.tar.zst</a>         19-Jan-2022 09:56    199K
+<a href=dialog-1%3A1.3_20220117-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20220117-1-x86_64.pkg.tar.zst.sig</a>     19-Jan-2022 09:56     310
+<a href=dialog-1%3A1.3_20220414-1-x86_64.pkg.tar.zst>dialog-1:1.3_20220414-1-x86_64.pkg.tar.zst</a>         16-Apr-2022 03:59    198K
+<a href=dialog-1%3A1.3_20220414-1-x86_64.pkg.tar.zst.sig>dialog-1:1.3_20220414-1-x86_64.pkg.tar.zst.sig</a>     16-Apr-2022 03:59     310
+</pre><hr></body>
+</html>
diff --git a/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_g_gnome-code-assistance b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_g_gnome-code-assistance
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_g_gnome-code-assistance
@@ -0,0 +1,26 @@
+<html>
+<head><title>Index of /packages/g/gnome-code-assistance/</title></head>
+<body>
+<h1>Index of /packages/g/gnome-code-assistance/</h1><hr><pre><a href=../>../</a>
+<a href=gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-1-x86_64.pkg.tar.xz>gnome-code-assistance-1:3.16.1+15+g0fd8b5f-1-x8..&gt;</a> 10-Nov-2019 20:55      2M
+<a href=gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-1-x86_64.pkg.tar.xz.sig>gnome-code-assistance-1:3.16.1+15+g0fd8b5f-1-x8..&gt;</a> 10-Nov-2019 20:56     310
+<a href=gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-2-x86_64.pkg.tar.zst>gnome-code-assistance-1:3.16.1+15+g0fd8b5f-2-x8..&gt;</a> 28-Mar-2020 15:58      2M
+<a href=gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-2-x86_64.pkg.tar.zst.sig>gnome-code-assistance-1:3.16.1+15+g0fd8b5f-2-x8..&gt;</a> 28-Mar-2020 15:58     310
+<a href=gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-3-x86_64.pkg.tar.zst>gnome-code-assistance-1:3.16.1+15+g0fd8b5f-3-x8..&gt;</a> 05-Jul-2020 15:28      2M
+<a href=gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-3-x86_64.pkg.tar.zst.sig>gnome-code-assistance-1:3.16.1+15+g0fd8b5f-3-x8..&gt;</a> 05-Jul-2020 15:28     590
+<a href=gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-4-x86_64.pkg.tar.zst>gnome-code-assistance-1:3.16.1+15+g0fd8b5f-4-x8..&gt;</a> 12-Nov-2020 17:28      2M
+<a href=gnome-code-assistance-1%3A3.16.1%2B15%2Bg0fd8b5f-4-x86_64.pkg.tar.zst.sig>gnome-code-assistance-1:3.16.1+15+g0fd8b5f-4-x8..&gt;</a> 12-Nov-2020 17:29     310
+<a href=gnome-code-assistance-2%3A3.16.1%2B14%2Bgaad6437-1-x86_64.pkg.tar.zst>gnome-code-assistance-2:3.16.1+14+gaad6437-1-x8..&gt;</a> 24-Feb-2021 16:30      2M
+<a href=gnome-code-assistance-2%3A3.16.1%2B14%2Bgaad6437-1-x86_64.pkg.tar.zst.sig>gnome-code-assistance-2:3.16.1+14+gaad6437-1-x8..&gt;</a> 24-Feb-2021 16:30     141
+<a href=gnome-code-assistance-2%3A3.16.1%2B14%2Bgaad6437-2-x86_64.pkg.tar.zst>gnome-code-assistance-2:3.16.1+14+gaad6437-2-x8..&gt;</a> 02-Dec-2021 23:36      2M
+<a href=gnome-code-assistance-2%3A3.16.1%2B14%2Bgaad6437-2-x86_64.pkg.tar.zst.sig>gnome-code-assistance-2:3.16.1+14+gaad6437-2-x8..&gt;</a> 02-Dec-2021 23:36     566
+<a href=gnome-code-assistance-3.16.1%2B14%2Bgaad6437-1-x86_64.pkg.tar.xz>gnome-code-assistance-3.16.1+14+gaad6437-1-x86_..&gt;</a> 15-Mar-2019 19:23      2M
+<a href=gnome-code-assistance-3.16.1%2B14%2Bgaad6437-1-x86_64.pkg.tar.xz.sig>gnome-code-assistance-3.16.1+14+gaad6437-1-x86_..&gt;</a> 15-Mar-2019 19:23     310
+<a href=gnome-code-assistance-3.16.1%2B14%2Bgaad6437-2-x86_64.pkg.tar.xz>gnome-code-assistance-3.16.1+14+gaad6437-2-x86_..&gt;</a> 24-Aug-2019 20:05      2M
+<a href=gnome-code-assistance-3.16.1%2B14%2Bgaad6437-2-x86_64.pkg.tar.xz.sig>gnome-code-assistance-3.16.1+14+gaad6437-2-x86_..&gt;</a> 24-Aug-2019 20:05     310
+<a href=gnome-code-assistance-3.16.1%2B15%2Bgb9ffc4d-1-x86_64.pkg.tar.xz>gnome-code-assistance-3.16.1+15+gb9ffc4d-1-x86_..&gt;</a> 25-Aug-2019 20:55      2M
+<a href=gnome-code-assistance-3.16.1%2B15%2Bgb9ffc4d-1-x86_64.pkg.tar.xz.sig>gnome-code-assistance-3.16.1+15+gb9ffc4d-1-x86_..&gt;</a> 25-Aug-2019 20:55     310
+<a href=gnome-code-assistance-3%3A3.16.1%2Br14%2Bgaad6437-1-x86_64.pkg.tar.zst>gnome-code-assistance-3:3.16.1+r14+gaad6437-1-x..&gt;</a> 18-May-2022 17:23      2M
+<a href=gnome-code-assistance-3%3A3.16.1%2Br14%2Bgaad6437-1-x86_64.pkg.tar.zst.sig>gnome-code-assistance-3:3.16.1+r14+gaad6437-1-x..&gt;</a> 18-May-2022 17:23     141
+</pre><hr></body>
+</html>
diff --git a/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_g_gzip b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_g_gzip
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_g_gzip
@@ -0,0 +1,16 @@
+<html>
+<head><title>Index of /packages/g/gzip/</title></head>
+<body>
+<h1>Index of /packages/g/gzip/</h1><hr><pre><a href=../>../</a>
+<a href=gzip-1.10-1-x86_64.pkg.tar.xz>gzip-1.10-1-x86_64.pkg.tar.xz</a>                      30-Dec-2018 18:38     78K
+<a href=gzip-1.10-1-x86_64.pkg.tar.xz.sig>gzip-1.10-1-x86_64.pkg.tar.xz.sig</a>                  30-Dec-2018 18:38     558
+<a href=gzip-1.10-2-x86_64.pkg.tar.xz>gzip-1.10-2-x86_64.pkg.tar.xz</a>                      06-Oct-2019 16:02     78K
+<a href=gzip-1.10-2-x86_64.pkg.tar.xz.sig>gzip-1.10-2-x86_64.pkg.tar.xz.sig</a>                  06-Oct-2019 16:02     558
+<a href=gzip-1.10-3-x86_64.pkg.tar.xz>gzip-1.10-3-x86_64.pkg.tar.xz</a>                      13-Nov-2019 15:55     78K
+<a href=gzip-1.10-3-x86_64.pkg.tar.xz.sig>gzip-1.10-3-x86_64.pkg.tar.xz.sig</a>                  13-Nov-2019 15:55     566
+<a href=gzip-1.11-1-x86_64.pkg.tar.zst>gzip-1.11-1-x86_64.pkg.tar.zst</a>                     04-Sep-2021 02:02     82K
+<a href=gzip-1.11-1-x86_64.pkg.tar.zst.sig>gzip-1.11-1-x86_64.pkg.tar.zst.sig</a>                 04-Sep-2021 02:02     558
+<a href=gzip-1.12-1-x86_64.pkg.tar.zst>gzip-1.12-1-x86_64.pkg.tar.zst</a>                     07-Apr-2022 17:35     80K
+<a href=gzip-1.12-1-x86_64.pkg.tar.zst.sig>gzip-1.12-1-x86_64.pkg.tar.zst.sig</a>                 07-Apr-2022 17:35     566
+</pre><hr></body>
+</html>
diff --git a/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_l_libasyncns b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_l_libasyncns
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_l_libasyncns
@@ -0,0 +1,12 @@
+<html>
+<head><title>Index of /packages/l/libasyncns/</title></head>
+<body>
+<h1>Index of /packages/l/libasyncns/</h1><hr><pre><a href=../>../</a>
+<a href=libasyncns-0.8%2B3%2Bg68cd5af-2-x86_64.pkg.tar.xz>libasyncns-0.8+3+g68cd5af-2-x86_64.pkg.tar.xz</a>      09-Nov-2018 23:39     16K
+<a href=libasyncns-0.8%2B3%2Bg68cd5af-2-x86_64.pkg.tar.xz.sig>libasyncns-0.8+3+g68cd5af-2-x86_64.pkg.tar.xz.sig</a>  09-Nov-2018 23:39     310
+<a href=libasyncns-0.8%2B3%2Bg68cd5af-3-x86_64.pkg.tar.zst>libasyncns-0.8+3+g68cd5af-3-x86_64.pkg.tar.zst</a>     19-May-2020 08:28     17K
+<a href=libasyncns-0.8%2B3%2Bg68cd5af-3-x86_64.pkg.tar.zst.sig>libasyncns-0.8+3+g68cd5af-3-x86_64.pkg.tar.zst.sig</a> 19-May-2020 08:28     566
+<a href=libasyncns-1%3A0.8%2Br3%2Bg68cd5af-1-x86_64.pkg.tar.zst>libasyncns-1:0.8+r3+g68cd5af-1-x86_64.pkg.tar.zst</a>  18-May-2022 17:23     17K
+<a href=libasyncns-1%3A0.8%2Br3%2Bg68cd5af-1-x86_64.pkg.tar.zst.sig>libasyncns-1:0.8+r3+g68cd5af-1-x86_64.pkg.tar.z..&gt;</a> 18-May-2022 17:23     141
+</pre><hr></body>
+</html>
diff --git a/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_m_mercurial b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_m_mercurial
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_m_mercurial
@@ -0,0 +1,97 @@
+
+<html>
+<head><title>Index of /packages/m/mercurial/</title></head>
+<body>
+<h1>Index of /packages/m/mercurial/</h1><hr><pre><a href=../>../</a>
+<a href=mercurial-4.8.2-1-x86_64.pkg.tar.xz>mercurial-4.8.2-1-x86_64.pkg.tar.xz</a>                15-Jan-2019 20:31      4M
+<a href=mercurial-4.8.2-1-x86_64.pkg.tar.xz.sig>mercurial-4.8.2-1-x86_64.pkg.tar.xz.sig</a>            15-Jan-2019 20:31     310
+<a href=mercurial-4.9-1-x86_64.pkg.tar.xz>mercurial-4.9-1-x86_64.pkg.tar.xz</a>                  12-Feb-2019 06:15      4M
+<a href=mercurial-4.9-1-x86_64.pkg.tar.xz.sig>mercurial-4.9-1-x86_64.pkg.tar.xz.sig</a>              12-Feb-2019 06:15     310
+<a href=mercurial-4.9.1-1-x86_64.pkg.tar.xz>mercurial-4.9.1-1-x86_64.pkg.tar.xz</a>                30-Mar-2019 17:40      4M
+<a href=mercurial-4.9.1-1-x86_64.pkg.tar.xz.sig>mercurial-4.9.1-1-x86_64.pkg.tar.xz.sig</a>            30-Mar-2019 17:40     310
+<a href=mercurial-5.0-1-x86_64.pkg.tar.xz>mercurial-5.0-1-x86_64.pkg.tar.xz</a>                  10-May-2019 08:44      4M
+<a href=mercurial-5.0-1-x86_64.pkg.tar.xz.sig>mercurial-5.0-1-x86_64.pkg.tar.xz.sig</a>              10-May-2019 08:44     310
+<a href=mercurial-5.0.1-1-x86_64.pkg.tar.xz>mercurial-5.0.1-1-x86_64.pkg.tar.xz</a>                10-Jun-2019 18:05      4M
+<a href=mercurial-5.0.1-1-x86_64.pkg.tar.xz.sig>mercurial-5.0.1-1-x86_64.pkg.tar.xz.sig</a>            10-Jun-2019 18:05     310
+<a href=mercurial-5.0.2-1-x86_64.pkg.tar.xz>mercurial-5.0.2-1-x86_64.pkg.tar.xz</a>                10-Jul-2019 04:58      4M
+<a href=mercurial-5.0.2-1-x86_64.pkg.tar.xz.sig>mercurial-5.0.2-1-x86_64.pkg.tar.xz.sig</a>            10-Jul-2019 04:58     310
+<a href=mercurial-5.1-1-x86_64.pkg.tar.xz>mercurial-5.1-1-x86_64.pkg.tar.xz</a>                  17-Aug-2019 19:58      4M
+<a href=mercurial-5.1-1-x86_64.pkg.tar.xz.sig>mercurial-5.1-1-x86_64.pkg.tar.xz.sig</a>              17-Aug-2019 19:58     310
+<a href=mercurial-5.1.2-1-x86_64.pkg.tar.xz>mercurial-5.1.2-1-x86_64.pkg.tar.xz</a>                08-Oct-2019 08:38      4M
+<a href=mercurial-5.1.2-1-x86_64.pkg.tar.xz.sig>mercurial-5.1.2-1-x86_64.pkg.tar.xz.sig</a>            08-Oct-2019 08:38     310
+<a href=mercurial-5.2-1-x86_64.pkg.tar.xz>mercurial-5.2-1-x86_64.pkg.tar.xz</a>                  28-Nov-2019 06:41      4M
+<a href=mercurial-5.2-1-x86_64.pkg.tar.xz.sig>mercurial-5.2-1-x86_64.pkg.tar.xz.sig</a>              28-Nov-2019 06:41     310
+<a href=mercurial-5.2.1-1-x86_64.pkg.tar.zst>mercurial-5.2.1-1-x86_64.pkg.tar.zst</a>               06-Jan-2020 12:35      4M
+<a href=mercurial-5.2.1-1-x86_64.pkg.tar.zst.sig>mercurial-5.2.1-1-x86_64.pkg.tar.zst.sig</a>           06-Jan-2020 12:35     310
+<a href=mercurial-5.2.2-1-x86_64.pkg.tar.zst>mercurial-5.2.2-1-x86_64.pkg.tar.zst</a>               15-Jan-2020 14:07      5M
+<a href=mercurial-5.2.2-1-x86_64.pkg.tar.zst.sig>mercurial-5.2.2-1-x86_64.pkg.tar.zst.sig</a>           15-Jan-2020 14:07     310
+<a href=mercurial-5.2.2-2-x86_64.pkg.tar.zst>mercurial-5.2.2-2-x86_64.pkg.tar.zst</a>               30-Jan-2020 20:05      4M
+<a href=mercurial-5.2.2-2-x86_64.pkg.tar.zst.sig>mercurial-5.2.2-2-x86_64.pkg.tar.zst.sig</a>           30-Jan-2020 20:05     310
+<a href=mercurial-5.3-1-x86_64.pkg.tar.zst>mercurial-5.3-1-x86_64.pkg.tar.zst</a>                 13-Feb-2020 21:40      5M
+<a href=mercurial-5.3-1-x86_64.pkg.tar.zst.sig>mercurial-5.3-1-x86_64.pkg.tar.zst.sig</a>             13-Feb-2020 21:40     566
+<a href=mercurial-5.3.1-1-x86_64.pkg.tar.zst>mercurial-5.3.1-1-x86_64.pkg.tar.zst</a>               07-Mar-2020 23:58      4M
+<a href=mercurial-5.3.1-1-x86_64.pkg.tar.zst.sig>mercurial-5.3.1-1-x86_64.pkg.tar.zst.sig</a>           07-Mar-2020 23:58     310
+<a href=mercurial-5.3.2-1-x86_64.pkg.tar.zst>mercurial-5.3.2-1-x86_64.pkg.tar.zst</a>               05-Apr-2020 17:48      4M
+<a href=mercurial-5.3.2-1-x86_64.pkg.tar.zst.sig>mercurial-5.3.2-1-x86_64.pkg.tar.zst.sig</a>           05-Apr-2020 17:48     310
+<a href=mercurial-5.4-1-x86_64.pkg.tar.zst>mercurial-5.4-1-x86_64.pkg.tar.zst</a>                 10-May-2020 17:19      5M
+<a href=mercurial-5.4-1-x86_64.pkg.tar.zst.sig>mercurial-5.4-1-x86_64.pkg.tar.zst.sig</a>             10-May-2020 17:19     310
+<a href=mercurial-5.4-2-x86_64.pkg.tar.zst>mercurial-5.4-2-x86_64.pkg.tar.zst</a>                 04-Jun-2020 13:38      5M
+<a href=mercurial-5.4-2-x86_64.pkg.tar.zst.sig>mercurial-5.4-2-x86_64.pkg.tar.zst.sig</a>             04-Jun-2020 13:38     310
+<a href=mercurial-5.4.1-1-x86_64.pkg.tar.zst>mercurial-5.4.1-1-x86_64.pkg.tar.zst</a>               06-Jun-2020 12:28      5M
+<a href=mercurial-5.4.1-1-x86_64.pkg.tar.zst.sig>mercurial-5.4.1-1-x86_64.pkg.tar.zst.sig</a>           06-Jun-2020 12:28     310
+<a href=mercurial-5.4.2-1-x86_64.pkg.tar.zst>mercurial-5.4.2-1-x86_64.pkg.tar.zst</a>               02-Jul-2020 21:35      5M
+<a href=mercurial-5.4.2-1-x86_64.pkg.tar.zst.sig>mercurial-5.4.2-1-x86_64.pkg.tar.zst.sig</a>           02-Jul-2020 21:35     566
+<a href=mercurial-5.5-1-x86_64.pkg.tar.zst>mercurial-5.5-1-x86_64.pkg.tar.zst</a>                 05-Aug-2020 10:39      5M
+<a href=mercurial-5.5-1-x86_64.pkg.tar.zst.sig>mercurial-5.5-1-x86_64.pkg.tar.zst.sig</a>             05-Aug-2020 10:39     310
+<a href=mercurial-5.5.1-1-x86_64.pkg.tar.zst>mercurial-5.5.1-1-x86_64.pkg.tar.zst</a>               03-Sep-2020 19:05      5M
+<a href=mercurial-5.5.1-1-x86_64.pkg.tar.zst.sig>mercurial-5.5.1-1-x86_64.pkg.tar.zst.sig</a>           03-Sep-2020 19:05     310
+<a href=mercurial-5.5.2-1-x86_64.pkg.tar.zst>mercurial-5.5.2-1-x86_64.pkg.tar.zst</a>               07-Oct-2020 20:05      5M
+<a href=mercurial-5.5.2-1-x86_64.pkg.tar.zst.sig>mercurial-5.5.2-1-x86_64.pkg.tar.zst.sig</a>           07-Oct-2020 20:05     310
+<a href=mercurial-5.6-1-x86_64.pkg.tar.zst>mercurial-5.6-1-x86_64.pkg.tar.zst</a>                 03-Nov-2020 17:26      5M
+<a href=mercurial-5.6-1-x86_64.pkg.tar.zst.sig>mercurial-5.6-1-x86_64.pkg.tar.zst.sig</a>             03-Nov-2020 17:26     310
+<a href=mercurial-5.6-2-x86_64.pkg.tar.zst>mercurial-5.6-2-x86_64.pkg.tar.zst</a>                 09-Nov-2020 16:54      5M
+<a href=mercurial-5.6-2-x86_64.pkg.tar.zst.sig>mercurial-5.6-2-x86_64.pkg.tar.zst.sig</a>             09-Nov-2020 16:54     310
+<a href=mercurial-5.6-3-x86_64.pkg.tar.zst>mercurial-5.6-3-x86_64.pkg.tar.zst</a>                 11-Nov-2020 15:20      5M
+<a href=mercurial-5.6-3-x86_64.pkg.tar.zst.sig>mercurial-5.6-3-x86_64.pkg.tar.zst.sig</a>             11-Nov-2020 15:20     310
+<a href=mercurial-5.6.1-1-x86_64.pkg.tar.zst>mercurial-5.6.1-1-x86_64.pkg.tar.zst</a>               05-Dec-2020 12:29      5M
+<a href=mercurial-5.6.1-1-x86_64.pkg.tar.zst.sig>mercurial-5.6.1-1-x86_64.pkg.tar.zst.sig</a>           05-Dec-2020 12:29     310
+<a href=mercurial-5.7-1-x86_64.pkg.tar.zst>mercurial-5.7-1-x86_64.pkg.tar.zst</a>                 04-Feb-2021 08:41      5M
+<a href=mercurial-5.7-1-x86_64.pkg.tar.zst.sig>mercurial-5.7-1-x86_64.pkg.tar.zst.sig</a>             04-Feb-2021 08:41     310
+<a href=mercurial-5.7.1-1-x86_64.pkg.tar.zst>mercurial-5.7.1-1-x86_64.pkg.tar.zst</a>               11-Mar-2021 07:51      5M
+<a href=mercurial-5.7.1-1-x86_64.pkg.tar.zst.sig>mercurial-5.7.1-1-x86_64.pkg.tar.zst.sig</a>           11-Mar-2021 07:51     310
+<a href=mercurial-5.8-1-x86_64.pkg.tar.zst>mercurial-5.8-1-x86_64.pkg.tar.zst</a>                 04-May-2021 17:55      5M
+<a href=mercurial-5.8-1-x86_64.pkg.tar.zst.sig>mercurial-5.8-1-x86_64.pkg.tar.zst.sig</a>             04-May-2021 17:55     310
+<a href=mercurial-5.8-2-x86_64.pkg.tar.zst>mercurial-5.8-2-x86_64.pkg.tar.zst</a>                 08-May-2021 22:08      5M
+<a href=mercurial-5.8-2-x86_64.pkg.tar.zst.sig>mercurial-5.8-2-x86_64.pkg.tar.zst.sig</a>             08-May-2021 22:08     310
+<a href=mercurial-5.8.1-1-x86_64.pkg.tar.zst>mercurial-5.8.1-1-x86_64.pkg.tar.zst</a>               13-Jul-2021 07:04      5M
+<a href=mercurial-5.8.1-1-x86_64.pkg.tar.zst.sig>mercurial-5.8.1-1-x86_64.pkg.tar.zst.sig</a>           13-Jul-2021 07:04     310
+<a href=mercurial-5.9.1-1-x86_64.pkg.tar.zst>mercurial-5.9.1-1-x86_64.pkg.tar.zst</a>               01-Sep-2021 12:48      5M
+<a href=mercurial-5.9.1-1-x86_64.pkg.tar.zst.sig>mercurial-5.9.1-1-x86_64.pkg.tar.zst.sig</a>           01-Sep-2021 12:48     310
+<a href=mercurial-5.9.1-2-x86_64.pkg.tar.zst>mercurial-5.9.1-2-x86_64.pkg.tar.zst</a>               24-Sep-2021 17:39      5M
+<a href=mercurial-5.9.1-2-x86_64.pkg.tar.zst.sig>mercurial-5.9.1-2-x86_64.pkg.tar.zst.sig</a>           24-Sep-2021 17:39     310
+<a href=mercurial-5.9.2-1-x86_64.pkg.tar.zst>mercurial-5.9.2-1-x86_64.pkg.tar.zst</a>               07-Oct-2021 21:52      5M
+<a href=mercurial-5.9.2-1-x86_64.pkg.tar.zst.sig>mercurial-5.9.2-1-x86_64.pkg.tar.zst.sig</a>           07-Oct-2021 21:52     310
+<a href=mercurial-5.9.3-1-x86_64.pkg.tar.zst>mercurial-5.9.3-1-x86_64.pkg.tar.zst</a>               27-Oct-2021 07:20      5M
+<a href=mercurial-5.9.3-1-x86_64.pkg.tar.zst.sig>mercurial-5.9.3-1-x86_64.pkg.tar.zst.sig</a>           27-Oct-2021 07:20     310
+<a href=mercurial-6.0-1-x86_64.pkg.tar.zst>mercurial-6.0-1-x86_64.pkg.tar.zst</a>                 25-Nov-2021 17:10      5M
+<a href=mercurial-6.0-1-x86_64.pkg.tar.zst.sig>mercurial-6.0-1-x86_64.pkg.tar.zst.sig</a>             25-Nov-2021 17:10     310
+<a href=mercurial-6.0-2-x86_64.pkg.tar.zst>mercurial-6.0-2-x86_64.pkg.tar.zst</a>                 30-Nov-2021 20:53      5M
+<a href=mercurial-6.0-2-x86_64.pkg.tar.zst.sig>mercurial-6.0-2-x86_64.pkg.tar.zst.sig</a>             30-Nov-2021 20:53     310
+<a href=mercurial-6.0-3-x86_64.pkg.tar.zst>mercurial-6.0-3-x86_64.pkg.tar.zst</a>                 02-Dec-2021 12:06      5M
+<a href=mercurial-6.0-3-x86_64.pkg.tar.zst.sig>mercurial-6.0-3-x86_64.pkg.tar.zst.sig</a>             02-Dec-2021 12:06     310
+<a href=mercurial-6.0.1-1-x86_64.pkg.tar.zst>mercurial-6.0.1-1-x86_64.pkg.tar.zst</a>               08-Jan-2022 10:07      5M
+<a href=mercurial-6.0.1-1-x86_64.pkg.tar.zst.sig>mercurial-6.0.1-1-x86_64.pkg.tar.zst.sig</a>           08-Jan-2022 10:07     310
+<a href=mercurial-6.0.2-1-x86_64.pkg.tar.zst>mercurial-6.0.2-1-x86_64.pkg.tar.zst</a>               03-Feb-2022 13:28      5M
+<a href=mercurial-6.0.2-1-x86_64.pkg.tar.zst.sig>mercurial-6.0.2-1-x86_64.pkg.tar.zst.sig</a>           03-Feb-2022 13:28     310
+<a href=mercurial-6.0.3-1-x86_64.pkg.tar.zst>mercurial-6.0.3-1-x86_64.pkg.tar.zst</a>               23-Feb-2022 20:50      5M
+<a href=mercurial-6.0.3-1-x86_64.pkg.tar.zst.sig>mercurial-6.0.3-1-x86_64.pkg.tar.zst.sig</a>           23-Feb-2022 20:50     310
+<a href=mercurial-6.1-1-x86_64.pkg.tar.zst>mercurial-6.1-1-x86_64.pkg.tar.zst</a>                 03-Mar-2022 18:06      5M
+<a href=mercurial-6.1-1-x86_64.pkg.tar.zst.sig>mercurial-6.1-1-x86_64.pkg.tar.zst.sig</a>             03-Mar-2022 18:06     310
+<a href=mercurial-6.1-2-x86_64.pkg.tar.zst>mercurial-6.1-2-x86_64.pkg.tar.zst</a>                 04-Mar-2022 08:37      5M
+<a href=mercurial-6.1-2-x86_64.pkg.tar.zst.sig>mercurial-6.1-2-x86_64.pkg.tar.zst.sig</a>             04-Mar-2022 08:37     310
+<a href=mercurial-6.1.1-1-x86_64.pkg.tar.zst>mercurial-6.1.1-1-x86_64.pkg.tar.zst</a>               07-Apr-2022 18:26      5M
+<a href=mercurial-6.1.1-1-x86_64.pkg.tar.zst.sig>mercurial-6.1.1-1-x86_64.pkg.tar.zst.sig</a>           07-Apr-2022 18:26     310
+<a href=mercurial-6.1.2-1-x86_64.pkg.tar.zst>mercurial-6.1.2-1-x86_64.pkg.tar.zst</a>               07-May-2022 11:03      5M
+<a href=mercurial-6.1.2-1-x86_64.pkg.tar.zst.sig>mercurial-6.1.2-1-x86_64.pkg.tar.zst.sig</a>           07-May-2022 11:03     310
+</pre><hr></body>
+</html>
diff --git a/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_p_python-hglib b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_p_python-hglib
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tests/data/https_archive.archlinux.org/packages_p_python-hglib
@@ -0,0 +1,16 @@
+<html>
+<head><title>Index of /packages/p/python-hglib/</title></head>
+<body>
+<h1>Index of /packages/p/python-hglib/</h1><hr><pre><a href=../>../</a>
+<a href=python-hglib-2.6.1-3-any.pkg.tar.xz>python-hglib-2.6.1-3-any.pkg.tar.xz</a>                06-Nov-2019 14:08     40K
+<a href=python-hglib-2.6.1-3-any.pkg.tar.xz.sig>python-hglib-2.6.1-3-any.pkg.tar.xz.sig</a>            06-Nov-2019 14:08     566
+<a href=python-hglib-2.6.2-1-any.pkg.tar.zst>python-hglib-2.6.2-1-any.pkg.tar.zst</a>               19-Nov-2020 22:29     43K
+<a href=python-hglib-2.6.2-1-any.pkg.tar.zst.sig>python-hglib-2.6.2-1-any.pkg.tar.zst.sig</a>           19-Nov-2020 22:29     566
+<a href=python-hglib-2.6.2-2-any.pkg.tar.zst>python-hglib-2.6.2-2-any.pkg.tar.zst</a>               19-Nov-2020 22:31     43K
+<a href=python-hglib-2.6.2-2-any.pkg.tar.zst.sig>python-hglib-2.6.2-2-any.pkg.tar.zst.sig</a>           19-Nov-2020 22:31     566
+<a href=python-hglib-2.6.2-3-any.pkg.tar.zst>python-hglib-2.6.2-3-any.pkg.tar.zst</a>               19-Nov-2020 22:35     43K
+<a href=python-hglib-2.6.2-3-any.pkg.tar.zst.sig>python-hglib-2.6.2-3-any.pkg.tar.zst.sig</a>           19-Nov-2020 22:35     566
+<a href=python-hglib-2.6.2-4-any.pkg.tar.zst>python-hglib-2.6.2-4-any.pkg.tar.zst</a>               03-Dec-2021 00:44     43K
+<a href=python-hglib-2.6.2-4-any.pkg.tar.zst.sig>python-hglib-2.6.2-4-any.pkg.tar.zst.sig</a>           03-Dec-2021 00:44     310
+</pre><hr></body>
+</html>
diff --git a/swh/lister/arch/tests/data/https_archive.archlinux.org/repos_last_community_os_x86_64_community.files.tar.gz b/swh/lister/arch/tests/data/https_archive.archlinux.org/repos_last_community_os_x86_64_community.files.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001

literal 0
Hc$@<O00001

diff --git a/swh/lister/arch/tests/data/https_archive.archlinux.org/repos_last_core_os_x86_64_core.files.tar.gz b/swh/lister/arch/tests/data/https_archive.archlinux.org/repos_last_core_os_x86_64_core.files.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001

literal 0
Hc$@<O00001

diff --git a/swh/lister/arch/tests/data/https_archive.archlinux.org/repos_last_extra_os_x86_64_extra.files.tar.gz b/swh/lister/arch/tests/data/https_archive.archlinux.org/repos_last_extra_os_x86_64_extra.files.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001

literal 0
Hc$@<O00001

diff --git a/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/aarch64_community_community.files.tar.gz b/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/aarch64_community_community.files.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001

literal 0
Hc$@<O00001

diff --git a/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/aarch64_core_core.files.tar.gz b/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/aarch64_core_core.files.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001

literal 0
Hc$@<O00001

diff --git a/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/aarch64_extra_extra.files.tar.gz b/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/aarch64_extra_extra.files.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001

literal 0
Hc$@<O00001

diff --git a/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/armv7h_community_community.files.tar.gz b/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/armv7h_community_community.files.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001

literal 0
Hc$@<O00001

diff --git a/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/armv7h_core_core.files.tar.gz b/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/armv7h_core_core.files.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001

literal 0
Hc$@<O00001

diff --git a/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/armv7h_extra_extra.files.tar.gz b/swh/lister/arch/tests/data/https_uk.mirror.archlinuxarm.org/armv7h_extra_extra.files.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001

literal 0
Hc$@<O00001

diff --git a/swh/lister/arch/tests/test_lister.py b/swh/lister/arch/tests/test_lister.py
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tests/test_lister.py
@@ -0,0 +1,1088 @@
+# Copyright (C) 2022  The Software Heritage developers
+# See the AUTHORS file at the top-level directory of this distribution
+# License: GNU General Public License version 3, or any later version
+# See top-level LICENSE file for more information
+from swh.lister.arch.lister import ArchLister
+
+expected_origins = [
+    {
+        "url": "https://archlinux.org/packages/core/x86_64/dialog",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20190211-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20190211-1",
+                    "length": 180000,
+                    "filename": "dialog-1:1.3_20190211-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-02-13T08:36:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20190724-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20190724-1",
+                    "length": 180000,
+                    "filename": "dialog-1:1.3_20190724-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-07-26T21:39:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20190728-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20190728-1",
+                    "length": 180000,
+                    "filename": "dialog-1:1.3_20190728-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-07-29T12:10:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20190806-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20190806-1",
+                    "length": 182000,
+                    "filename": "dialog-1:1.3_20190806-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-08-07T04:19:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20190808-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20190808-1",
+                    "length": 182000,
+                    "filename": "dialog-1:1.3_20190808-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-08-09T22:49:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20191110-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20191110-1",
+                    "length": 183000,
+                    "filename": "dialog-1:1.3_20191110-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-11-11T11:15:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20191110-2-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20191110-2",
+                    "length": 183000,
+                    "filename": "dialog-1:1.3_20191110-2-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-11-13T17:40:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20191209-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20191209-1",
+                    "length": 183000,
+                    "filename": "dialog-1:1.3_20191209-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-12-10T09:56:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20191210-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20191210-1",
+                    "length": 184000,
+                    "filename": "dialog-1:1.3_20191210-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-12-12T15:55:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20200228-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20200228-1",
+                    "length": 196000,
+                    "filename": "dialog-1:1.3_20200228-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-03-06T02:21:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20200327-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20200327-1",
+                    "length": 196000,
+                    "filename": "dialog-1:1.3_20200327-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-03-29T17:08:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20201126-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20201126-1",
+                    "length": 199000,
+                    "filename": "dialog-1:1.3_20201126-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-11-27T12:19:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20210117-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20210117-1",
+                    "length": 200000,
+                    "filename": "dialog-1:1.3_20210117-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-01-18T18:05:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20210306-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20210306-1",
+                    "length": 201000,
+                    "filename": "dialog-1:1.3_20210306-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-03-07T11:40:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20210319-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20210319-1",
+                    "length": 201000,
+                    "filename": "dialog-1:1.3_20210319-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-03-20T00:12:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20210324-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20210324-1",
+                    "length": 201000,
+                    "filename": "dialog-1:1.3_20210324-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-03-26T17:53:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20210509-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20210509-1",
+                    "length": 198000,
+                    "filename": "dialog-1:1.3_20210509-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-05-16T02:04:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20210530-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20210530-1",
+                    "length": 198000,
+                    "filename": "dialog-1:1.3_20210530-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-05-31T14:59:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20210621-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20210621-1",
+                    "length": 199000,
+                    "filename": "dialog-1:1.3_20210621-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-06-23T02:59:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20211107-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20211107-1",
+                    "length": 197000,
+                    "filename": "dialog-1:1.3_20211107-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-11-09T14:06:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20211214-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20211214-1",
+                    "length": 197000,
+                    "filename": "dialog-1:1.3_20211214-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-12-14T09:26:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20220117-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20220117-1",
+                    "length": 199000,
+                    "filename": "dialog-1:1.3_20220117-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-01-19T09:56:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/d/dialog/dialog-1:1.3_20220414-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "dialog",
+                    "version": "1:1.3_20220414-1",
+                    "length": 198000,
+                    "filename": "dialog-1:1.3_20220414-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-04-16T03:59:00",
+                },
+            ]
+        },
+    },
+    {
+        "url": "https://archlinux.org/packages/community/x86_64/gnome-code-assistance",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-1:3.16.1+15+g0fd8b5f-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "1:3.16.1+15+g0fd8b5f-1",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-1:3.16.1+15+g0fd8b5f-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "last_modified": "2019-11-10T20:55:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-1:3.16.1+15+g0fd8b5f-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "1:3.16.1+15+g0fd8b5f-2",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-1:3.16.1+15+g0fd8b5f-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "last_modified": "2020-03-28T15:58:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-1:3.16.1+15+g0fd8b5f-3-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "1:3.16.1+15+g0fd8b5f-3",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-1:3.16.1+15+g0fd8b5f-3-x86_64.pkg.tar.zst",  # noqa: B950
+                    "last_modified": "2020-07-05T15:28:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-1:3.16.1+15+g0fd8b5f-4-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "1:3.16.1+15+g0fd8b5f-4",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-1:3.16.1+15+g0fd8b5f-4-x86_64.pkg.tar.zst",  # noqa: B950
+                    "last_modified": "2020-11-12T17:28:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-2:3.16.1+14+gaad6437-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "2:3.16.1+14+gaad6437-1",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-2:3.16.1+14+gaad6437-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "last_modified": "2021-02-24T16:30:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-2:3.16.1+14+gaad6437-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "2:3.16.1+14+gaad6437-2",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-2:3.16.1+14+gaad6437-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "last_modified": "2021-12-02T23:36:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-3.16.1+14+gaad6437-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "3.16.1+14+gaad6437-1",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-3.16.1+14+gaad6437-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "last_modified": "2019-03-15T19:23:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-3.16.1+14+gaad6437-2-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "3.16.1+14+gaad6437-2",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-3.16.1+14+gaad6437-2-x86_64.pkg.tar.xz",  # noqa: B950
+                    "last_modified": "2019-08-24T20:05:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-3.16.1+15+gb9ffc4d-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "3.16.1+15+gb9ffc4d-1",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-3.16.1+15+gb9ffc4d-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "last_modified": "2019-08-25T20:55:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gnome-code-assistance/gnome-code-assistance-3:3.16.1+r14+gaad6437-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "community",
+                    "name": "gnome-code-assistance",
+                    "version": "3:3.16.1+r14+gaad6437-1",
+                    "length": 2000000,
+                    "filename": "gnome-code-assistance-3:3.16.1+r14+gaad6437-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "last_modified": "2022-05-18T17:23:00",
+                },
+            ]
+        },
+    },
+    {
+        "url": "https://archlinux.org/packages/core/x86_64/gzip",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gzip/gzip-1.10-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "gzip",
+                    "version": "1.10-1",
+                    "length": 78000,
+                    "filename": "gzip-1.10-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2018-12-30T18:38:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gzip/gzip-1.10-2-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "gzip",
+                    "version": "1.10-2",
+                    "length": 78000,
+                    "filename": "gzip-1.10-2-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-10-06T16:02:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gzip/gzip-1.10-3-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "gzip",
+                    "version": "1.10-3",
+                    "length": 78000,
+                    "filename": "gzip-1.10-3-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-11-13T15:55:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gzip/gzip-1.11-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "gzip",
+                    "version": "1.11-1",
+                    "length": 82000,
+                    "filename": "gzip-1.11-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-09-04T02:02:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/g/gzip/gzip-1.12-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "core",
+                    "name": "gzip",
+                    "version": "1.12-1",
+                    "length": 80000,
+                    "filename": "gzip-1.12-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-04-07T17:35:00",
+                },
+            ]
+        },
+    },
+    {
+        "url": "https://archlinux.org/packages/extra/x86_64/libasyncns",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://archive.archlinux.org/packages/l/libasyncns/libasyncns-0.8+3+g68cd5af-2-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "libasyncns",
+                    "version": "0.8+3+g68cd5af-2",
+                    "length": 16000,
+                    "filename": "libasyncns-0.8+3+g68cd5af-2-x86_64.pkg.tar.xz",
+                    "last_modified": "2018-11-09T23:39:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/l/libasyncns/libasyncns-0.8+3+g68cd5af-3-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "libasyncns",
+                    "version": "0.8+3+g68cd5af-3",
+                    "length": 17000,
+                    "filename": "libasyncns-0.8+3+g68cd5af-3-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-05-19T08:28:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/l/libasyncns/libasyncns-1:0.8+r3+g68cd5af-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "libasyncns",
+                    "version": "1:0.8+r3+g68cd5af-1",
+                    "length": 17000,
+                    "filename": "libasyncns-1:0.8+r3+g68cd5af-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "last_modified": "2022-05-18T17:23:00",
+                },
+            ]
+        },
+    },
+    {
+        "url": "https://archlinux.org/packages/extra/x86_64/mercurial",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-4.8.2-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "4.8.2-1",
+                    "length": 4000000,
+                    "filename": "mercurial-4.8.2-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-01-15T20:31:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-4.9-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "4.9-1",
+                    "length": 4000000,
+                    "filename": "mercurial-4.9-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-02-12T06:15:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-4.9.1-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "4.9.1-1",
+                    "length": 4000000,
+                    "filename": "mercurial-4.9.1-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-03-30T17:40:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.0-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.0-1",
+                    "length": 4000000,
+                    "filename": "mercurial-5.0-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-05-10T08:44:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.0.1-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.0.1-1",
+                    "length": 4000000,
+                    "filename": "mercurial-5.0.1-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-06-10T18:05:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.0.2-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.0.2-1",
+                    "length": 4000000,
+                    "filename": "mercurial-5.0.2-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-07-10T04:58:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.1-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.1-1",
+                    "length": 4000000,
+                    "filename": "mercurial-5.1-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-08-17T19:58:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.1.2-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.1.2-1",
+                    "length": 4000000,
+                    "filename": "mercurial-5.1.2-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-10-08T08:38:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.2-1-x86_64.pkg.tar.xz",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.2-1",
+                    "length": 4000000,
+                    "filename": "mercurial-5.2-1-x86_64.pkg.tar.xz",
+                    "last_modified": "2019-11-28T06:41:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.2.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.2.1-1",
+                    "length": 4000000,
+                    "filename": "mercurial-5.2.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-01-06T12:35:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.2.2-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.2.2-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.2.2-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-01-15T14:07:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.2.2-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.2.2-2",
+                    "length": 4000000,
+                    "filename": "mercurial-5.2.2-2-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-01-30T20:05:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.3-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.3-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.3-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-02-13T21:40:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.3.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.3.1-1",
+                    "length": 4000000,
+                    "filename": "mercurial-5.3.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-03-07T23:58:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.3.2-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.3.2-1",
+                    "length": 4000000,
+                    "filename": "mercurial-5.3.2-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-04-05T17:48:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.4-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.4-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.4-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-05-10T17:19:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.4-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.4-2",
+                    "length": 5000000,
+                    "filename": "mercurial-5.4-2-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-06-04T13:38:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.4.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.4.1-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.4.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-06-06T12:28:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.4.2-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.4.2-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.4.2-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-07-02T21:35:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.5-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.5-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.5-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-08-05T10:39:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.5.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.5.1-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.5.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-09-03T19:05:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.5.2-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.5.2-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.5.2-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-10-07T20:05:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.6-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.6-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.6-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-11-03T17:26:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.6-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.6-2",
+                    "length": 5000000,
+                    "filename": "mercurial-5.6-2-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-11-09T16:54:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.6-3-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.6-3",
+                    "length": 5000000,
+                    "filename": "mercurial-5.6-3-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-11-11T15:20:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.6.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.6.1-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.6.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2020-12-05T12:29:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.7-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.7-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.7-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-02-04T08:41:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.7.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.7.1-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.7.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-03-11T07:51:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.8-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.8-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.8-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-05-04T17:55:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.8-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.8-2",
+                    "length": 5000000,
+                    "filename": "mercurial-5.8-2-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-05-08T22:08:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.8.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.8.1-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.8.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-07-13T07:04:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.9.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.9.1-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.9.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-09-01T12:48:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.9.1-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.9.1-2",
+                    "length": 5000000,
+                    "filename": "mercurial-5.9.1-2-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-09-24T17:39:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.9.2-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.9.2-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.9.2-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-10-07T21:52:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-5.9.3-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "5.9.3-1",
+                    "length": 5000000,
+                    "filename": "mercurial-5.9.3-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-10-27T07:20:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.0-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.0-1",
+                    "length": 5000000,
+                    "filename": "mercurial-6.0-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-11-25T17:10:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.0-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.0-2",
+                    "length": 5000000,
+                    "filename": "mercurial-6.0-2-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-11-30T20:53:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.0-3-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.0-3",
+                    "length": 5000000,
+                    "filename": "mercurial-6.0-3-x86_64.pkg.tar.zst",
+                    "last_modified": "2021-12-02T12:06:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.0.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.0.1-1",
+                    "length": 5000000,
+                    "filename": "mercurial-6.0.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-01-08T10:07:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.0.2-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.0.2-1",
+                    "length": 5000000,
+                    "filename": "mercurial-6.0.2-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-02-03T13:28:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.0.3-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.0.3-1",
+                    "length": 5000000,
+                    "filename": "mercurial-6.0.3-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-02-23T20:50:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.1-1",
+                    "length": 5000000,
+                    "filename": "mercurial-6.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-03-03T18:06:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.1-2-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.1-2",
+                    "length": 5000000,
+                    "filename": "mercurial-6.1-2-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-03-04T08:37:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.1.1-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.1.1-1",
+                    "length": 5000000,
+                    "filename": "mercurial-6.1.1-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-04-07T18:26:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/m/mercurial/mercurial-6.1.2-1-x86_64.pkg.tar.zst",  # noqa: B950
+                    "arch": "x86_64",
+                    "repo": "extra",
+                    "name": "mercurial",
+                    "version": "6.1.2-1",
+                    "length": 5000000,
+                    "filename": "mercurial-6.1.2-1-x86_64.pkg.tar.zst",
+                    "last_modified": "2022-05-07T11:03:00",
+                },
+            ]
+        },
+    },
+    {
+        "url": "https://archlinux.org/packages/community/any/python-hglib",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://archive.archlinux.org/packages/p/python-hglib/python-hglib-2.6.1-3-any.pkg.tar.xz",  # noqa: B950
+                    "arch": "any",
+                    "repo": "community",
+                    "name": "python-hglib",
+                    "version": "2.6.1-3",
+                    "length": 40000,
+                    "filename": "python-hglib-2.6.1-3-any.pkg.tar.xz",
+                    "last_modified": "2019-11-06T14:08:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/p/python-hglib/python-hglib-2.6.2-1-any.pkg.tar.zst",  # noqa: B950
+                    "arch": "any",
+                    "repo": "community",
+                    "name": "python-hglib",
+                    "version": "2.6.2-1",
+                    "length": 43000,
+                    "filename": "python-hglib-2.6.2-1-any.pkg.tar.zst",
+                    "last_modified": "2020-11-19T22:29:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/p/python-hglib/python-hglib-2.6.2-2-any.pkg.tar.zst",  # noqa: B950
+                    "arch": "any",
+                    "repo": "community",
+                    "name": "python-hglib",
+                    "version": "2.6.2-2",
+                    "length": 43000,
+                    "filename": "python-hglib-2.6.2-2-any.pkg.tar.zst",
+                    "last_modified": "2020-11-19T22:31:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/p/python-hglib/python-hglib-2.6.2-3-any.pkg.tar.zst",  # noqa: B950
+                    "arch": "any",
+                    "repo": "community",
+                    "name": "python-hglib",
+                    "version": "2.6.2-3",
+                    "length": 43000,
+                    "filename": "python-hglib-2.6.2-3-any.pkg.tar.zst",
+                    "last_modified": "2020-11-19T22:35:00",
+                },
+                {
+                    "url": "https://archive.archlinux.org/packages/p/python-hglib/python-hglib-2.6.2-4-any.pkg.tar.zst",  # noqa: B950
+                    "arch": "any",
+                    "repo": "community",
+                    "name": "python-hglib",
+                    "version": "2.6.2-4",
+                    "length": 43000,
+                    "filename": "python-hglib-2.6.2-4-any.pkg.tar.zst",
+                    "last_modified": "2021-12-03T00:44:00",
+                },
+            ]
+        },
+    },
+    {
+        "url": "https://archlinuxarm.org/packages/aarch64/gzip",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://uk.mirror.archlinuxarm.org/aarch64/core/gzip-1.12-1-aarch64.pkg.tar.xz",  # noqa: B950
+                    "arch": "aarch64",
+                    "name": "gzip",
+                    "repo": "core",
+                    "length": 79640,
+                    "version": "1.12-1",
+                    "filename": "gzip-1.12-1-aarch64.pkg.tar.xz",
+                    "last_modified": "2022-04-07T21:08:14",
+                }
+            ]
+        },
+    },
+    {
+        "url": "https://archlinuxarm.org/packages/aarch64/mercurial",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://uk.mirror.archlinuxarm.org/aarch64/extra/mercurial-6.1.3-1-aarch64.pkg.tar.xz",  # noqa: B950
+                    "arch": "aarch64",
+                    "name": "mercurial",
+                    "repo": "extra",
+                    "length": 4931228,
+                    "version": "6.1.3-1",
+                    "filename": "mercurial-6.1.3-1-aarch64.pkg.tar.xz",
+                    "last_modified": "2022-06-02T22:15:18",
+                }
+            ]
+        },
+    },
+    {
+        "url": "https://archlinuxarm.org/packages/any/python-hglib",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://uk.mirror.archlinuxarm.org/any/community/python-hglib-2.6.2-4-any.pkg.tar.xz",  # noqa: B950
+                    "arch": "any",
+                    "name": "python-hglib",
+                    "repo": "community",
+                    "length": 41432,
+                    "version": "2.6.2-4",
+                    "filename": "python-hglib-2.6.2-4-any.pkg.tar.xz",
+                    "last_modified": "2021-12-14T16:22:20",
+                }
+            ]
+        },
+    },
+    {
+        "url": "https://archlinuxarm.org/packages/armv7h/gzip",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://uk.mirror.archlinuxarm.org/armv7h/core/gzip-1.12-1-armv7h.pkg.tar.xz",  # noqa: B950
+                    "arch": "armv7h",
+                    "name": "gzip",
+                    "repo": "core",
+                    "length": 78468,
+                    "version": "1.12-1",
+                    "filename": "gzip-1.12-1-armv7h.pkg.tar.xz",
+                    "last_modified": "2022-04-07T21:08:35",
+                }
+            ]
+        },
+    },
+    {
+        "url": "https://archlinuxarm.org/packages/armv7h/mercurial",
+        "visit_type": "arch",
+        "extra_loader_arguments": {
+            "artifacts": [
+                {
+                    "url": "https://uk.mirror.archlinuxarm.org/armv7h/extra/mercurial-6.1.3-1-armv7h.pkg.tar.xz",  # noqa: B950
+                    "arch": "armv7h",
+                    "name": "mercurial",
+                    "repo": "extra",
+                    "length": 4897816,
+                    "version": "6.1.3-1",
+                    "filename": "mercurial-6.1.3-1-armv7h.pkg.tar.xz",
+                    "last_modified": "2022-06-02T22:13:08",
+                }
+            ]
+        },
+    },
+]
+
+
+def test_arch_lister(datadir, requests_mock_datadir, swh_scheduler):
+    lister = ArchLister(scheduler=swh_scheduler)
+    res = lister.run()
+
+    assert res.pages == 9
+    assert res.origins == 12
+
+    expected_origins_sorted = sorted(expected_origins, key=lambda x: x.get("url"))
+    scheduler_origins_sorted = sorted(
+        swh_scheduler.get_listed_origins(lister.lister_obj.id).results,
+        key=lambda x: x.url,
+    )
+
+    assert len(scheduler_origins_sorted) == len(expected_origins_sorted)
+
+    assert [
+        (
+            scheduled.visit_type,
+            scheduled.url,
+            scheduled.extra_loader_arguments.get("artifacts"),
+        )
+        for scheduled in scheduler_origins_sorted
+    ] == [
+        (
+            "arch",
+            expected.get("url"),
+            expected.get("extra_loader_arguments").get("artifacts"),
+        )
+        for expected in expected_origins_sorted
+    ]
diff --git a/swh/lister/arch/tests/test_tasks.py b/swh/lister/arch/tests/test_tasks.py
new file mode 100644
--- /dev/null
+++ b/swh/lister/arch/tests/test_tasks.py
@@ -0,0 +1,31 @@
+# Copyright (C) 2022  The Software Heritage developers
+# See the AUTHORS file at the top-level directory of this distribution
+# License: GNU General Public License version 3, or any later version
+# See top-level LICENSE file for more information
+
+from swh.lister.pattern import ListerStats
+
+
+def test_arch_ping(swh_scheduler_celery_app, swh_scheduler_celery_worker):
+    res = swh_scheduler_celery_app.send_task("swh.lister.arch.tasks.ping")
+    assert res
+    res.wait()
+    assert res.successful()
+    assert res.result == "OK"
+
+
+def test_arch_lister(swh_scheduler_celery_app, swh_scheduler_celery_worker, mocker):
+    # setup the mocked ArchLister
+    lister = mocker.patch("swh.lister.arch.tasks.ArchLister")
+    lister.from_configfile.return_value = lister
+    stats = ListerStats(pages=42, origins=42)
+    lister.run.return_value = stats
+
+    res = swh_scheduler_celery_app.send_task("swh.lister.arch.tasks.ArchListerTask")
+    assert res
+    res.wait()
+    assert res.successful()
+    assert res.result == stats.dict()
+
+    lister.from_configfile.assert_called_once_with()
+    lister.run.assert_called_once_with()