diff --git a/core/host.lisp b/core/host.lisp
index 0d32d6a..d74ecc2 100644
--- a/core/host.lisp
+++ b/core/host.lisp
@@ -75,7 +75,9 @@
(resource-id (the host host)))
(defun homedir (user &optional (host (current-host)))
- (str (or (get-specified host :homedir) "/home")
+ (str (etypecase (host-os host)
+ (os-darwin "/Users")
+ (os "/home"))
"/"
(etypecase user
(user (resource-id user))
diff --git a/unix/darwin.lisp b/unix/darwin.lisp
index 8a817a1..85600b3 100644
--- a/unix/darwin.lisp
+++ b/unix/darwin.lisp
@@ -115,6 +115,7 @@
groups (remove-if (lambda (x)
(find (resource-id x)
'("_lpoperator"
+ "com.apple.access_ssh"
"com.apple.sharepoint.group.1"
"com.apple.sharepoint.group.2"
"everyone"