Add users from configuration
This commit is contained in:
parent
e15a64816b
commit
e62637b3be
3 changed files with 32 additions and 5 deletions
|
@ -83,11 +83,6 @@ begin
|
|||
and arch-chroot "$mountDir" bash "$tempDir/../Software/sudo/install.sh"
|
||||
and runInOS fish "$tempDir/../Software/GRUB/main.fish"
|
||||
|
||||
and USER_NAME="$USER_NAME" \
|
||||
USER_DISPLAYNAME="$USER_DISPLAYNAME" \
|
||||
USER_GROUPS="$USER_GROUPS" \
|
||||
arch-chroot "$mountDir" bash "$tempDir/user.sh"
|
||||
|
||||
and if set -l keyLayout (getConfig valhalla.keyboardLayout)
|
||||
set -l serviceName set-keymap.service
|
||||
and set -l serviceFile "$mountDir/etc/systemd/system/$serviceName"
|
||||
|
|
|
@ -39,5 +39,10 @@ else
|
|||
runHook installOS || true
|
||||
runHook installSoftware || true
|
||||
runHook initializeConfig || true
|
||||
|
||||
runHook addUsers || begin
|
||||
source "$dir/users.fish"
|
||||
end
|
||||
|
||||
runHook postInstall || true
|
||||
end
|
||||
|
|
27
scripts/Common/OS/users.fish
Normal file
27
scripts/Common/OS/users.fish
Normal file
|
@ -0,0 +1,27 @@
|
|||
#!/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)
|
||||
|
||||
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 ! passwd "$name"
|
||||
echo "An error occurred! Please try again."
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue