On Wed, Jun 11, 2003 at 06:58:00PM +0300, Tero Laitinen wrote:
> I tried to upgrade my Debian distribution but following happened during the
> configuration process. I was instructed to e-mail the error report here.
>
> -------------------------------
> ...
> ...
> Setting up xbase-clients (4.2.1-3) ...
> ERROR: /usr/X11R6/lib/X11/xinit symbolic link does not exist. Either the
> package didn't ship the symbolic link (a bug in the package), or dpkg failed
> to
> unpack it to the filesystem (a bug in dpkg).
> Please report the package name, version, and the text of the above error
> message(s) to <debian-x@lists.debian.org>.
> dpkg: error processing xbase-clients (--configure):
> subprocess post-installation script returned error exit status 1
>
> -------------------------------
>
> So, could you tell me if the package is broken or is it just my system that
> is causing problems? Thanks in advance.
Sure, run the following shell script with an argument of
"/usr/X11R6/lib/X11/xinit".
#!/bin/sh
message () {
# pretty-print messages of arbitrary length
echo "$*" | fold -s -w ${COLUMNS:-80} >&2;
}
message "Searching for overlapping packages..."
DPKG_INFO_DIR=/var/lib/dpkg/info
if [ -d $DPKG_INFO_DIR ]; then
if [ "$(echo $DPKG_INFO_DIR/*.list)" != "$DPKG_INFO_DIR/*.list" ]; then
POSSIBLE_CULPRITS=$(ls -1 $DPKG_INFO_DIR/*.list | egrep -v \
"(xbase-clients|xfree86-common|xfs|xlibs)")
SMOKING_GUNS=$(grep -l "$1" $POSSIBLE_CULPRITS)
if [ -n "$SMOKING_GUNS" ]; then
BAD_PACKAGES=$(printf "\\n")
for F in $SMOKING_GUNS; do
# too bad you can't nest parameter expansion voodoo
P=${F%*.list} # strip off the trailing ".list"
PACKAGE=${P##*/} # strip off the directories
BAD_PACKAGES=$(printf "%s\n%s" "$BAD_PACKAGES" "$PACKAGE")
done
message "The following packages appear to have file overlaps" \
"with the XFree86 packages; these packages are either very" \
"old, or in violation of Debian Policy. Try upgrading each of" \
"these packages to the latest available version if possible:" \
"for example, with the command \"apt-get install\". If no" \
"newer version of a package is available, you will have to" \
"remove it: for example, with the command \"apt-get remove\". " \
"If even the latest available version of the package has this" \
"file overlap, please file a bug against that package with the" \
"Debian Bug Tracking System. You may want to refer the package" \
"maintainer to section 12.8 of the Debian Policy manual."
message "The overlapping packages are: $BAD_PACKAGES"
else
message "no overlaps found."
fi
else
message "cannot search; no matches for $DPKG_INFO_DIR/*.list."
fi
else
message "cannot search; $DPKG_INFO_DIR does not exist."
fi
exit 0
(The above functionality is built-in to XFree86 4.2.1-7 and later.)
--
G. Branden Robinson | You can have my PGP passphrase when
Debian GNU/Linux | you pry it from my cold, dead
branden@debian.org | brain.
http://people.debian.org/~branden/ | -- Adam Thornton
Attachment:
pgpbJgpX83_gN.pgp
Description: PGP signature