public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: "'Quirin Gylstorff' via isar-users" <isar-users@googlegroups.com>
To: isar-users@googlegroups.com, jan.kiszka@siemens.com,
	felix.moessbauer@siemens.com, cedric.hombourger@siemens.com
Subject: [PATCH v6 00/13] Add support for dracut
Date: Wed,  5 Nov 2025 10:29:15 +0100	[thread overview]
Message-ID: <20251105093710.19582-1-Quirin.Gylstorff@siemens.com> (raw)

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

Debian intends to change the default initrd generator from
initramfs-tools to dracut[1],[2].

This is a first draft to support multiple initrd generator in
ISAR. I tested it with bookworm and trixie.

You can switch a normal Debian version to a dracut based initrd
by installing the package `dracut`. This similar to a normal Debian
installation.

Customizing the initrd generation should be done with a seperate recipe
which inherit `initrd-dracut`. This is intentionally done to avoid
installing packages which are only used by the initrd generation process.

[1]: https://salsa.debian.org/kernel-team/meetings/-/wikis/20250730
[2]: https://meetbot.debian.net/debian-kernel/2025/debian-kernel.2025-08-06-19.00.log.html

Changes v6:
 - rebase on commit 666c5e571b46d9b3e34158163e74b4a89c89bfe7
 - use class instead of inc
 - fail early if dracut generation fail

Changes v5:
 - cleanup formatting
 - Add additional comments
 - Add isar-work mount point to the rootfs to copy the initrd to the workdir
 - make the build compatible with ubuntu
 - use the feature to derive the  module name from the installed package

Changes v4:
 - fix extra_modules and extra_drivers
 - extend user_manual to switch normal installation to dracut

Changes v3:
 - drop initramfs patch
 - add examples
 - add user_manual section

Changes v2:
 - extract the initramfs-cmd from the cmdline
 - increase version of enable-fsck
 - add function to print an error in case a invalid package is installed

Quirin Gylstorff (13):
  Add dracut to custom kernel builds
  rootfs: Allow to overwrite the initramfs generation cmds
  rootfs: Add isar-work directory to rootfs mounts
  rootfs: Copy the newly created initrd.img to the work directory
  rootfs: Add dracut to initramfs generator
  rootfs: exit immediately if INITRAMFS_GENERATOR_CMD fails
  initramfs: allow to set the generator command
  Add class to generate custom dracut initramfs
  rootfs: add flag to use dracut if it is not part of the package list
  Add example dracut initramfs
  Add dracut module helper
  Use lighttpd as a example how to add a dracut module
  user_manual: Add dracut for initramfs generation

 doc/user_manual.md                            | 73 +++++++++++++++-
 .../dracut-example-lighttpd_0.1.bb            | 44 ++++++++++
 .../dracut-example-lighttpd/files/install.sh  | 20 +++++
 .../files/lighttpd.conf                       | 52 +++++++++++
 .../files/lighttpd.service                    | 13 +++
 .../files/sysuser-lighttpd.conf               |  2 +
 .../recipes-initramfs/images/isar-dracut.bb   | 25 ++++++
 meta/classes/dracut-module.bbclass            | 87 +++++++++++++++++++
 meta/classes/initramfs.bbclass                | 19 +++-
 meta/classes/initrd-dracut.bbclass            | 58 +++++++++++++
 meta/classes/rootfs.bbclass                   | 43 ++++++---
 .../dracut-module/files/module-setup.sh.tmpl  | 42 +++++++++
 meta/recipes-kernel/linux/linux-custom.inc    |  2 +-
 13 files changed, 461 insertions(+), 19 deletions(-)
 create mode 100644 meta-isar/recipes-initramfs/dracut-example-lighttpd/dracut-example-lighttpd_0.1.bb
 create mode 100644 meta-isar/recipes-initramfs/dracut-example-lighttpd/files/install.sh
 create mode 100644 meta-isar/recipes-initramfs/dracut-example-lighttpd/files/lighttpd.conf
 create mode 100644 meta-isar/recipes-initramfs/dracut-example-lighttpd/files/lighttpd.service
 create mode 100644 meta-isar/recipes-initramfs/dracut-example-lighttpd/files/sysuser-lighttpd.conf
 create mode 100644 meta-isar/recipes-initramfs/images/isar-dracut.bb
 create mode 100644 meta/classes/dracut-module.bbclass
 create mode 100644 meta/classes/initrd-dracut.bbclass
 create mode 100644 meta/recipes-initramfs/dracut-module/files/module-setup.sh.tmpl

-- 
2.51.0

-- 
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/20251105093710.19582-1-Quirin.Gylstorff%40siemens.com.

             reply	other threads:[~2025-11-05  9:37 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-05  9:29 'Quirin Gylstorff' via isar-users [this message]
2025-11-05  9:29 ` [PATCH v6 01/13] Add dracut to custom kernel builds 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 02/13] rootfs: Allow to overwrite the initramfs generation cmds 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 03/13] rootfs: Add isar-work directory to rootfs mounts 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 04/13] rootfs: Copy the newly created initrd.img to the work directory 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 05/13] rootfs: Add dracut to initramfs generator 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 06/13] rootfs: exit immediately if INITRAMFS_GENERATOR_CMD fails 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 07/13] initramfs: allow to set the generator command 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 08/13] Add class to generate custom dracut initramfs 'Quirin Gylstorff' via isar-users
2025-11-05 10:16   ` 'Jan Kiszka' via isar-users
2025-11-05  9:29 ` [PATCH v6 09/13] rootfs: add flag to use dracut if it is not part of the package list 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 10/13] Add example dracut initramfs 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 11/13] Add dracut module helper 'Quirin Gylstorff' via isar-users
2025-11-05 10:15   ` 'Jan Kiszka' via isar-users
2025-11-05  9:29 ` [PATCH v6 12/13] Use lighttpd as a example how to add a dracut module 'Quirin Gylstorff' via isar-users
2025-11-05  9:29 ` [PATCH v6 13/13] user_manual: Add dracut for initramfs generation 'Quirin Gylstorff' via isar-users

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251105093710.19582-1-Quirin.Gylstorff@siemens.com \
    --to=isar-users@googlegroups.com \
    --cc=Quirin.Gylstorff@siemens.com \
    --cc=cedric.hombourger@siemens.com \
    --cc=felix.moessbauer@siemens.com \
    --cc=jan.kiszka@siemens.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox