From patchwork Wed Sep 17 08:24:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "alexander.heinisch" X-Patchwork-Id: 4359 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Wed, 17 Sep 2025 10:25:03 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-lj1-f187.google.com (mail-lj1-f187.google.com [209.85.208.187]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 58H8P237023651 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 17 Sep 2025 10:25:02 +0200 Received: by mail-lj1-f187.google.com with SMTP id 38308e7fff4ca-333f823e1b9sf3811731fa.1 for ; Wed, 17 Sep 2025 01:25:02 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1758097497; cv=pass; d=google.com; s=arc-20240605; b=jzOBIRRq14R+OQqcDHdrmAFY7oZyPsVPAOiJ5Hutambd+wwMcDhNYQfTVoeX7eliPo yDUJc5HzJGvm6MztAhCMy8rrs6oAKA3nFzRK+bZA/Fpb/GyqVsQMuW4b3O8SdboYSP0c hsEepNegBrOtkukgUtCJKTDVNtcffLncgAyxa5zCZucDgJ5oj9rq73rOYLhrjlaI74j+ MjBB2yRruWiRmOHc9hTVAuJKb61ZimXbUBUJRvz4Y4zmZI0lwQ0Jsed6vh7UEKIgyI7h 8YM1R8U9AN+PqXzsNkVbEG68nTjxgKAaZfAQM3uIkdfGiKCAnI2PHuWwvAWdfb0iqmPm 4Dig== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=vgwRtLsH1cGvNpaobqkP7rChBoLOVwuYIN4DnYG+s+U=; fh=g0yAvT6OvXHZ7LPbQYAXzULhPcFd7FXfiRqpg3FPZ8w=; b=PwRur9OhvOUzghi3GlFdBSaFJ6cH5MCkzpaYZyAi9H7FeZ4ywYjkRd8GlNQqpuOaBs HLMrFMNnhZTmXCW2jIIkzz38pMkGz9bQLAbD1k4/xz5Fw4C2rDS1xADrVpiHY4j/WG+d iNLFIUSLCsOCBxPTKqVRJdWjRxlD3CmD1R1BcicOjsD/X/v3qJuozDsqh8g5FRUzStdD EbwmrC12z5sEdDZy3BWNTyC/vqbri31XluuC+8MoM215Wn3xIyYFCLPCARIw/XnGO2qo 0mKqIr8EprnBjV+CYpI09XJc/jG6nIlbeomnvCTm1dWJ3XlTlImyBoYX1oEFKw2xrWoE pc6g==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=Kl2L39VW; spf=pass (google.com: domain of fm-1330684-202509170824511ac37b9f3c00020787-w32yfr@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1330684-202509170824511ac37b9f3c00020787-w32yfr@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=1758097497; x=1758702297; 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:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=vgwRtLsH1cGvNpaobqkP7rChBoLOVwuYIN4DnYG+s+U=; b=rlvhUi20ScdSB9fYKW9YpncUiM8TaPhxPEZznsnS9fg9dZs9NJ99Z7DlczBKHONjvv 54I0930eo+HgeVryoNlex9sKdZJlOg53lP/j3OiBSPek8PFS259UnNeJWD9lXJkL8pK3 knC12/YJBr9EIszvzNB0AjHKjZe9E9Yd6P/LtxMP97oJsPk9+9bAlTaOA7LDMp7VWREU cohqVN1hAan7fTpWP+R8NCEu1FelIAayXYITvzF2RPFhJzvnhKgqbTS3saEGrhN2EUf8 M5nrjy+lUaFVBM6vkPrfanxdR/jJFhOgLWDJgv/D4N75vjqlXWPb0BhA7w0lijiKmuId llvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1758097497; x=1758702297; 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:message-id:date:subject:cc:to:from:x-beenthere :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=vgwRtLsH1cGvNpaobqkP7rChBoLOVwuYIN4DnYG+s+U=; b=Uo60O1E+yXchdEmZgTymj7EvF/5EnhfOo2R5Txb0B4UVGoQeDf5Og/V+IGH6bGC1Wp aV6Ru/Ogxi5LWdm6c5c3+PF8P6kjsH7PfcEkKjBz7KAamojvPudT/fcUhn4CJ9kwtiAo IBCbWCgRlW2KSpSeRtPVhORZBCvAvgPCoUJAqWVtGr1np7d5aRSo9Z3GJaI661W5w6aE CkrQPS+mtkKL0jg8visGXxQ1cU35P5M/Z8OmEq/sfpzVDx54SxtIGJXLNIAj6uSLVN+H mxZDsm9TWkPrzErMmpojj5d0jDTDP05/t9spqAl4fVvWd+vTGvZVFt8SdXtWlAOe9+DG WBIw== X-Forwarded-Encrypted: i=2; AJvYcCU/H//QOpnZ6HbIU73km9/8iCx+kVBNIGeXTHwTxJfYIAQpposZu2xbgDe9KzBxvQ2M01WxFD0=@isar-build.org X-Gm-Message-State: AOJu0YzJz2/LpvsZlk6El1qTSQ3qKpbJHLI1eOv9QLkr/GLWP7JeYPII CSTeJcrgF7nmRInvP7Pytya2C1NF1GHnukex1Ckka9b6kkpTdS99ALh4 X-Google-Smtp-Source: AGHT+IHJ9NqLLJDyD2P9axwGS7RCYynYDsgHo5pbJgKPaFrhP16gQTwfQHz5DkTBpEZ1/WTgM8O2ow== X-Received: by 2002:a05:651c:19aa:b0:336:d0f8:5a7a with SMTP id 38308e7fff4ca-35f890c260cmr3569711fa.6.1758097496348; Wed, 17 Sep 2025 01:24:56 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h=ARHlJd7Hnh5lw/U0aQshPdFQrdNIBc0o1wfZWNpFl36OcGbfNA== Received: by 2002:a05:651c:4410:20b0:338:b5c:efbb with SMTP id 38308e7fff4ca-35ecfdbfcadls588281fa.1.-pod-prod-00-eu; Wed, 17 Sep 2025 01:24:53 -0700 (PDT) X-Received: by 2002:a05:651c:12c3:b0:337:f40b:ceff with SMTP id 38308e7fff4ca-35cb9b7135emr16672781fa.0.1758097492950; Wed, 17 Sep 2025 01:24:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1758097492; cv=none; d=google.com; s=arc-20240605; b=ls7YGPMl7yEllAfuOF/q1vUUxXwAQJNG1SPjy9qjVvkmt8PNsMZHlxNoY9cENcGWQJ 8ZR/3X1y58hsXsxKsDk1T0V+se67kyhj/Pw4jaiE0oRWQ3oGASBL+IIilUHTaS9GlmS3 AHok8pBkRvSFol/lUOmWtYIUKy4jKjlu2Fk7w8zUwtL/FkDLex5L7FjDcfIMbB9pVNJN LfygqOYtxBXitQ4QScmgIGR0IaZNsbmco4anTPLvftGvsdRdvdmMVIO05fd28JyvDIBn ltShpDHJJ9C0DnvNJwKNEEk4UahrI1drFObSfxb6sx8iZo2OpHipvT9SRglceLc9DZkz 1QDA== 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:message-id:date :subject:cc:to:from:dkim-signature; bh=pwvKxIgzYgzRKxXz6PPnSUwLxkezvfWkMZzbEnHAZ/M=; fh=Z5Qnyb0EtJ8UwrxkpbdSYE+xHzQI6qPfwJivtsUki18=; b=KgfF2ZqMeyESiQ5hF8O/nU4OuWZXB1daDNXgHqGUJOa7Ul/N3WazcP7g8j+KQi/6Nw 6x2L0IqoyyurNFCZY1LSa/thy6qbl/ic/qqhkWjgQjUjEhJ/KkrkvylfVuguJgaKc+8r JoQwL/0WpLOSORBfuXeU8Yrw6DKVP/mgNWELojGaHuHno1KB81QNhollJeH3jzBhqKtm vTfSsuv+pFCYY8bu7bUo5pjdhv3mvWwe5Cp2Uyq2Z+BzYqX5IjzUNA1Hx7BJtWr8shvA 7sp9JyxOtVcv3gXRiRlDYKa21BqoXnNgVypU8V96xarwLcNRUoyJRjMmFyroxeWFNP7r Sejg==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=Kl2L39VW; spf=pass (google.com: domain of fm-1330684-202509170824511ac37b9f3c00020787-w32yfr@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1330684-202509170824511ac37b9f3c00020787-w32yfr@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-227.siemens.flowmailer.net (mta-64-227.siemens.flowmailer.net. [185.136.64.227]) by gmr-mx.google.com with ESMTPS id 38308e7fff4ca-35129ddee25si458031fa.4.2025.09.17.01.24.52 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 17 Sep 2025 01:24:52 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-1330684-202509170824511ac37b9f3c00020787-w32yfr@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) client-ip=185.136.64.227; Received: by mta-64-227.siemens.flowmailer.net with ESMTPSA id 202509170824511ac37b9f3c00020787 for ; Wed, 17 Sep 2025 10:24:52 +0200 X-Patchwork-Original-From: "alexander.heinisch via isar-users" From: "alexander.heinisch" To: isar-users@googlegroups.com Cc: jan.kiszka@siemens.com, felix.moessbauer@siemens.com, Alexander Heinisch Subject: [PATCH v2] classes/image-postproc: Enable systemd units based on systemd presets Date: Wed, 17 Sep 2025 10:24:26 +0200 Message-Id: <20250917082426.48335-1-alexander.heinisch@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1330684:519-21489:flowmailer X-Original-Sender: alexander.heinisch@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=Kl2L39VW; spf=pass (google.com: domain of fm-1330684-202509170824511ac37b9f3c00020787-w32yfr@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1330684-202509170824511ac37b9f3c00020787-w32yfr@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: alexander.heinisch@siemens.com Reply-To: alexander.heinisch@siemens.com 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: Alexander Heinisch By default population of the presets is automatically done by systemd on first-boot. There were several issues with that: 1. The rootfs we get as a build artifact does not reflect the actual system running in the field. 2. For setups without writeable /etc this fails. With that addition it happens already at build time. Note: Additional services are enabled only. Services already enabled during the package installation won't be changed. Opt-out: `ROOTFS_POSTPROCESS_COMMAND:remove = "image_postprocess_populate_systemd_preset"` Signed-off-by: Alexander Heinisch --- RECIPE-API-CHANGELOG.md | 18 ++++++++++++++++++ meta/classes/image-postproc-extension.bbclass | 5 +++++ 2 files changed, 23 insertions(+) diff --git a/RECIPE-API-CHANGELOG.md b/RECIPE-API-CHANGELOG.md index 92e7811c..6c48b823 100644 --- a/RECIPE-API-CHANGELOG.md +++ b/RECIPE-API-CHANGELOG.md @@ -741,3 +741,21 @@ By setting `MS_TPM_20_REF_DIR` in an optee-ftpm recipe, it is now possible to use the new optee_ftpm code base from the OP-TEE project. That variable has to point to a subdir in `WORKDIR` which contains the unpacked ms-tpm-20-ref source code. + +### Populate systemd units based on presets during image postprocessing + +By default population of the presets is automatically done by systemd +on first-boot. + +There were several issues with that: + +1. The rootfs we get as a build artifact does not reflect the actual +system running in the field. + +2. For setups without writeable /etc this fails. With that addition +it happens already at build time. + +**Note**: Additional services are enabled only. Services already enabled +during the package installation won't be changed. + +Opt-out: `ROOTFS_POSTPROCESS_COMMAND:remove = "image_postprocess_populate_systemd_preset"` diff --git a/meta/classes/image-postproc-extension.bbclass b/meta/classes/image-postproc-extension.bbclass index 991bac4c..269b86c0 100644 --- a/meta/classes/image-postproc-extension.bbclass +++ b/meta/classes/image-postproc-extension.bbclass @@ -95,3 +95,8 @@ image_posprocess_disable_systemd_firstboot() { fi fi } + +ROOTFS_POSTPROCESS_COMMAND =+ "image_postprocess_populate_systemd_preset" +image_postprocess_populate_systemd_preset() { + sudo chroot '${ROOTFSDIR}' systemctl preset-all --preset-mode="enable-only" +}