diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm
index cfb60845bc33b4d898c58110bdd5c342e0f8c9b6..9e4a6695acbe50531a893e3a67dbca998b318de9 100644
--- a/gnu/packages/spice.scm
+++ b/gnu/packages/spice.scm
@@ -234,6 +234,13 @@ (define-public spice-vdagent
                (((string-append "\\$\\(mkdir_p\\) \\$\\(DESTDIR\\)"
                                 "\\$\\(localstatedir\\)/run/spice-vdagentd"))
                  "-$(mkdir_p) $(DESTDIR)$(localstatedir)/run/spice-vdagentd"))
+             #t))
+         (add-after 'unpack 'patch-spice-vdagent.desktop
+           (lambda* (#:key outputs #:allow-other-keys)
+            (substitute* "data/spice-vdagent.desktop"
+              (("Exec=/usr/bin/spice-vdagent\n")
+               (string-append "Exec=" (assoc-ref outputs "out")
+                              "/bin/spice-vdagent")))
              #t)))))
     (inputs
       `(("alsa-lib" ,alsa-lib)