From patchwork Mon Oct 6 18:31:10 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quirin Gylstorff X-Patchwork-Id: 4394 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Mon, 06 Oct 2025 20:32:30 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-qv1-f56.google.com (mail-qv1-f56.google.com [209.85.219.56]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 596IWT4n029612 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Mon, 6 Oct 2025 20:32:30 +0200 Received: by mail-qv1-f56.google.com with SMTP id 6a1803df08f44-7958a07a5fdsf18340956d6.2 for ; Mon, 06 Oct 2025 11:32:30 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1759775541; cv=pass; d=google.com; s=arc-20240605; b=JpnzaDkqYhjjIaJViLJQFozJ++myuvG5naWk/LsTtajnGjE66CpJA8ECISf/yNgw7C cVMVgv3kQ/2Mv6dNbOv91IP7KO6CS+ce1XIV/EK1QsLG/Pl+DSkDZZrF4zUn8HVS1znd NGjUnV6UMQlGJWbjOpj2RhMefORYaQOE0FvacL2oFX8/9igni/+0t91kv9i45mZaIqJs Ci5UGRkbMfR6SmL7+3RWXwKfxwBaPi73fBjfcEsTqPImLzWp2zrtJctvt0cGqnOfz07B jWI2ZW8PgIELLgeJe91lLiFu09dOzzKE2Ss9WhcZrxoffdSoefF5oDKQPZj+Z4VRvtDI gN7Q== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=ZBqM36fM/kN7lGc9affk828mTzDNFnpwi8i8TZ9E5to=; fh=f9Zhpx5z+/J4Hirb9M7WSyXLlUhFNA04za/lzRwI6bU=; b=RKvX5r5sfjwq3bxN0/K+yoaULVtF5k2vundkiqHERnujQD99QG6/5ATnIZAqlbLgzJ yQj7PZAKNP5BhBOuvsliU5NiQ826wysYWSNnnZxBtnwYECF8jTYZ1LcCzS6BMi+roVb8 K1D8kJH4vvWTzDmR1mfgko8fTobvN8o/ya2qiTgZaUAhaJUuRBmHiQRfsA8/+1n2QYEP OxATrV2XwY3/l2cDMx8I0XiV6mBVrbykia03s7sTxG2bN7lLvXHBfN1NFAErcjuq4I/L TOQDpANYKYzCG6nk+HiZvQiYOKz0dMgbzaJC8liEoxa4G7IpBMo42FsIpKqn8AoNb3jK 7Z5A==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=i4cwQ4Cr; spf=pass (google.com: domain of fm-51332-20251006183217a420fc318e000207e7-4lpvlh@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-51332-20251006183217a420fc318e000207e7-4lpvlh@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1759775541; x=1760380341; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:to:from :from:to:cc:subject:date:message-id:reply-to; bh=ZBqM36fM/kN7lGc9affk828mTzDNFnpwi8i8TZ9E5to=; b=WpSmmTVtVy534O/CTB3Riov3Az+mXAsNA9rPGNTYWqmR4sJxmNezdz+gIS1URTYiIw 3nYXoqk8k9xm3innOn34gAWXxmMKsSt2W2x736T7cTv3m8QU9HdHsJv+iMzIYNO7BUvE GUxJvA8uiGNNXqa0R+pFaLbVTchTUbCpuQwjsi8D1asVMvSTataI6yK1nvH4N1dO3kY5 qS0baJ+MCtudFCgh83PlQXzoqO3EdrQHRtf6djj6oG7JGxAjvTp3zA5l2ji0uXePIqj8 XQaom/vVZzi8AcfXrytbyfTxfiuEWSEMpXuNKhhQtdby7zo4dL0tiPSjztrX/KmCjG+j Hk2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759775541; x=1760380341; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:to:from :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ZBqM36fM/kN7lGc9affk828mTzDNFnpwi8i8TZ9E5to=; b=SJHrthQ0WbZJEuYiK3+aE6WfB8QZclDWSZdO7dXmcAEbvNHhlCmjgvKH8C3CZtAh+L /tMU4z5e0NY4g3+CABlNC61sAFhwQSZt77qxJleIc9L7j5Lh/D1LCozgiXZfqz1TfLUO kzmopx8SBEox9QB5Ot84Y+u7rBhpUuuIfP4gKd1wPHdn486gVRFLRGVmCZgIhI1cL2+w kbuTXGhmsBsYfTG0+61q7294dbvSLtbrGzhwLP10YYNWcFoJP8vf6J4nYPAzDYnrW313 zzktsHpZXhbfzXZoPsPGkIuBkMkWNR+AAJomHUf/4T3dcMpqoB7M1U/KuQlE+Dqybrlw U8rQ== X-Forwarded-Encrypted: i=2; AJvYcCUBZxTywAo0QaTh8MBajpC1EOphl8WPrXV7kkhUrCNbZhmsA4+A5HNcjzWkKYoz6d6ZBghtuCI=@isar-build.org X-Gm-Message-State: AOJu0Yyo1oMuGM3wy8xNeqHHhtbo+O2L7d/EsfMMOc2s4kVMaRR9+qBX vbNq8Yzi1mnYR50ejDpk5ml3/gOoTZnNsq3himMWlXuwN+RVgAs/EA5f X-Google-Smtp-Source: AGHT+IGGQwffOup8wC1MgK7RGVu3RwDlEpYtgaKc+SbYRetcyp/7uuQSg1lQfHijhWToiB92//yFiw== X-Received: by 2002:a05:6214:e45:b0:795:3dff:55dc with SMTP id 6a1803df08f44-879dc89519bmr109722486d6.8.1759775540599; Mon, 06 Oct 2025 11:32:20 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="ARHlJd7xljTqaH5dkdrgs88EHkD7qQmxQAR0J1OIaFL6UYJglw==" Received: by 2002:a05:6214:1702:b0:78d:7ec4:d664 with SMTP id 6a1803df08f44-878a42229d6ls14353156d6.0.-pod-prod-09-us; Mon, 06 Oct 2025 11:32:19 -0700 (PDT) X-Received: by 2002:a05:6122:2501:b0:54a:9cff:6fe7 with SMTP id 71dfb90a1353d-5524e8b3b92mr5602408e0c.4.1759775539362; Mon, 06 Oct 2025 11:32:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1759775539; cv=none; d=google.com; s=arc-20240605; b=LeSZuOLuZjrQ0Kdd9DN+/yuQvUtLNApbLLI1wyT1+Ocz4hJvVxy3fik2/BOMrxNhLp U3If9S9MKUjpQOxccuEW3AmEt+CgvEt24LTmK0pgiSJANdn+Gxa9/hOF3kQKkSWdqB5K GgSAlXAIG9+Chr8i9Sen1Pb9uGT/tWnbHg2zgADmAtAvOQK1yUmcW6lceVDBijaLTeeJ yK5tjETDWxPVFaGq5koP5s35RXmTC9WgG38DFS7VvfkSJn2ObNo94G/cwxxUOmT70yqt WYmpeg++Tc/zzbBX9MJFnLaQV5pGhTE9Mt7pLpVqyMuI3PfvA6asx6HTesKMobL+l1Pf NEMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:to:from:dkim-signature; bh=c6f66RKwSPMI/xRj/448Z0z5Sem0yAQCLt0e5Yx1dks=; fh=pD9NMAE6punlmxDz2SM7DMFwkWrKOHAvTYxfub7CxRs=; b=WAyyjXtCbQne68NNYo4P2G99R8whxImyygSU66BjfGC38X2uwEue1fPzj98gp+zmXS jdvc0la4B3ScQWM9bMC9w87PejYIbw6Fl1c9GXh13lvFYpnIfIpit3vlaaxwwsUddiwV PYauijiTGfJSK9KCzSKKehqveS9bLdkOMk7G/rUZv+7qa1TOUDl7jbE0FcXDp3GrQw36 6vcyR/Nf1zDktMkuL4Jv/gow0Q62vTv6L4aXNNwpUwE9NYBJt3Rgi0TxRq1k55fVJeTf a1/ZMUauSF2lJ7kQbRN3SpwoS0JDvyQFB5/Wsh4sXnNxtFNS+pehkSIvypXTuUmvHTb5 KKdg==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=i4cwQ4Cr; spf=pass (google.com: domain of fm-51332-20251006183217a420fc318e000207e7-4lpvlh@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-51332-20251006183217a420fc318e000207e7-4lpvlh@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-225.siemens.flowmailer.net (mta-65-225.siemens.flowmailer.net. [185.136.65.225]) by gmr-mx.google.com with ESMTPS id 71dfb90a1353d-5523cf99515si543921e0c.5.2025.10.06.11.32.18 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 06 Oct 2025 11:32:19 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-51332-20251006183217a420fc318e000207e7-4lpvlh@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) client-ip=185.136.65.225; Received: by mta-65-225.siemens.flowmailer.net with ESMTPSA id 20251006183217a420fc318e000207e7 for ; Mon, 06 Oct 2025 20:32:17 +0200 X-Patchwork-Original-From: "'Quirin Gylstorff' via isar-users" From: Quirin Gylstorff To: isar-users@googlegroups.com, jan.kiszka@siemens.com, felix.moessbauer@siemens.com, cedric.hombourger@siemens.com Subject: [RFC PATCH v3 08/10] Add dracut module helper Date: Mon, 6 Oct 2025 20:31:10 +0200 Message-ID: <20251006183214.1593195-9-Quirin.Gylstorff@siemens.com> In-Reply-To: <20251006183214.1593195-1-Quirin.Gylstorff@siemens.com> References: <20251006183214.1593195-1-Quirin.Gylstorff@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-51332:519-21489:flowmailer X-Original-Sender: quirin.gylstorff@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=i4cwQ4Cr; spf=pass (google.com: domain of fm-51332-20251006183217a420fc318e000207e7-4lpvlh@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-51332-20251006183217a420fc318e000207e7-4lpvlh@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Quirin Gylstorff Reply-To: Quirin Gylstorff Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= From: Quirin Gylstorff This adds a helper similar to initramfs-hook to generate a dracut module. Signed-off-by: Quirin Gylstorff --- .../dracut-module/dracut-module.inc | 41 +++++++++++++++++++ .../dracut-module/files/module-setup.sh.tmpl | 20 +++++++++ 2 files changed, 61 insertions(+) create mode 100644 meta/recipes-initramfs/dracut-module/dracut-module.inc create mode 100644 meta/recipes-initramfs/dracut-module/files/module-setup.sh.tmpl diff --git a/meta/recipes-initramfs/dracut-module/dracut-module.inc b/meta/recipes-initramfs/dracut-module/dracut-module.inc new file mode 100644 index 00000000..54071105 --- /dev/null +++ b/meta/recipes-initramfs/dracut-module/dracut-module.inc @@ -0,0 +1,41 @@ +# +# Copyright (c) Siemens AG, 2025 +# +# Authors: +# Quirin Gylstorff +# +# SPDX-License-Identifier: MIT +# + +inherit dpkg-raw + +FILESPATH:append := ":${FILE_DIRNAME}/files" + +DPKG_ARCH = "all" + +DRACUT_MODULE_SETUP = "module-setup.sh" +SRC_URI += "file://${DRACUT_MODULE_SETUP}.tmpl" + +DRACUT_REQUIRED_BINARIES = "" +DRACUT_MODULE_DEPENDENCIES = "" +DRACUT_MODULE_NO ??= "50" +DRACUT_MODULE_NAME ?= "${@ d.getVar('PN')[7:] if d.getVar('PN').startswith('dracut-') else d.getVAR('PN')}" + +TEMPLATE_FILES:append = " \ + ${DRACUT_MODULE_SETUP}.tmpl \ + " + +TEMPLATE_VARS:append = " \ + DRACUT_REQUIRED_BINARIES \ + DRACUT_MODULE_DEPENDENCIES \ + " +DEBIAN_DEPENDS = "dracut-core" +DRACUT_MODULE_PATH = "${D}/usr/lib/dracut/modules.d/${DRACUT_MODULE_NO}${DRACUT_MODULE_NAME}/" +do_install[cleandirs] += "${DRACUT_MODULE_PATH}" +do_install:append() { + install -m 770 ${WORKDIR}/${DRACUT_MODULE_SETUP} ${DRACUT_MODULE_PATH} + if [ -f ${WORKDIR}/install.sh ]; then + cat ${WORKDIR}/install.sh >> ${DRACUT_MODULE_PATH}/${DRACUT_MODULE_SETUP} + fi +} + diff --git a/meta/recipes-initramfs/dracut-module/files/module-setup.sh.tmpl b/meta/recipes-initramfs/dracut-module/files/module-setup.sh.tmpl new file mode 100644 index 00000000..46477cf4 --- /dev/null +++ b/meta/recipes-initramfs/dracut-module/files/module-setup.sh.tmpl @@ -0,0 +1,20 @@ +#!/bin/bash + +# called by dracut +check() { + + # If the binary(s) requirements are not fulfilled the module can't be installed. + require_binaries \ + ${DRACUT_REQUIRED_BINARIES} \ + || return 1 + + return 0 + +} +# Module dependency requirements. +depends() { + echo "${DRACUT_MODULE_DEPENDENCIES}" + return 0 + +} +