diff --git a/izebra-linux-oneshot.sh b/izebra-linux-oneshot.sh index 4d80a5b..439e26a 100644 --- a/izebra-linux-oneshot.sh +++ b/izebra-linux-oneshot.sh @@ -75,15 +75,20 @@ done #Change default shell to fish echo Changing default shell to fish +# Minimum UID for regular user accounts (adjust as necessary) +MIN_UID=1000 + # Loop through all users in /etc/passwd -while IFS=: read -r username _ _ _ _ homedir _; do +while IFS=: read -r username _ uid _ _ homedir _; do # Skip system accounts and users without a home directory - if [[ $homedir != "/nonexistent" && -d $homedir ]]; then + if [[ $uid -ge $MIN_UID && -d $homedir ]]; then echo "Changing shell for user: $username" sudo chsh -s /usr/bin/fish "$username" if [ $? -ne 0 ]; then echo "Failed to change shell for user: $username" fi + else + echo "Skipping system account or user without home directory: $username" fi done < /etc/passwd - +chsh -s /usr/bin/fish