diff --git a/uiop/configuration.lisp b/uiop/configuration.lisp
index 9d3a5282cb30fff42fc102917bfabc539c955ad9..4c6b315a40f2d0816832678e3eb350605404fb6c 100644
--- a/uiop/configuration.lisp
+++ b/uiop/configuration.lisp
@@ -322,6 +322,17 @@ also \"Configuration DSL\"\) in the ASDF manual."
             (or (remove nil (getenv-absolute-directories "XDG_DATA_DIRS"))
                 (os-cond
                  ((os-windows-p) (mapcar 'get-folder-path '(:appdata :common-appdata)))
+                 ;; macOS' separate read-only system volume means that the contents
+                 ;; of /usr/share are frozen by Apple. Unlike when running natively
+                 ;; on macOS, Genera must access the filesystem through NFS. Attempting
+                 ;; to export either the root (/) or /usr/share simply doesn't work.
+                 ;; (Genera will go into an infinite loop trying to access those mounts.)
+                 ;; So, when running Genera on macOS, only search /usr/local/share.
+                 ((and (os-genera-p)
+                       #+Genera (sys:system-case
+                                 (darwin-vlm t)
+                                 (otherwise nil)))
+                  (mapcar 'parse-unix-namestring '("/usr/local/share/")))
                  (t (mapcar 'parse-unix-namestring '("/usr/local/share/" "/usr/share/")))))))
 
   (defun xdg-config-dirs (&rest more)
diff --git a/uiop/os.lisp b/uiop/os.lisp
index 925a55a6f589f158fd5093e80f1f553049636fcf..729b9919749a28d60610aabd016b23fd92b5aee8 100644
--- a/uiop/os.lisp
+++ b/uiop/os.lisp
@@ -188,7 +188,7 @@ then returning the non-empty string value of the variable"
        (:x86 :x86 :i386 :i486 :i586 :i686 :pentium3 :pentium4 :pc386 :iapx386 :x8632-target)
        (:ppc64 :ppc64 :ppc64-target) (:ppc32 :ppc32 :ppc32-target :ppc :powerpc)
        :hppa64 :hppa :sparc64 (:sparc32 :sparc32 :sparc)
-       :mipsel :mipseb :mips :alpha (:arm :arm :arm-target) :imach
+       :mipsel :mipseb :mips :alpha (:arm :arm :arm-target) :vlm :imach
        ;; Java comes last: if someone uses C via CFFI or otherwise JNA or JNI,
        ;; we may have to segregate the code still by architecture.
        (:java :java :java-1.4 :java-1.5 :java-1.6 :java-1.7))))