#!/bin/env fish set -l dir (status dirname) source "$dir/../Scripts/config.fish" set -l users (getConfig valhalla.users --apply "builtins.attrNames" --json) for name in (echo "$users" | jq '.[]' --raw-output0 | string split0) function getUserConfig -S -a config getConfig "valhalla.users.$name.$config" $argv[2..] end set -l displayName (getUserConfig displayName --json) sudo useradd --create-home ( if echo "$displayName" | jq --exit-status > /dev/null echo "--comment" echo "$displayName" | jq --raw-output end ) --groups (getUserConfig groups --apply 'builtins.concatStringsSep ","') \ "$name" echo "Please Choose a New Password for User `$name`" while ! sudo passwd "$name" echo "An error occurred! Please try again." end end