-# based on unison error, with 8192 from
-# sysctl -a | grep fs.inotify.max_user_watches
-#http://stackoverflow.com/questions/535768/what-is-a-reasonable-amount-of-inotify-watches-with-linux
-echo "fs.inotify.max_user_watches = 1000000" >> $target/etc/sysctl.d/99-sysctl.conf
-# if we weren't rebooting, you could apply it now with:
-# sysctl --system
+USER2PW=/q/root/shadow/user2
+if ifclass ziva; then
+ ROOTPW=/q/root/shadow/ziva
+else
+ # if doesn't exist, we dont set one
+ ROOTPW=/q/root/shadow/standard
+ if [[ ! -e $ROOTPW ]]; then
+ ROOTPW=/q/root/shadow/$HOSTNAME
+ fi
+fi
+
+chpw() {
+ # generating a hashed password:
+ # under debian, you can do
+ # mkpasswd -m sha-512 -s >/q/root/shadow/standard
+ # On arch, best seems to be copy your shadow file to a temp location,
+ # then passwd, get out the new pass, then copy the shadow file back.
+
+ user=$1
+ pwfile=$2
+ if [[ $pwfile && -e $pwfile ]]; then
+ printf "$user:" | cat - "$pwfile" | $ROOTCMD chpasswd -e
+ else
+ echo "$0: warning: no pw set for $user" >&2
+ fi
+}
+au() { # add user. i don't use adduser for portability
+ if ! $ROOTCMD getent passwd ${@: -1}; then
+ $ROOTCMD useradd -Um -s /bin/bash $@
+ fi
+}
+
+chpw root "$ROOTPW"
+
+# only setup root pass for bootstrap vol
+if ifclass VOL_STRETCH_BOOTSTRAP; then
+ exit 0
+fi