Package- and image building tool for Kupfer Linux. Documentation: https://kupfer.gitlab.io/kupferbootstrap
Find a file
2023-01-06 03:14:31 +01:00
.vscode Add formatting 2021-08-08 18:24:56 +02:00
bin Make main.py the main entrypoint again and call docker wrapper enforcement from cli() callback 2021-09-26 17:19:30 +02:00
cache cache: move cache.py to new module cache/cli.py for uniformity 2022-11-09 20:19:04 +01:00
chroot typecheck: add --check-untyped-defs and fix some associated type errors 2022-11-09 20:19:04 +01:00
config typecheck: add --check-untyped-defs and fix some associated type errors 2022-11-09 20:19:04 +01:00
devices devices/test_deviceinfo.py: add test for deviceinfo python parser variant handling 2022-11-09 20:19:04 +01:00
distro distro/distro: add get_kupfer_url() for resolving the repo branch 2022-12-08 17:51:37 +01:00
docs docs/versions: fix version selector being hidden behind TOC sidebar 2023-01-04 01:21:03 +01:00
exec exec/file: remove_file(): use --one-file-system when recursive is requested 2023-01-06 03:14:31 +01:00
flavours config: move code from __init__.py into cli.py 2022-11-09 20:19:04 +01:00
image implement explicit Optional type hints for =None parameters 2022-11-09 20:19:04 +01:00
local/bin Dockerfile: clean up pkgconfig-aarch64 leftover 2022-11-09 19:39:59 +01:00
net implement explicit Optional type hints for =None parameters 2022-11-09 20:19:04 +01:00
packages packages/pkgbuild: track whether pkg is built on a per-architecture basis 2022-12-11 03:02:00 +01:00
wrapper implement explicit Optional type hints for =None parameters 2022-11-09 20:19:04 +01:00
.gitignore .gitignore: add *.xml 2022-12-15 07:09:08 +01:00
.gitlab-ci.yml docs: cache versioned html to tarball for speed and CI uploads 2023-01-04 01:21:00 +01:00
binfmt.py binfmt: refactor to support optionally working in Chroot 2022-12-07 15:04:14 +01:00
constants.py constants: add SRCINFO_TARBALL_FILE and SRCINFO_TARBALL_URL 2022-12-09 03:47:14 +01:00
dataclass.py dataclass: support UnionType (A | B) 2022-12-07 13:21:52 +01:00
Dockerfile Dockerfile: clean up pkgconfig-aarch64 leftover 2022-11-09 19:39:59 +01:00
format.sh add shellscript for running pytest, shellcheck *.sh 2022-08-17 00:50:20 +02:00
generator.py implement explicit Optional type hints for =None parameters 2022-11-09 20:19:04 +01:00
integration_tests.py packages/cli: add --switch-branch to cmd_init 2022-12-11 03:01:55 +01:00
LICENSE LICENSE: Add GPLv3 as was decided ages ago on Matrix. 2022-02-28 04:26:08 +01:00
logger.py logger.setup_logging(): add log_setup parameter to disable log output from setup 2022-08-15 06:17:26 +02:00
main.py config: remove accidental scheme validation circumvention, improve errors, warn on config loading failure in main() 2022-11-09 20:19:04 +01:00
pytest.sh pytest: move coverage flags from .gitlab-ci.yml to pytest.sh, add test_requirements.txt for pip 2022-11-09 20:19:04 +01:00
README.md readme: point to online kupfer docs, use full config init instead of non-interactive 2022-11-09 20:19:04 +01:00
requirements.txt utils: add download_file() 2022-12-08 17:51:37 +01:00
setup.cfg Add formatting 2021-08-08 18:24:56 +02:00
test_requirements.txt pytest: move coverage flags from .gitlab-ci.yml to pytest.sh, add test_requirements.txt for pip 2022-11-09 20:19:04 +01:00
tox.ini tox.ini: specify maximum line length 2022-08-08 02:49:16 +02:00
typecheck.sh typecheck: add --check-untyped-defs and fix some associated type errors 2022-11-09 20:19:04 +01:00
utils.py utils: add download_file() 2022-12-08 17:51:37 +01:00
version.txt Initial commit 2021-08-04 18:36:37 +02:00
wrapper_su_helper.py wrapper_su_helper.py: inject constants.WRAPPER_ENV_VAR into user env 2022-11-09 20:19:04 +01:00

kupferbootstrap

Kupfer Linux bootstrapping tool - drives pacstrap, makepkg, chroot, mkfs and fastboot, just to name a few.

Documentation

Detailed docs for the main branch are available online at https://kupfer.gitlab.io/kupferbootstrap/

You can also build and view the docs locally:

cd docs/ && \
make && \
make serve

This will run a webserver on localhost:9999. Access it like firefox http://localhost:9999/

Installation

Install Docker, Python 3 with the libraries from requirements.txt and put bin/ into your PATH. Then use kupferbootstrap.

Quickstart

  1. Initialize config with defaults, configure your device and flavour: kupferbootstrap config init
  2. Build an image and packages along the way: kupferbootstrap image build

Development

Put dev into version.txt to always rebuild kupferboostrap from this directory and use kupferbootstrap as normal.