From patchwork Wed Aug 12 10:00:02 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Clara Kowalsky X-Patchwork-Id: 5348 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Wed, 12 Aug 2026 12:00:49 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-wm1-f56.google.com (mail-wm1-f56.google.com [209.85.128.56]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 67CA0mYT009650 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 12 Aug 2026 12:00:48 +0200 Received: by mail-wm1-f56.google.com with SMTP id 5b1f17b1804b1-493fa6e28a7sf7542725e9.1 for ; Wed, 12 Aug 2026 03:00:48 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1786528842; cv=pass; d=google.com; s=arc-20260327; b=sZRRUp5ucrQXybce3qx9KiRFhUiV2/UiryM/Wb6vetqRmhAKfMCfAI/HrAFxOT/Yqw 5NqE1AdYBnUhDQKsBJLzIhB0l9akI+6rjckYZ3XNmz6vE266WggI58gQjhG+M+BU4oRE iBut+s+SOYV7A07muxVOaV6hDhwBpP0e7QmVkDL/EDZZp/8B2C0dRW2H33soHhSde16x j8RQQfc9YhbH63p1yhtwc0eMpTsFNG94ohvWZgJeuGp90XsGc9/LcqaSE+oODXquubAZ DBWG8/dUzbwjXoAdwsXg1todit7Si6dqbaGZ+P8E7QK9pnZF9l6cLBVOrRVz/m/t2zn1 smTA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; 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=771Y0LI0WkGzdJCVvuF8VOAejOn3qqvNtTKK/e8a8is=; fh=tL3Xy+lIT0sIb3TtFw4y8NT8XnSarSIVcQoMM9TAhig=; b=itiw0cJdzAfMgjtb4OCx4KYuI5Kt9rE+YgGen7mwDCh1gXbVOLK97yL/+HOk3j+RQa hU9e95wUcCUfUhmgm5nrS36bcBtoHi4TZdDt0Xuusbb+jX6/3omRZXNwW6z8PlN8f6pc u2DLfE4HUKw1KEfEKzEi1MagaW90N5jy+pIRH5N2xbZUVkojBpZZxuh0qc+UI5SBzXiZ ZrJG0q2up8Ouvnyf18LI8m9d0xVgaLZMHp/oWXy8kyl67NddnuUZGEMLJftlqbvfz83H RnRfDiuzJxWmTxh/vKUi4rqIqPRt+JYZ5BeOk7h+5K3n01RswJB/7JrIuWzwhKPyBaIq s+zg==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=TU6Yn2nB; spf=pass (google.com: domain of fm-1047747-20260812100039c22b727b7f000207bf-qkhyhe@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-1047747-20260812100039c22b727b7f000207bf-Qkhyhe@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=20251104; t=1786528842; x=1787133642; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:content-type: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:content-type; bh=771Y0LI0WkGzdJCVvuF8VOAejOn3qqvNtTKK/e8a8is=; b=eMtrYTlaQ7+1upng/VLhUrEBiJrezo/oh3nbbrBkf5V5ELpjnweDvSuQH8N/2Der5B bA4UC05Sk0bWayHAhxfYe3qD1AYuxudU75bLHAMuOO8DqSQpDM2DCTs1eicNXxWuK/zc oXbo0pr5r/VE7P88mdP+GXFW4TYvBd8YFxrnTx1b6WVQK9I7IJhtqvxpT+R9tZiIb7U+ NrB2diJLKkjDBH/B1Ikz5fBYrdWKJSXfnEyt/GRJag9ZpXXaxwPWyYmeN6DolS7EN773 xnm8xidPdIE29mhfR5Zve2IFxohIizx3uYNjFS0AdJuUOXzmh4P99fxCUX28zlqWFU4I 9sAw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786528842; x=1787133642; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :content-type: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:content-type; bh=771Y0LI0WkGzdJCVvuF8VOAejOn3qqvNtTKK/e8a8is=; b=aL8cucSM32ixAfEnXx4z+d3F1h3yxX8Knb0D2kBRaa3xDLrTYGLIJqsnhrS2PdFeHG nF9ajifiucc7eaOE/oA4d0XrnR6VNofNQMGZfII5/M1dgCh6rYePJ3roJxquJkUkCshN E3f9PRS+0tWrIejQor9YzzXbaPFJi/0oEog91cA4TOgy+g6oWFDnqlTaZb27BOOYeeT/ EtSLfXEg3kU/OI+/8+7L6DXRzWDAh+Zzhf3LPhcFFkaSB2cO/uHiZUK9W8o9FjK+bdwF NI7FGYgjAEypht+6ipT41lkSjjZwlFApUucxaL5Ze9vEViEHYUD8HvHmxYvpoWDsWcp8 NGMw== X-Forwarded-Encrypted: i=2; AHgh+Ro30o/cuQpGk/SGoI5VzGerBvhZ61bfRV3DvJGNaWDyLjtR88aqCryoH7Osf6pCzfaNdLWedD4=@isar-build.org X-Gm-Message-State: AOJu0YwPoxjjmFqNSPa72CfGAQ35Wc3QOzjBOSUGeaoQeDpq5HJ6nahq SAk/JMXckEKQVuHX/UONhmn+rLN/xO1BJPMG2bH7vW7tBX7zKgs+HIwS X-Received: by 2002:a05:600c:c042:b0:495:4689:1e98 with SMTP id 5b1f17b1804b1-4997c138c3emr30812055e9.10.1786528842307; Wed, 12 Aug 2026 03:00:42 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="Aa7YSPRrxl3JxaUBeOxI0+ft8B58pVsnUXHQ4t65eBlkQn7yMw==" Received: by 2002:a05:600c:5246:b0:495:4a9b:3dab with SMTP id 5b1f17b1804b1-49954b1c196ls58830745e9.0.-pod-prod-05-eu; Wed, 12 Aug 2026 03:00:40 -0700 (PDT) X-Received: by 2002:a05:600c:154e:b0:495:4811:d71c with SMTP id 5b1f17b1804b1-4997c1470ddmr41504695e9.13.1786528839968; Wed, 12 Aug 2026 03:00:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1786528839; cv=none; d=google.com; s=arc-20260327; b=DqStkVo3ae1S4doil+WgDFcM9vAsvVS2tDpKPv8zHy6t64v+2/F9PJct0VZMSf9gxw mEixyM9L+1Di0F0n7X+C2bTv3QlaBvXTfu9mXrgEWk4egZ9TMpXLOapusrZ1adCI5nCr s0rXa/45gIbyFhoXE4z93QpGaP47Sx9abhV4yYyU3POyl2sybK4rpJPCSRerAAS5iSWE k1NL7fQDaxF928bsMoclqkY6R/0Y4TIShLZSBExHnsRvfD7S3USo3F9F9hD25Re9PcuR nOLzEZRYUdgGJGW0/5a3+B+9m9Ifbx9I0kWor4hZA0WM6sWfS8pBVPtxL2BhUWQ7Z56B 9E3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=feedback-id:content-transfer-encoding:mime-version:message-id:date :subject:cc:to:from:dkim-signature; bh=TK7Ra0ZYEUejP17LbGgNgPWsbLnWaMDXuMmBJdMIlqc=; fh=AqT8zD6jUs4YP+XkSwmnbRYu3wrat9Vyg/xvm1MGQCM=; b=dkY58s07hisvOkPsNbWL4JGkNlBIpEjEVZqYM30j3QoHAHERQAS5t/kx7aiTuEQVFl bCKdvvoH7l/IHPqMbLd/FYRPrR3NRH4mDXQWzoDf3TP1wlwICESnax/uqMYLEjqqNp8I VDGCJvjPpQgoIpL2KzCrnCC0OcoN/Yk+FmkM8OAXmLraW2rp5m440+9YUpvEShwiwWmO npeZP2AFXXtNiid0YENxBnpG0/EC8Rc9Q5AJs19MsxDtlroolK34YGgLDfhdnk0QB2Kh f1vSCr05bdWC5ZsZeLbWdrEImswiHn7Bzd8Q2h2P2QjnxZdEiAW4FiUwYnj3ZJ7MJaor H5jg==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=TU6Yn2nB; spf=pass (google.com: domain of fm-1047747-20260812100039c22b727b7f000207bf-qkhyhe@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-1047747-20260812100039c22b727b7f000207bf-Qkhyhe@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-225.siemens.flowmailer.net (mta-64-225.siemens.flowmailer.net. [185.136.64.225]) by gmr-mx.google.com with ESMTPS id 5b1f17b1804b1-4997c8f7805si272925e9.0.2026.08.12.03.00.39 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Aug 2026 03:00:39 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-1047747-20260812100039c22b727b7f000207bf-qkhyhe@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) client-ip=185.136.64.225; Received: by mta-64-225.siemens.flowmailer.net with ESMTPSA id 20260812100039c22b727b7f000207bf for ; Wed, 12 Aug 2026 12:00:39 +0200 X-Patchwork-Original-From: "'Clara Kowalsky' via isar-users" From: Clara Kowalsky To: isar-users@googlegroups.com Cc: Clara Kowalsky Subject: [PATCH v2 1/2] meta: Generate WSL image for Windows Subsystem for Linux Date: Wed, 12 Aug 2026 12:00:02 +0200 Message-ID: <20260812100003.1669757-1-clara.kowalsky@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1047747:519-21489:flowmailer X-Original-Sender: clara.kowalsky@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=TU6Yn2nB; spf=pass (google.com: domain of fm-1047747-20260812100039c22b727b7f000207bf-qkhyhe@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-1047747-20260812100039c22b727b7f000207bf-Qkhyhe@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Clara Kowalsky Reply-To: Clara Kowalsky 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,URI_TRY_3LD 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?= This allows to generate a `.wsl` file for Windows Subsystem for Linux, based on the tar image type. WSL uses the Windows-provided kernel, so make sure that other layers like isar-cip-core do not set the KERNEL_NAME for this machine. The wsl-config recipe ships the configuration files /etc/wsl.conf and /etc/wsl-distribution.conf as templates. See https://learn.microsoft.com/en-us/windows/wsl/build-custom-distro#create-wsl-configuration-files The variables in the configuration files can be overwritten in downstream layers: - WSL_DEFAULT_USER specifies which user runs when the WSL distro is launched. Default: "root" - WSL_DEFAULT_UID specifies the default UID used during first-run/OOBE installation. Default: "0" - WSL_DEFAULT_NAME specifies the name that the distro is registered under. Default: "${DISTRO}-${MACHINE}" Whole configuration files can be replaced or added by bbappending the wsl-config recipe. This was tested with WSL2, in plain Isar and in downstream layer. Signed-off-by: Clara Kowalsky --- doc/user_manual.md | 1 + kas/machine/Kconfig | 8 ++++ kas/machine/wsl.yaml | 7 ++++ meta-isar/conf/local.conf.sample | 3 +- meta-isar/conf/machine/wsl.conf | 13 +++++++ meta-isar/conf/mc.conf | 2 + meta-isar/conf/multiconfig/wsl-bookworm.conf | 7 ++++ meta-isar/conf/multiconfig/wsl-trixie.conf | 7 ++++ meta/classes-recipe/image.bbclass | 2 +- meta/classes-recipe/imagetypes_wsl.bbclass | 13 +++++++ .../wsl-config/files/etc/oobe.sh | 4 ++ .../files/etc/wsl-distribution.conf.tmpl | 6 +++ .../wsl-config/files/etc/wsl.conf.tmpl | 5 +++ .../wsl-config/wsl-config_0.1.bb | 37 +++++++++++++++++++ testsuite/citest.py | 18 +++++++++ testsuite/data/targets.yml | 4 ++ 16 files changed, 135 insertions(+), 2 deletions(-) create mode 100644 kas/machine/wsl.yaml create mode 100644 meta-isar/conf/machine/wsl.conf create mode 100644 meta-isar/conf/multiconfig/wsl-bookworm.conf create mode 100644 meta-isar/conf/multiconfig/wsl-trixie.conf create mode 100644 meta/classes-recipe/imagetypes_wsl.bbclass create mode 100644 meta/recipes-support/wsl-config/files/etc/oobe.sh create mode 100644 meta/recipes-support/wsl-config/files/etc/wsl-distribution.conf.tmpl create mode 100644 meta/recipes-support/wsl-config/files/etc/wsl.conf.tmpl create mode 100644 meta/recipes-support/wsl-config/wsl-config_0.1.bb diff --git a/doc/user_manual.md b/doc/user_manual.md index dcc3f560..f3b1acb9 100644 --- a/doc/user_manual.md +++ b/doc/user_manual.md @@ -514,6 +514,7 @@ Currently, the following image types are provided: - `ubi` - image for use on mtd nand partitions employing UBI - `ubifs` - raw UBI filesystem image, normally used together with UBI partitions - `ova` - Open Virtual Appliance: image for use on VirtualBox or VMware + - `wsl` - tar file for Windows Subsystem for Linux - `squashfs` - raw squashfs filesystem image - `fit` - FIT image as used by U-Boot - `oci-archive`, `docker-archive`, `docker-daemon`, `containers-storage` - see [generating container images](#generate-container-image-with-root-filesystem) diff --git a/kas/machine/Kconfig b/kas/machine/Kconfig index 1e360be6..2895368c 100644 --- a/kas/machine/Kconfig +++ b/kas/machine/Kconfig @@ -253,6 +253,13 @@ config MACHINE_HYPER_V select CODENAME_TRIXIE select ARCH_AMD64 +config MACHINE_WSL + bool "wsl" + select DISTRO_DEBIAN + select CODENAME_BOOKWORM + select CODENAME_TRIXIE + select ARCH_AMD64 + config MACHINE_X86_PC bool "x86 PC" select DISTRO_DEBIAN @@ -297,6 +304,7 @@ config KAS_INCLUDE_MACHINE default "kas/machine/virtualbox.yaml" if MACHINE_VIRTUALBOX default "kas/machine/vmware.yaml" if MACHINE_VMWARE default "kas/machine/hyper-v-amd64.yaml" if MACHINE_HYPER_V + default "kas/machine/wsl.yaml" if MACHINE_WSL default "kas/machine/x86-pc.yaml" if MACHINE_X86_PC endmenu diff --git a/kas/machine/wsl.yaml b/kas/machine/wsl.yaml new file mode 100644 index 00000000..f043b02a --- /dev/null +++ b/kas/machine/wsl.yaml @@ -0,0 +1,7 @@ +# This software is a part of Isar. +# Copyright (c) Siemens AG, 2026 + +header: + version: 14 + +machine: wsl diff --git a/meta-isar/conf/local.conf.sample b/meta-isar/conf/local.conf.sample index 9b0b3746..6e1e1546 100644 --- a/meta-isar/conf/local.conf.sample +++ b/meta-isar/conf/local.conf.sample @@ -155,8 +155,9 @@ CONF_VERSION = "1" IMAGE_INSTALL = "hello-isar example-raw example-module-${KERNEL_NAME} enable-fsck isar-exclude-docs samefile hello isar-disable-apt-cache cowsay example-prebuilt" # -# Container machines don't need example module and enable-fsck. +# Container and WSL machines don't need example module and enable-fsck. IMAGE_INSTALL:remove:container-amd64 = "example-module-${KERNEL_NAME} enable-fsck" +IMAGE_INSTALL:remove:wsl = "example-module-${KERNEL_NAME} enable-fsck" # # Machines with secure boot should use signed modules. diff --git a/meta-isar/conf/machine/wsl.conf b/meta-isar/conf/machine/wsl.conf new file mode 100644 index 00000000..b1a3b89b --- /dev/null +++ b/meta-isar/conf/machine/wsl.conf @@ -0,0 +1,13 @@ +# This software is a part of Isar. +# Copyright (C) Siemens AG, 2026 +# +# SPDX-License-Identifier: MIT + +DISTRO_ARCH ?= "amd64" + +IMAGE_FSTYPES ?= "wsl" + +# Configure rootfs for WSL boot +IMAGE_INSTALL:append = " wsl-config" +# Enable systemd-user session model +IMAGE_PREINSTALL:append = " dbus dbus-user-session" diff --git a/meta-isar/conf/mc.conf b/meta-isar/conf/mc.conf index 649430a2..df3a38b0 100644 --- a/meta-isar/conf/mc.conf +++ b/meta-isar/conf/mc.conf @@ -89,4 +89,6 @@ BBMULTICONFIG = " \ qemuamd64-sid \ qemuarm64-sid \ qemuriscv64-resolute \ + wsl-bookworm \ + wsl-trixie \ " diff --git a/meta-isar/conf/multiconfig/wsl-bookworm.conf b/meta-isar/conf/multiconfig/wsl-bookworm.conf new file mode 100644 index 00000000..5e9f3697 --- /dev/null +++ b/meta-isar/conf/multiconfig/wsl-bookworm.conf @@ -0,0 +1,7 @@ +# This software is a part of Isar. +# Copyright (C) Siemens AG, 2026 +# +# SPDX-License-Identifier: MIT + +MACHINE ?= "wsl" +DISTRO ?= "debian-bookworm" diff --git a/meta-isar/conf/multiconfig/wsl-trixie.conf b/meta-isar/conf/multiconfig/wsl-trixie.conf new file mode 100644 index 00000000..8ef796e4 --- /dev/null +++ b/meta-isar/conf/multiconfig/wsl-trixie.conf @@ -0,0 +1,7 @@ +# This software is a part of Isar. +# Copyright (C) Siemens AG, 2026 +# +# SPDX-License-Identifier: MIT + +MACHINE ?= "wsl" +DISTRO ?= "debian-trixie" diff --git a/meta/classes-recipe/image.bbclass b/meta/classes-recipe/image.bbclass index d02f99da..0329c3f8 100644 --- a/meta/classes-recipe/image.bbclass +++ b/meta/classes-recipe/image.bbclass @@ -174,7 +174,7 @@ IMAGE_BASETYPES = "${@get_image_basetypes(d)}" # image types IMAGE_CLASSES ??= "" -IMGCLASSES = "imagetypes imagetypes_wic imagetypes_vm imagetypes_container squashfs \ +IMGCLASSES = "imagetypes imagetypes_wic imagetypes_vm imagetypes_wsl imagetypes_container squashfs \ imagetypes_ddi" IMGCLASSES += "${IMAGE_CLASSES}" inherit ${IMGCLASSES} diff --git a/meta/classes-recipe/imagetypes_wsl.bbclass b/meta/classes-recipe/imagetypes_wsl.bbclass new file mode 100644 index 00000000..e216ef5d --- /dev/null +++ b/meta/classes-recipe/imagetypes_wsl.bbclass @@ -0,0 +1,13 @@ +# This software is a part of Isar. +# Copyright (C) Siemens AG, 2026 +# +# SPDX-License-Identifier: MIT + +# This class allows to generate WSL import artifacts. +# + +IMAGE_TYPEDEP:wsl = "tar" + +IMAGE_CMD:wsl() { + gzip -f -9 -n -c "${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNAME}.tar" > "${IMAGE_FILE_HOST}" +} diff --git a/meta/recipes-support/wsl-config/files/etc/oobe.sh b/meta/recipes-support/wsl-config/files/etc/oobe.sh new file mode 100644 index 00000000..e9ddfd16 --- /dev/null +++ b/meta/recipes-support/wsl-config/files/etc/oobe.sh @@ -0,0 +1,4 @@ +#! /usr/bin/bash + +# Generic OOBE hook for Isar-generated WSL images +exit 0 diff --git a/meta/recipes-support/wsl-config/files/etc/wsl-distribution.conf.tmpl b/meta/recipes-support/wsl-config/files/etc/wsl-distribution.conf.tmpl new file mode 100644 index 00000000..4f83314b --- /dev/null +++ b/meta/recipes-support/wsl-config/files/etc/wsl-distribution.conf.tmpl @@ -0,0 +1,6 @@ +# See https://learn.microsoft.com/en-us/windows/wsl/build-custom-distro#add-the-wsl-distribution-configuration-file + +[oobe] +command = /etc/oobe.sh +defaultUid = ${WSL_DEFAULT_UID} +defaultName = ${WSL_DEFAULT_NAME} diff --git a/meta/recipes-support/wsl-config/files/etc/wsl.conf.tmpl b/meta/recipes-support/wsl-config/files/etc/wsl.conf.tmpl new file mode 100644 index 00000000..862ca252 --- /dev/null +++ b/meta/recipes-support/wsl-config/files/etc/wsl.conf.tmpl @@ -0,0 +1,5 @@ +[boot] +systemd=true + +[user] +default=${WSL_DEFAULT_USER} diff --git a/meta/recipes-support/wsl-config/wsl-config_0.1.bb b/meta/recipes-support/wsl-config/wsl-config_0.1.bb new file mode 100644 index 00000000..2144c01b --- /dev/null +++ b/meta/recipes-support/wsl-config/wsl-config_0.1.bb @@ -0,0 +1,37 @@ +# This software is a part of Isar. +# Copyright (C) Siemens AG, 2026 +# +# SPDX-License-Identifier: MIT + +inherit dpkg-raw + +DESCRIPTION = "WSL configuration files" +MAINTAINER = "Clara Kowalsky " + +WSL_DEFAULT_USER ?= "root" +WSL_DEFAULT_UID ?= "0" +WSL_DEFAULT_NAME ?= "${DISTRO}-${MACHINE}" + +SRC_URI = " \ + file://etc/oobe.sh \ + file://etc/wsl.conf.tmpl \ + file://etc/wsl-distribution.conf.tmpl \ +" + +TEMPLATE_FILES = " \ + etc/wsl.conf.tmpl \ + etc/wsl-distribution.conf.tmpl \ +" +TEMPLATE_VARS += " \ + WSL_DEFAULT_USER \ + WSL_DEFAULT_UID \ + WSL_DEFAULT_NAME \ +" + +do_install[cleandirs] += "${D}/etc" + +do_install() { + install -m 0644 "${WORKDIR}/etc/wsl.conf" "${D}/etc" + install -m 0644 "${WORKDIR}/etc/wsl-distribution.conf" "${D}/etc" + install -m 0755 "${WORKDIR}/etc/oobe.sh" "${D}/etc" +} diff --git a/testsuite/citest.py b/testsuite/citest.py index 3ab8b557..869560c1 100644 --- a/testsuite/citest.py +++ b/testsuite/citest.py @@ -1326,6 +1326,24 @@ class ContainerImageTest(CIBaseTest): self.perform_build_test(targets, container=True) +class WSLImageTest(CIBaseTest): + + """ + Test WSL images creation + + :avocado: tags=wslbuild,full,wsl + """ + + def test_wsl_image(self): + targets = [ + 'mc:wsl-bookworm:isar-image-base', + 'mc:wsl-trixie:isar-image-base', + ] + + self.init() + self.perform_build_test(targets, cross=False) + + class ContainerSdkTest(CIBaseTest): """ diff --git a/testsuite/data/targets.yml b/testsuite/data/targets.yml index 2e5fa120..c7c4c32b 100644 --- a/testsuite/data/targets.yml +++ b/testsuite/data/targets.yml @@ -155,6 +155,10 @@ a: !mux name: qemuarm64-sid qemuriscv64-resolute: name: qemuriscv64-resolute + wsl-bookworm: + name: wsl-bookworm + wsl-trixie: + name: wsl-trixie b: !mux base: image: isar-image-base From patchwork Wed Aug 12 10:00:03 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Clara Kowalsky X-Patchwork-Id: 5349 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Wed, 12 Aug 2026 12:01:04 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-lj1-f189.google.com (mail-lj1-f189.google.com [209.85.208.189]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 67CA13W3009726 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 12 Aug 2026 12:01:04 +0200 Received: by mail-lj1-f189.google.com with SMTP id 38308e7fff4ca-39f27a480bfsf4044641fa.0 for ; Wed, 12 Aug 2026 03:01:04 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1786528858; cv=pass; d=google.com; s=arc-20260327; b=Nv6VTi9IiW9vk1TYhJFQ50R6X0M7m+/skAB3RQIBCW3vDxZOHevlcT5Nx/rTgAVKUz hwz4SeCWg7VfsK9ytP46AIGd5pa40ksfD8P2C8+T4/wPCEsMPxTKa7JrOYmocZ9qeBce p/KAitDUAtkjL2wZQiNdL3Nh0qixwTky4m+ZwRAbhEaDMczeJu1uKONRvCO/35xa5MOa tQGz4IkmkzP1JHhRNY/8EE4oquP6eLQm7Oe/WKjuOCW15ZFtl2RLvaIe5xqFqEJG7SdU 3T1g9sWfkYZ3cAJnD0SDm0f2UvjqHBdtyZpSeJD9YnrV4OPORNCFkI74eaYiZ9AkzrvS rx0g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; 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:cc:to:from :dkim-signature; bh=qIt+a+3RDmU76MIEcoMcF9SLREgmdm5vbPeMeel7y28=; fh=BKQ3jPCHf9w+FQ3+vadPgbeP+xU7KQBdSNMyhp/GPcU=; b=qSH/zGMl80sq41QdQAnRxbELdar0SN3kIW4BDiX+67GJu1R6AGaEKEEVn4x6UJVF2s TNsdb20+qqGwldMwxzg74AbOYH8Oa9yhsOi93++4NXZi50f4wydQ9vYEwbkyHfLkR6Up GyZurAsnOp3w3bDgynOunEvLHRuPlBKkV/NkEGBEim4QhJ2BuBrlYyOosl+N+Wdh18Ur nADHxKe/aQlq+uD8Oin++UAKEocvqLrfwodoGK2gx+lE+djWB1arorWDQxcvDm6xXnKa GUNstaJqeF6GiavIHJt6FHZ/j4JWFdy6UuEPDw0sh86iuU5UOM9jxOWbbqKr44WAHMxI bOdw==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b="E5x7j/TC"; spf=pass (google.com: domain of fm-1047747-20260812100048b0409afe9b00020705-yhnrzy@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1047747-20260812100048b0409afe9b00020705-yHnrzY@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=20251104; t=1786528858; x=1787133658; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:content-type:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=qIt+a+3RDmU76MIEcoMcF9SLREgmdm5vbPeMeel7y28=; b=kPk8obn7tjqx9oHS7PIvfZA0GGZ5EheCIj4D6eQ251QtAxExYIL6a1gSFd36FqnRxP JgU3Yj6KMVxm5lCl+EvnPG0lBWquhGSRpA23a8nhzVaZgKrisHai/4+9Kws955oLvWJ8 yYTWN9iB+/wndXO3U++GxK6maP/4tL4NpE0o8i0I6g4w/0+BQA93idYBRNjo8pM7mW2K bJDVOsW3CKriwTWZuiLV9PP8dkoaI9NZY8sPXofV7mY/5NkhJZ3NlCWHghFbHFObApkh nSHBFzHdeiUu+M3/MAGWlkHw4aTRkHepjnqooxgYDaRxCQbiNSj5qGRAEZ2LQHK4Ncx+ 9RzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786528858; x=1787133658; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :content-type:reply-to:x-original-authentication-results :x-original-sender:feedback-id:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-beenthere:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to:content-type; bh=qIt+a+3RDmU76MIEcoMcF9SLREgmdm5vbPeMeel7y28=; b=JXanTtnFBIPB8qu+Sr8AuTysClKQXn2hZsLDLNMYtwfleakuDzGuKk5eSJhI1mle9P lMjdJLqZkn2tDJAoP2s4xit0qUJvS+r6CZvE0mG3lgwJSoBYLCulpazX9vve8ecOvvYq tuDhqD0oSlt1Ejj6nsK834vsOnMuVYQhHPK6RUw6ny4LsesBUUGwqpTe37ObUZJjT3rn eLmq2AKXMMNsqnU07bmwvFvTqNW2+AzE2qAwBIhSxtLvSt791L1Yn57fCBTCgiFBwqav TzrWEWtz0mdbWd6chiR33AoxhpKw9aY/A9P5uh1gghI0iT93Gy8Lf14RiSlzJKyGVQNr nYCw== X-Forwarded-Encrypted: i=2; AHgh+RoPrMNjnpLDUwyuG7wuy28Dnekm7c5bsaO55hRU1ecd+N3LxdaCrdbzSsCPOyB6FQ+thtTlLf0=@isar-build.org X-Gm-Message-State: AOJu0YwI1KYauLko9RgtW8iW7iN60uCRsW5Eygf3AJqEQsVcZujnLoXg Q34JJZyzBDWMRC3ZL/gaIA3cDXSjoN6gWDdllrmiFSOIpn1EGSmTr/7H X-Received: by 2002:a05:651c:a20a:10b0:39a:ea4e:736a with SMTP id 38308e7fff4ca-3a10d5ac3d4mr2815231fa.28.1786528858080; Wed, 12 Aug 2026 03:00:58 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="Aa7YSPSOU1IBwSkrHLDJxggpKinK7mzcT6/bRPMk/FTAUgkfag==" Received: by 2002:a05:651c:89:b0:39b:1776:65af with SMTP id 38308e7fff4ca-3a0fc1cd6dcls2492871fa.2.-pod-prod-01-eu; Wed, 12 Aug 2026 03:00:55 -0700 (PDT) X-Received: by 2002:a05:651c:b0e:b0:394:5c9a:f315 with SMTP id 38308e7fff4ca-3a10d525ff7mr4197701fa.14.1786528855455; Wed, 12 Aug 2026 03:00:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1786528855; cv=none; d=google.com; s=arc-20260327; b=CfVCVmBU1i0SV8o1t0Bdny5VzezwxzxXbFeQGXb1oIjnz5RpiPW/eCEYq/09egnvzK g+nqMyVj7eGmXcEojJMk980ep26NRlXNrlzt99jlz5o9WymNVE3oiFVGTY3Z3HSvZeaL twgKbDNkvxGI2M7MNCszWwe0smz+07QmMXwLPGjtUp5OyQHqMSgcdln3VIYK6Hmf7nj4 hUEHInWXOQmL6mQxf3DoB8q7oLL9UaOA/DUOQsOmvkRabPqinuWcktaRTNp6F3mM0J+p Msg15O1hfI/0qaoeBIqBW2QMHZU9HBXM3Dh6+gnoWvT/hp/xyboH3/aSlrFuYszWPJWO 42GA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=JvaJVkW8a2bQztpfKPjLEvuQKiZKbjvw/ZquXdV7wL4=; fh=AqT8zD6jUs4YP+XkSwmnbRYu3wrat9Vyg/xvm1MGQCM=; b=kxDQrB/e+K+zgF/sYWKtUUBbu8InHDNNXoSrQj2AFHnffV5pm9o7NK84kLM4qKwIzG zvSxU1tcociyCkjLuZMak6XNYIFmol/eq/obyJqCIcsJgdd7U55iqsQH9H1CZTihbC5+ klJuBRoZILzZuCP3u9MZQFqudb/8aBLX7a/bpjpah3ciIF0xsAVu5vKTkmWRCHLNFqww 28LhZqbg4CNTBJgfq9vOblX05S+boomdDnItNP3f3ZuUidxC8zYaOsc2c7mE/+Awow6P jHKNJJVQ/cedCtoNUOb4fvbNUUpATLTf1jHBGtXmqnwIipIun/AOjv7udy1jJtNlCTIR ZvVQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b="E5x7j/TC"; spf=pass (google.com: domain of fm-1047747-20260812100048b0409afe9b00020705-yhnrzy@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1047747-20260812100048b0409afe9b00020705-yHnrzY@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-225.siemens.flowmailer.net (mta-65-225.siemens.flowmailer.net. [185.136.65.225]) by gmr-mx.google.com with ESMTPS id 38308e7fff4ca-3a107f586efsi404571fa.4.2026.08.12.03.00.55 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 12 Aug 2026 03:00:55 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-1047747-20260812100048b0409afe9b00020705-yhnrzy@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) client-ip=185.136.65.225; Received: by mta-65-225.siemens.flowmailer.net with ESMTPSA id 20260812100048b0409afe9b00020705 for ; Wed, 12 Aug 2026 12:00:48 +0200 X-Patchwork-Original-From: "'Clara Kowalsky' via isar-users" From: Clara Kowalsky To: isar-users@googlegroups.com Cc: Clara Kowalsky Subject: [PATCH v2 2/2] testsuite: Update targets.yml for Hyper-V Date: Wed, 12 Aug 2026 12:00:03 +0200 Message-ID: <20260812100003.1669757-2-clara.kowalsky@siemens.com> In-Reply-To: <20260812100003.1669757-1-clara.kowalsky@siemens.com> References: <20260812100003.1669757-1-clara.kowalsky@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1047747:519-21489:flowmailer X-Original-Sender: clara.kowalsky@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b="E5x7j/TC"; spf=pass (google.com: domain of fm-1047747-20260812100048b0409afe9b00020705-yhnrzy@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1047747-20260812100048b0409afe9b00020705-yHnrzY@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Clara Kowalsky Reply-To: Clara Kowalsky 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?= Signed-off-by: Clara Kowalsky --- testsuite/data/targets.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/testsuite/data/targets.yml b/testsuite/data/targets.yml index c7c4c32b..a4474829 100644 --- a/testsuite/data/targets.yml +++ b/testsuite/data/targets.yml @@ -77,6 +77,12 @@ a: !mux name: hikey-bookworm hikey-trixie: name: hikey-trixie + hyper-v-amd64-bullseye: + name: hyper-v-amd64-bullseye + hyper-v-amd64-bookworm: + name: hyper-v-amd64-bookworm + hyper-v-amd64-trixie: + name: hyper-v-amd64-trixie phyboard-mira-bullseye: name: phyboard-mira-bullseye phyboard-mira-bookworm: