We can just use "cp -a skeldir/. homedir" to copy the skeleton dot files to the new user's homedir. There's no good reason to use pax when cp will do and this will simplify a future commit of mine.
- todd Index: usr.sbin/user/user.c =================================================================== RCS file: /cvs/src/usr.sbin/user/user.c,v retrieving revision 1.129 diff -u -p -u -r1.129 user.c --- usr.sbin/user/user.c 15 May 2023 17:00:24 -0000 1.129 +++ usr.sbin/user/user.c 16 May 2023 17:30:18 -0000 @@ -171,7 +171,7 @@ enum { #define MKDIR "/bin/mkdir" #define MV "/bin/mv" #define NOLOGIN "/sbin/nologin" -#define PAX "/bin/pax" +#define CP "/bin/cp" #define RM "/bin/rm" #define UNSET_INACTIVE "Null (unset)" @@ -311,8 +311,8 @@ copydotfiles(char *skeldir, char *dir) if (n == 0) { warnx("No \"dot\" initialisation files found"); } else { - (void) asystem("cd %s && %s -rw -pe %s . %s", - skeldir, PAX, (verbose) ? "-v" : "", dir); + (void) asystem("%s -a %s %s/. %s", + CP, (verbose) ? "-v" : "", skeldir, dir); } return n; }