Hello, Thanks for the review. Ludovic Courtès writes: >> +(define (make-bare-init-file target) >> […] > > I think the skeleton file should not include a copyright notice. I've now removed this. >> +;; Services known to dmd: >> +;; Add new services to dmd here by providing them through the >> +;; MAKE-SERVICE procedure to REGISTER SERVICES. > > IMO this should be ‘make-service’ and ‘register-services’ (lower-case, > quoted.) Done. >> + (register-services) > ^ >> +;; Send dmd into the background >> + (action 'dmd 'daemonize) > ^ >> + (for-each start '()) > ^ > > Extra space here. The extra spaces were there to stop emacs (maybe Scheme mode?) from going nutty because of the open parens within a string at column 0. I've removed the spacing, but you may find when editing the file in Emacs that syntax highlighting doesn't work properly after the above definition. Don't know if there is a solution to this or whether this is a bug in Scheme mode. >> (let ((config-file (string-append user-dmddir "/init.scm"))) >> (cond ((not (file-exists? user-dmddir)) >> (mkdir user-dmddir) >> + (make-bare-init-file config-file) >> config-file) >> + ((not (file-exists? config-file)) >> + (make-bare-init-file config-file)) >> (else config-file)))))) > > So I guess this should be changed to: > > (catch 'system-error > (lambda () > (mkdir user-dmddir) > (make-bare-init-file config-file)) > (const #f)) I've changed this to : (catch-system-error (mkdir user-dmddir)) (if (not (file-exists? config-file)) (make-bare-init-file config-file)) config-file))) I think you may have a situation where your configuration directory exists, but where no config file exists. In this case I think we should simply create the new file. I also think the race condition should not be a problem for the config file: if the config file is added after the check, then we simply override it. If the config file is removed after the check then guix crashes when it tries to load it, as it always would do before this patch. Hope this works now. You should find the patch inline. Best wishes, Alex