On Tue, Mar 21, 2000 at 04:11:44PM -0600, [EMAIL PROTECTED] wrote:
> Package: xdm
> Version: N/A
> Severity: critical

I don't appreciate critical bug reports that reveal such profound ignorance
of the Debian system in general, and of the xdm package specifically.

> When installed with apt-get xdm postinst inserts a default line in
> /etc/X11/xdm/Xservers of ':0 local /usr/bin/X11/X vt7' if instructed to
> handle a local session.

It does no such thing.  You obviously didn't bother to read the postinst
script, so here it is.

#!/bin/sh
# Debian xdm package post-installation script
# Copyright 1998-2000 Branden Robinson.
# Licensed under the GNU General Public License, version 2.  See the file
# /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
# Acknowlegements to Stephen Early, Mark Eichin, and Manoj Srivastava.

set -e

cleanup () {
  # unroll changes in xdm preinst
  for file in /usr/X11R6/lib/X11/xdm/xdm-config; do
    if [ -e $file.xdm-old ]; then
      rm $file
      mv $file.xdm-old $file
    fi
  done
  /etc/init.d/xdm start
}

# TODO comment out these two functions for stable release
maplink () {
  # returns what symlink should point to
  case "$1" in
    /usr/X11R6/lib/X11/xdm/xdm-config) echo /etc/X11/xdm/xdm-config ;;
  esac;
}

readlink () {
  # perl kludge until readlink(1) from tetex-bin is moved into an essential 
package
  # returns what symlink actually points to
  perl -e '$l = shift; exit 1 unless -l $l; $r = readlink $l; exit 1 unless $r; 
print "$r\n"' $1;
}

trap "echo ;\
      echo 'Received signal.  Aborting configuration of xdm package.' ;\
      echo -n 'Cleaning up...' ;\
      cleanup ;\
      echo 'done.' ;\
      echo ;\
      exit 1" 1 2 3 15

case "$1" in
  configure) ;;
  abort-upgrade|abort-remove|abort-deconfigure)
    cleanup
    exit 0 ;;
  *)
    echo "ERROR: xdm postinst called with unknown argument \"$1\"."
    echo "Aborting configuration of xdm package."
    echo -n "Cleaning up..."
    cleanup
    echo "done."
    exit 1 ;;
esac

condecho=:

# TODO sanity checks -- comment out these for stable release
for symlink in /usr/X11R6/lib/X11/xdm/xdm-config; do
  if [ -L $symlink ]; then
    if [ $(maplink $symlink) != $(readlink $symlink) ]; then
      $condecho
      echo "ERROR: $symlink symbolic link points to the wrong"
      echo "place.  Please report this message to <[EMAIL PROTECTED]>."
      condecho=echo
    fi
  elif [ -e $symlink ]; then
    $condecho
    echo "ERROR: $symlink is not a symbolic link."
    echo "Please report this message to <[EMAIL PROTECTED]>."
    condecho=echo
  else
    $condecho
    echo "ERROR: $symlink symbolic link does not exist."
    echo "Please report this message to <[EMAIL PROTECTED]>."
    condecho=echo
  fi
done

if [ -d /usr/doc -a ! -e /usr/doc/xdm -a -d /usr/share/doc/xdm ]; then
  ln -sf ../share/doc/xdm /usr/doc/xdm
fi

# deal with a bug in very old versions of xbase
for dir in rc0.d rc1.d rc6.d; do
  if [ -L etc/$dir/K1xdm ]; then
    mv /etc/$dir/K1xdm /etc/$dir/K01xdm
  fi
done

# don't start xdm if we're currently in X on the display it attempts
# to manage by default
nostart=
xdm_running=
for hostname in "" "localhost" "$(hostname)" "$(hostname -f)"; do
  if echo $DISPLAY | grep -q "^$hostname:0.*"; then
    nostart=yes
  fi
done
# or if it's already running
if start-stop-daemon --stop --quiet --signal 0 --pid /var/run/xdm.pid --exec 
/usr/bin/X11/xdm; then
  nostart=yes
  xdm_running=yes
fi
# or if the options file says not to
if ! grep -qs ^restart-on-upgrade /etc/X11/xdm/xdm.options; then
  nostart=yes
fi

update-rc.d xdm defaults 99 01 > /dev/null 2>&1

if [ "$xdm_running" ]; then
  if [ -d /var/state/xdm ]; then
    $condecho
    echo "Note: obsolete directory /var/state/xdm cannot be removed because xdm 
is still"
    echo "running.  Reinstall the xdm package (or remove the directory 
manually) when xdm"
    echo "is not running."
    condecho=echo
  fi
else
  if [ -d /var/state/xdm ]; then
    rm -r /var/state/xdm
  fi
fi

[ "$nostart" ] || /etc/init.d/xdm start || true

exit

> This will cause ANY system that has 'login'
> running on vt7 to break. In the instance of login running on the vt
> that xdm attempts to start on, ALL keyboard input is disabled. Mouse
> events work fine, but one is unable to enter a username/password.
> If the system is not network connected to allow killing xdm from
> remote a HARD reset is required and the system must be started in
> SINGLE mode in order to correct the error.

If YOU had READ the FAQ that is shipped with ALL Debian installations of the
X WINDOW SYSTEM, you would KNOW that this problem is WELL-KNOWN about and
that there is a WELL-KNOWN FIX.

You'd also UNDERSTAND that because /etc/X11/xdm/Xservers is a CONFFILE,
your CHANGES to the file, such as NOT STARTING AN X SERVER ON VT 7, are
RESPECTED during upgrades; if the upstream version has changed AND you have
MODIFIED your version, then you are ASKED which version you want to
install.  You are EXPLICITLY given the OPTION of KEEPING YOUR VERSION of
the file.  In FACT, this is the DEFAULT.

If YOU failed to UNDERSTAND the prompt you were given, that is YOUR
PROBLEM.  If YOU had BOTHERED to INVESTIGATE, you would NOTE that even if
you do make such a MISTAKE, the OLD VERSION of the file WITH YOUR
MODIFICATIONS is PRESERVED with the suffix ".dpkg-old" so that YOU may MOVE
IT BACK INTO PLACE.

> postinst should ASK what vt you normally run X on (12 on my system) and
> insert that vt as the default *OR* postinst should NOT install a 'vtxx'
> directive in the Xservers file so it will start on the next available vt. If
> not installing the 'vtxx' directive, postinst should put up an interactive
> NOTE suggesting that the customer modify the file by hand to include a
> default vt.

USERS should READ the DOCUMENTATION provided with a package before FILING a
CRITICAL BUG REPORT.

They should also ENDEAVOR to be POLITE when filing them, and not speak
CONDESCENDINGLY to PACKAGE MAINTAINERS who are VOLUNTEERS serving MANY
USERS with MANY DIFFERENT NEEDS.

Furthermore, PEOPLE who file BUG REPORTS should refrain from GRATUITOUS
CAPITALIZATION OF WORDS in order to promote a MORE CIVIL DISCOURSE about
possible PROBLEMS with the SYSTEM.

> This bug also exists in 'wdm' and 'gdm'. I currently have 'wdm' installed on
> my system. I tested all three while trying to determine the reason for loss
> of keyboard input. 'xdm' does NOT start itself when installed, which
> is a plus in this situation, but it also does not warn you of the possible
> conflict in the Xservers file so a manual start after installation ends up
> requiring a reboot to fix.

Just as soon as you come up with a common configuration file format and
implementation method which sysvinit (/etc/inittab) and all X display
managers can refer to for information about what virtual consoles to use,
I'd be happy to accommodate you.

In the MEANTIME, I suggest you NOT OVERWRITE CONFFILES on your system
without UNDERSTANDING what you are DOING.  And try to be more THOUGHTFUL in
the future before assigning a bug CRITICAL SEVERITY.  In fact, you might
even leave it up to the PACKAGE MAINTAINER or other Debian DEVELOPERS, who
have EXPERIENCE with the system, to make such a judgment.

I'm CC'ing debian-user so that people can see how *not* to file a bug
report.  This person was good at describing the symptoms of his problem,
but had obviously not read any documentation, like the Debian X FAQ[1], and
had an utterly incorrect understanding of how the /etc/X11/xdm/Xservers
file is handled.  It is all right for a user to not understand the
sometimes complicated implementation details of the Debian system -- no one
can know everything -- but to pretend that you know, be completely wrong
about it, and then advertise this fact to the package maintainer in an
angry bug report is not the correct way to admit your ignorance.

[1] /usr/share/doc/xfree86-common/FAQ.gz; this file just happens to be
referenced at the top of /usr/share/doc/xdm/README.Debian.

-- 
G. Branden Robinson            |    When I die I want to go peacefully in
Debian GNU/Linux               |    my sleep like my ol' Grand Dad...not
[EMAIL PROTECTED]         |    screaming in terror like his passengers.
roger.ecn.purdue.edu/~branden/ |

Attachment: pgpWiiFfAdwpC.pgp
Description: PGP signature

Reply via email to