mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-26 22:38:07 -05:00
scripts: discover: Check for cache file existence.
Fixes: https://issues.guix.gnu.org/45045. * guix/scripts/discover.scm (read-substitute-urls): Check for file existence.
This commit is contained in:
parent
4cf3734c56
commit
c952a9312a
1 changed files with 14 additions and 8 deletions
|
@ -110,14 +110,16 @@ (define-syntax-rule (with-read-file-lock file exp ...)
|
||||||
(define* (read-substitute-urls #:key (file (%publish-file)))
|
(define* (read-substitute-urls #:key (file (%publish-file)))
|
||||||
"Read substitute urls list from FILE and return it. Use a read lock on FILE
|
"Read substitute urls list from FILE and return it. Use a read lock on FILE
|
||||||
to synchronize with the writer."
|
to synchronize with the writer."
|
||||||
(with-read-file-lock file
|
(if (file-exists? file)
|
||||||
(call-with-input-file file
|
(with-read-file-lock file
|
||||||
(lambda (port)
|
(call-with-input-file file
|
||||||
(let loop ((url (read-line port))
|
(lambda (port)
|
||||||
(urls '()))
|
(let loop ((url (read-line port))
|
||||||
(if (eof-object? url)
|
(urls '()))
|
||||||
urls
|
(if (eof-object? url)
|
||||||
(loop (read-line port) (cons url urls))))))))
|
urls
|
||||||
|
(loop (read-line port) (cons url urls)))))))
|
||||||
|
'()))
|
||||||
|
|
||||||
|
|
||||||
;;;
|
;;;
|
||||||
|
@ -156,3 +158,7 @@ (define-command (guix-discover . args)
|
||||||
(mkdir-p (dirname publish-file))
|
(mkdir-p (dirname publish-file))
|
||||||
(avahi-browse-service-thread service-proc
|
(avahi-browse-service-thread service-proc
|
||||||
#:types %services)))))
|
#:types %services)))))
|
||||||
|
|
||||||
|
;;; Local Variables:
|
||||||
|
;;; eval: (put 'with-read-file-lock 'scheme-indent-function 1)
|
||||||
|
;;; End:
|
||||||
|
|
Loading…
Reference in a new issue