Oops that altered a shitton of system accounts. script will now only

affect UID 0 and 1000+
This commit is contained in:
zebra 2024-07-24 15:57:57 -07:00
parent 4e1f64e320
commit 54e5ed5918

View File

@ -75,15 +75,20 @@ done
#Change default shell to fish #Change default shell to fish
echo Changing 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 # 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 # 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" echo "Changing shell for user: $username"
sudo chsh -s /usr/bin/fish "$username" sudo chsh -s /usr/bin/fish "$username"
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo "Failed to change shell for user: $username" echo "Failed to change shell for user: $username"
fi fi
else
echo "Skipping system account or user without home directory: $username"
fi fi
done < /etc/passwd done < /etc/passwd
chsh -s /usr/bin/fish