Hi,

On 2023-10-07 15:39, Maxim Cournoyer wrote:
> Hi,
> 
> Vivien Kraus <viv...@planete-kraus.eu> writes:
> 
>> Glib has made /run the default runstatedir:
>>
>> https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3101
>>
>> However, in Guix, the default runstatedir is /var/run.
>>
>> * gnu/packages/glib.scm (glib): Set runtime_dir to /var/run.
>> ---
>>
>> I changed my mind again!  Following the IRC discussion, Guix has a separate
>> /var/run and /run (and puts /run/current-system/ in /run).  So, /var/run/dbus
>> is actually the correct place to put the system session socket.

I recommend consulting the dbus spec [1] (System message bus subsection).
If I understood it correctly, `/var/run/dbus' is correct when the environment
variable DBUS_SYSTEM_BUS_ADDRESS is not set.
The /var/run/dbus or /run/dbus confusion is clarified in the third paragraph:
    “On systems where /var/run/ is known to be synonymous with /run/ (such as 
most Linux
operating system distributions), implementations might prefer to make use of 
that knowledge
to connect to or listen on unix:path=/run/dbus/system_bus_socket instead, […]”

So it's up for the dbus implementation to detect whether /var/run/ is a symlink
to /run and whether it wants to explicitly choose /run if that's the case though
none of this is mandatory.

[…]

> I still see /var/run as the legacy directory of /run, so I'd prefer we
> standardize to use the modern variant to reduce this kind of friction
> with the applications which will only grow in the future.

My understanding is that the implementation should be placing them under
/var/run/dbus but this is orthogonal to the value of runstatedir.
In view with [2] I think runstatedir should be /run and Guix should be
modernized to have /var/run symlinked to /run.


[1]: <https://dbus.freedesktop.org/doc/dbus-specification.html>
[2]: <https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch05s13.html>

-- 
Furthermore, I consider that nonfree software must be eradicated.

Cheers,
Bruno.




Reply via email to