From patchwork Wed Oct 22 15:06:58 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quirin Gylstorff X-Patchwork-Id: 4429 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Wed, 22 Oct 2025 17:08:15 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-lj1-f192.google.com (mail-lj1-f192.google.com [209.85.208.192]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 59MF8EZf020201 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 22 Oct 2025 17:08:14 +0200 Received: by mail-lj1-f192.google.com with SMTP id 38308e7fff4ca-378cf9fe9d8sf2965321fa.1 for ; Wed, 22 Oct 2025 08:08:14 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1761145689; cv=pass; d=google.com; s=arc-20240605; b=BRSL5Cuof/seJMEGtXQjWuOyfB63yXPTTphORVllMo7v1ALpBqNAln1Q6w3g7LTdcJ gGPWZ/UguIOzN+ig7e5lGDvnyuOFN4LbSkC9Ztl/J/kDiPus64PWrmiZ8zKVkCTOpSJT Z1VCWIOxpVWunswoSDy/+Zwb3WHDjSSrQdAR4pjGdQAYQgVxEJQOX9CEHbzvP/j+QY7Y /d7NcT/vFfkovuwhztLjzrUuW2hlJ/+OtevMXDdHu9ar/GV3EMQEZehFpvhxkMCNx5XD +t1uIdWkeRxD4nkuJT6E5XpiuHihMBLD9wAIkLgpLgA6CSS6Nolhh/KqP3ncEjIIECqN wiCw== 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=D4uGNfuxZPwn0gp4xU11CgijkuwVoz/lzFZrjP0MSfA=; fh=W3VfiSfNPL83X2KqBDtw8igiBtsxtLg4tcZVXM2Alus=; b=FWrLIfywKF+TKI3M/bcF8XsXKjNzZibth6Hm8adAKm1c1gk8Mnj6tll+rrqEPbL3f0 tGdg58HsY9VdiTmuSZgwphYwoROjRU08Ux3sV82TJu0LiYmhg/GWt17jeiTmb4dFEiKZ 0sNSPHV3yymF6po/Ha/VYhseUdJXSK1KDAGDNDmawSQ2ZRorps9bt+3cS0naGQk0uH+s kLpDNIbXxMqHnuPfLjZ8v3RI9sNHCJ37KRIkq5T29iw/4f1Ebi4vPNygbzapjwqMWjXP 9yNX/+uufaG8iqq4FMylfeKPzs3E97skO7vXS2p+i/7QzJ92BrzcBkubmnddNYZhULmY muDQ==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=Gu1gRfgc; spf=pass (google.com: domain of fm-51332-202510221508055f32c3155600020775-dujsld@rts-flowmailer.siemens.com designates 185.136.65.226 as permitted sender) smtp.mailfrom=fm-51332-202510221508055f32c3155600020775-DUjsld@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=1761145689; x=1761750489; 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=D4uGNfuxZPwn0gp4xU11CgijkuwVoz/lzFZrjP0MSfA=; b=Nk1i+toI4NucwXLpnA365Opy1RR6dg2a0dW5XDIz4Is+JFG4WoCEYk9oGvvZbTyNu0 cfduSIP/y4d58VZ8aoNkAOBRTtRsfZBjMT4CwHYRht5PnhE/5edWiPm1OqyDZURIVC7j qqDSf+1PnWZq68E/tdDBSs1DljgOC2w0s37kWYis7iSOW49k85ScAelHKbztMEhf4X20 6EXR9skDptXYlQOW9RZOg6AZ4F5+zxakBYMONSsjxlgUpF1xGVyisneluMgupoL2S280 Z9Ee5WE8XRga/8S7xLFENANF4HAAFhpi7NVGudqZ+/GLp1qGJdm7UtABSeNtT2fgQKo8 UN9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761145689; x=1761750489; 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=D4uGNfuxZPwn0gp4xU11CgijkuwVoz/lzFZrjP0MSfA=; b=fhAfS/LTuoTm5jNGb3RVd8ZgYQ2qjvd7G4dunkeNVoujGCgvzkk0UNrmRAc1ZeEWXC asRaVW9/wdpDUSDvrVTuJ+9PTewn+NdRO8lA/FPKIjU33ARIX4VimSnBn7VQITABxt0P fVlXbUmJasNxztNc7jpkVRNNoxFGv5ItNL+0RHoTzsuOwsro5ifUFrmYf/9QokJCtN9I qqgaHWUhdJzptfPygcpuhTY9v98fxKJNj7ILydUbTz7CwKrWIqzdCbfNwwvsVhzYrg/Z kjcUD4rgC9UU485xzYoidEPHryH/FCO5cXHAqK3Jk95ApiqTBZdKH0dKrlRmX25SA0N+ BmCQ== X-Forwarded-Encrypted: i=2; AJvYcCVCo9LyvzbrVN1Q/aJVv+HmiN+36DwwJVDxJ8N2IlwV6vHoPF50huzzSdjRqFn85fAc21rKrlY=@isar-build.org X-Gm-Message-State: AOJu0Yxp8slj7ayKiLX4xVikfGhPIXEPiUnsbnVPiSDfPHieyKS6Mj/X 32veIavb+KkDHmciOEfWQUZyYEXvT68V8KcMqaiV5vAQIyfa8P/Z1zYU X-Google-Smtp-Source: AGHT+IEIQSafyFeRkwy1k2zcFvdeyBlPPGcNIpj/j05P2aORKkXMmj72vX1OtMO3r3AK0HWRxVdGSQ== X-Received: by 2002:a2e:ad93:0:b0:376:533f:e15a with SMTP id 38308e7fff4ca-37797a82e17mr58780791fa.48.1761145689023; Wed, 22 Oct 2025 08:08:09 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="ARHlJd4UK7mJzcmLZR3oF5WcPQIjJumNyo2eN593PqGSPBTHjQ==" Received: by 2002:a05:651c:25db:20b0:376:4f08:5df2 with SMTP id 38308e7fff4ca-377876c4d6bls150631fa.1.-pod-prod-04-eu; Wed, 22 Oct 2025 08:08:06 -0700 (PDT) X-Received: by 2002:a05:651c:892:b0:36b:b0eb:9d65 with SMTP id 38308e7fff4ca-37797815ebfmr57787551fa.10.1761145685853; Wed, 22 Oct 2025 08:08:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1761145685; cv=none; d=google.com; s=arc-20240605; b=ZCpqKhGYYUjj/2IMRIir8cMGTMZDYFub0deozzz8+UGXTlh+bIaUEOd4np1ulglA2q 59t5HAPK/R0El0Qj7qHCC0iBYZwOPsJaffhyedT1TRtYNWTSmGP8DwpgVKdLn+3HNDGF Ml9BzJKKwW8VbMXQn6u9sPHGEAY7zZhIFfjyt8iJ+NHpeOFExmTUOxkHk0+pkmgPPFjE rQRD4eDRgkKN6fYVCykw92sQxS9stu32zYPBTw1uTX0XkD56cZ4ut1aOWv55yBUNUPpO 5uxHmsmIUtmtgjVbt/ntH6gg2sdzof6b9zDMpbKJnMLSRH6xkS53R/TEhnDEs3wZ/5Sd zqsg== 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=AzWnWRpmCf4IZdBJvbC6ssKrEpudtaH0OvZvfrmMWYg=; b=XLeZia5A2c5VyRDMHWffgRTKZJdiBXbBHrg4jGBPHttDZqNwOc4qga1YAvfuHhtpj/ Z+klp4/VDLq6uN+v0VeIKYrjktyjcwRkqpZMhP07W7bl6gW4Oq3BHIByv2lAtQaY+jim H0njm2a7VqFHMtPnLvHIRbi5VryJSLgKwSU82bXe9UQz8i26KeaUMB6AY7nsXJiiW3Rl j6PpdaCkxcehvGnn3frIsCsKUXJQ9xSNvSKUzolPG5kQepPlCyqJH4LzAaRKxdZtJiTa MtSpuQMq/Xro2zJYGGqS1PvHecK/4RJS00lGnnrILu1rLbn+EdmQ01MZojzXgq/mZLrK RoaQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=Gu1gRfgc; spf=pass (google.com: domain of fm-51332-202510221508055f32c3155600020775-dujsld@rts-flowmailer.siemens.com designates 185.136.65.226 as permitted sender) smtp.mailfrom=fm-51332-202510221508055f32c3155600020775-DUjsld@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-226.siemens.flowmailer.net (mta-65-226.siemens.flowmailer.net. [185.136.65.226]) by gmr-mx.google.com with ESMTPS id 38308e7fff4ca-378d196fc69si135151fa.8.2025.10.22.08.08.05 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 22 Oct 2025 08:08:05 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-51332-202510221508055f32c3155600020775-dujsld@rts-flowmailer.siemens.com designates 185.136.65.226 as permitted sender) client-ip=185.136.65.226; Received: by mta-65-226.siemens.flowmailer.net with ESMTPSA id 202510221508055f32c3155600020775 for ; Wed, 22 Oct 2025 17:08:05 +0200 X-Patchwork-Original-From: "'Quirin Gylstorff' via isar-users" From: Quirin Gylstorff To: isar-users@googlegroups.com, cedric.hombourger@siemens.com, jan.kiszka@siemens.com, felix.moessbauer@siemens.com Subject: [PATCH v4 08/10] Add dracut module helper Date: Wed, 22 Oct 2025 17:06:58 +0200 Message-ID: <20251022150737.3639891-9-Quirin.Gylstorff@siemens.com> In-Reply-To: <20251022150737.3639891-1-Quirin.Gylstorff@siemens.com> References: <20251022150737.3639891-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=Gu1gRfgc; spf=pass (google.com: domain of fm-51332-202510221508055f32c3155600020775-dujsld@rts-flowmailer.siemens.com designates 185.136.65.226 as permitted sender) smtp.mailfrom=fm-51332-202510221508055f32c3155600020775-DUjsld@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 + +} +