From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6808879013169201152 X-Received: by 2002:adf:b641:: with SMTP id i1mr15321884wre.18.1585315683773; Fri, 27 Mar 2020 06:28:03 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a5d:4b4f:: with SMTP id w15ls4154920wrs.1.gmail; Fri, 27 Mar 2020 06:28:03 -0700 (PDT) X-Google-Smtp-Source: ADFU+vu+68bFRweItkBr9MKw6ElSdi9B7niWmBHOgM+jeK9bGKAq7LwRsvEDghZ9h1nrSt7v6vp4 X-Received: by 2002:adf:9b96:: with SMTP id d22mr16114012wrc.249.1585315683183; Fri, 27 Mar 2020 06:28:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585315683; cv=none; d=google.com; s=arc-20160816; b=MMTqs2608dZhVdJUth0Pb1Cg0HFt7lKa9nMMC8FIxlqnGn4Y0ywgNeJNuV38InWssL 9Qy5v1AunCpoJe0W3TrveEIktUrXlFQ2fcdQa4GCaTWz1qezyzXhPd50cnud2pllmhiv LziHEbZ3AWnjkvHRYZHeEc4F4riJYvi7W7YSN3Gl6xg7tp9VnllYZYeqORScjQifqw+N 6YtpImVTI5FikbgbLvzm7OlVR0yWzVu7z2gXv2Q8vmRL828DFEpWjUm5Z38S0SuIOLVT x9HDpEIIj26GUSahUqrkxo85tNJ6C/z0FtVPkfOE+zRcwnzda/BNCN5kFASE3siBlFp6 BnDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from; bh=IWuk7sjZNiVGMFGxdx3HNaS64BZ4te/Z3797+EkLrfE=; b=bHns61goQ8FmooixoJs858t4hc3gz9frxxK/Nz1dWBxVEB4Iq2HVhJH5ipZTW0WLfK JKLWm/bE0qtq7JIAgqsGte62AyW6IOcOuYGY2YtMWkPDO02e17uqS3spEGeanIArUsnH QZ7QoQXrWFD59Ng9KtOJGLcM90oA0Ea7Ys7qOo7QYoNCd/HGO8rYhO6itVzUA30eDLnX kpg4Rczuc7OBvrapAqc/+bqIdWhEMxnmd9hVqzRmQZq1mJhRbF4df+DAO9XnfTHLbJQq AAOBhWIrsnQc2gqmThDBBwcw6jB3AvoMprVzU+qJSw5oK8Hq36KUCu4FkQS9gXH1CgxS dOuw== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of quirin.gylstorff@siemens.com designates 192.35.17.14 as permitted sender) smtp.mailfrom=Quirin.Gylstorff@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from david.siemens.de (david.siemens.de. [192.35.17.14]) by gmr-mx.google.com with ESMTPS id i18si859601wml.1.2020.03.27.06.28.03 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 27 Mar 2020 06:28:03 -0700 (PDT) Received-SPF: pass (google.com: domain of quirin.gylstorff@siemens.com designates 192.35.17.14 as permitted sender) client-ip=192.35.17.14; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of quirin.gylstorff@siemens.com designates 192.35.17.14 as permitted sender) smtp.mailfrom=Quirin.Gylstorff@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from mail1.sbs.de (mail1.sbs.de [192.129.41.35]) by david.siemens.de (8.15.2/8.15.2) with ESMTPS id 02RDS2FC029152 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Fri, 27 Mar 2020 14:28:02 +0100 Received: from md2dvrtc.fritz.box ([167.87.23.171]) by mail1.sbs.de (8.15.2/8.15.2) with ESMTP id 02RDS1CJ013304; Fri, 27 Mar 2020 14:28:02 +0100 From: "Q. Gylstorff" To: isar-users@googlegroups.com Cc: Quirin Gylstorff Subject: [PATCH 1/3] meta/classes: Generate a custom initramfs Date: Fri, 27 Mar 2020 14:27:59 +0100 Message-Id: <20200327132801.19835-2-Quirin.Gylstorff@siemens.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200327132801.19835-1-Quirin.Gylstorff@siemens.com> References: <20200327132801.19835-1-Quirin.Gylstorff@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-TUID: fBUaPkL3XKMr From: Quirin Gylstorff This class sets the Parameters for mkinitramfs before it overwrites the initrd.img of debian with a modified version. Use cases are the remove unnecessary kernel modules to reduce the size of the initrd by using the parameters: ``` INITRAMFS_MODULES = "list" INITRAMFS_MODULE_LIST += "ext4" ``` Set the boot root during the initrd generation by setting `INITRAMFS_ROOT`. see also man pages of mkinitramfs and initramfs.conf. Signed-off-by: Quirin Gylstorff --- meta/classes/initramfs.bbclass | 44 ++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 meta/classes/initramfs.bbclass diff --git a/meta/classes/initramfs.bbclass b/meta/classes/initramfs.bbclass new file mode 100644 index 0000000..0cc91c2 --- /dev/null +++ b/meta/classes/initramfs.bbclass @@ -0,0 +1,44 @@ +# This software is a part of ISAR. +# Copyright (C) 2020 Siemens AG +# +# SPDX-License-Identifier: MIT + +INITRAMFS_MODULES ?= "most" +INITRAMFS_BUSYBOX ?= "auto" +INITRAMFS_COMPRESS ?= "gzip" +INITRAMFS_KEYMAP ?= "n" +INITRAMFS_NET_DEVICE ?= "" +INITRAMFS_NFSROOT ?= "auto" +INITRAMFS_RUNSIZE ?= "10%" +INITRAMFS_ROOT ?= "" +INITRAMFS_MODULE_LIST ?= "" +update_initramfs_modules() { + for modname in ${INITRAMFS_MODULE_LIST}; do + sudo -E tee --append '${ROOTFSDIR}/etc/initramfs-tools/modules' << EOF +${modname} +EOF + done +} +update_initramfs_config() { + sudo -E tee ${ROOTFSDIR}/etc/initramfs-tools/initramfs.conf << EOF +MODULES=${INITRAMFS_MODULES} +BUSYBOX=${INITRAMFS_BUSYBOX} +COMPRESS=${INITRAMFS_COMPRESS} +KEYMAP=${INITRAMFS_KEYMAP} +DEVICE=${INITRAMFS_NET_DEVICE} +NFSROOT=${INITRAMFS_NFSROOT} +RUNSIZE=${INITRAMFS_RUNSIZE} +ROOT=${INITRAMFS_ROOT} +EOF +} + +do_update_initramfs() { + update_initramfs_modules + update_initramfs_config + export KERNEL_VERSION=$(ls ${ROOTFSDIR}/lib/modules) + bbplain kernel_version: ${KERNEL_VERSION} + sudo -E chroot '${ROOTFSDIR}' \ + mkinitramfs -v -k -o /boot/initrd.img-${KERNEL_VERSION} ${KERNEL_VERSION} +} + +addtask update_initramfs before do_copy_boot_files after do_rootfs_install -- 2.20.1