Debian bug report logs - #951
tin symlink problems (caused by bugs in tar, dpkg, and tin)

Package: tin; Reported by: iwj10@cus.cam.ac.uk (Ian Jackson); 14 days old.

Message received at debian-bugs:


From cus.cam.ac.uk!iwj10 Tue Jun  6 06:48:11 1995
Return-Path: <iwj10@cus.cam.ac.uk>
Received: from pixar.com by mongo.pixar.com with smtp
	(Smail3.1.28.1 #15) id m0sIyzK-0007sUC; Tue, 6 Jun 95 06:48 PDT
Received: from bootes.cus.cam.ac.uk by pixar.com with SMTP id AA24026
  (5.67b/IDA-1.5 for debian-bugs-pipe@mongo.pixar.com); Tue, 6 Jun 1995 06:46:41 -0700
Received: by bootes.cus.cam.ac.uk 
	(Smail-3.1.29.0 #36) id m0sIyz3-000C0CC; Tue, 6 Jun 95 14:47 BST
Received: by chiark
	id <m0sImi0-0000YKZ@chiark.al.cl.cam.ac.uk>
	(Debian /\oo/\ Smail3.1.29.1 #29.31); Tue, 6 Jun 95 01:41 BST
Message-Id: <m0sImi0-0000YKZ@chiark.al.cl.cam.ac.uk>
Date: Tue, 6 Jun 95 01:41 BST
From: iwj10@cus.cam.ac.uk (Ian Jackson)
To: Debian bugs submission address <debian-bugs@pixar.com>
Subject: tin symlink problems (caused by bugs in tar, dpkg, and tin)

Package: tin
Version: 1.30b-2

 Preparing to replace tin ...
 Unpacking ./tin-1.30b-2.deb, containing tin ...
 tar: Could not create symlink to tin: File exists
 dpkg-deb: subprocess tar returned error exit status 2

 /usr/bin ~/in
 ln: rtin: File exists
 error while cleaning up: old post-installation script failed (exit status 1)
 dpkg - error: tin: failed to install (exit status 2) (skipping this package)

Several things are going wrong here.

Firstly, tar is failing to overwrite a symlink.  This is a bug in tar.
Secondly, dpkg is using tar to do its extraction.  This will be
changed in the C version of dpkg, and then tar's bugs won't matter.

Though this problem isn't your fault, unfortunately the only
workaround until the new C version of dpkg is available is to remove
the link in the preinst to make sure that tar is happy.

Thirdly, the postinst script still produces an unexpected message from
pushd.  On reading the script I see that the pushd appears at the top
of the script.  The working directory on entry to the postinst script
is not defined, and so since you shouldn't depend on it you don't need
to return to it.  I'd replace the pushd with a cd.  This is a cosmetic
problem only, though.

Fourthly, the postinst script in my previously installed version
(1.22-1) attempts to create a link /usr/bin/rtin -> tin without using
-f and without checking for the link's prior existance.  This causes
it to fail with the message seen above.  In my case this failure
happened while dpkg was trying to clean up after the first error.  I
don't know whether this problem exists in the new version.

Ian.

Acknowledgement sent to iwj10@cus.cam.ac.uk (Ian Jackson):
New bug report received and forwarded. Full text available.
Report forwarded to debian-devel@pixar.com:
Bug#951; Package tin. Full text available.
Ian Jackson / iwj10@thor.cam.ac.uk, with the debian-bugs tracking mechanism
This page last modified 06:43:02 GMT Wed 21 Jun