ArcH Linux ReposItory MANager
Go to file
Evgeniy Alekseev 59f2992559 do not use set_defaults for architecture arguments
according to the source code defaults always updates the values
dictionary. This in this specific case it is impossible to override the
value it will be always empty list.

In order to handle it we are adding another property to the Handler
class which allows to run with None architecture list.

This particular set_defaults behaviour is still useful for other cases
when we have to run command without any specific architecture
2021-10-03 00:59:24 +03:00
.github change spelling for distro name 2021-09-13 02:49:22 +03:00
docs add package request endpoint 2021-10-01 08:58:50 +03:00
package Release 1.4.0 2021-10-01 09:25:35 +03:00
src/ahriman do not use set_defaults for architecture arguments 2021-10-03 00:59:24 +03:00
tests do not use set_defaults for architecture arguments 2021-10-03 00:59:24 +03:00
.bandit-test.yml use nosec instead of disabling mktemp rule 2021-08-11 02:51:29 +03:00
.bandit.yml add bandit integration and fix its warnings 2021-08-11 02:45:13 +03:00
.gitignore add manpage 2021-09-19 13:56:11 +03:00
.pylintrc logging rethink 2021-08-17 00:23:34 +03:00
AUTHORS more templates 2021-03-29 00:13:20 +03:00
COPYING uploader demo 2021-03-05 04:10:29 +03:00
Makefile docs update 2021-09-26 14:39:35 +03:00
README.md change spelling for distro name 2021-09-13 02:49:22 +03:00
setup.cfg Auth support (#25) 2021-09-02 23:36:00 +03:00
setup.py add debugtoolbar support 2021-09-26 12:31:12 +03:00
web.png documentation update 2021-09-10 03:32:45 +03:00

ArcH Linux ReposItory MANager

build status CodeFactor

Wrapper for managing custom repository inspired by repo-scripts.

Features

  • Install-configure-forget manager for own repository.

  • Multi-architecture support.

  • VCS packages support.

  • Sign support with gpg (repository, package, per package settings).

  • Synchronization to remote services (rsync, s3) and report generation (html).

  • Dependency manager.

  • Repository status interface with optional authorization and control options:

    web interface

Installation and run

For installation details please refer to the documentation. For command help, --help subcommand must be used, e.g.:

$ ahriman --help
usage: ahriman [-h] [-a ARCHITECTURE] [-c CONFIGURATION] [--force] [-l LOCK] [--no-log] [--no-report] [--unsafe] [-v]
               {add,check,clean,config,create-user,init,key-import,rebuild,remove,remove-unknown,report,search,setup,sign,status,status-update,sync,update,web} ...

ArcH Linux ReposItory MANager

optional arguments:
  -h, --help            show this help message and exit
  -a ARCHITECTURE, --architecture ARCHITECTURE
                        target architectures (can be used multiple times) (default: None)
  -c CONFIGURATION, --configuration CONFIGURATION
                        configuration path (default: /etc/ahriman.ini)
  --force               force run, remove file lock (default: False)
  -l LOCK, --lock LOCK  lock file (default: /tmp/ahriman.lock)
  --no-log              redirect all log messages to stderr (default: False)
  --no-report           force disable reporting to web service (default: False)
  --unsafe              allow to run ahriman as non-ahriman user (default: False)
  -v, --version         show program's version number and exit

command:
  {add,check,clean,config,create-user,init,key-import,rebuild,remove,remove-unknown,report,search,setup,sign,status,status-update,sync,update,web}
                        command to run
    add                 add package
    check               check for updates
    clean               clean local caches
    config              dump configuration
    create-user         create user for web services
    init                create repository tree
    key-import          import PGP key
    rebuild             rebuild repository
    remove              remove package
    remove-unknown      remove unknown packages
    report              generate report
    search              search for package
    setup               initial service configuration
    sign                sign packages
    status              get package status
    status-update       update package status
    sync                sync repository
    update              update packages
    web                 start web server

Subcommands have own help message as well.

Configuration

Every available option is described in the documentation.