From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from atuin.qyliss.net (localhost [IPv6:::1]) by atuin.qyliss.net (Postfix) with ESMTP id 8EB80E517; Thu, 11 Sep 2025 12:51:13 +0000 (UTC) Received: by atuin.qyliss.net (Postfix, from userid 993) id 4EE71E470; Thu, 11 Sep 2025 12:51:11 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on atuin.qyliss.net X-Spam-Level: X-Spam-Status: No, score=-0.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DMARC_PASS,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=4.0.1 Received: from mail-yw1-x1131.google.com (mail-yw1-x1131.google.com [IPv6:2607:f8b0:4864:20::1131]) by atuin.qyliss.net (Postfix) with ESMTPS id 39F11E46C for ; Thu, 11 Sep 2025 12:51:09 +0000 (UTC) Received: by mail-yw1-x1131.google.com with SMTP id 00721157ae682-71d6051aeafso4890227b3.2 for ; Thu, 11 Sep 2025 05:51:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1757595068; x=1758199868; darn=spectrum-os.org; h=cc:to:references:in-reply-to:content-transfer-encoding:mime-version :message-id:date:subject:from:from:to:cc:subject:date:message-id :reply-to; bh=onrvOASmcEBUf9NH8lJZujzRX9Vgdfi80QpKPOoP7JU=; b=eXREOEBg2eQ899np5KcimONa5Sqy7oJr8CY2s6rSqD5+Y8G+czFS/ClHudYvj09+vm laP7OhGKnfswxKGQDYNrJmO1SQngijKXxd4P56kFJKzHDOBV+ocaArnJnUmJRRJtt0f3 B5myls3AuLLtJheMZf3ARblFRnHa7oQuecTGzdkuu0OD5qoQC0JZHxgAcPBWltwZQwmJ mf9n1LJGry9wqcHyTnhEMuEFNeomeRtkE/FcovFnGg8zD1diF3aD4dGBXq0aCqZGlTV9 X/xgr7K6sobxZN/mkmvsciiBFelxMb26Xo9E/faMQSUs5pwMg2pt9222GdRVJKQhev8g rVXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757595068; x=1758199868; h=cc:to:references:in-reply-to:content-transfer-encoding:mime-version :message-id:date:subject:from:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=onrvOASmcEBUf9NH8lJZujzRX9Vgdfi80QpKPOoP7JU=; b=tGwm6o/xthwpBVUsI2FxB3N85TQZYeo6uqetKvXTqtUBYNTC16fpu53soRZIMEWoAa 0p80yJvcfXpC5kceJYWyIyK9chEvLZvAoTjsgcwmvPzQ2V2ZbSJQmOVTJYt8c2oUcpS3 O+kx53APQx1yO36MLMotPFyxLgkdaGyY4Axbxgyxsy+C5Y3xb0sOaNMr/KUBlHFhx1bh IYN/n12LE3+OgQ7seja3d5YO46CwBvB6Vg9IDuIynSB20rqM33q94utnbnd0MzGxP1yB pA2ct7aoUjFoBQAG2OtATzL9quX6LRiE6YmW2g8o/bdKQrtRXvpEGRMfasPeCzZRxzOR Kq/A== X-Gm-Message-State: AOJu0YzKCAQurUbIWLkIy3pvVplMeXAxmwW/CcSdpjUl713hN1W+D0m6 8M0Fjc6MLBto6NezvKHBkCPu3hM3DMlivSKpKBvpHPP1dx7h5vtl+UAONHlWXg== X-Gm-Gg: ASbGncusRih+2tRX5+Z5rVKaBIV/o6xQTCKHsevFVVjtMBK6XC74wKxyG9Gr0SXnrvx bfX5pOkPgfv88bCsj9k/qjRtxJ4F2cvOV4BCide/AYYIeC1rWHtqyxLJy/4pb9bLjjRcBVifwNt XKp8epNshe2KaNjBxwoOkAIRA3L3PCDnaZTZ7FiwhL09ZyMoljo+m2R+bBtA/k7WJbTZU0kJx+K FPl5ByC4Q8xal6NRGUUYhwQ71AHvH884HP8qs6guAkwBVhVkj+oM843pqYoiNS1Oab/9CF1nrHE lCV07+f7B3V4eLvzRE9Av+1R/waBXvwDftMQPS/MDqDnDSB+8HjuKijt6nHMkuWFG+oYuNufIu3 Qf4B1P9yNnoHcU7ecI3EFkr597xPtJgrFe/85LAKWKFeXK1ng7KZ3kW9feQYtwjtT3EXsm0B1Hm STS8xb+F22LLoCdgmq2gRKtZQIGTre2X7YssEUEBkkwqafRw8m+He/XQ== X-Google-Smtp-Source: AGHT+IGF4P9IaoBPIPofVag8q3abk0oa5YcC4KN0udnk6VN068T4WFZsBLUw2uSac0S71zgy81MUcg== X-Received: by 2002:a05:690c:fc9:b0:72c:54a3:f053 with SMTP id 00721157ae682-72c54a464ebmr102380497b3.19.1757595067287; Thu, 11 Sep 2025 05:51:07 -0700 (PDT) Received: from localhost.localdomain (h96-60-249-169.cncrtn.broadband.dynamic.tds.net. [96.60.249.169]) by smtp.gmail.com with UTF8SMTPSA id 00721157ae682-72f76830c42sm3190437b3.17.2025.09.11.05.51.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 11 Sep 2025 05:51:06 -0700 (PDT) From: Demi Marie Obenour Subject: [PATCH v3 0/4] Generate file lists from a script Date: Thu, 11 Sep 2025 08:47:43 -0400 Message-Id: <20250911-genfiles-v3-0-d8709081dc5c@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIAO/EwmgC/1WMyw6CMBBFf4V0bU0fSKkr/8O4gGEKk/BKaxoN4 d8tuBCX5+aes7CAnjCwa7Ywj5ECTWMCfcoYdNXYIqcmMVNCXUSpJW9xdNRj4HlhSuNAirKwLN1 nj45ee+r+SNxReE7+vZej3NZvxAr9i0TJBQewVjuoJeZwa4eK+jNMA9siUR1EKQ6iSqI2WKMwl YbmT1zX9QM1urij2QAAAA== X-Change-ID: 20250831-genfiles-46787fc10869 In-Reply-To: <20250910-genfiles-v2-0-37ebe07a3cdc@gmail.com> References: <20250910-genfiles-v2-0-37ebe07a3cdc@gmail.com> To: Spectrum OS Development X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1757594863; l=17026; i=demiobenour@gmail.com; s=20250729; h=from:subject:message-id; bh=FwzjJeHdJXifeKoqhGnEsfku8hN3J+CQgKWBXOzb8rw=; b=+VV41byKV3/ZD2pENOTnN8WC8zUTFao/5tRL5fgh+DxyFUt+CojPKr6JCpDj+WaFJvaxIVDqK 9MTJoY3xU6ODiRj74DPleUAegqkgaJnhca0b4y8xjci+dkxo3DA81uX X-Developer-Key: i=demiobenour@gmail.com; a=ed25519; pk=X57Q4/YQDj9t4SBeKaDwvXYKB6quZJVx/DE2Ly2out0= Message-ID-Hash: RXSBOAJZRQGGRI6FBSIPROSXZZILOC5E X-Message-ID-Hash: RXSBOAJZRQGGRI6FBSIPROSXZZILOC5E X-MailFrom: demiobenour@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-devel.spectrum-os.org-0; header-match-devel.spectrum-os.org-1; header-match-devel.spectrum-os.org-2; header-match-devel.spectrum-os.org-3; header-match-devel.spectrum-os.org-4; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Demi Marie Obenour , Alyssa Ross X-Mailman-Version: 3.3.9 Precedence: list List-Id: Patches and low-level development discussion Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Right now, the makefiles in host/rootfs, vm/sys/net, and img/app have manually-maintained lists of files and symlinks. These duplicate the information in the git repository and can easily get out of sync or cause unnecessary merge conflicts. Avoid this problem by moving the files used in the erofs images to an image/ directory and using what Git knows about this directory to generate the lists via a script. This makes maintenance easier and avoids conflating code used in the build (anything not in image/) and code for the image (anything that is in image/). This reveals that there is a lot of duplicated make logic around image generation, so consolidate it in a single makefile that is included by all three of the makefiles. Signed-off-by: Demi Marie Obenour --- Changes in v3: - EDITME: describe what is new in this series revision. - EDITME: use bulletpoints and terse descriptions. - Link to v2: https://lore.kernel.org/r/20250910-genfiles-v2-0-37ebe07a3cdc@gmail.com Changes in v2: - Drop the last patch (switching to /etc/s6-rc/compiled) as it is controversial and should be reviewed separately. - Add missing copyright notices. - Use a wrapper shell script to make the awk code easier to read. - Improve documentation. - Add helper scripts for use in git hooks and rebasing. - Link to v1: https://spectrum-os.org/lists/archives/spectrum-devel/20250903-genfiles-v1-0-cc993fcb1e4c@gmail.com/ --- Demi Marie Obenour (4): Do not ignore errors from tar Move all files for the image into a subdirectory Generate makefile file lists from a script Common make rules for building erofs images Documentation/development/built-in-vms.adoc | 17 +++ host/rootfs/Makefile | 141 +-------------------- host/rootfs/default.nix | 1 + host/rootfs/file-list.mk | 100 +++++++++++++++ host/rootfs/{ => image}/bin | 0 host/rootfs/{ => image}/etc/fonts/fonts.conf | 0 host/rootfs/{ => image}/etc/fstab | 0 host/rootfs/{ => image}/etc/group | 0 host/rootfs/{ => image}/etc/group.license | 0 host/rootfs/{ => image}/etc/init | 0 host/rootfs/{ => image}/etc/login | 0 host/rootfs/{ => image}/etc/mdev.conf | 0 host/rootfs/{ => image}/etc/mdev/listen | 0 host/rootfs/{ => image}/etc/mdev/net/add | 0 host/rootfs/{ => image}/etc/mdev/wait | 0 host/rootfs/{ => image}/etc/parse-devname | 0 host/rootfs/{ => image}/etc/passwd | 0 host/rootfs/{ => image}/etc/passwd.license | 0 .../etc/s6-linux-init/env/WAYLAND_DISPLAY | 0 .../etc/s6-linux-init/env/WAYLAND_DISPLAY.license | 0 .../etc/s6-linux-init/env/XDG_RUNTIME_DIR | 0 .../etc/s6-linux-init/env/XDG_RUNTIME_DIR.license | 0 .../etc/s6-linux-init/run-image/opengl-driver | 0 .../run-image/service/dbus/notification-fd | 0 .../run-image/service/dbus/notification-fd.license | 0 .../etc/s6-linux-init/run-image/service/dbus/run | 0 .../service/dbus/template/notification-fd | 0 .../service/dbus/template/notification-fd.license | 0 .../run-image/service/dbus/template/run | 0 .../s6-linux-init/run-image/service/getty-tty1/run | 0 .../s6-linux-init/run-image/service/getty-tty2/run | 0 .../s6-linux-init/run-image/service/getty-tty3/run | 0 .../s6-linux-init/run-image/service/getty-tty4/run | 0 .../service/s6-svscan-log/notification-fd | 0 .../service/s6-svscan-log/notification-fd.license | 0 .../run-image/service/s6-svscan-log/run | 0 .../run-image/service/serial-getty-generator/run | 0 .../run-image/service/serial-getty/notification-fd | 0 .../service/serial-getty/notification-fd.license | 0 .../run-image/service/serial-getty/run | 0 .../run-image/service/serial-getty/template/run | 0 .../service/vhost-user-fs/notification-fd | 0 .../service/vhost-user-fs/notification-fd.license | 0 .../run-image/service/vhost-user-fs/run | 0 .../service/vhost-user-fs/template/notification-fd | 0 .../vhost-user-fs/template/notification-fd.license | 0 .../run-image/service/vhost-user-fs/template/run | 0 .../service/vhost-user-gpu/notification-fd | 0 .../service/vhost-user-gpu/notification-fd.license | 0 .../run-image/service/vhost-user-gpu/run | 0 .../service/vhost-user-gpu/template/data/check | 0 .../vhost-user-gpu/template/notification-fd | 0 .../template/notification-fd.license | 0 .../run-image/service/vhost-user-gpu/template/run | 0 .../run-image/service/vhost-user-gpu/template/type | 0 .../service/vhost-user-gpu/template/type.license | 0 .../run-image/service/vmm/notification-fd | 0 .../run-image/service/vmm/notification-fd.license | 0 .../etc/s6-linux-init/run-image/service/vmm/run | 0 .../run-image/service/vmm/template/notification-fd | 0 .../service/vmm/template/notification-fd.license | 0 .../run-image/service/vmm/template/run | 0 .../notification-fd | 0 .../notification-fd.license | 0 .../service/xdg-desktop-portal-spectrum-host/run | 0 .../template/notification-fd | 0 .../template/notification-fd.license | 0 .../xdg-desktop-portal-spectrum-host/template/run | 0 .../{ => image}/etc/s6-linux-init/scripts/rc.init | 0 host/rootfs/{ => image}/etc/s6-rc/card0/type | 0 .../{ => image}/etc/s6-rc/card0/type.license | 0 host/rootfs/{ => image}/etc/s6-rc/card0/up | 0 host/rootfs/{ => image}/etc/s6-rc/core/type | 0 .../rootfs/{ => image}/etc/s6-rc/core/type.license | 0 host/rootfs/{ => image}/etc/s6-rc/core/up | 0 host/rootfs/{ => image}/etc/s6-rc/kvm/timeout-up | 0 .../{ => image}/etc/s6-rc/kvm/timeout-up.license | 0 host/rootfs/{ => image}/etc/s6-rc/kvm/type | 0 host/rootfs/{ => image}/etc/s6-rc/kvm/type.license | 0 host/rootfs/{ => image}/etc/s6-rc/kvm/up | 0 .../etc/s6-rc/mdevd-coldplug/dependencies | 0 .../{ => image}/etc/s6-rc/mdevd-coldplug/type | 0 .../etc/s6-rc/mdevd-coldplug/type.license | 0 .../rootfs/{ => image}/etc/s6-rc/mdevd-coldplug/up | 0 .../{ => image}/etc/s6-rc/mdevd/notification-fd | 0 .../etc/s6-rc/mdevd/notification-fd.license | 0 host/rootfs/{ => image}/etc/s6-rc/mdevd/run | 0 host/rootfs/{ => image}/etc/s6-rc/mdevd/type | 0 .../{ => image}/etc/s6-rc/mdevd/type.license | 0 host/rootfs/{ => image}/etc/s6-rc/ok-all/contents | 0 host/rootfs/{ => image}/etc/s6-rc/ok-all/type | 0 .../{ => image}/etc/s6-rc/ok-all/type.license | 0 .../rootfs/{ => image}/etc/s6-rc/static-nodes/type | 0 .../etc/s6-rc/static-nodes/type.license | 0 host/rootfs/{ => image}/etc/s6-rc/static-nodes/up | 0 .../{ => image}/etc/s6-rc/sys-vmms/dependencies | 0 host/rootfs/{ => image}/etc/s6-rc/sys-vmms/type | 0 .../{ => image}/etc/s6-rc/sys-vmms/type.license | 0 host/rootfs/{ => image}/etc/s6-rc/sys-vmms/up | 0 host/rootfs/{ => image}/etc/s6-rc/vm-env/contents | 0 host/rootfs/{ => image}/etc/s6-rc/vm-env/type | 0 .../{ => image}/etc/s6-rc/vm-env/type.license | 0 host/rootfs/{ => image}/etc/s6-rc/vmm-env/contents | 0 host/rootfs/{ => image}/etc/s6-rc/vmm-env/type | 0 .../{ => image}/etc/s6-rc/vmm-env/type.license | 0 .../{ => image}/etc/s6-rc/weston/dependencies | 0 .../{ => image}/etc/s6-rc/weston/notification-fd | 0 .../etc/s6-rc/weston/notification-fd.license | 0 host/rootfs/{ => image}/etc/s6-rc/weston/run | 0 host/rootfs/{ => image}/etc/s6-rc/weston/type | 0 .../{ => image}/etc/s6-rc/weston/type.license | 0 host/rootfs/{ => image}/etc/xdg/weston/autolaunch | 0 host/rootfs/{ => image}/etc/xdg/weston/weston.ini | 0 host/rootfs/{ => image}/lib | 0 host/rootfs/{ => image}/sbin | 0 host/rootfs/{ => image}/usr/bin/assign-devices | 0 .../{ => image}/usr/bin/create-vm-dependencies | 0 host/rootfs/{ => image}/usr/bin/run-appimage | 0 host/rootfs/{ => image}/usr/bin/run-vmm | 0 host/rootfs/{ => image}/usr/bin/vm-console | 0 host/rootfs/{ => image}/usr/bin/vm-import | 0 host/rootfs/{ => image}/usr/bin/vm-start | 0 host/rootfs/{ => image}/usr/bin/vm-stop | 0 host/rootfs/{ => image}/usr/bin/xdg-open | 0 .../org.freedesktop.portal.Documents.service | 0 img/app/Makefile | 98 +------------- img/app/default.nix | 1 + img/app/file-list.mk | 65 ++++++++++ img/app/{ => image}/bin | 0 img/app/{ => image}/etc/dbus-1/session.conf | 0 img/app/{ => image}/etc/fonts/fonts.conf | 0 img/app/{ => image}/etc/fstab | 0 img/app/{ => image}/etc/init | 0 img/app/{ => image}/etc/mdev.conf | 0 img/app/{ => image}/etc/mdev/iface | 0 img/app/{ => image}/etc/mdev/listen | 0 img/app/{ => image}/etc/mdev/virtiofs | 0 img/app/{ => image}/etc/mdev/wait | 0 img/app/{ => image}/etc/passwd | 0 img/app/{ => image}/etc/passwd.license | 0 img/app/{ => image}/etc/pipewire/pipewire.conf | 0 img/app/{ => image}/etc/resolv.conf | 0 .../etc/s6-linux-init/env/DBUS_SESSION_BUS_ADDRESS | 0 .../env/DBUS_SESSION_BUS_ADDRESS.license | 0 img/app/{ => image}/etc/s6-linux-init/env/DISPLAY | 0 .../etc/s6-linux-init/env/DISPLAY.license | 0 .../etc/s6-linux-init/env/GTK_USE_PORTAL | 0 .../etc/s6-linux-init/env/GTK_USE_PORTAL.license | 0 .../s6-linux-init/env/NIX_XDG_DESKTOP_PORTAL_DIR | 0 .../env/NIX_XDG_DESKTOP_PORTAL_DIR.license | 0 .../etc/s6-linux-init/env/WAYLAND_DISPLAY | 0 .../etc/s6-linux-init/env/WAYLAND_DISPLAY.license | 0 .../etc/s6-linux-init/env/XDG_RUNTIME_DIR | 0 .../etc/s6-linux-init/env/XDG_RUNTIME_DIR.license | 0 .../s6-linux-init/run-image/service/getty-hvc0/run | 0 .../s6-linux-init-shutdownd/notification-fd | 0 .../notification-fd.license | 0 .../run-image/service/s6-linux-init-shutdownd/run | 0 .../{ => image}/etc/s6-linux-init/scripts/rc.init | 0 .../etc/s6-linux-init/scripts/rc.shutdown | 0 .../etc/s6-linux-init/scripts/rc.shutdown.final | 0 .../{ => image}/etc/s6-rc/app/dependencies.d/dbus | 0 .../etc/s6-rc/app/dependencies.d/pipewire | 0 .../s6-rc/app/dependencies.d/wayland-proxy-virtwl | 0 img/app/{ => image}/etc/s6-rc/app/run | 0 img/app/{ => image}/etc/s6-rc/app/type | 0 img/app/{ => image}/etc/s6-rc/app/type.license | 0 img/app/{ => image}/etc/s6-rc/dbus/notification-fd | 0 .../etc/s6-rc/dbus/notification-fd.license | 0 img/app/{ => image}/etc/s6-rc/dbus/run | 0 img/app/{ => image}/etc/s6-rc/dbus/type | 0 img/app/{ => image}/etc/s6-rc/dbus/type.license | 0 .../etc/s6-rc/mdevd-coldplug/dependencies | 0 img/app/{ => image}/etc/s6-rc/mdevd-coldplug/type | 0 .../etc/s6-rc/mdevd-coldplug/type.license | 0 img/app/{ => image}/etc/s6-rc/mdevd-coldplug/up | 0 .../{ => image}/etc/s6-rc/mdevd/notification-fd | 0 .../etc/s6-rc/mdevd/notification-fd.license | 0 img/app/{ => image}/etc/s6-rc/mdevd/run | 0 img/app/{ => image}/etc/s6-rc/mdevd/type | 0 img/app/{ => image}/etc/s6-rc/mdevd/type.license | 0 img/app/{ => image}/etc/s6-rc/ok-all/contents | 0 img/app/{ => image}/etc/s6-rc/ok-all/type | 0 img/app/{ => image}/etc/s6-rc/ok-all/type.license | 0 .../{ => image}/etc/s6-rc/pipewire/notification-fd | 0 .../etc/s6-rc/pipewire/notification-fd.license | 0 img/app/{ => image}/etc/s6-rc/pipewire/run | 0 img/app/{ => image}/etc/s6-rc/pipewire/type | 0 .../{ => image}/etc/s6-rc/pipewire/type.license | 0 .../etc/s6-rc/wayland-proxy-virtwl/notification-fd | 0 .../wayland-proxy-virtwl/notification-fd.license | 0 .../{ => image}/etc/s6-rc/wayland-proxy-virtwl/run | 0 .../etc/s6-rc/wayland-proxy-virtwl/type | 0 .../etc/s6-rc/wayland-proxy-virtwl/type.license | 0 .../etc/s6-rc/wireplumber/dependencies.d/dbus | 0 .../etc/s6-rc/wireplumber/dependencies.d/pipewire | 0 img/app/{ => image}/etc/s6-rc/wireplumber/run | 0 img/app/{ => image}/etc/s6-rc/wireplumber/type | 0 .../{ => image}/etc/s6-rc/wireplumber/type.license | 0 .../{ => image}/etc/ssl/certs/ca-certificates.crt | 0 .../wireplumber.conf.d/99_spectrum.conf | 0 .../etc/xdg/xdg-desktop-portal/portals.conf | 0 img/app/{ => image}/sbin | 0 lib/common.mk | 1 + lib/erofs.mk | 49 +++++++ scripts/genfiles.awk | 120 ++++++++++++++++++ scripts/genfiles.sh | 23 ++++ scripts/git-rebase | 17 +++ scripts/pre-commit.sh | 9 ++ vm/sys/net/Makefile | 69 +--------- vm/sys/net/default.nix | 1 + vm/sys/net/file-list.mk | 42 ++++++ vm/sys/net/{ => image}/bin | 0 vm/sys/net/{ => image}/etc/dbus-1/system.conf | 0 vm/sys/net/{ => image}/etc/fstab | 0 vm/sys/net/{ => image}/etc/init | 0 vm/sys/net/{ => image}/etc/mdev.conf | 0 vm/sys/net/{ => image}/etc/mdev/iface | 0 vm/sys/net/{ => image}/etc/nftables.conf | 0 vm/sys/net/{ => image}/etc/passwd | 0 vm/sys/net/{ => image}/etc/passwd.license | 0 .../s6-linux-init/run-image/service/getty-hvc0/run | 0 .../{ => image}/etc/s6-linux-init/scripts/rc.init | 0 .../net/{ => image}/etc/s6-rc/connman/dependencies | 0 vm/sys/net/{ => image}/etc/s6-rc/connman/run | 0 vm/sys/net/{ => image}/etc/s6-rc/connman/type | 0 .../net/{ => image}/etc/s6-rc/connman/type.license | 0 .../net/{ => image}/etc/s6-rc/dbus/notification-fd | 0 .../etc/s6-rc/dbus/notification-fd.license | 0 vm/sys/net/{ => image}/etc/s6-rc/dbus/run | 0 vm/sys/net/{ => image}/etc/s6-rc/dbus/type | 0 vm/sys/net/{ => image}/etc/s6-rc/dbus/type.license | 0 .../etc/s6-rc/mdevd-coldplug/dependencies | 0 .../net/{ => image}/etc/s6-rc/mdevd-coldplug/type | 0 .../etc/s6-rc/mdevd-coldplug/type.license | 0 vm/sys/net/{ => image}/etc/s6-rc/mdevd-coldplug/up | 0 .../{ => image}/etc/s6-rc/mdevd/notification-fd | 0 .../etc/s6-rc/mdevd/notification-fd.license | 0 vm/sys/net/{ => image}/etc/s6-rc/mdevd/run | 0 vm/sys/net/{ => image}/etc/s6-rc/mdevd/type | 0 .../net/{ => image}/etc/s6-rc/mdevd/type.license | 0 vm/sys/net/{ => image}/etc/s6-rc/nftables/type | 0 .../{ => image}/etc/s6-rc/nftables/type.license | 0 vm/sys/net/{ => image}/etc/s6-rc/nftables/up | 0 vm/sys/net/{ => image}/etc/s6-rc/ok-all/contents | 0 vm/sys/net/{ => image}/etc/s6-rc/ok-all/type | 0 .../net/{ => image}/etc/s6-rc/ok-all/type.license | 0 vm/sys/net/{ => image}/etc/s6-rc/sysctl/type | 0 .../net/{ => image}/etc/s6-rc/sysctl/type.license | 0 vm/sys/net/{ => image}/etc/s6-rc/sysctl/up | 0 vm/sys/net/{ => image}/etc/sysctl.conf | 0 vm/sys/net/{ => image}/lib | 0 vm/sys/net/{ => image}/sbin | 0 vm/sys/net/{ => image}/var/run | 0 254 files changed, 457 insertions(+), 297 deletions(-) --- base-commit: cbb10b15f36a7ac35400e226b284b1cb091cb3c9 change-id: 20250831-genfiles-46787fc10869 -- Sincerely, Demi Marie Obenour (she/her/hers)