From patchwork Wed Sep 3 15:20:50 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quirin Gylstorff X-Patchwork-Id: 4323 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Wed, 03 Sep 2025 17:21:11 +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 583FLAFC008964 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 3 Sep 2025 17:21:10 +0200 Received: by mail-lj1-f192.google.com with SMTP id 38308e7fff4ca-336de0ff5d6sf15126581fa.2 for ; Wed, 03 Sep 2025 08:21:10 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1756912865; cv=pass; d=google.com; s=arc-20240605; b=laeAHNkQjX2yfY0akhxoLCx3Zeld6GTLwvq/fyUOpXf0iTSPQqPT5BWQ7CWGPJX1Sb HOrrXTLR/2ZvyMeEZHxLcJLSZJbZkQPtZpruvyvIH70y4GIlocOAEmFVnWWCDHf0b2Qv yBZyJv6g0qaPESj2rgeK7hsS1eGgbKBkvgIOrYE9xeN2yznT4wGYnHkqgsmrPmVMY0E4 ynhPSkiNJUdisztrS/SUH1m3p/Ai7M0NEsc0aWL2MupE2AtZ0k0muwQ0XN6Qw1oyhfB5 jKXDL8aT65zBRwMaMbtp3wTz66dulwk5Ym3msRQCFhmgBlw9AoQvlIyE9R6hHIKNI/7w kFwg== 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:to:from:dkim-signature; bh=g0hgIkt+ASndKN4SKWrWoXZu2BrAUA3AWMPA64t5EUo=; fh=lYXZZjW5WrIhAaZ/ucFVD5EEKlSstfPW41iOHSq+YGI=; b=XyQoNgr5sZK/QSi9YoD3MxyumA8C+0c5cq71MVASK5usArPUFW/ET2kT32u9yUQEJo XYWU/8UOREgwIeCgSTzz8etwIQTC4IpK3vpbzC6JAKpWizcFhZbObqx3eRkhJQrkx+Dn rBGtRFDGY/dh+Kwph9z2b142QRsFLb65M7xaq84Am3QM0i+FC5r0X8IBRVAn/a/572Un Mhv9NqdJh/Sv3qpBBMHpxv63WnjnVgdtva9/JKr5wDYfKfp9m9nNmqT2vByaWgj6fBUw L4XwnCIvLGuyFMzQ+C/EGJCwht5+PBEDRp0o5dmevkB6qQ5H1R0CzXKWLkY7cHItexSN QJKw==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=USBW8g46; spf=pass (google.com: domain of fm-51332-20250903152059393499cbc80002078a-mggkq_@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) smtp.mailfrom=fm-51332-20250903152059393499cbc80002078a-MGGKQ_@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=1756912865; x=1757517665; 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:to:from:from:to:cc:subject :date:message-id:reply-to; bh=g0hgIkt+ASndKN4SKWrWoXZu2BrAUA3AWMPA64t5EUo=; b=xZthNGNwHyMrL0+Nk/mk4NiuvYjoElJxAyliZ/oNAXWvY2HTmA5TyUU7DP5aQ3R+h8 uKbzxpFo72u7zK1S44Ut8sSrC5cqEuwQjyrOEHWKLpykIox2sOsZCpP/S3bXVCw8F7zK 4NcS7jEUoWy6o3iPHZMaK22FKk4R2kKBSs7y80NhsDtYj6DHlsWKCWvI12IW3oyUwFA3 A+lAFS204ZJX49oHrSk1Ht78jAymU4v+rLl/b+6eDeMhIhtv7OhmwuJvz5DPflxfB73v qWsdg+N2FIhgBTyXtqWQwpc+IJE5UAkQ/4Jn741ZpeK38awV0WG7JXTt5JQTg+TCSmpR 9LJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1756912865; x=1757517665; 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:to:from:x-beenthere :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=g0hgIkt+ASndKN4SKWrWoXZu2BrAUA3AWMPA64t5EUo=; b=XSiqdxfg0i2jMSQbzPyDoxknl4FPsd2fZHsQ0TlS4CVkjBM7KEvSanoXFmSpbOkcj8 nDpbra7TdCUhqHTD16Wi6ZvDay/tVG6hyjmifgSImbHWvWeidhLm2w1Ith64XRLKBlab 8rLqQac2Tiuryc0Il0jKxZ7QAhBCLRQaNkaL+P4z5AQhva+3bRcaLWDyAJatOqKpMsUF 7IwAzk9pLzXBxxcyusZcoL6EB7qdE9tFaIP7etEwcQKzj9J4f2CPq/s+b9h6/y1IptBn mFd++KUac/XWTGwhlUCFH6acKxbMD1TyPV0tur+ziw7hkQc+3gG/6w74W2BETLjC2dWL MoZw== X-Forwarded-Encrypted: i=2; AJvYcCXqx/N/DDBmbKfLmN88qTJy012gkVJsipcNM93FC1NqRKhiWXHjXFCsvNGlyFvUz+w99/dCvkM=@isar-build.org X-Gm-Message-State: AOJu0YyjZlkznsjWoVeW1s+C2uoFa0ADYfJ8kg0Y2HUF/5+AkkHshIwe vnC1zP4Z34PTxLK4hoVLV0zH1csjpPSEEjSO8XbpeCF//QxoRTyM37ek X-Google-Smtp-Source: AGHT+IEF/BFJIRScPm5K/NJM5BGB1mAm8ZmK1jTEhDqwXmDqGRisPfIAXoJ28ZdZRejMBBZfWTOV8Q== X-Received: by 2002:a2e:a713:0:b0:336:7e31:6708 with SMTP id 38308e7fff4ca-336caf5eb14mr28968011fa.37.1756912864220; Wed, 03 Sep 2025 08:21:04 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h=AZMbMZfefnmJwk5rgWfCzPbSuI2SuEOLBfrLmHstc+TXV3oMSA== Received: by 2002:a05:651c:1104:b0:335:7e09:e3da with SMTP id 38308e7fff4ca-336a114d26dls13434151fa.2.-pod-prod-04-eu; Wed, 03 Sep 2025 08:21:01 -0700 (PDT) X-Received: by 2002:a2e:a4d8:0:b0:336:5a68:58f6 with SMTP id 38308e7fff4ca-336ca998ac3mr33329341fa.18.1756912861390; Wed, 03 Sep 2025 08:21:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1756912861; cv=none; d=google.com; s=arc-20240605; b=OLmbSJ+sx66uoSqmusothTGqWwe8gwBSq8rBrHkP7y15jolSdr4i7AZCHnxZyIaS02 gCkiVUOqWkF9tAledhFMIe8h4oyCIj9GV+syirulv5Gpvbxa8K046vSuMPA0BFPJCWtJ dFU2wIxPvFa8E2yoDo/mH+BIEcSo/VFDPxZ/yPaxg4MXG7NSqa+jjm4aXiW/kcoMyYd0 3usaM0QZ4ebmFzOYl2MVs3wN4k9eVTMyCmcSR71Kc4Oh3+5ZgjbXZj3m/MPGTdErUG15 JTyhdr0r7/i7/nmlMqMXOVbxaX9ONGjRk6kLYzSevnhqE/FGnShIhqhHiqFf3JQh52JP zv/g== 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:to:from:dkim-signature; bh=MOwwMy9BMW1kUq9eq/oDWnVjXkad4gnGFVol8Zn60NY=; fh=7tclEdh7YbwSQowgJ6LNq720O7H5HTEaqj22NJWRE2E=; b=Xl6Ot6VsfVNl3YaWTSa4OUcDMU+agISXrdz60frbRBkC2NizONOnosi2e0nzbWT50g 3hs92/g1N0FfawCObY8KqAukA0z9gOJqXEMgDE39PgBNnD8F0HlraUqGpALtLjVgQKvw uouFJN9d9F9jVc6iO01G4WGjMOXwHrks6Fk9qMlhz6tvNEUwNkuhi1gFbyraJFEEWWk0 E6ffWELLW4L5vxnpv7RZ+RQLSzXXTe9jmjXfpc9GhXkqDa5KGiftHvdhhY1d0Tnc/8pS 19h2HTPUe0sNv4+1wEoJgzM1rdSmfjxXHkc7G+btyi0SE4FFLUXXfjQWwF/aMAjtAQZZ XxWA==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=USBW8g46; spf=pass (google.com: domain of fm-51332-20250903152059393499cbc80002078a-mggkq_@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) smtp.mailfrom=fm-51332-20250903152059393499cbc80002078a-MGGKQ_@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-227.siemens.flowmailer.net (mta-65-227.siemens.flowmailer.net. [185.136.65.227]) by gmr-mx.google.com with ESMTPS id 38308e7fff4ca-337f4f72a71si868031fa.3.2025.09.03.08.21.01 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 03 Sep 2025 08:21:01 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-51332-20250903152059393499cbc80002078a-mggkq_@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) client-ip=185.136.65.227; Received: by mta-65-227.siemens.flowmailer.net with ESMTPSA id 20250903152059393499cbc80002078a for ; Wed, 03 Sep 2025 17:20:59 +0200 X-Patchwork-Original-From: "'Quirin Gylstorff' via isar-users" From: Quirin Gylstorff To: isar-users@googlegroups.com Subject: [RFC PATCH] meta/classes: Add strip-image Date: Wed, 3 Sep 2025 17:20:50 +0200 Message-ID: <20250903152055.1353354-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=fm1 header.b=USBW8g46; spf=pass (google.com: domain of fm-51332-20250903152059393499cbc80002078a-mggkq_@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) smtp.mailfrom=fm-51332-20250903152059393499cbc80002078a-MGGKQ_@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 class provides the optional functionality to strip packages and files from a image. This allows the user to reduce the image size. IMPORTANT: This is an expert feature and can lead to broken images. Signed-off-by: Quirin Gylstorff --- The default settings will reduce the space around 40MB. It is currently a RFC to collect information about the usage. Should we integrate by default or should the user add this on demand? For a default integration I would drop the deletion: - /vmlinuz* - /boot - /usr/include - initramfs-tools meta/classes/strip-image.bbclass | 64 ++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 meta/classes/strip-image.bbclass diff --git a/meta/classes/strip-image.bbclass b/meta/classes/strip-image.bbclass new file mode 100644 index 00000000..edff3fd4 --- /dev/null +++ b/meta/classes/strip-image.bbclass @@ -0,0 +1,64 @@ +# strip image helper +# +# This software is a part of ISAR. +# Copyright (C) Siemens AG, 2025 +# +# SPDX-License-Identifier: MIT +# This class provides functions to remove pacakges and files +# from the image + +# Default list of files to be removed: +# - remove kernel and initrd +# - remove all documentation +# - remove all include files +IMAGE_STRIP_FILES += " \ + /vmlinuz* \ + /boot \ + /usr/share/doc \ + /usr/share/info \ + /usr/share/man \ + /usr/include \ +" + +do_strip_files_from_image[vardeps] = "${IMAGE_STRIP_FILES}" +do_strip_files_from_image[network] = "${TASK_USE_SUDO}" +do_strip_files_from_image() { +i if [ -n "${IMAGE_STRIP_FILES}" ]; then + cat </dev/null || true) + + if [ -n "${RMPKGS}" ]; then + bbnote "Removing packages: ${RMPKGS}" + sudo -E chroot "${IMAGE_ROOTFS}" \ + dpkg --purge --force-depends --force-remove-essential ${RMPKGS} + else + bbnote "Packages have already been purged or could not be found" + fi + fi +} +addtask strip_packages_from_image before do_strip_files_from_image do_rootfs_finalize after do_rootfs_postprocess