[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Debian Live support for Consfigurator



Hello,

I've added support for building Debian Live ISOs to Consfigurator, the
new configuration management and OS installation system I've been
working on.  It looks something like this to use:

    (localhd
     (disk:debian-live-iso-built. nil "/srv/live/live.iso"
       (os:debian-stable "bullseye" :amd64)

       (apt:mirror "http://ftp.us.debian.org/debian";)
       (apt:standard-sources.list)
       (apt:installed "live-config" "initramfs-tools"
                      "task-english" "some-useful-package")

       (timezone:configured "America/Phoenix")
       (on-change (etc-default:set "keyboard" "XKBLAYOUT" "gb")
         (cmd:single "update-initramfs" "-u"))
       (locale:selected-for "en_GB.UTF-8" "LANG" "LANGUAGE")))

Here, 'localhd' is shorthand for becoming root and applying properties
to localhost.  Hopefully it is clear what the rest of the lines mean.
The main value propositions over live-wrapper are

- customising the contents of the chroot using declarative configuration
  management rather than shell scripting (in some cases you can replace
  live-config too)

- automatic image rebuilds when, and only when, the contents of the
  chroot actually changes -- Consfigurator has a protocol for
  propagating information about whether it had to make any changes to
  bring reality in line with the stated configuration of hosts -- this
  makes it easy to maintain and update customised live images on your
  laptop

- doesn't use the deprecated vmdebootstrap.

I've only implemented a straightforward ISOLINUX boot option for now,
because I am not myself at all familiar with the Debian installer and
the intricacies of multiboot ISOs.  But all that could be added.  Or
Consfigurator could replace just the vmdebootstrap & shell script parts
of live-wrapper, if that's wanted; I could help slot it in.

I can't upload this work to unstable yet because a new dependency is
stuck in NEW; my development version in git should be usable if you
would like to try it out:
<https://spwhitton.name/tech/code/consfigurator/>
install the deps of cl-consfigurator in sid + this new library:
<https://salsa.debian.org/common-lisp-team/agnostic-lizard>

-- 
Sean Whitton

Attachment: signature.asc
Description: PGP signature


Reply to: