store: Add #:store parameter to 'register-path'.
* guix/store.scm (register-path): Add #:store and honor it.
This commit is contained in:
parent
87a52da7d0
commit
e901ef297d
|
@ -797,17 +797,21 @@ signing them if SIGN? is true."
|
||||||
(loop tail)))))))
|
(loop tail)))))))
|
||||||
|
|
||||||
(define* (register-path path
|
(define* (register-path path
|
||||||
#:key (references '()) deriver)
|
#:key (references '()) deriver store)
|
||||||
"Register PATH as a valid store file, with REFERENCES as its list of
|
"Register PATH as a valid store file, with REFERENCES as its list of
|
||||||
references, and DERIVER as its deriver (.drv that led to it.) Return #t on
|
references, and DERIVER as its deriver (.drv that led to it.) If STORE is not
|
||||||
success.
|
#f, it must be a string denoting the directory name of the new store to
|
||||||
|
initialize. Return #t on success.
|
||||||
|
|
||||||
Use with care as it directly modifies the store! This is primarily meant to
|
Use with care as it directly modifies the store! This is primarily meant to
|
||||||
be used internally by the daemon's build hook."
|
be used internally by the daemon's build hook."
|
||||||
;; Currently this is implemented by calling out to the fine C++ blob.
|
;; Currently this is implemented by calling out to the fine C++ blob.
|
||||||
(catch 'system-error
|
(catch 'system-error
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(let ((pipe (open-pipe* OPEN_WRITE %guix-register-program)))
|
(let ((pipe (apply open-pipe* OPEN_WRITE %guix-register-program
|
||||||
|
(if store
|
||||||
|
`("--prefix" ,store)
|
||||||
|
'()))))
|
||||||
(and pipe
|
(and pipe
|
||||||
(begin
|
(begin
|
||||||
(format pipe "~a~%~a~%~a~%"
|
(format pipe "~a~%~a~%~a~%"
|
||||||
|
|
Loading…
Reference in New Issue