Size: 12084
Comment: CategorySoftware CategoryPackaging
|
Size: 12107
Comment: add a shorter anchor
|
Deletions are marked like this. | Additions are marked like this. |
Line 8: | Line 8: |
<<Anchor(bootstrap)>> |
Contents
Intro
A list of tools that can be used to build multi-package systems; in chroots, app/service containers, disk images, VMs or other formats.
Unpack/configure packages to a location
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
shell, Perl |
|
directory |
|
|
|
|
directory |
|
|
|
|
directory |
multiple apt repos, docs, orphaned |
|
|
|
directory |
works without root, abandoned upstream |
|
|
|
directory,tarball,ext2,squashfs |
works without superuser privileges, uses apt and thus supports multiple mirrors |
|
C++ |
|
directory |
research project for fast install bootstrap through parallelism |
|
|
|
directory |
|
|
Perl |
|
directory |
only for rpm packages, build rpm distro chroot on Debian |
|
shell, Perl |
|
directory |
fai dirinstall creates a chroot |
Wrappers
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
shell |
|
directory |
little shell wrapper around debootstrap, supports multiple architectures via qemu-user |
|
shell |
|
ZIP file containing rootfs, kernel, initrd |
wrapper around mmdebstrap |
|
Python |
|
|
wrapper around mmdebstrap for YAML configuration |
|
shell |
|
|
wrapper around mmdebstrap, targeted at building Debian testing → stable backports |
Package build tools
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
Perl |
|
|
chroot/unshare/schroot/autopkgtest(schroot/lxc/chroot/qemu/ssh) for isolation. |
|
Bash |
|
|
chroot for isolation |
|
C |
|
|
chroot for isolation, cowdancer via LD_PRELOAD for copy-on-write |
|
C |
|
|
qemu for isolation |
|
Python |
|
|
systemd-nspawn for isolation |
|
Python |
|
|
systemd-nspawn for isolation |
|
Ruby |
|
|
docker for isolation |
|
?JavaScript |
|
|
docker for isolation |
|
Bash |
|
|
docker for isolation |
|
Python |
|
|
docker for isolation |
|
Bash |
|
|
docker for isolation |
|
Bash |
|
|
docker for isolation |
|
Bash |
|
|
docker for isolation |
|
Bash |
|
|
docker for isolation |
Manual install related
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
|
shell, C |
|
|
|
||
calamares |
|
|
|
used on the LiveCD |
|
Haskell |
|
|
?? |
||
Ubuntu/Mint installer, uses d-i in backend. |
|||||
|
|
|
based on vmdb2, announcement |
||
Common Lisp |
|
|
similarish to propellor |
General tools
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
python, shell |
|
|
deprecated, but not yet removed from Debian |
|
python, configuration specified in yaml |
read/write |
raw |
vmdebootstrap successor |
|
shell |
||||
ocaml |
read/write |
qcow2, raw |
||
|
|
|
Linux containers create new buildroots from script templates |
|
Shell |
|
|
WARNING: some questionable customizations |
|
|
|
|
can do installations, chroots, disk images, cross architecture |
|
Go |
|
|
Data driven rootless image creation tool. debos intro |
|
python |
|
|
Creates (chroots and) bootable virtual machine images |
|
shell, python |
|
|
|
|
python |
|
|
|
|
C |
||||
python |
|
iso, tar |
very alpha, not ready for production use, similar to debos and mkosi but much larger in scope (meant to be used for appimages/installer/ppa systems eventually) |
|
python |
read/write |
iso,qcow2,raw |
Also used by SUSE and Redhat, supports non-root building in a VM |
Live related (read-only)
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
uses fai dirinstall |
||||
|
Read-only |
initramfs |
||
FreedomBox related
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
Python |
|
disk image |
||
Cloud related
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
|
Python |
|
|
deprecated, removed from Debian 11 |
||
shell, python |
|||||
shell |
|||||
Perl |
|||||
fai-diskimage, The Debian cloud team is using FAI for official cloud images |
|||||
|
|
|
wapper around FAI |
|
|
Python |
|
|
wapper around virt-install |
|
Embedded related
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
Python |
||||
shell |
||||
App container related
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
Service container related
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
|
|
|
reproducible rootfs builds |
Derivatives
The derivatives census lists image and install tools.
Other
Tool |
Language |
Read-only/Writable |
Formats |
Comments |
Related tools
Discussions
<CAKTje6GG=PyyfH+FM_LNiajfohkcUFd3Qtko=fNWfmX4dtHSmw@mail.gmail.com>: Flashable image generation Re: Bits from ARM porters
<55999F8A.8000807@ghraoui.name>: oem-config for Debian
<570E0639.6040609@pocock.pro>: creating official Debian images for ARM-based NAS devices
<CAKTje6H3_Rvxkt226zJBqzGZBhZRP2GAHry0nFSvWyes=Q3gYw@mail.gmail.com>: support for installing unconfigured systems (VM images, Debian Live images, preinstalled mobile/tablet images)
Talks
DebConf18: Building Debian-based system images by Ben Hutchings (notes)
Cambridge mini-DebConf 2017: Build disk images with FAI by Thomas Lange
DebConf17: Installing Debian BoF by Vagrant Cascadian (notes)
DebConf15: Creating bootable Debian images by Riku Voipio
DebConf9: Building Debian from Debian by Vagrant Cascadian