Bug#696075: lcl-utils: directory vs. symlink mess after squeeze = wheezy upgrade: /etc/lazarus

2013-01-03 Thread Abou Al Montacir
On Mon, 2012-12-31 at 18:40 +0100, gregor herrmann wrote:
 On Sun, 16 Dec 2012 15:35:37 +0100, Andreas Beckmann wrote:
 
  during an upgrade test with piuparts I noticed your package installs
  files over an existing symlink, overwriting files from another package
  in a way that is not detected by dpkg:
  
  0m44.0s INFO: dirname part contains a symlink:
/etc/lazarus/environmentoptions.xml != 
  /etc/lazarus-0.9.30.4/environmentoptions.xml (lcl-utils)
/etc/lazarus/helpoptions.xml != /etc/lazarus-0.9.30.4/helpoptions.xml 
  (lcl-utils)
  
  Looks like /etc/lazarus was a symlink in squeeze and is a
  directory in wheezy. Note that dpkg intentionally does not replace
  directories with symlinks and vice versa.
 
 I don't think it was a symlink in squezze after comparing the
 packages; my suspect at the moment is update-alternatives in
 debian/lcl-utils.postinst.in.
/etc/lazarus is a now an alternative of /etc/lazarus-${version}. The
user is asked to confirm whether post installation script should do the
migration or not. However, this choice is ignored somehow after. I've
prepared a patch for this.

  This creates a serious mess with the conffiles in /etc ...
  
  There are also some obsolete conffiles (could be false positives due to
  this symlinkmess), look at dpkg-maintscript-helper for easy cleanup:
  
OBSOLETE CONFFILE /etc/lazarus/helpoptions.xml REGISTERED BY lcl-utils 
  (MODIFIED)
OBSOLETE CONFFILE /etc/lazarus/environmentoptions.xml REGISTERED BY 
  lcl-utils (MODIFIED)
 
 They're modified in debian/rules (fpcsubst ...) in
 etc/lazarus-0.9.30.4. So i guess the obsolete part comes from the
 symlink problem, but the modification might remain in any case.
When the user choose to not migrate, he should handle his conf files
manually. The script, with my new patch, will  no more touch them. Of
course user can always diff with /etc/lazarus-${version} to update his
configuration. But he should really now what he is doing as the conf
files changed radically and the xml is not easy to handle by mans

  and there are files left on the system after purge:
  
  0m46.6s INFO: Warning: Package purging left files on system:
/etc/lazarus.bak/  not owned
/etc/lazarus.bak/environmentoptions.xmlnot owned
/etc/lazarus.bak/helpoptions.xml   not owned
 
 Yup, debian/lcl-utils.postinst.in + debian/lcl-utils.templates.in.
These will be removed upon purge (patch already applied to fpc, but not
to Lazarus)

  I didn't look at the maintainer scripts or the package to analyze what's
  going on (or what was intended to happen).
 
 I only came up with these rough ideas.
Thanks for your analysis,

 (Building the package is Not Really Funny™.)
:)

Cheers,


signature.asc
Description: This is a digitally signed message part


Bug#696075: lcl-utils: directory vs. symlink mess after squeeze = wheezy upgrade: /etc/lazarus

2013-01-03 Thread Andreas Beckmann
On 2013-01-03 14:00, Abou Al Montacir wrote:
 On Mon, 2012-12-31 at 18:40 +0100, gregor herrmann wrote:
 I don't think it was a symlink in squezze after comparing the
 packages; my suspect at the moment is update-alternatives in
 debian/lcl-utils.postinst.in.
 /etc/lazarus is a now an alternative of /etc/lazarus-${version}. The
 user is asked to confirm whether post installation script should do the
 migration or not.

What is the default? (I.e. what happens with
DEBIAN_FRONTEND=noninteractive?)

 However, this choice is ignored somehow after. I've
 prepared a patch for this.

OK, I'll wait for a fixed package before doing further tests ...

Why can't you use dpkg-maintscript-helper to rename the conffiles
without even asking the user (at least as long as the conffiles are
unmodified)?

Andreas


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#696075: lcl-utils: directory vs. symlink mess after squeeze = wheezy upgrade: /etc/lazarus

2012-12-31 Thread gregor herrmann
On Sun, 16 Dec 2012 15:35:37 +0100, Andreas Beckmann wrote:

 during an upgrade test with piuparts I noticed your package installs
 files over an existing symlink, overwriting files from another package
 in a way that is not detected by dpkg:
 
 0m44.0s INFO: dirname part contains a symlink:
   /etc/lazarus/environmentoptions.xml != 
 /etc/lazarus-0.9.30.4/environmentoptions.xml (lcl-utils)
   /etc/lazarus/helpoptions.xml != /etc/lazarus-0.9.30.4/helpoptions.xml 
 (lcl-utils)
 
 Looks like /etc/lazarus was a symlink in squeeze and is a
 directory in wheezy. Note that dpkg intentionally does not replace
 directories with symlinks and vice versa.

I don't think it was a symlink in squezze after comparing the
packages; my suspect at the moment is update-alternatives in
debian/lcl-utils.postinst.in.
 
 This creates a serious mess with the conffiles in /etc ...
 
 There are also some obsolete conffiles (could be false positives due to
 this symlinkmess), look at dpkg-maintscript-helper for easy cleanup:
 
   OBSOLETE CONFFILE /etc/lazarus/helpoptions.xml REGISTERED BY lcl-utils 
 (MODIFIED)
   OBSOLETE CONFFILE /etc/lazarus/environmentoptions.xml REGISTERED BY 
 lcl-utils (MODIFIED)

They're modified in debian/rules (fpcsubst ...) in
etc/lazarus-0.9.30.4. So i guess the obsolete part comes from the
symlink problem, but the modification might remain in any case.
 
 and there are files left on the system after purge:
 
 0m46.6s INFO: Warning: Package purging left files on system:
   /etc/lazarus.bak/not owned
   /etc/lazarus.bak/environmentoptions.xml  not owned
   /etc/lazarus.bak/helpoptions.xml not owned

Yup, debian/lcl-utils.postinst.in + debian/lcl-utils.templates.in.
 
 I didn't look at the maintainer scripts or the package to analyze what's
 going on (or what was intended to happen).

I only came up with these rough ideas.
(Building the package is Not Really Funny™.)


Cheers,
gregor

-- 
 .''`.  Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
 : :' : Debian GNU/Linux user, admin, and developer  -  http://www.debian.org/
 `. `'  Member of VIBE!AT  SPI, fellow of the Free Software Foundation Europe
   `-   NP: Peter Ratzenbeck: Avalon


signature.asc
Description: Digital signature


Bug#696075: lcl-utils: directory vs. symlink mess after squeeze = wheezy upgrade: /etc/lazarus

2012-12-16 Thread Andreas Beckmann
Package: lcl-utils
Version: 0.9.30.4-1.1
Severity: serious
User: debian...@lists.debian.org
Usertags: piuparts

Hi,

during an upgrade test with piuparts I noticed your package installs
files over an existing symlink, overwriting files from another package
in a way that is not detected by dpkg:

0m44.0s INFO: dirname part contains a symlink:
  /etc/lazarus/environmentoptions.xml != 
/etc/lazarus-0.9.30.4/environmentoptions.xml (lcl-utils)
  /etc/lazarus/helpoptions.xml != /etc/lazarus-0.9.30.4/helpoptions.xml 
(lcl-utils)

Looks like /etc/lazarus was a symlink in squeeze and is a
directory in wheezy. Note that dpkg intentionally does not replace
directories with symlinks and vice versa.

This creates a serious mess with the conffiles in /etc ...

There are also some obsolete conffiles (could be false positives due to
this symlinkmess), look at dpkg-maintscript-helper for easy cleanup:

  OBSOLETE CONFFILE /etc/lazarus/helpoptions.xml REGISTERED BY lcl-utils 
(MODIFIED)
  OBSOLETE CONFFILE /etc/lazarus/environmentoptions.xml REGISTERED BY lcl-utils 
(MODIFIED)

and there are files left on the system after purge:

0m46.6s INFO: Warning: Package purging left files on system:
  /etc/lazarus.bak/  not owned
  /etc/lazarus.bak/environmentoptions.xmlnot owned
  /etc/lazarus.bak/helpoptions.xml   not owned


I didn't look at the maintainer scripts or the package to analyze what's
going on (or what was intended to happen).


Cheers,

Andreas


lcl-utils_0.9.30.4-1.1.log.gz
Description: GNU Zip compressed data