diff options
Diffstat (limited to 'gnu/system/dmd.scm')
-rw-r--r-- | gnu/system/dmd.scm | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gnu/system/dmd.scm b/gnu/system/dmd.scm index f4b9371ada..8a79f0a50f 100644 --- a/gnu/system/dmd.scm +++ b/gnu/system/dmd.scm @@ -163,6 +163,7 @@ (define* (static-networking-service interface ip #:key gateway + (name-servers '()) (inetutils inetutils) (net-tools net-tools)) "Return a service that starts INTERFACE with address IP. If GATEWAY is @@ -185,6 +186,17 @@ true, it must be a string specifying the default network gateway." ,(if gateway `(zero? (system* ,route "add" "-net" "default" "gw" ,gateway)) + #t) + ,(if (pair? name-servers) + `(call-with-output-file "/etc/resolv.conf" + (lambda (port) + (display + "# Generated by 'static-networking-service'.\n" + port) + (for-each (lambda (server) + (format port "nameserver ~a~%" + server)) + ',name-servers))) #t)))) (stop `(lambda _ ;; Return #f is successfully stopped. |