myrepo

A tool to create your own Arch Linux repository

MIT License

Stars
5

myrepo

A (experimental) tool to create your own Arch Linux repository

Example

We'll use cat ./packages.txt.example as an example:

base
base-devel
linux
linux-firmware
sudo python -m myrepo --packages ./packages.txt.example

This will create a repo structure like so:

.
 community
  os
      x86_64
          gnome-code-assistance-2:3.16.1+14+gaad6437-2-x86_64.pkg.tar.zst
          gnome-code-assistance-2:3.16.1+14+gaad6437-2-x86_64.pkg.tar.zst.sig
 core
  os
      x86_64
          acl-2.3.1-1-x86_64.pkg.tar.zst
          acl-2.3.1-1-x86_64.pkg.tar.zst.sig
          core.db -> core.db.tar.gz
          core.db.tar.gz
          core.db.tar.gz.old
          core.files -> core.files.tar.gz
          core.files.tar.gz
          core.files.tar.gz.old
...
 extra
  os
      x86_64
          bash-completion-2.11-2-any.pkg.tar.zst
          bash-completion-2.11-2-any.pkg.tar.zst.sig
          extra.db -> extra.db.tar.gz
          extra.db.tar.gz
          extra.db.tar.gz.old
          extra.files -> extra.files.tar.gz
          extra.files.tar.gz
          extra.files.tar.gz.old
          libcroco-0.6.13-2-x86_64.pkg.tar.zst
          libcroco-0.6.13-2-x86_64.pkg.tar.zst.sig
          libgee-0.20.4-1-x86_64.pkg.tar.zst
          libgee-0.20.4-1-x86_64.pkg.tar.zst.sig
          libsysprof-capture-3.42.1-2-x86_64.pkg.tar.zst
          libsysprof-capture-3.42.1-2-x86_64.pkg.tar.zst.sig
          libxml2-2.9.12-7-x86_64.pkg.tar.zst
          libxml2-2.9.12-7-x86_64.pkg.tar.zst.sig
 testing
     os
         x86_64

All dependencies from the four packages will be there. --path can override the base location of the repo from /srv/repo to somewhere else.

--mirror-list defaults to /etc/pacman.d/mirrorlist and can be overriden.