Merge branch 'devel' into 'main'

test new virtualization service

See merge request glicid-public/guix-glicid!266
This commit is contained in:
Yann Dupont 2023-05-25 10:20:09 +00:00
commit 402265c66a

View file

@ -0,0 +1,43 @@
(define-module (glicid services virtualization)
#:use-module (gnu services)
#:use-module (gnu services shepherd)
#:use-module (gnu services virtualization)
#:use-module (gnu packages virtualization))
;;;
;;; QEMU guest agent service.
;;;
;;
;;(define qemu-guest-agent-shepherd-service:gnu (@@ (gnu services virtualization) qemu-guest-agent-shepherd-service))
(define (qemu-guest-agent-shepherd-service config)
(let ((qemu (qemu-guest-agent-configuration-qemu config))
(device (qemu-guest-agent-configuration-device config)))
(list
(shepherd-service
(provision '(qemu-guest-agent))
(requirement '(udev)) ;; GLiCID
(documentation "Run the QEMU guest agent.")
(start #~(make-forkexec-constructor
`(,(string-append #$qemu "/bin/qemu-ga")
"--statedir" "/var/run"
,@(if (string-null? #$device)
'()
(list "--path" #$device)))
#:log-file "/var/log/qemu-ga.log"))
(stop #~(make-kill-destructor))))))
(define glicid-qemu-guest-agent-service-type
(service-type
(name 'qemu-guest-agent)
(extensions
(list (service-extension shepherd-root-service-type
qemu-guest-agent-shepherd-service)))
(default-value (qemu-guest-agent-configuration))
(description "Run the QEMU guest agent.")))