summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2024-02-18 12:39:26 +0100
committerLudovic Courtès <ludo@gnu.org>2024-02-18 15:34:43 +0100
commit1cff19d8d4d99f502db43cff6e9e7472197256f4 (patch)
tree0259f365715681893a62057384ba2748d1327b99
parentcd0dc17e43d4020d4e56afa32b6cc05072fe2e0e (diff)
services: virtual-build-machine: Add ‘configuration’ action.
* gnu/services/virtualization.scm (build-vm-shepherd-services): Add ‘configuration’ action. * doc/guix.texi (Virtualization Services): Document it. Change-Id: I4734e096d744b3cda0d523692498a73c0029e188
-rw-r--r--doc/guix.texi6
-rw-r--r--gnu/services/virtualization.scm16
2 files changed, 21 insertions, 1 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 04119a5955..fe6f82d4a5 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -36396,7 +36396,11 @@ set to a date several years in the past, and on a CPU model that
corresponds to that date---a model possibly older than that of your
machine. This lets you rebuild today software from the past that would
otherwise fail to build due to a time trap or other issues in its build
-process.
+process. You can view the VM's config like this:
+
+@example
+herd configuration build-vm
+@end example
You can configure the build VM, as in this example:
diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm
index ea5edfcec3..7b04ddb35e 100644
--- a/gnu/services/virtualization.scm
+++ b/gnu/services/virtualization.scm
@@ -1342,6 +1342,22 @@ authpriv.*;auth.info /var/log/secure
(kill (- pid) SIGTERM)
(apply throw key args)))))))
(stop #~(make-kill-destructor))
+ (actions
+ (list (shepherd-action
+ (name 'configuration)
+ (documentation
+ "Display the configuration of this virtual build machine.")
+ (procedure
+ #~(lambda (_)
+ (format #t "CPU: ~a~%"
+ #$(virtual-build-machine-cpu config))
+ (format #t "number of CPU cores: ~a~%"
+ #$(virtual-build-machine-cpu-count config))
+ (format #t "memory size: ~a MiB~%"
+ #$(virtual-build-machine-memory-size config))
+ (format #t "initial date: ~a~%"
+ #$(date->string
+ (virtual-build-machine-date config))))))))
(auto-start? (virtual-build-machine-auto-start? config)))))
(define (authorize-guest-substitutes-on-host)