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 C502116712; Tue, 09 Dec 2025 11:11:24 +0000 (UTC) Received: by atuin.qyliss.net (Postfix, from userid 993) id B46A3166C5; Tue, 09 Dec 2025 11:11:21 +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 fout-a6-smtp.messagingengine.com (fout-a6-smtp.messagingengine.com [103.168.172.149]) by atuin.qyliss.net (Postfix) with ESMTPS id 9B51A16678 for ; Tue, 09 Dec 2025 11:11:20 +0000 (UTC) Received: from phl-compute-06.internal (phl-compute-06.internal [10.202.2.46]) by mailfout.phl.internal (Postfix) with ESMTP id 8000AEC048E; Tue, 9 Dec 2025 06:11:18 -0500 (EST) Received: from phl-mailfrontend-02 ([10.202.2.163]) by phl-compute-06.internal (MEProxy); Tue, 09 Dec 2025 06:11:18 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alyssa.is; h=cc :content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:subject :subject:to:to; s=fm3; t=1765278678; x=1765365078; bh=jEy7HYZL1C FGut3J4MfJLmSmbZ3NmFKy93hg05VvgHk=; b=Yf7wQpOnlZUbsvsM/Roa+YpBhL 5m63aS8IirmMHUPcJ17WeTD41sJvz+6R+FDp/bZN5Kd7hsSqwQHvV2SVE0WsEBRL uLADwm97wZUYtbyR9lNkABU4LkhwFBCiB6bD+UCkamQH8Ciu661Ete6JPV9cfyh+ gQwJh5qKcNAT9VucjEqBdoXT5S3fdQZBu5NIME5hGaoRyFq0ru0lWHRRHd20CZpW P0UhqcSGNazLZd7ZPPQx0c8emrrF7ZX2nqrSEyiBa7Zt1/ytbdzoS7WhhN7Pm/67 zaomej5wGHeao6LwtsnTaoJfWogwEmG8N+D4rQFLIxW4a0nu89xlo7dXb6Mw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1765278678; x=1765365078; bh=jEy7HYZL1CFGut3J4MfJLmSmbZ3NmFKy93h g05VvgHk=; b=qK2+dLq3XP5R/F4fDJnDwOBqjopnBASBbzefWEPNDe+AMruPWeZ uydfxhfo69vWVfCMoyMMIDJ7w9RlCblWR3UNCx98U5Pi2ppk++/dV9h0ZjGjTbzw 2nwGGRYo3fIGgjgE3OEdKKeKblg4jsirDxPJ0EE0f1yxYlmFabXYtdaaS4TlTL0B HG/NgWZqjXfaWe++Ai8Vrcr6ncIDnI4ET/PgfMSGxUbgyicjLFokltDJuG4HBqpu zn8KSNlVpVMtJ7W0WX9UUewQRRs2JraQNvHbRJfqSYR9dqomrY/rb30nBZdnDOe1 F4EEFZ1O6mIPgAtab8al7PBFVhnDegtIzeg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgdduleegtdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjug hrpefhvffujghffffkgggtsehgtderredttddtnecuhfhrohhmpeetlhihshhsrgcutfho shhsuceohhhisegrlhihshhsrgdrihhsqeenucggtffrrghtthgvrhhnpedvuedviedvhe fhieektddvvdehgfehffelveeuiefggfdtffffueejudejjeekjeenucevlhhushhtvghr ufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehhihesrghlhihsshgrrdhish dpnhgspghrtghpthhtohepvddpmhhouggvpehsmhhtphhouhhtpdhrtghpthhtohepuggv mhhiohgsvghnohhurhesghhmrghilhdrtghomhdprhgtphhtthhopeguvghvvghlsehsph gvtghtrhhumhdqohhsrdhorhhg X-ME-Proxy: Feedback-ID: i12284293:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 9 Dec 2025 06:11:17 -0500 (EST) Received: by fw12.qyliss.net (Postfix, from userid 1000) id 096805FCECCB; Tue, 09 Dec 2025 12:11:07 +0100 (CET) From: Alyssa Ross To: Demi Marie Obenour , devel@spectrum-os.org Subject: Re: [PATCH 1/5] host/rootfs: make passwd and group links into /run In-Reply-To: <42381a54-0c2b-47a1-bf38-a4da16e2c6bb@gmail.com> References: <20251209085628.603316-1-hi@alyssa.is> <9ad7c8c7-4bca-4586-bb20-0891ff4c4d53@gmail.com> <87wm2vkjmz.fsf@alyssa.is> <42381a54-0c2b-47a1-bf38-a4da16e2c6bb@gmail.com> Date: Tue, 09 Dec 2025 12:11:05 +0100 Message-ID: <87jyyvkj06.fsf@alyssa.is> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Message-ID-Hash: KC422JWRW7Z2LPM6QCG5KH3MSJDW5PLK X-Message-ID-Hash: KC422JWRW7Z2LPM6QCG5KH3MSJDW5PLK X-MailFrom: hi@alyssa.is 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 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: --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Demi Marie Obenour writes: > On 12/9/25 05:57, Alyssa Ross wrote: >> Demi Marie Obenour writes: >>=20 >>> On 12/9/25 03:56, Alyssa Ross wrote: >>>> This will allow us to give shadow's useradd /run as a prefix, and have >>>> it be able to add users at runtime. >>>> >>>> Signed-off-by: Alyssa Ross >>>> --- >>>> host/rootfs/file-list.mk | 6 ++++-- >>>> host/rootfs/image/etc/group | 16 +--------------- >>>> host/rootfs/image/etc/passwd | 2 +- >>>> .../etc/{ =3D> s6-linux-init/run-image/etc}/group | 0 >>>> .../run-image/etc}/group.license | 0 >>>> .../etc/{ =3D> s6-linux-init/run-image/etc}/passwd | 0 >>>> .../run-image/etc}/passwd.license | 0 >>> >>> Is git somehow generating wrong diffstats? >>=20 >> It just generates extremely confusing output when you replace a file >> with a symlink. >>=20 >>>> 7 files changed, 6 insertions(+), 18 deletions(-) >>>> mode change 100644 =3D> 120000 host/rootfs/image/etc/group >>>> mode change 100644 =3D> 120000 host/rootfs/image/etc/passwd >>>> copy host/rootfs/image/etc/{ =3D> s6-linux-init/run-image/etc}/group = (100%) >>>> rename host/rootfs/image/etc/{ =3D> s6-linux-init/run-image/etc}/grou= p.license (100%) >>>> copy host/rootfs/image/etc/{ =3D> s6-linux-init/run-image/etc}/passwd= (100%) >>>> rename host/rootfs/image/etc/{ =3D> s6-linux-init/run-image/etc}/pass= wd.license (100%) >>>> >>>> diff --git a/host/rootfs/file-list.mk b/host/rootfs/file-list.mk >>>> index df22bce..6ab78e6 100644 >>>> --- a/host/rootfs/file-list.mk >>>> +++ b/host/rootfs/file-list.mk >>>> @@ -4,13 +4,13 @@ >>>> FILES =3D \ >>>> image/etc/fonts/fonts.conf \ >>>> image/etc/fstab \ >>>> - image/etc/group \ >>>> image/etc/init \ >>>> image/etc/login \ >>>> image/etc/parse-devname \ >>>> - image/etc/passwd \ >>>> image/etc/s6-linux-init/env/WAYLAND_DISPLAY \ >>>> image/etc/s6-linux-init/env/XDG_RUNTIME_DIR \ >>>> + image/etc/s6-linux-init/run-image/etc/group \ >>>> + image/etc/s6-linux-init/run-image/etc/passwd \ >>>> image/etc/s6-linux-init/run-image/service/getty-tty1/run \ >>>> image/etc/s6-linux-init/run-image/service/getty-tty2/run \ >>>> image/etc/s6-linux-init/run-image/service/getty-tty3/run \ >>>> @@ -68,6 +68,8 @@ FILES =3D \ >>>>=20=20 >>>> LINKS =3D \ >>>> image/bin \ >>>> + image/etc/group \ >>>> + image/etc/passwd \ >>>> image/etc/s6-linux-init/run-image/opengl-driver \ >>>> image/etc/s6-linux-init/run-image/service/vmm/template/run \ >>>> image/lib \ >>>> diff --git a/host/rootfs/image/etc/group b/host/rootfs/image/etc/group >>>> deleted file mode 100644 >>>> index e3ade46..0000000 >>>> --- a/host/rootfs/image/etc/group >>>> +++ /dev/null >>>> @@ -1,15 +0,0 @@ >>>> -root:x:0:root >>>> -clock:x:1: >>>> -dialout:x:2: >>>> -kmem:x:3: >>>> -input:x:4: >>>> -tty:x:5: >>>> -video:x:6: >>>> -render:x:7: >>>> -sgx:x:8: >>>> -audio:x:9: >>>> -lp:x:10: >>>> -disk:x:11: >>>> -cdrom:x:12: >>>> -tape:x:13: >>>> -kvm:x:14: >>> >>> Why is this file deleted and not renamed? >>=20 >> git considers it a copy (see below) followed by a deletion and >> replacement with symlink. It is, effectively, renamed. >>=20 >>>> diff --git a/host/rootfs/image/etc/group b/host/rootfs/image/etc/group >>>> new file mode 120000 >>>> index 0000000..a9b248e >>>> --- /dev/null >>>> +++ b/host/rootfs/image/etc/group >>>> @@ -0,0 +1 @@ >>>> +/run/etc/group >>> >>> ../run/etc/group? >>=20 >> Okay, makes sense. >>=20 >>>> \ No newline at end of file >>>> diff --git a/host/rootfs/image/etc/passwd b/host/rootfs/image/etc/pass= wd >>>> deleted file mode 100644 >>>> index 29f3b25..0000000 >>>> --- a/host/rootfs/image/etc/passwd >>>> +++ /dev/null >>>> @@ -1 +0,0 @@ >>>> -root:x:0:0:System administrator:/:/bin/sh >>>> diff --git a/host/rootfs/image/etc/passwd b/host/rootfs/image/etc/pass= wd >>>> new file mode 120000 >>>> index 0000000..889bb76 >>>> --- /dev/null >>>> +++ b/host/rootfs/image/etc/passwd >>>> @@ -0,0 +1 @@ >>>> +/run/etc/passwd >>> >>> ../run/etc/passwd? >>> >>>> \ No newline at end of file >>>> diff --git a/host/rootfs/image/etc/group b/host/rootfs/image/etc/s6-li= nux-init/run-image/etc/group >>>> similarity index 100% >>>> copy from host/rootfs/image/etc/group >>>> copy to host/rootfs/image/etc/s6-linux-init/run-image/etc/group >>>> diff --git a/host/rootfs/image/etc/group.license b/host/rootfs/image/e= tc/s6-linux-init/run-image/etc/group.license >>>> similarity index 100% >>>> rename from host/rootfs/image/etc/group.license >>>> rename to host/rootfs/image/etc/s6-linux-init/run-image/etc/group.lice= nse >>>> diff --git a/host/rootfs/image/etc/passwd b/host/rootfs/image/etc/s6-l= inux-init/run-image/etc/passwd >>>> similarity index 100% >>>> copy from host/rootfs/image/etc/passwd >>>> copy to host/rootfs/image/etc/s6-linux-init/run-image/etc/passwd >>>> diff --git a/host/rootfs/image/etc/passwd.license b/host/rootfs/image/= etc/s6-linux-init/run-image/etc/passwd.license >>>> similarity index 100% >>>> rename from host/rootfs/image/etc/passwd.license >>>> rename to host/rootfs/image/etc/s6-linux-init/run-image/etc/passwd.lic= ense >>>> >>>> base-commit: d0efa283216ebc503b4b715c051518ae7dbd8409 >>> >>> >>> --=20 >>> Sincerely, >>> Demi Marie Obenour (she/her/hers) > > Assuming I understood the diff correctly, and with relative symlinks: > > Reviewed-by: Demi Marie Obenour Wait, actually, why do we want relative symlinks? Previously I've used them so you can follow the symlinks in the development tree, but that doesn't work here anyway because there's obviously no run in the tree. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQQGoGac7QfI+H5ZtFCZddwkt31pFQUCaTgDyQAKCRCZddwkt31p FUuHAP9Wpn0eqZ1MnYF9HYshKnig8ibiaVpRUCG4UY+rcXCvqQD+Ps53f9IXb5Ya 48ejNU095Mkjj5IonBLtEkIvqqyaSwk= =CVMl -----END PGP SIGNATURE----- --=-=-=--