]> gitweb.factorcode.org Git - factor.git/commitdiff
unix.users: Add utility word to find a user's home directory.
authorDoug Coleman <doug.coleman@gmail.com>
Tue, 19 Nov 2013 17:27:19 +0000 (09:27 -0800)
committerDoug Coleman <doug.coleman@gmail.com>
Tue, 19 Nov 2013 17:32:45 +0000 (09:32 -0800)
basis/unix/users/users.factor

index d0ed5cd0fd9d831a238d18d878dd74e41ad24506..da47a4cc2021e0cc8915b944218a3d9562efe904 100644 (file)
@@ -129,6 +129,11 @@ M: integer set-effective-user ( id -- )
 M: string set-effective-user ( string -- )
     ?user-id (set-effective-user) ;
 
+ERROR: no-such-user obj ;
+
+: user-home ( name/uid -- path )
+    dup user-passwd [ nip dir>> ] [ no-such-user ] if* ;
+
 os {
     { [ dup macosx? ] [ drop "unix.users.macosx" require ] }
     { [ dup linux? ] [ drop ] }