From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id MHycDJOrImVKQAAA9RJhRA:P1 (envelope-from ) for ; Sun, 08 Oct 2023 15:16:03 +0200 Received: from aspmx1.migadu.com ([2001:41d0:403:4789::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id MHycDJOrImVKQAAA9RJhRA (envelope-from ) for ; Sun, 08 Oct 2023 15:16:03 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 258145F0E4 for ; Sun, 8 Oct 2023 15:16:02 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=planete-kraus.eu header.s=albinoniB header.b="k nTFpGF"; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1696770963; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=tUdZ8ape1xwcl3LIjKvzCedvmcYmcjm/ujxLUzLaBrs=; b=XnTUjqv41ZPmVWSZ0/lcrllEigcbnvrn4JZHCvDl+LM+BalG0NnFE1fnrpBvBQEV/Ntsa6 s/6OS8wNq9AR7wo/N7WigdpWd81+Of9OF88VBNOLgFZQzF+TYDL9k4hc7OEy8wohpO+efY Y2MOjLcCg+PnTUByHpNprBg2HJrSJ6/AOr70LVo/EFdiuMa8U8RcTuetY2wGx1Qv/r3ptw W/kk/WujBc6/qRWgc+XztN64Xm+iHTXrSfqy0zevM+bCAl1epIS42+z2MeWQLsbWXDl2TE dW6IVckxqToIKsnGUFW3ZXpEysCoILgHTh/5z/E0mHfM3oQtVzDv+KaQUm/uag== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=planete-kraus.eu header.s=albinoniB header.b="k nTFpGF"; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1696770963; a=rsa-sha256; cv=none; b=OCjTxUBwrupomGT8uojFxcdU8wWISKhqtsrOjpsDJ1Z5b4Lv30sABZew5+h2ti2PlB9LGi 2zhdRBs2zLIGkuYye52G5l4B+D3aeQho619J5EBMjPAUg4JmTKT0HSu3rcGUx0TXpJKQN5 ooJ6j8uVDxtmXBXai0BxbnPQtQspIYoe7CtY8bYB4FH63G9Te/HveTa+deHBmZKGEDUFKo pAQFWV1UHzzwE10ATIPa+S07Vk4S+Svzmi7DMXWIxLl2H+ZXT2crs2zGLmBjcfa4cTVfCK 2LLQHKyC5J4+HRMbQEMvQF97YPWH/MtEd/Hi3LmXgC5fHe0Sip+byl7oe4USVw== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qpTdP-0004sp-0B; Sun, 08 Oct 2023 09:15:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qpTdH-0004sB-9C for bug-guix@gnu.org; Sun, 08 Oct 2023 09:15:48 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qpTdG-0001lp-7W for bug-guix@gnu.org; Sun, 08 Oct 2023 09:15:43 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qpTdZ-00058u-TZ for bug-guix@gnu.org; Sun, 08 Oct 2023 09:16:01 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#66339: [PATCH gnome-team v6] gnu: dbus-service: make the session available under /run/dbus Resent-From: Vivien Kraus Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Sun, 08 Oct 2023 13:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66339 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Liliana Marie Prikler , Maxim Cournoyer , 66339@debbugs.gnu.org Cc: rg@raghavgururajan.name Received: via spool by 66339-submit@debbugs.gnu.org id=B66339.169677094319743 (code B ref 66339); Sun, 08 Oct 2023 13:16:01 +0000 Received: (at 66339) by debbugs.gnu.org; 8 Oct 2023 13:15:43 +0000 Received: from localhost ([127.0.0.1]:56496 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qpTdH-00058N-7r for submit@debbugs.gnu.org; Sun, 08 Oct 2023 09:15:43 -0400 Received: from planete-kraus.eu ([89.234.140.182]:42968) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qpTdE-00058D-Cj for 66339@debbugs.gnu.org; Sun, 08 Oct 2023 09:15:42 -0400 Received: from planete-kraus.eu (localhost.lan [127.0.0.1]) by planete-kraus.eu (OpenSMTPD) with ESMTP id 7aa7c808; Sun, 8 Oct 2023 13:15:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=planete-kraus.eu; h= message-id:in-reply-to:references:from:date:subject:to:cc :mime-version; s=albinoniB; bh=ukTzRNBepWo9wwoFaSMhLuZZLMg=; b=k nTFpGFw9twRjToCqvaRayPjXHg2aJ802lVAUsSP5Neskh7lNT+y8naYwk1aXMZbg 7T+d7ZtI7H2wEcNGXUIZGP5cDD82LJBqEDg6k8u8MbOA6Z69S8B6otx+gHu0IIK9 SY/Mq4q6PXpmFilDYh/SRZ5R2Sm9JDs8Bg2ps1PuvaAz4pOnEgvx+1GCZhyIXETa GzYXLOdmPjWsDamRXcl82+HDv0XbpEpcKuw74b/ct1ABvp+Dx2nSt9/5fbrZN6Hq Ue0hZq+6EyXliPR953MNyBy0cQ/sjhcyISEShYw2gs/3zuXoL2DuaQtWQ2ZUW+Cr cJmhEqss1pAnrGcQAzpTw== Received: by planete-kraus.eu (OpenSMTPD) with ESMTPSA id 9421b288 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO); Sun, 8 Oct 2023 13:15:18 +0000 (UTC) Message-ID: <178db70e715f9e3c6a25e42034d90d672e893349.1696761183.git.vivien@planete-kraus.eu> In-Reply-To: <87y1geijiu.fsf_-_@gmail.com>, <45f8d9661e3ed9bcfd7b84df4890f4f1b551e572.camel@gmail.com> References: <87y1geijiu.fsf_-_@gmail.com> ,<45f8d9661e3ed9bcfd7b84df4890f4f1b551e572.camel@gmail.com> Date: Wed, 4 Oct 2023 12:47:04 +0200 MIME-Version: 1.0 User-Agent: Evolution 3.46.4 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Vivien Kraus From: Vivien Kraus via Bug reports for GNU Guix Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: bug-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Queue-Id: 258145F0E4 X-Spam-Score: 0.76 X-Migadu-Spam-Score: 0.76 X-Migadu-Scanner: mx1.migadu.com X-TUID: dhpr+kI8QRNq According to https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3101, glib now searches for the session bus socket in runstatedir. The dbus service must thus have its socket in /run/dbus. For interoperability with the dbus standard, /run/dbus is also symlinked to /var/run/dbus. * gnu/services/dbus.scm (dbus-activation): Symlink /run/dbus to /var/run/dbus. (%dbus-accounts): Run dbus in /run/dbus. (dbus-root-service-type): Save the pid file in /run/dbus. --- Hello, I changed my mind back to a previous mind change, so: the socket should be installed in /run. I believe that the code moves the content of the existing /var/run/dbus to /run/dbus before trying the symlink again, if /var/run/dbus exists and is not a symlink to /run/dbus. I don’t really have a way to check the interesting case where existing files need to be moved. However, the gnome-team-configured VM works. Best regards, Vivien gnu/services/dbus.scm | 39 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/gnu/services/dbus.scm b/gnu/services/dbus.scm index 5a0c634393..aa9ce0720c 100644 --- a/gnu/services/dbus.scm +++ b/gnu/services/dbus.scm @@ -163,7 +163,7 @@ (define %dbus-accounts (group "messagebus") (system? #t) (comment "D-Bus system bus user") - (home-directory "/var/run/dbus") + (home-directory "/run/dbus") (shell (file-append shadow "/sbin/nologin"))))) (define dbus-setuid-programs @@ -186,7 +186,40 @@ (define (dbus-activation config) (let ((user (getpwnam "messagebus"))) ;; This directory contains the daemon's socket so it must be ;; world-readable. - (mkdir-p/perms "/var/run/dbus" user #o755)) + (mkdir-p/perms "/run/dbus" user #o755)) + + (catch 'system-error + (lambda () + (symlink "/run/dbus" "/var/run/dbus")) + (lambda args + (let ((errno (system-error-errno args))) + (cond + ((= errno EEXIST) + (let ((existing-name + (false-if-exception + (readlink "/var/run/dbus")))) + (unless (equal? existing-name "/run/dbus") + ;; Move the content of /var/run/dbus to /run/dbus, and + ;; retry. + (let ((dir (opendir "/var/run/dbus"))) + (let move-to-/run/dbus ((next (readdir dir))) + (cond + ((eof-object? next) + (closedir dir)) + ((member next '("." "..")) + (move-to-/run/dbus (readdir dir))) + (else + (begin + (rename-file (string-append "/var/run/dbus/" next) + (string-append "/run/dbus/" next)) + (move-to-/run/dbus (readdir dir)))))))) + (rmdir "/var/run/dbus") + (symlink "/run/dbus" "/var/run/dbus"))) + (else + (format (current-error-port) + "Failed to symlink /run/dbus to /var/run/dbus: ~s~%" + (strerror errno)) + (error "cannot create /var/run/dbus")))))) (unless (file-exists? "/etc/machine-id") (format #t "creating /etc/machine-id...~%") @@ -210,7 +243,7 @@ (define dbus-shepherd-service '(#:environment-variables '("DBUS_VERBOSE=1") #:log-file "/var/log/dbus-daemon.log") '()) - #:pid-file "/var/run/dbus/pid")) + #:pid-file "/run/dbus/pid")) (stop #~(make-kill-destructor))))))) (define dbus-root-service-type base-commit: b18b2d13488f2a92331ccad2dc8cbb54ee15582f -- 2.41.0