diff options
author | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2020-05-24 15:04:45 -0400 |
---|---|---|
committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2020-05-29 21:48:58 -0400 |
commit | c08fac0f7d175b9deb182c597cecdae997efce9d (patch) | |
tree | b1ef6016dbe574f47fd063bba403c672d6bd05a0 | |
parent | 49de32748ddcbe5026b23ffc5365a3ca524790ec (diff) | |
download | guix-c08fac0f7d175b9deb182c597cecdae997efce9d.tar.gz |
services: nfs: Expose configuration options for TCP and UDP.
* gnu/services/nfs.scm (<nfs-configuration>)[nfsd-tcp?, nfsd-udp?]: New fields. (nfs-shepherd-services)[rpc.nfsd]: Populate the --{no-,}tcp and --{no-,}udp command line options based on the values of the nfsd-tcp? and nfsd-upd? fields. * doc/guix.texi (Network File System): Add doc.
-rw-r--r-- | doc/guix.texi | 6 | ||||
-rw-r--r-- | gnu/services/nfs.scm | 14 |
2 files changed, 19 insertions, 1 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index ba5729bd41..beeda34ea2 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -22858,6 +22858,12 @@ The network port that the @command{nfsd} daemon should use. @item @code{nfsd-threads} (default: @code{8}) The number of threads used by the @command{nfsd} daemon. +@item @code{nfsd-tcp?} (default: @code{#t}) +Whether the @command{nfsd} daemon should listen on a TCP socket. + +@item @code{nfsd-udp?} (default: @code{#f}) +Whether the @command{nfsd} daemon should listen on a UDP socket. + @item @code{pipefs-directory} (default: @code{"/var/lib/nfs/rpc_pipefs"}) The directory where the pipefs file system is mounted. diff --git a/gnu/services/nfs.scm b/gnu/services/nfs.scm index 4e358197e2..859097e788 100644 --- a/gnu/services/nfs.scm +++ b/gnu/services/nfs.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 John Darrington <jmd@gnu.org> ;;; Copyright © 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -261,6 +262,10 @@ (default 2049)) (nfsd-threads nfs-configuration-nfsd-threads (default 8)) + (nfsd-tcp? nfs-configuration-nfsd-tcp? + (default #t)) + (nfsd-udp? nfs-configuration-nfsd-udp? + (default #f)) (pipefs-directory nfs-configuration-pipefs-directory (default default-pipefs-directory)) ;; List of modules to debug; any of nfsd, nfs, rpc, idmap, statd, or mountd. @@ -272,6 +277,7 @@ (match-record config <nfs-configuration> (nfs-utils nfs-versions exports rpcmountd-port rpcstatd-port nfsd-port nfsd-threads + nfsd-tcp? nfsd-udp? pipefs-directory debug) (list (shepherd-service (documentation "Mount the nfsd pseudo file system.") @@ -332,7 +338,13 @@ #$@(map (lambda (version) (string-append "--nfs-version=" version)) nfs-versions) - #$(number->string nfsd-threads)))))) + #$(number->string nfsd-threads) + #$(if nfsd-tcp? + "--tcp" + "--no-tcp") + #$(if nfsd-udp? + "--udp" + "--no-udp")))))) (stop #~(lambda _ (zero? |