Subject: Re: mixup with tmpfs /run patch?

From: Hilton Chain <[email-masked]>
Date: Wed, 05 Mar 2025 22:07:17 +0800

On Wed, 05 Mar 2025 16:57:38 +0800,
Vagrant Cascadian wrote:
>
> [1  <text/plain (7bit)>]
> I noticed the commit:
>
> e88018be70ffb8ea35819a4c95d44ec20868ca59
> file-systems: %base-file-systems: Add tmpfs /run.
>
> Which was then reverted:
>
> 2bb8ecbfbf20efb126670ec92a7cdd88a4805902
> Revert "file-systems: %base-file-systems: Add tmpfs /run."
>
> ...strangely the patch contained no-suid flags, even though the original
> patch submitted intentionally did not have this and was explicitly
> mentioned, as it breaks e.g. /run/privleged-programs/bin/sudo ...
>
> +(define %runtime-variable-data
> +  (file-system
> +    (type "tmpfs")
> +    (mount-point "/run")
> +    (device "tmpfs")
> +    (flags '(no-suid no-dev strict-atime))
>               ^^^^^^^
>
> It might be worth re-testing with the no-suid part removed as originally
> intended, as it might be breaking other things too... (e.g. if a service
> relies on setuid bits or something?)
>
>
> I looked forward to tmpfs /run that works! :)

:)

I aimed at doing minimum work for this patch series, but we still need to
consider what to do next.  I have thought about three options:

1. Change all references of /var/run to /run.

  This will be a lot of work and will force all users who have touched the
  change to update and reboot.

2. Keep existing references but change new packages / services.

  We need to ensure new references are consistent for one package otherwise it
  won't work on systems with separate /var/run and /run (older Guix System and
  some foreign distros maybe), we can't find such issue easily either after
  switching to unified /var/run and /run.

3. Don't change references, use what upstream uses.

  Since we are currently using separate /var/run and /run, we don't have to deal
  with any issue other than currently encountered ones for finishing this patch
  series.

I think I would go for 3, which requires less to no effort :) and is unlikely to
introduce breakage.