Skip to main content

An Arch Linux custom repository manager

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

Arch Linux Custom Repository Manager

PyPI - Version PyPI - Python Version PyPI - License

This program is intended to manage an Arch Linux custom repository hosted on a server accessible through rsync (for example, on a VPS or a NAS with a /path/to/www folder served over the web by a web server).

It works by synchronizing the remote repository on the local machine using rsync, and then mainly uses repo-add to manage this repository to finally synchronizing back to the remote server.

It requires to run on an Arch Linux distribution, and simply behaves as a wrapper around some common programs:

Program From package Used for
uname core/coreutils Detecting the architecture of the local machine
rsync extra/rsync Synchronizing the repository
tar core/tar Reading inside the repository database
GnuPG core/gnupg Signing the packages and the repository
repo-add core/pacman Managing the packages in the repository

[!NOTE] The CLI of this program is made with cleo, used by poetry.

Global options

Option Short Required Description
host H yes Specify the host on which the repository is hosted
remote_root r yes The path to the repository, on the remote host
user u no The remote user who owns the repository
Defaults to the current local user
repository d no The name of the repository
Defaults to the name of the directory

[!IMPORTANT] Currently, some options are required by the CLI as it is the only way to pass information to the ACRM.

Commands

ls

List all the packages with their version in the repository.

acrm -H my_vps_or_nas -r /home/vps_user/path/to/my/repository ls
+------ repository ------+
| Package name | version |
+--------------+---------+
| acrm         | 0.1.1-1 |
+--------------+---------+

add

Add a package to the repository.

acrm -H my_vps_or_nas -r /home/vps_user/path/to/my/repository add -k gpg@example.com acrm-0.1.1-1-x86_64.pgk.tar.zst

The -k key_identifier option allows to specify the gpg key used to sign the package and the repository. If omitted, gpg will automatically choose a default one.

rm

Remove a package from the repository.

acrm -H my_vps_or_nas -r /home/vps_user/path/to/my/repository rm -k gpg@example.com acrm

dl

Download a package from the repository.

acrm -H my_vps_or_nas -r /home/vps_user/path/to/my/repository dl acrm

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

acrm-0.1.3.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

acrm-0.1.3-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file acrm-0.1.3.tar.gz.

File metadata

  • Download URL: acrm-0.1.3.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for acrm-0.1.3.tar.gz
Algorithm Hash digest
SHA256 c95943eaee88d7b974e989ab7824d473d6bc06bf953abce53ccef32ce71dc8c1
MD5 17b6d97674041353ee5ec61b0f22de70
BLAKE2b-256 a7499a7ce19433074933408a47d29e099f7270a38c661eae72630070e1e46e00

See more details on using hashes here.

Provenance

The following attestation bundles were made for acrm-0.1.3.tar.gz:

Publisher: release.yml on mistiru/acrm

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file acrm-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: acrm-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for acrm-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b62cd753a27893c8059b628a7e3ecb33322b6cce6bb096080ca49411afd4c03e
MD5 14dca41e8409eba24a536761cb52a1d7
BLAKE2b-256 70bbbe6c71b7b9ba9013c69518cde8d87f6a7b1f64b954a21230d16ac6ac900c

See more details on using hashes here.

Provenance

The following attestation bundles were made for acrm-0.1.3-py3-none-any.whl:

Publisher: release.yml on mistiru/acrm

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page