diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index b094b55c2a649558cd963d764f53d45c3fb0a6b4..09afa658c7a572c26ece5e1cce6df2aecba6cb8b 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -1865,8 +1865,14 @@ (define-public grass
                  (symlink (string-append dir "/lib")
                           (string-append out "/lib")))
                #t))
-           (add-after 'install-links 'wrap-python
-             (assoc-ref python:%standard-phases 'wrap)))))
+           (add-after 'install-links 'python:wrap
+             (assoc-ref python:%standard-phases 'wrap))
+           (add-after 'python:wrap 'wrap-with-python-interpreter
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let ((out (assoc-ref outputs "out")))
+                 (wrap-program (string-append out "/bin/" ,grassxx)
+                   `("GRASS_PYTHON" = (,(which "python3"))))
+                 #t))))))
       (synopsis "GRASS Geographic Information System")
       (description
        "GRASS (Geographic Resources Analysis Support System), is a Geographic