diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm
index b20831f44d6fe8ae53d1ae7da43efe74d68aae01..2520853205cb80ab6e93be24f9eead3d5ee07133 100644
--- a/gnu/system/vm.scm
+++ b/gnu/system/vm.scm
@@ -255,14 +255,14 @@ (define* (qemu-image #:key
 
 (define (operating-system-build-gid os)
   "Return as a monadic value the group id for build users of OS, or #f."
-  (anym %store-monad
-        (lambda (service)
-          (and (equal? '(guix-daemon)
-                       (service-provision service))
-               (match (service-user-groups service)
-                 ((group)
-                  (user-group-id group)))))
-        (operating-system-services os)))
+  (mlet %store-monad ((services (operating-system-services os)))
+    (return (any (lambda (service)
+                   (and (equal? '(guix-daemon)
+                                (service-provision service))
+                        (match (service-user-groups service)
+                          ((group)
+                           (user-group-id group)))))
+                 services))))
 
 (define (operating-system-default-contents os)
   "Return a list of directives suitable for 'system-qemu-image' describing the