From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id iLv6JapijF98DgAA0tVLHw (envelope-from ) for ; Sun, 18 Oct 2020 15:43:38 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id WD7AIapijF8RVwAAbx9fmQ (envelope-from ) for ; Sun, 18 Oct 2020 15:43:38 +0000 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 EC5BB9401BF for ; Sun, 18 Oct 2020 15:43:37 +0000 (UTC) Received: from localhost ([::1]:42662 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kUAqN-0002ui-GZ for larch@yhetil.org; Sun, 18 Oct 2020 11:43:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:49876) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kUAqA-0002uO-IC for help-guix@gnu.org; Sun, 18 Oct 2020 11:43:22 -0400 Received: from relay1-d.mail.gandi.net ([217.70.183.193]:14257) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kUAq8-0002Fe-C3 for help-guix@gnu.org; Sun, 18 Oct 2020 11:43:22 -0400 X-Originating-IP: 86.202.110.111 Received: from divoplade.home (lfbn-lyo-1-15-111.w86-202.abo.wanadoo.fr [86.202.110.111]) (Authenticated sender: d@divoplade.fr) by relay1-d.mail.gandi.net (Postfix) with ESMTPSA id 6940924000B; Sun, 18 Oct 2020 15:43:14 +0000 (UTC) Message-ID: Subject: Re: How do you define a service? From: divoplade To: Julien Lepiller , help-guix@gnu.org Date: Sun, 18 Oct 2020 17:43:13 +0200 In-Reply-To: <827aaf9922289ecec2233540e99e09896946846a.camel@divoplade.fr> References: <69eea6b79a4850a66adc24a067ebba0d98c33c58.camel@divoplade.fr> <84f1892bab3645699c82a64ae313bd367bfe947d.camel@divoplade.fr> <827aaf9922289ecec2233540e99e09896946846a.camel@divoplade.fr> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=217.70.183.193; envelope-from=d@divoplade.fr; helo=relay1-d.mail.gandi.net X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/18 11:43:15 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org Sender: "Help-Guix" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of help-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=help-guix-bounces@gnu.org X-Spam-Score: -0.01 X-TUID: 4Ul+X+3PMzul Sorry, answering my own questions here... Le dimanche 18 octobre 2020 à 16:53 +0200, divoplade a écrit : > Thank you for your responses. I reduced down the problem further. > > The following program, as run in a service, creates an *empty* file > "/tmp/wtf", and runs for a minute: > > (format (open-output-file "/tmp/wtf") "WTF???\n") > > (sleep 60) > > The following program, as run in the same condition, create an > *empty* > file and fails immediately: > > (with-output-to-file "/tmp/wtf" > (display "WTF???\n")) > > (sleep 60) > > So I think the question is rather, whether Guile can actually work in > a > shepherd forkexec environment: I guess the standard ports are closed, > so maybe guile panics when it is time to flush the data, even if the > ports are redirected. If the script is a shell script doing I/O with redirection, it works, so it's definitely a guile problem. > Do you have an example of a service written in guile that works in > this > context? Looking at cuirass, it executes a shell script that runs guile. That's what I will be doing I think.