amprolla

devuan's apt repo merger
git clone https://git.parazyd.org/amprolla
Log | Files | Refs | README | LICENSE

README.md (1830B)


      1 amprolla
      2 ========
      3 
      4 <img src="contrib/amprolla.png" width="64">
      5 
      6 amprolla is an apt repository merger originally intended for use with
      7 the [Devuan](https://devuan.org) infrastructure. This version is the
      8 third iteration of the software. The original version of amprolla was
      9 not performing well in terms of speed, and the second version was never
     10 finished - therefore this version has emerged.
     11 
     12 amprolla is a tool that will merge a number of different apt-based
     13 repositories into one, while giving control over (not) including given
     14 packages, architectures, or any specific package metadata. Upon completing
     15 the merge, amprolla will generate and optionally create GnuPG signatures
     16 of the according `Release` files.
     17 
     18 
     19 Dependencies
     20 ------------
     21 
     22 amprolla requires Python 3, the lowest version it's been tested on was
     23 Python 3.4. It also requires the python-requests library.
     24 
     25 ### Devuan/Debian
     26 
     27 ```
     28 rsync gnupg2 python3-requests
     29 ```
     30 
     31 ### Gentoo:
     32 
     33 ```
     34 net-misc/rsync app-crypt/gnupg dev-python/requests
     35 ```
     36 
     37 
     38 Basic usage
     39 -----------
     40 
     41 Copy `lib/config.def.py` to `lib/config.py` and edit `lib/config.py` to
     42 your needs, and then run `amprolla_init.py`. This will download the
     43 repositories we will merge afterwards. When this is done, you can run
     44 `amprolla_merge.py` which will perform the actual merge, and finally
     45 sign the Release files needed. The first time this is done, it is
     46 advisable to run the script found in `contrib/populate_aliases.sh` so
     47 it can fill in the needed symlinks to the different suites. Make sure
     48 you set the correct paths and names in the script.
     49 
     50 To perform incremental updates, run `orchestrate.sh` with a cron job
     51 in your desired intervals. Edit the script to set the correct paths.
     52 
     53 `nginx` and `lighttpd` configurations can be found in `contrib`.
     54 
     55 More documentation should be found in the `doc` directory.