This is a tool to test a Gentoo ebuild and its dependencies. The idea is that the ebuild is emerged in a clean (and current) stage3 Docker container.
Requirements
Using require Docker and FUSE. Docker must be configured to use the devicemapper storage driver. This can be achieved with the following inside /etc/docker/daemon.json:
{
"storage-driver": "devicemapper"
}
Usage
We are going to assume that the user has a local git clone of the portage tree in
/usr/local/git/gentoo
We have added a new ebuild and would like to verify that the build dependencies are all correct. We can build the package (ATOM) with:
ebuildtester --portage-dir /usr/local/git/gentoo \
--atom ATOM \
--use USE1 USE2
where we have specified two USE flags, USE1 and USE2. The ebuildtester command will now create a docker container and start installing the ATOM. All specified dependencies will be installed as well.
Command line arguments
The command understands the following command line arguments:
usage: ebuildtester [-h] [--version] [--atom ATOM [ATOM ...]] [--binhost BINHOST] [--live-ebuild]
[--manual] --portage-dir PORTAGE_DIR [--overlay-dir OVERLAY_DIR] [--update]
[--install-basic-packages] [--threads N] [--use USE [USE ...]]
[--global-use GLOBAL_USE [GLOBAL_USE ...]] [--unmask ATOM] [--unstable]
[--gcc-version VER] [--python-single-target PYTHON_SINGLE_TARGET]
[--python-targets PYTHON_TARGETS] [--rm] [--storage-opt STORAGE_OPT [STORAGE_OPT ...]]
[--with-X] [--with-vnc] [--profile PROFILE] [--features FEATURES [FEATURES ...]]
[--docker-image DOCKER_IMAGE] [--docker-command DOCKER_COMMAND] [--pull]
[--show-options] [--ccache CCACHE_DIR]
A dockerized approach to test a Gentoo package within a clean stage3.
options:
-h, --help show this help message and exit
--version show program's version number and exit
--atom ATOM [ATOM ...]
The package atom(s) to install
--binhost BINHOST Binhost URI
--live-ebuild Unmask the live ebuild of the atom
--manual Install package manually
--portage-dir PORTAGE_DIR
The local portage directory
--overlay-dir OVERLAY_DIR
Add overlay dir (can be used multiple times)
--update Update container before installing atom
--install-basic-packages
Install basic packages after container starts
--threads N Use N (default 8) threads to build packages
--use USE [USE ...] The use flags for the atom
--global-use GLOBAL_USE [GLOBAL_USE ...]
Set global USE flag
--unmask ATOM Unmask atom (can be used multiple times)
--unstable Globally 'unstable' system, i.e. ~amd64
--gcc-version VER Use gcc version VER
--python-single-target PYTHON_SINGLE_TARGET
Specify a PYTHON_SINGLE_TARGET
--python-targets PYTHON_TARGETS
Specify a PYTHON_TARGETS
--rm Remove container after session is done
--storage-opt STORAGE_OPT [STORAGE_OPT ...]
Storage driver options for all volumes (same as Docker param)
--with-X Globally enable the X USE flag
--with-vnc Install VNC server to test graphical applications
--profile PROFILE The profile to use (default = default/linux/amd64/17.1)
--features FEATURES [FEATURES ...]
Set FEATURES, see https://wiki.gentoo.org/wiki/FEATURES (default = ['-sandbox',
'-usersandbox', 'userfetch'])
--docker-image DOCKER_IMAGE
Specify the docker image to use (default = gentoo/stage3)
--docker-command DOCKER_COMMAND
Specify the docker command
--pull Download latest docker image
--show-options Show currently selected options and defaults
--ccache CCACHE_DIR Path to mount that contains ccache cache
Metadata
Release files for ebuildtester 41
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ebuildtester-41.tar.gz | 22.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ebuildtester-41-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 34.2 kB
Release files / ebuildtester-41.tar.gz
| Download URL | ebuildtester-41.tar.gz |
|---|---|
| Size | 22.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0c10d9a1016895c7ad823f7a60dd9f920642195aa0ade2b47d4d90012786b4d6
|
|
BLAKE2b-256 checksum How to use checksums |
166476444aa212d0b73842c9e41851c26e8f6255c915ddfd2a41a2e8f206f2a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.8.10
|
Release files / ebuildtester-41-py2.py3-none-any.whl
| Download URL | ebuildtester-41-py2.py3-none-any.whl |
|---|---|
| Size | 11.8 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
70a59c3741b7b9c4b9734dc084b316ddfea50e0194d69ce02f6e633be8fc59e9
|
|
BLAKE2b-256 checksum How to use checksums |
e0279718d9edc772d81b21513d2c037ebd76bbfa37b6cfe6ad996be01bd110e9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.8.10
|