Boxer
Boxer is a tool for system deployment and for composing blend, i.e designing how to have a distribution unfold onto boxes.
Boxer is used to maintain the Debian Pure Blends DebianParl and ?DebianDesign.
Goal of Boxer is to encourage reuse of customizations, and to ease (re)integration with Debian. Ideally override files and scripts are used only to speedup development, then integrated into official Debian packages, and the final product uses only package lists and debconf, a.k.a. a Debian Pure Blend!
Installation
Stable data & tool
Stable release of boxer, available in Stretch, is adequate for some compositions:
sudo apt-get install boxer
Newer tool
Newer release of boxer is recommended for new projects - even for composing stable target systems.
Best is to use Debian testing or unstable as development environment. If that is not an option for you then maybe it works to cherry-pick the boxer package from Debian testing or unstable.
Newest data
Newest dataset is often usable also with older releases of the boxer tool.
Maybe it works to cherry-pick the package boxer-data from Debian testing or unstable.
Use
2. Create a boxer node, and have boxer compose an install profile:
cat <<EOF >mydata/myblend.yml classes: - Desktop.xfce - Desktop.email - Desktop.web EOF boxer compose --nodedir mydata myblend
3. Deploy your custom Debian system, in one of several ways:
Using debian-installer with the preseed.cfg file
Install a minimal Debian, log into it as root, and execute the script.sh
Newer tool
Recommended - even for stable target system - is to compose on a development system.
Development
We use Salsa with a mailinglist.
Code and default dataset is developed separately:
git clone https://salsa.debian.org/boxer-team/Boxer.git git clone https://salsa.debian.org/boxer-team/boxer-data.git
Code is released to CPAN and packaged in the Perl team:
git clone https://salsa.debian.org/perl-team/modules/packages/boxer.git