Using a metalink resolves to a specific mirror at runtime, and downloads each rpm from that repository. We want to move to using the org.osbuild.files source, which means that we must save the url to each rpm in the source definition, which will be determined by which mirror is used to generate the config. If we use metalinks to generate the source configuration, the mirror used will be arbitrary. Instead, we want to pick the best mirror explicitly, ideally in a way that is independent of the location depsolving happens in (which will be different from the location the rpms are downloaded to). We can choose explicitly by passing baseurl rather than metalink to dnf, so move in that direction now by replacing all metalinks by baseurls in our dnf configuration. Signed-off-by: Tom Gundersen <teg@jklm.no> |
||
|---|---|---|
| .github/workflows | ||
| assemblers | ||
| docs | ||
| osbuild | ||
| runners | ||
| samples | ||
| sources | ||
| stages | ||
| test | ||
| .editorconfig | ||
| .gitignore | ||
| .packit.yaml | ||
| .pylintrc | ||
| .travis.yml | ||
| bump-version.sh | ||
| LICENSE | ||
| Makefile | ||
| MANIFEST.in | ||
| osbuild.spec | ||
| README.md | ||
| RELEASE.md | ||
| setup.py | ||
| tree-diff | ||
OSBuild
Build-Pipelines for Operating System Artifacts
OSBuild is a pipeline-based build system for operating system artifacts. It defines a universal pipeline description and a build system to execute them, producing artifacts like operating system images, working towards an image build pipeline that is more comprehensible, reproducible, and extendable.
See the osbuild(1) man-page for details on how to run osbuild, the definition
of the pipeline description, and more.
Project
- Website: https://www.osbuild.org
- Bug Tracker: https://github.com/osbuild/osbuild/issues
Requirements
The requirements for this project are:
python >= 3.7systemd-nspawn >= 244
Additionally, the built-in stages require:
bash >= 5.0coreutils >= 8.31curl >= 7.68qemu-img >= 4.2.0rpm >= 4.15tar >= 1.32util-linux >= 235
At build-time, the following software is required:
python-docutils >= 0.13pkg-config >= 0.29
Build
The standard python package system is used. Consult upstream documentation for detailed help. In most situations the following commands are sufficient to build and install from source:
python setup.py build
python setup.py install --skip-build --root=/
The man-pages require python-docutils and can be built via:
rst2man docs/<input-file>.rst <output-file>
Repository:
- web: https://github.com/osbuild/osbuild
- https:
https://github.com/osbuild/osbuild.git - ssh:
git@github.com:osbuild/osbuild.git
License:
- Apache-2.0
- See LICENSE file for details.