From patchwork Fri Jun 27 08:25:02 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Heinisch, Alexander" X-Patchwork-Id: 4249 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Fri, 27 Jun 2025 10:25:20 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-pj1-f61.google.com (mail-pj1-f61.google.com [209.85.216.61]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 55R8PFY0015642 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 27 Jun 2025 10:25:16 +0200 Received: by mail-pj1-f61.google.com with SMTP id 98e67ed59e1d1-313d346dc8dsf1978927a91.1 for ; Fri, 27 Jun 2025 01:25:16 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1751012710; cv=pass; d=google.com; s=arc-20240605; b=gqVnaSxWPOAkNe/E137PpDmJdtGkEVPtlCGu24BqMHucnlc63Oz47MlRpbSjscf4oB ZzKY0PizZoKC+HMSG+vQDn5RlRISmZq9pxaq0f+UF8PW/1oT6r7dGK42I7NsZ5lZL9Iu USpJf8VEYgOoNz7jo+juj8yRAqyF0fR5wbq0XWrVuxMDKQ32fOE8Uq/4XGr+7koFS19C V0pxcMAByCxcV9FfplydiHe727FdRTf3BVfrlcPg1z5kK1hTtCvIFaqfoSdtrtLTeYoA NmFN/M0o4raodtZgnS5L6Gd15IFwGAoXv/tjMZWEgsyz4R8VQO5dC2wP75M7ImcAhO2+ kt2Q== 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=K3u9AcaUhPQ2a3Gn+qhM9bsbfuuXi48iz+t9xs0iG+c=; fh=d3rQUoUt0azg0Io4lrryk4h0KJ0n1UsnGYy+xteTbAs=; b=R0JGknzeXxhXpBuw+poLFWweRYZnh14IjzeNf2v8F26o9kAEM1I3mzAcnCXmaKnNiq ZgErncu1b36VdfciJRNKO052bePIG09soFtOsey8XvnIjgaD04J06ccCqMI/ma8Q3vMK Qz9tOdOTzDOEv+YuRCD70+X//HLsk0Mpq0wKyO6bo4zgUFYt0QzRmeQo/Cuk1tgblsQ2 NFRX82qIDRPe0YU/XO1jqFuAab+O5sU0jmkVXALoAFa8ipv3zyDTJKwzHOT2wn1ykE6z 9mEpndCXrTYbvOA2pd3Im5y/sLhFeiupQO0KWaFQAyV4ZiwydsIfrIz6nLLms67mmLSg Ku1Q==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=BpA2amms; spf=pass (google.com: domain of fm-1330684-202506270825054030af49c830edc981-8ouhd1@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1330684-202506270825054030af49c830edc981-8Ouhd1@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=1751012710; x=1751617510; 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=K3u9AcaUhPQ2a3Gn+qhM9bsbfuuXi48iz+t9xs0iG+c=; b=h10VXz8ZDPXfoW6QVSuhhyuER5XZJuOFuLtESArrFgcEOmU5P2/rwZJxAtFTVoOR7e j7SzzrrPWv/TJeWH41XTlbkktoL4Oup/NSO0D918Mmmglo1BbKWRIWsIV3gcM6kG5Hju aFDC1GZTBkUJmIrs+9YP2lfobbWiJUp9JRFngt8+ZXIbqQ5yNeOYVRaHY/uu0FOYDKw7 XuBmiX75BIRiF8oFXUypmCbl3ab9dMOG7RoItJMtpzAlxYCB8nTH7PIPMwPFEcgpmJu8 k9iHwIT7TwSeTvIXqRR9UbTQr2hEG466mJyDVjxia8cHD9SU/8YGSkviqbtjJAuHxEg+ WCzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751012710; x=1751617510; 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=K3u9AcaUhPQ2a3Gn+qhM9bsbfuuXi48iz+t9xs0iG+c=; b=rKdkX2OwJrJEsd0wFoECLwbuyDBGjgv9AE2fm4QJBh+FC0lRx+q1oKg48NIrN5PSMj Uam/8p3BLNHa49rWNshy7PKhbUlvfJljg+voGfHKbxa3BuLdtW24e/HsHuzgPF5tOEsG aNw68xPkJnjDQ699OseouMX7nzbfboNS9QLisYSqNjasFFvQZfpARhVN40U6hTQhVZdc JpWTgSsoJimjGFHihCVvVtm2bIbkymtXQEvTT+wonVIR/S3IvGYfx0I/oYSuloT0Ie2a XlGGhs8Xnpmm7S2RmaDDpvhmHcURkcC0vnCYNQO+qfAe0Y/RQIZYT5I4GbSOQwvP+GC+ CAlQ== X-Forwarded-Encrypted: i=2; AJvYcCXE1vBSOdC+pPQ9Ps/mSGnMnzg54MD7w0i8sqSbn3wB1SSi4oZwbkTc0H2ys/+bAH8DTepJxx8=@isar-build.org X-Gm-Message-State: AOJu0YwLDg4e5XajdKvM5yhgSyjGbY5urygnt6/w/WnlBsnrdfFuAz/g W7dEU/QNd1Q/mVyn4eE56UYRAGnDhMZZ/LN/qB1MBnwWzfbJotBfGYIO X-Google-Smtp-Source: AGHT+IHj1qrjIRKc/CxUXAeGML0tQV10owv3q3VZLe9OjakEXJgHe/R+8wzRlXfIlh6Nzz005Ei5WQ== X-Received: by 2002:a17:90b:4d0b:b0:312:db8:dbdc with SMTP id 98e67ed59e1d1-318c92ec0bemr2812153a91.20.1751012709963; Fri, 27 Jun 2025 01:25:09 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h=AZMbMZdARv1O3qH9zSDpsBLb+qm1OQrxAIXhOIYr1WWM/Yh4Lw== Received: by 2002:a17:90b:4a02:b0:311:ba81:b900 with SMTP id 98e67ed59e1d1-3169dc62f0cls2117857a91.1.-pod-prod-03-us; Fri, 27 Jun 2025 01:25:07 -0700 (PDT) X-Received: by 2002:a17:90b:2791:b0:312:f54e:ba28 with SMTP id 98e67ed59e1d1-318c930e0bemr3520133a91.24.1751012707684; Fri, 27 Jun 2025 01:25:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1751012707; cv=none; d=google.com; s=arc-20240605; b=RNyftgVl1oEO/lvqG65+YFTK/cf9z2iskvrEm0KJ6kQhxHI3T5ZDDckGCCRkhYJBPg x3v/C41dYPjyLKKzTsIiXr4zjzHQ1jN1Z00+MWx7aeYCN3P2wsZRARUfCWJaGHA5kUmA 8ycxYxSVFa8a0Spd741TXtPigr+T9g/M6ZvRFFp+cJQLBzwp1YiC1WFr9OewEqV1RE9w wNn8lve6d73NHfzfJYUXcmxNqqgHZZVRFhRG69E/VlQ9iLf1bpAY5FIp78Bqa42DoHhp KYp86NtFaGduDshuf8CNgLcP7Ys0vFEaTZWEpQbpDuhj8gU/x+UOiywDq+KbrO9dYgwk d2RQ== 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=7f21UPZq+yUghd2KXIwLYF6siK97/e98R8xYe26RJhI=; fh=d5oQWUHQuMaQWkqe2fFmxFU0g4mSMMv9h/uZcwRMymI=; b=U6ZfVcZ+jZBJvxeIfcD//2hB2QHCBJhTkeqwMClHygqzlLTkBDGdGkYlKXqB3w04fM GIyhvFMLUyt7u3mjWvphNEBnEdlGZSSeJ7z6Hxq+trqlTHQzq5WlIwtk4vsz+SfuTJ/R 4DI/Xf94qgDrIwxjVOYZ1QlsAye3S3gJ4GXgekhqVdAoXaZZGEJ4u6HDDeArLqwvnM9e pp5Bm7lpVIUep2RFwECZ9ifAkHn6l+fYO3PUIzDCGUrk8lsw5zznxEPSBwyrtvDuLl57 uQcR6zIQAllKYtMYj4SGUNAp3h3PyqvDvrn2AXh1en+6sNgUNsRNYDq+xwneIopG1Lq6 Rb2g==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=BpA2amms; spf=pass (google.com: domain of fm-1330684-202506270825054030af49c830edc981-8ouhd1@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1330684-202506270825054030af49c830edc981-8Ouhd1@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 98e67ed59e1d1-318c12c0c3csi40282a91.0.2025.06.27.01.25.07 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 27 Jun 2025 01:25:07 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-1330684-202506270825054030af49c830edc981-8ouhd1@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 202506270825054030af49c830edc981 for ; Fri, 27 Jun 2025 10:25:05 +0200 X-Patchwork-Original-From: "alexander.heinisch via isar-users" From: "Heinisch, Alexander" To: isar-users@googlegroups.com, jan.kiszka@siemens.com Cc: Alexander Heinisch Subject: [PATCH v2] classes/image-postproc: Enable systemd units based on systemd presets Date: Fri, 27 Jun 2025 10:25:02 +0200 Message-Id: <20250627082502.74292-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=BpA2amms; spf=pass (google.com: domain of fm-1330684-202506270825054030af49c830edc981-8ouhd1@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1330684-202506270825054030af49c830edc981-8Ouhd1@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_H3,RCVD_IN_MSPIKE_WL, 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 8468717d..fb9ad4f3 100644 --- a/RECIPE-API-CHANGELOG.md +++ b/RECIPE-API-CHANGELOG.md @@ -727,3 +727,21 @@ Changes in next This was never documented and never had practical relevance. `oci-archive` is the useful OCI image format that can be imported, e.g., by podman. + +### 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" +}