Package- and image building tool for Kupfer Linux. Documentation: https://kupfer.gitlab.io/kupferbootstrap
Find a file
2023-12-11 12:53:03 +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
binfmt binfmt/cli: add cmd_status(), improve logging 2023-06-14 09:24:58 +00:00
cache cache: move cache.py to new module cache/cli.py for uniformity 2022-11-09 20:19:04 +01:00
chroot packages/build: redirect output from stderr to stdout 2023-03-17 16:34:20 +01:00
config config/cli: prompt_choice(): fix change detection logical inversion 2023-08-29 02:13:41 +02:00
devices devices, flavours, config: add "inherited from ABC" to "selected by XYZ" output 2023-06-25 16:04:35 +02:00
distro distro/repo_config: reformat with yapf 0.33 2023-04-24 15:34:02 +02:00
docs docs: update device names in profiles 2023-07-12 18:23:30 +00:00
exec exec/file: chmod(): add privileged=True, use False for get_temp_dir() 2023-04-17 04:49:29 +02:00
flavours devices, flavours, config: add "inherited from ABC" to "selected by XYZ" output 2023-06-25 16:04:35 +02:00
image image: rename aboot to abootimg and rootfs to full 2023-06-12 01:10:54 +02: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: try_download_package(): check pacman cache if file in db but doesn't exist in db folder 2023-12-11 12:49:17 +01:00
wrapper wrapper/docker: fix logging of docker build failures 2023-06-25 04:03:03 +02:00
.gitignore gitignore: add kate swap files 2023-04-16 04:03:49 +02:00
.gitlab-ci.yml docker, gitlab-ci: use pip --break-system-packages until we figure out pip packaging 2023-06-25 04:03:03 +02:00
constants.py image: rename aboot to abootimg and rootfs to full 2023-06-12 01:10:54 +02:00
dictscheme.py dictscheme: fix type hinting 2023-12-11 12:53:03 +01:00
Dockerfile docker, gitlab-ci: use pip --break-system-packages until we figure out pip packaging 2023-06-25 04:03:03 +02: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: add --quiet flag to disable non-error logging 2023-03-17 16:34:20 +01:00
main.py binfmt: move to own module, add cmd_register(), cmd_unregister() to cli 2023-06-14 09:24:58 +00:00
progressbar.py progressbar: add ellipsize() 2023-03-17 16:34:20 +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 fixup! requirements.txt: add yaml 2023-03-27 19:49:14 +02:00
setup.cfg Add formatting 2021-08-08 18:24:56 +02:00
test_requirements.txt test_requirements.txt: add formatters and mypy for easier development 2023-06-25 04:03:03 +02: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
typehelpers.py python 3.9 compat: introduce typehelpers.py for NoneType, UnionType, TypeAlias 2023-04-17 02:37:10 +02:00
utils.py utils: color_mark_selected: fix msg_items tuple size to 2 2023-07-09 03:21:33 +02:00
version.txt Initial commit 2021-08-04 18:36:37 +02:00
wrapper_su_helper.py wrapper_su_helper.py: tolerate non-unique uid 2023-04-16 04:03:49 +02: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.