services: guix-publish: Add 'compression-level' and 'nar-path' fields.
* gnu/services/base.scm (<guix-publish-configuration>)[compression-level, nar-path]: New fields. (guix-publish-shepherd-service): Honor them. * doc/guix.texi (Base Services): Document them.
This commit is contained in:
parent
f1e900a3b8
commit
697ddb8850
|
@ -9032,6 +9032,15 @@ The TCP port to listen for connections.
|
||||||
@item @code{host} (default: @code{"localhost"})
|
@item @code{host} (default: @code{"localhost"})
|
||||||
The host (and thus, network interface) to listen to. Use
|
The host (and thus, network interface) to listen to. Use
|
||||||
@code{"0.0.0.0"} to listen on all the network interfaces.
|
@code{"0.0.0.0"} to listen on all the network interfaces.
|
||||||
|
|
||||||
|
@item @code{compression-level} (default: @code{3})
|
||||||
|
The gzip compression level at which substitutes are compressed. Use
|
||||||
|
@code{0} to disable compression altogether, and @code{9} to get the best
|
||||||
|
compression ratio at the expense of increased CPU usage.
|
||||||
|
|
||||||
|
@item @code{nar-path} (default: @code{"nar"})
|
||||||
|
The URL path at which ``nars'' can be fetched. @xref{Invoking guix
|
||||||
|
publish, @code{--nar-path}}, for details.
|
||||||
@end table
|
@end table
|
||||||
@end deftp
|
@end deftp
|
||||||
|
|
||||||
|
|
|
@ -127,6 +127,8 @@
|
||||||
guix-publish-configuration-guix
|
guix-publish-configuration-guix
|
||||||
guix-publish-configuration-port
|
guix-publish-configuration-port
|
||||||
guix-publish-configuration-host
|
guix-publish-configuration-host
|
||||||
|
guix-publish-configuration-compression-level
|
||||||
|
guix-publish-configuration-nar-path
|
||||||
guix-publish-service
|
guix-publish-service
|
||||||
guix-publish-service-type
|
guix-publish-service-type
|
||||||
|
|
||||||
|
@ -1438,11 +1440,15 @@ failed to register hydra.gnu.org public key: ~a~%" status))))))))
|
||||||
(port guix-publish-configuration-port ;number
|
(port guix-publish-configuration-port ;number
|
||||||
(default 80))
|
(default 80))
|
||||||
(host guix-publish-configuration-host ;string
|
(host guix-publish-configuration-host ;string
|
||||||
(default "localhost")))
|
(default "localhost"))
|
||||||
|
(compression-level guix-publish-compression-level ;integer
|
||||||
|
(default 3))
|
||||||
|
(nar-path guix-publish-nar-path ;string
|
||||||
|
(default "nar")))
|
||||||
|
|
||||||
(define guix-publish-shepherd-service
|
(define guix-publish-shepherd-service
|
||||||
(match-lambda
|
(match-lambda
|
||||||
(($ <guix-publish-configuration> guix port host)
|
(($ <guix-publish-configuration> guix port host compression nar-path)
|
||||||
(list (shepherd-service
|
(list (shepherd-service
|
||||||
(provision '(guix-publish))
|
(provision '(guix-publish))
|
||||||
(requirement '(guix-daemon))
|
(requirement '(guix-daemon))
|
||||||
|
@ -1450,6 +1456,8 @@ failed to register hydra.gnu.org public key: ~a~%" status))))))))
|
||||||
(list #$(file-append guix "/bin/guix")
|
(list #$(file-append guix "/bin/guix")
|
||||||
"publish" "-u" "guix-publish"
|
"publish" "-u" "guix-publish"
|
||||||
"-p" #$(number->string port)
|
"-p" #$(number->string port)
|
||||||
|
"-C" #$(number->string compression)
|
||||||
|
(string-append "--nar-path=" #$nar-path)
|
||||||
(string-append "--listen=" #$host))))
|
(string-append "--listen=" #$host))))
|
||||||
(stop #~(make-kill-destructor)))))))
|
(stop #~(make-kill-destructor)))))))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue