Arch Linux: Package and database builder
1.7K
Builds packages based on PKGBUILD.
Initialize data container:
docker create --name='builder_data' nfnty/arch-builder --gpginit
docker start builder_data
Check the logs for public key that can be imported on clients for package validation:
docker logs builder_data
All packages and database are stored in builder_data persistent storage under /builder/pkgdest. Retrieve path by issuing:
docker inspect --format='{{ (index .Volumes "/builder/pkgdest") }}' builder_data
Build yaourt and remove container afterwards:
docker run --rm --volumes-from='builder_data' nfnty/arch-builder --aur yaourt
Create persistent container that builds ranger-git from my git repo nfnty/pkgbuilds and adds it to the database nfnty:
docker run --volumes-from='builder_data' --name='builder_ranger-git' nfnty/arch-builder \
--git 'https://github.com/nfnty/pkgbuilds.git' --db 'nfnty' --path 'ranger-git'
Now if ranger-git PKGBUILD has been updated or a recompilation is wanted:
docker start builder_ranger-git
usage: builder.py [-h]
(--aur NAME | --git URL | --local PATH | --remote URL | --gpginit | --dbreset | --pkgcleanup)
[--db NAME] [--path PATH] [--pathfind NAME] [--noclean]
[--nosign] [--noforce] [--removeold] [--repackage]
[--noprepare]
Arch package build script
optional arguments:
-h, --help show this help message and exit
--aur NAME Build from AUR
--git URL Build from remote git repository
--local PATH Build from local path
--remote URL Build from remote PKGBUILD or archive
--gpginit Initialize GPG in /var/lib/builder/gnupg
--dbreset Reset database
--pkgcleanup Remove packages not in database
--db NAME Create database in pkgdest root
--path PATH Relative path to PATH_PKGBUILD directory
--pathfind NAME Package name to find
--noclean No builddir cleaning
--nosign No package/database signing
--noforce No overwriting current package
--removeold Remove old package after build
--repackage Only run package()
--noprepare Do not run prepare()
Content type
Image
Digest
sha256:b60be6d82…
Size
415.1 MB
Last updated
over 7 years ago
docker pull nfnty/arch-builder