doc: Recommend avoiding execl, execle or execlp in mcron job specifications.
[jackhill/guix/guix.git] / doc / guix.texi
index e547d46..caa6976 100644 (file)
@@ -18940,9 +18940,8 @@ gexps to introduce job definitions that are passed to mcron
   ;; job's action as a Scheme procedure.
   #~(job '(next-hour '(3))
          (lambda ()
-           (execl (string-append #$findutils "/bin/updatedb")
-                  "updatedb"
-                  "--prunepaths=/tmp /var/tmp /gnu/store"))
+           (system* (string-append #$findutils "/bin/updatedb")
+                    "--prunepaths=/tmp /var/tmp /gnu/store"))
          "updatedb"))
 
 (define garbage-collector-job
@@ -18980,6 +18979,12 @@ the job would appear as ``Lambda function'' in the output of
 @command{herd schedule mcron}, which is not nearly descriptive enough!
 @end quotation
 
+@quotation Tip
+Avoid calling the Guile procedures @code{execl}, @code{execle} or
+@code{execlp} inside a job specification, else mcron won't be able to
+output the completion status of the job.
+@end quotation
+
 For more complex jobs defined in Scheme where you need control over the top
 level, for instance to introduce a @code{use-modules} form, you can move your
 code to a separate program using the @code{program-file} procedure of the