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 ABCA96D73; Tue, 04 Nov 2025 15:21:33 +0000 (UTC) Received: by atuin.qyliss.net (Postfix, from userid 993) id D93786DE9; Tue, 04 Nov 2025 15:21:29 +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.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DMARC_MISSING,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=4.0.1 Received: from fhigh-a8-smtp.messagingengine.com (fhigh-a8-smtp.messagingengine.com [103.168.172.159]) by atuin.qyliss.net (Postfix) with ESMTPS id 5A8896DE6 for ; Tue, 04 Nov 2025 15:21:27 +0000 (UTC) Received: from phl-compute-06.internal (phl-compute-06.internal [10.202.2.46]) by mailfhigh.phl.internal (Postfix) with ESMTP id 505EF14001B9; Tue, 4 Nov 2025 10:21:25 -0500 (EST) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-06.internal (MEProxy); Tue, 04 Nov 2025 10:21:25 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alyssa.is; h=cc :cc:content-type:content-type:date:date:from:from:in-reply-to :message-id:mime-version:reply-to:subject:subject:to:to; s=fm2; t=1762269685; x=1762356085; bh=ARx9rRPoKxvmYl/AWB+rNuRZLhEoXnvV pxn3yPg3Z3s=; b=N8Xr6G9XI9cKticcxo0uQ3k3OYRbtlu3I2Jut3E9OFHcmjXz ox8tsf14jqfm7R8/utucdzuPwTg/BNMnwvwVICCrqvYSBkOKhh86aYOOITX7u6JB 4YPPEb+GRxBvzV6iofKjxERnZx2AesB9XCz1kgwT1cgwle/x+8rlFun5BmQWWGP/ 1zqH7Ar9O8jlUDjz2KFEO7iqIZodNnKMCwVr2nF9WQoEwQWoXANTY4V+W5e+JdlB INKhUKd8w0YkzXETt5JcD9JIUqKbSGz42JmHwV4rzzp5MSMQicLg69MKBTLfRN3L zHTz7nnsBH1+iFkAPcpsMRzfhzqSmZ1zfIVnwQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:message-id :mime-version:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1762269685; x= 1762356085; bh=ARx9rRPoKxvmYl/AWB+rNuRZLhEoXnvVpxn3yPg3Z3s=; b=L F55RaqGG7p4ZaB2pQ3UOKttmf8sCVSZF70lgZo+KMC7O+GW41pmwEd8PNdOihQVJ cfgOoxRHMYhWAmNIVk765AQt4hMDjygRRyn9V4yH/HMToeuNCXb1EM8Z1jo8JvVI rGOMUMOdYFx2FxJUnA8WQtBiluWVSQlARP5wq7NQ+onkXVApE8CDuBLR9qu138lv j6JQ+UTUZ8IosWIkBLEosJhBGn3qxaMrkn0Y6+2NQSW+T/Y4oxC5VJ7BeY309sw0 pwrdWSC3R2JCa8kWtEryIgPaUfWyUbNf8e5aMfbb9SsAL27/yCdOWqCZ5JY0+nAf MVkQp5UCo8UWWEBeoFjsw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggddukedufeeiucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhephffvvefufffkgggtsehgtderredttddtnecuhfhrohhmpeetlhihshhsrgcutfho shhsuceohhhisegrlhihshhsrgdrihhsqeenucggtffrrghtthgvrhhnpedtuddvheelje ffvdethfetffeftefghfdtvedtleduleehiefgffettdejjedtueenucffohhmrghinhep shhpvggtthhruhhmqdhoshdrohhrghdpghhithhhuhgsrdgtohhmpdhkvghrnhgvlhdroh hrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehh ihesrghlhihsshgrrdhishdpnhgspghrtghpthhtohepfedpmhhouggvpehsmhhtphhouh htpdhrtghpthhtohephihurhgvkhgrsegthigsvghrtghhrghoshdruggvvhdprhgtphht thhopeguvghmihhosggvnhhouhhrsehgmhgrihhlrdgtohhmpdhrtghpthhtohepughish gtuhhsshesshhpvggtthhruhhmqdhoshdrohhrgh X-ME-Proxy: Feedback-ID: i12284293:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 4 Nov 2025 10:21:24 -0500 (EST) Received: by fw12.qyliss.net (Postfix, from userid 1000) id 542AC631266; Tue, 04 Nov 2025 16:21:23 +0100 (CET) From: Alyssa Ross To: discuss@spectrum-os.org Subject: This Week in Spectrum, 2025-W44 Date: Tue, 04 Nov 2025 16:21:03 +0100 Message-ID: <87346trfhc.fsf@alyssa.is> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Message-ID-Hash: GMJXESODXBRLVX3VWFDROJL7MWFSJUGH X-Message-ID-Hash: GMJXESODXBRLVX3VWFDROJL7MWFSJUGH X-MailFrom: hi@alyssa.is X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-discuss.spectrum-os.org-0; header-match-discuss.spectrum-os.org-1; header-match-discuss.spectrum-os.org-2; header-match-discuss.spectrum-os.org-3; header-match-discuss.spectrum-os.org-4; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Demi Marie Obenour , Yureka Lilian X-Mailman-Version: 3.3.9 Precedence: list List-Id: General high-level discussion about Spectrum Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: --=-=-= Content-Type: text/plain It has been a very busy week. System updates -------------- We finally got the first posting of Demi's work on system updates using systemd-sysupdate[1]! There are still quite a few issues to work through, but it's going ins a promising direction. The most significant of those issues is the following: our current installer, eos-installer[2], works by copying a whole disk image to the target disk. Our combined image allows either booting that image directly, or booting into a system that runs eos-installer with that image. For an updatable system, the partitions that we install need to have room for the system to grow in future, and we also need to have two copies of those partitions for A/B updates. Changing these things causes the image to become unreasonably large. eos-installer supports compressed disk images, but if we did that, we'd lose the ability to directly boot the image to try it out. Demi also points out that eos-installer's approach is incompatible with systems that have e.g. firmware partitions that need to be preserved for the system to boot. Really, then, we're going to need an installer that can work at the partition level rather than the disk image level, so minimally sized partition images can be copied into future-proof bigger partitions in the installed system, B partitions can be created empty without needing a template, and existing partitions on the system can be left alone. This will also mean we get natural dual boot support. I was disappointed to learn that an off the shelf installer that works in this way, analogous to eos-installer, doesn't seem to exist, though. I asked what GNOME OS does, because I knew they previously used eos-installer and must have encountered this problem, and what we were able to figure out on Matrix is that they're in the process of writing a new installer for themselves. I plan to reach out to them to find out about their plans and see if this is something that could also be shared between image-based distros. In the meantime, though, we'll probably just get rid of the combined image, and have one non-updatable live image for testing Spectrum, and an installer image that installs a compressed disk image using eos-installer. [1]: https://spectrum-os.org/lists/archives/spectrum-devel/20251029-updates-v1-0-401c1be2a11b@gmail.com [2]: https://github.com/endlessm/eos-installer "Try Spectrum" test ------------------- The updates submission, which took the approach of compressing the images and breaking the "Try Spectrum" function of the combined live/installer image, made me realise that there was no test coverage for that, so I wrote an integration test for it[3]. This was shortly before we realised dropping the combined image for the time being is probably inevitable, but even so it led to lots of nice improvements to the integration test infrastructure that will still be useful going forward. [3]: https://spectrum-os.org/git/spectrum/commit/?id=e0f5aad7901d150b1abe381ffd99d554e65e758b udev ---- I changed the script that assigns network devices to VMs to be idempotent[4], which was the last thing that needed to happen before Demi's patches to switch the host system to use udev[5] can be applied, so that should happen very soon. [4]: https://spectrum-os.org/git/spectrum/commit/?id=1d666582892fbdf812662b4490caf7821078eaf9 [5]: https://spectrum-os.org/lists/archives/spectrum-devel/20251103-udev-v5-0-5c432ef1ddf8@gmail.com nixpkgs updates --------------- I finished bisecting the kernel regression we encountered when trying to update Nixpkgs last week. A fix is on the way[6], and I was also able to identify a workaround that could let us keep up to date in the meantime[7]. With this, the update passed all tests and I committed it. A few days later though, it was reported to me that the installer no longer started. I'm bisecting this now, and once we've figured out how to fix it, I'll be able to use all those nice integration test framework improvements to write a regression test for this, too. I used to do more manual testing of Nixpkgs updates, but really to be able to deliver updates at the pace we want, we're going to have to rely a lot less on manual testing and a lot more on automated tests, so going forward I'm going to be trying to get Nixpkgs updated more frequently, with less manual testing, and a focus on adding automated regression tests when something goes wrong. This will likely mean more of this sort of issue in the short term while we build up our test coverage, but a more robust approach to updates in the long term when we've built up our test suite. Yureka has also been continuing to work on identifying Spectrum-related build regressions in Nixpkgs quickly, which will also be important to enable a more rapid pace of updates. [6]: https://lore.kernel.org/netdev/20251030144438.7582-1-minhquangbui99@gmail.com/ [7]: https://spectrum-os.org/git/spectrum/commit/?id=9a03e3ea12a40e03735132ed2ed97777fdfbd1ed What a pace, right!? --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQQGoGac7QfI+H5ZtFCZddwkt31pFQUCaQoZ3wAKCRCZddwkt31p FXIxAQDQfQcRs8Sau3t297W/wtZmEL4RvHYZcq4G8M74USchnwEAqfoBfj1f7r35 ogqgJTMdPAKNQYs0bgJZUnIAj8eq1Aw= =s81U -----END PGP SIGNATURE----- --=-=-=--