From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <bug-guix-bounces+larch=yhetil.org@gnu.org>
Received: from mp12.migadu.com ([2001:41d0:306:2d92::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by ms9.migadu.com with LMTPS
	id iHXvDWiZ/GRT3gAAauVa8A:P1
	(envelope-from <bug-guix-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Sat, 09 Sep 2023 18:12:24 +0200
Received: from aspmx1.migadu.com ([2001:41d0:306:2d92::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by mp12.migadu.com with LMTPS
	id iHXvDWiZ/GRT3gAAauVa8A
	(envelope-from <bug-guix-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Sat, 09 Sep 2023 18:12:24 +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 E61C1417B6
	for <larch@yhetil.org>; Sat,  9 Sep 2023 18:12:18 +0200 (CEST)
Authentication-Results: aspmx1.migadu.com;
	dkim=fail ("headers rsa verify failed") header.d=posteo.net header.s=2017 header.b=UmtXINjS;
	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";
	dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.net (policy=none)
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org;
	s=key1; t=1694275939;
	h=from:from:sender:sender:reply-to:subject:subject:date:date:
	 message-id:message-id:to:to:cc:mime-version:mime-version:
	 content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding: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=FZtDyH+OvTNeZ7IOxr4GqwpT6SG+8WCmlVURuo/OS+o=;
	b=DLZv3mNBZ7gzIZL8Jgpc7U1wpm7h340qatl0f6+E7MwKiH5HMYXEQ9gepyxaUGathBI0IV
	0/DrdoC0G0+M2KmKywl6mHarmPtF5YoxBS5LWmnL+eHmhsssrfDTacufX/saJ4qandlWpk
	tIgixyHzl91zHNfrCeAiC0jpXlyXI+Cpgj1+AcoIb8GdyU4dkrQL0EUhxZUgiLe8HjCTsd
	8iK1p19p3N8IVATPQEZDqvDGZ4pYQc5BcAkyk7ZZGezFe0V1NMnwlMh848JpAbR2ngYdVV
	Vxl0hKEil2tiiNce1crEr606QQHSB5P9vsSeIvk107DNOscHtlcJoH6AxbIQQQ==
ARC-Seal: i=1; s=key1; d=yhetil.org; t=1694275939; a=rsa-sha256; cv=none;
	b=IgtAYTIaMhVbaLByQLGOvMawGOv4cxpvQqQSMSSyrAes2Pjm6AdyPKILOjDdRcHXXh3Tzz
	yHrdnQCgXs4H4lBKLDFtsAoRiyqd3PrM9HiiW0BuwYT6xAqLD7bxnTl5gJNzXFuEh5V9uI
	tlAKZabchdQMAl9h/x015YJ+njUtxCE4y5wjiKoikAEGz8Rc9cpsa5BqQ4NGOPE7nnFomc
	GZfroNnjM5ZicDl2Q+wgr9ABAN5M86GF9fTd0VEBfhsvKibgb69Gytgr2L6rurqnjOzcN9
	Anmt88PoMuWxr8sUh3XgcJxFz1Q+2I7RT6MZa3m+cANWi/SIQ7U5L1N1D1JyGA==
ARC-Authentication-Results: i=1;
	aspmx1.migadu.com;
	dkim=fail ("headers rsa verify failed") header.d=posteo.net header.s=2017 header.b=UmtXINjS;
	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";
	dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.net (policy=none)
Received: from localhost ([::1] helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <bug-guix-bounces@gnu.org>)
	id 1qf0Yz-00025w-Tz; Sat, 09 Sep 2023 12:12:01 -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 <Debian-debbugs@debbugs.gnu.org>)
 id 1qf0Yx-00025X-OJ
 for bug-guix@gnu.org; Sat, 09 Sep 2023 12:11:59 -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 <Debian-debbugs@debbugs.gnu.org>)
 id 1qf0Yx-0006Fz-GZ
 for bug-guix@gnu.org; Sat, 09 Sep 2023 12:11:59 -0400
Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2)
 (envelope-from <Debian-debbugs@debbugs.gnu.org>) id 1qf0Z0-0000h8-D3
 for bug-guix@gnu.org; Sat, 09 Sep 2023 12:12:02 -0400
X-Loop: help-debbugs@gnu.org
Subject: bug#65463: Herd `fport_write: Broken pipe` error when running `guix
 home reconfigure`
References: <169277323322.1687.15739147838600524142@localhost>
In-Reply-To: <169277323322.1687.15739147838600524142@localhost>
Resent-From: Elias Kueny <elias.kueny@posteo.net>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces@debbugs.gnu.org>
Resent-CC: bug-guix@gnu.org
Resent-Date: Sat, 09 Sep 2023 16:12:02 +0000
Resent-Message-ID: <handler.65463.B65463.16942758682604@debbugs.gnu.org>
Resent-Sender: help-debbugs@gnu.org
X-GNU-PR-Message: followup 65463
X-GNU-PR-Package: guix
X-GNU-PR-Keywords: 
To: 65463@debbugs.gnu.org
Received: via spool by 65463-submit@debbugs.gnu.org id=B65463.16942758682604
 (code B ref 65463); Sat, 09 Sep 2023 16:12:02 +0000
Received: (at 65463) by debbugs.gnu.org; 9 Sep 2023 16:11:08 +0000
Received: from localhost ([127.0.0.1]:48355 helo=debbugs.gnu.org)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <debbugs-submit-bounces@debbugs.gnu.org>)
 id 1qf0Y7-0000fv-F6
 for submit@debbugs.gnu.org; Sat, 09 Sep 2023 12:11:07 -0400
Received: from mout02.posteo.de ([185.67.36.66]:54329)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <elias.kueny@posteo.net>) id 1qf0Y2-0000fO-Ib
 for 65463@debbugs.gnu.org; Sat, 09 Sep 2023 12:11:06 -0400
Received: from submission (posteo.de [185.67.36.169]) 
 by mout02.posteo.de (Postfix) with ESMTPS id 7987A240104
 for <65463@debbugs.gnu.org>; Sat,  9 Sep 2023 18:10:53 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017;
 t=1694275853; bh=74T0vUr3DzGz5mEDWjNIOXmMnUnrfTlQb0wyeuLJ2O4=;
 h=From:To:Subject:Date:Message-ID:MIME-Version:
 Content-Transfer-Encoding:From;
 b=UmtXINjSu7cclzZZhH6XO/i3C+qve3FNDnLEmnFoQFwR79e+2vB9YCnUyyG+eQYN7
 DiUtIp+8jCUS+RgyPY1VCV2NQM68BtyO7oBILyhKD35vhGxdHVC66iAHXypGUrQQGD
 KKtI6SuIKaq0X0g0OLwX/MKc+ULXfPm+yPZi8jtVHoymajiVVar0EQzdJy3xBGRG1X
 g/q4KyG7Quj7g8sqxxaa6sAnIlPZJveh8bBcaFElIM6xDX69pCSlVo5JMO0TcxI3xd
 Y3/MYXqVDI6mef9+dLqQ8m5YPylIhM8JkHYyV6gNNqvzl+0NpqZPwMBa1vdDF27v5a
 lbdiaJI0OoSkw==
Received: from customer (localhost [127.0.0.1])
 by submission (posteo.de) with ESMTPSA id 4RjdHx0vyTz6txf
 for <65463@debbugs.gnu.org>; Sat,  9 Sep 2023 18:10:53 +0200 (CEST)
From: Elias Kueny <elias.kueny@posteo.net>
Date: Sat, 09 Sep 2023 16:09:46 +0000
Message-ID: <87sf7nfhtf.fsf@posteo.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: quoted-printable
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 <bug-guix.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/bug-guix>,
 <mailto:bug-guix-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/bug-guix>
List-Post: <mailto:bug-guix@gnu.org>
List-Help: <mailto:bug-guix-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/bug-guix>,
 <mailto:bug-guix-request@gnu.org?subject=subscribe>
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-Scanner: mx2.migadu.com
X-Spam-Score: -5.32
X-Migadu-Queue-Id: E61C1417B6
X-Migadu-Spam-Score: -5.32
X-TUID: 6GP7Cpw7S8Fc

I experience the same thing. I hadn't updated guix since may (last generati=
on was commit 91bfd30ee3f35dfb7048bf42aea92f939cffbf17), and since I did I'=
m encountering issues with shepherd.

Probably unrelated, but for the record: my first issue was caused by the di=
sappearance of the XDG_LOG_HOME environment variable. I was using it in the=
 definition of shepherd services (as for example `#:log-file (string-append=
 (getenv "XDG_LOG_HOME") "/emacs-daemon.log")`. Guix home reconfigure worke=
d because the getenv wasn't evaluated immediately, but after a reboot the s=
yntax error prevented shepherd to start the session.

But once I solved that, same problems: shepherd seems to hang somewhere aft=
er starting the home services.

herd status:
--8<---------------cut here---------------start------------->8---
Started:
 + root
Starting:
 ^ emacs-daemon
 ^ ssh-agent
 ^ syncthing
--8<---------------cut here---------------end--------------->8---

~/.local/state/log/shepherd.log:
--8<---------------cut here---------------start------------->8---
2023-09-09 16:12:42 Service root started.
2023-09-09 16:12:42 Service root running with value #t.
2023-09-09 16:12:42 Service root has been started.
2023-09-09 16:12:42 Daemonizing...
2023-09-09 16:12:42 Restarting signal handler.
2023-09-09 16:12:42 Now running as process 430.
2023-09-09 16:12:42 Starting services...
2023-09-09 16:12:42 Configuration successfully loaded from '/gnu/store/mq01=
z0gvi1zv3skk6xh1q7g4id6hsgdk-shepherd.conf'.
2023-09-09 16:12:42 Starting service ssh-agent...
2023-09-09 16:12:42 Starting service syncthing...
2023-09-09 16:12:42 Starting service emacs-daemon...
2023-09-09 16:12:42 Service ssh-agent has been started.
2023-09-09 16:12:42 Service syncthing has been started.
--- guix home reconfigure happened here ---
2023-09-09 16:59:00 Service emacs-daemon has been started.
2023-09-09 16:59:00 SSSL2023-09-09 16:59:00 oading /gnu/store/mlvqhkb37zy3y=
ycriv3lmqah7yff34af-shepherd.conf.
--8<---------------cut here---------------end--------------->8---

My 3 services are working normally. If I try to run `herd restart emacs-dae=
mon`, the command hangs until I press Ctrl-C and nothing happens to emacs. =
Same thing for the other services (and for `herd stop`).

Here's how my services are defined. If I comment out all occurrences of `ho=
me-shepherd-service-type` in my home configuration (not just commenting %em=
acs-daemon-user-service and running it with an empty list of services), the=
n there is no error when running `guix home reconfigure`.

--8<---------------cut here---------------start------------->8---
(define %emacs-daemon-user-service
  (shepherd-service
   (documentation "Run emacs-daemon.")
   (provision '(emacs-daemon))
   (start #~(make-forkexec-constructor
             (list #$(file-append (specification->package %emacs-package) "=
/bin/emacs") "--fg-daemon")
             #:log-file (string-append #$(getenv "HOME") "/.local/var/log/e=
macs-daemon.log")))
   (stop #~(make-system-destructor "emacsclient --eval \"(kill-emacs)\""))
   (auto-start? #t)
   (respawn? #t)))

(define-public emacs-services
  (list (simple-service 'emacs-shepherd-service
                         home-shepherd-service-type
                         (list %emacs-daemon-user-service))))

(home-environment (services `(,@emacs-services [=E2=80=A6])))
--8<---------------cut here---------------end--------------->8---

When reconfiguring with an home-shepherd-service-type service but not sheph=
erd service in the list:

--8<---------------cut here---------------start------------->8---
Finished updating symlinks.

Loading /gnu/store/26jgrxzmabjdl3nhjx16cqa1f5h3flks-shepherd.conf.
herd: error: exception caught while executing 'load' on service 'root':
In procedure fport_write: Broken pipe
Comparing /gnu/store/4vmxyl8fykz9wkrkicnv5azhvr1gb5i1-home/profile/share/fo=
nts and
          /gnu/store/3wlqdh4i4zmwjmqa69isr62nvbgf7abh-home/profile/share/fo=
nts... done (same)
Comparing /gnu/store/4vmxyl8fykz9wkrkicnv5azhvr1gb5i1-home/files/.config/fi=
sh/fish_plugins and
          /gnu/store/3wlqdh4i4zmwjmqa69isr62nvbgf7abh-home/files/.config/fi=
sh/fish_plugins... done (same)
Evaluating on-change gexps.

On-change gexps evaluation finished.
--8<---------------cut here---------------end--------------->8---

Only new line in ~/.local/state/log/shepherd.log:
--8<---------------cut here---------------start------------->8---
2023-09-09 17:45:07 Loading /gnu/store/26jgrxzmabjdl3nhjx16cqa1f5h3flks-she=
pherd.conf.
--8<---------------cut here---------------end--------------->8---

/gnu/store/26jgrxzmabjdl3nhjx16cqa1f5h3flks-shepherd.conf:
--8<---------------cut here---------------start------------->8---
(begin (use-modules (srfi srfi-34) (system repl error-handling)) (apply reg=
ister-services (map (lambda (file) (load file)) (quote ()))) (action (quote=
 root) (quote daemonize)) (format #t "Starting services...~%") (let ((servi=
ces-to-start (quote ()))) (if (defined? (quote start-in-the-background)) (s=
tart-in-the-background services-to-start) (for-each start services-to-start=
)) (redirect-port (open-input-file "/dev/null") (current-input-port))))
--8<---------------cut here---------------end--------------->8---

So I would guess it's a problem in home-shepherd-service-type, and not in t=
he custom service definitions. I also remember the broken pipe error showin=
g previously, but shepherd commands hanging is new.