From 8f84ce9abe12b49340befbeee663896d226bb869 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 8 Mar 2020 00:34:36 -0500 Subject: [PATCH] doc: Note that make-forkexec-constructor requires a non-forking process. This merits to be documented as it can be confusing, as demonstrated by . --- doc/shepherd.texi | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/doc/shepherd.texi b/doc/shepherd.texi index fbd1a3f..a0ac11b 100644 --- a/doc/shepherd.texi +++ b/doc/shepherd.texi @@ -898,12 +898,14 @@ execution of the @var{command} was successful, @code{#t} if not. [#:directory (default-service-directory)] @ [#:environment-variables (default-environment-variables)] Return a procedure that forks a child process, closes all file -descriptors except the standard output and standard error descriptors, sets -the current directory to @var{directory}, changes the environment to -@var{environment-variables} (using the @code{environ} procedure), sets the -current user to @var{user} and the current group to @var{group} unless they -are @code{#f}, and executes @var{command} (a list of strings.) The result of -the procedure will be the PID of the child process. +descriptors except the standard output and standard error descriptors, +sets the current directory to @var{directory}, changes the environment +to @var{environment-variables} (using the @code{environ} procedure), +sets the current user to @var{user} and the current group to @var{group} +unless they are @code{#f}, and executes @var{command} (a list of +strings.) The result of the procedure will be the PID of the child +process. The child process must not fork (daemonize) itself for this to +work correctly. When @var{pid-file} is true, it must be the name of a PID file associated with the process being launched; the return value is the PID -- 2.25.0