-exit 0 if getgrnam("sudo"); # we're finished if there is a group sudo
-
-$gid = 27; # start searcg with gid 27
-setgrent;
-while (getgrgid($gid)) {
- ++$gid;
-}
-endgrent;
-
-if ($gid != 27) {
- print "On Debian we normally use gid 27 for 'sudo'.\n";
- $gname = getgrgid(27);
- print "However, on your system gid 27 is group '$gname'.\n\n";
- print "Would you like me to stop configuring sudo so that you can change this? [n] ";
- $ans = <STDIN>;
- if ($ans =~ m/^[yY].*/) {
- print "'dpkg --pending --configure' will restart the configuration.\n\n\n";
- exit 1;
- }
-}
-
-print "Creating group 'sudo' with gid = $gid\n";
-system("groupadd -g $gid sudo");
-
-print "";
+[ -n "`getent group sudo`" ] && exit 0 # we're finished if there is a group sudo:
+
+# start search with gid 27
+gid="27"
+while [ -n "`getent group $gid | cut -d: -f3`" ];do
+ gid=`expr $gid + 1`
+done
+
+
+if [ "$gid" -ne "27" ];then
+ echo "On Debian we normally use gid 27 for 'sudo'."
+ gname="`getent group 27 | cut -d: -f1`"
+ echo "However, on your system gid 27 is group '$gname'."
+ echo ""
+ echo "Would you like me to stop configuring sudo so that you can change this?";
+ while true;do
+ echo -n "(Enter 'yes' to stop, enter to continue): "
+ read ans
+ [ "$ans" = "" ] && break
+ if [ "$ans" = "yes" -o "$ans" = "YES" ];then
+ echo "'dpkg --pending --configure' will restart the configuration."
+ exit 1;
+ fi
+ echo "Please enter exactly 'yes' to stop, or press the enter key to continue without stopping"
+ done
+fi
+
+echo "Creating group 'sudo' with gid = $gid";
+groupadd -g $gid sudo
+
+echo ""
+
+#DEBHELPER#