Re: Purging configurations of non-installed transitional packages

2006-11-09 Thread Henrique de Moraes Holschuh
On Thu, 09 Nov 2006, Michael Biebl wrote:
  If this two is true (and I think so) then you couldn't install the old
  ssh package and the new one. So how can you do this?
 
 If the new package has a Replaces: old_package, it will *take over*
 the conflicting config_files from the old package [1].

Except when it doesn't.

Config files != conffiles.  Conffiles are managed by dpkg and will work just
fine, as they will indeed be marked as belonging to the new package.

Config files, however, are managed by the package maintainer scripts and are
very likely to be handled incorrectly unless you upgrade to the *latest*
version of the transitional package *first* before you purge it.

There is also the matter of work directories in /var which packages like to
purge, etc.

-- 
  One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie. -- The Silicon Valley Tarot
  Henrique Holschuh


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Purging configurations of non-installed transitional packages

2006-11-09 Thread SZALAY Attila
Hi All!

On Thu, 2006-11-09 at 00:05 +0100, Michael Biebl wrote:
 
 If the new package has a Replaces: old_package, it will *take over*
 the conflicting config_files from the old package [1].

And there are Packages with Replaces field filled but Conflicts field
not?



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Purging configurations of non-installed transitional packages

2006-11-09 Thread Wouter Verhelst
On Thu, Nov 09, 2006 at 12:45:34PM +0100, SZALAY Attila wrote:
 Hi All!
 
 On Thu, 2006-11-09 at 00:05 +0100, Michael Biebl wrote:
  
  If the new package has a Replaces: old_package, it will *take over*
  the conflicting config_files from the old package [1].
 
 And there are Packages with Replaces field filled but Conflicts field
 not?

Yes, since Replaces can have two possible meanings. Please read the
Policy document for details.

-- 
Fun will now commence
  -- Seven Of Nine, Ashes to Ashes, stardate 53679.4


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Purging configurations of non-installed transitional packages

2006-11-09 Thread SZALAY Attila
Hi All,

On Thu, 2006-11-09 at 18:00 +0100, Wouter Verhelst wrote:
 
 Yes, since Replaces can have two possible meanings. Please read the
 Policy document for details.

Okay, okay. Let's be more specific. openssh-client and openssh-server
both Conflicts with ssh ( 1:3.8.1p1-9)

ntp package also Conflicts with ntp-server package. So I don't
understand how it happened.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Purging configurations of non-installed transitional packages

2006-11-09 Thread Brian May
 SZALAY == SZALAY Attila [EMAIL PROTECTED] writes:

SZALAY Okay, okay. Let's be more specific. openssh-client and
SZALAY openssh-server both Conflicts with ssh ( 1:3.8.1p1-9)

SZALAY ntp package also Conflicts with ntp-server package. So I
SZALAY don't understand how it happened.

The fact the package conflict just means that it is not possible have
them fully installed at the same time.

It is still possible to have one package fully installed, while the
other one is removed but not purged.

If you run dpkg --purge on the second package it will still run the
maintainer scripts, which will delete its configuration files.

A new version of the second package will not help, as this package has
no way of knowing why you are doing the purge (its it because you are
deleting the package or is it because you have replaced the package
with another one?).

This is, IMHO, a limitation of not having configuration files managed
by dpkg.
-- 
Brian May [EMAIL PROTECTED]


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Purging configurations of non-installed transitional packages

2006-11-08 Thread SZALAY Attila
Hi All,

On Tue, 2006-11-07 at 15:33 +0100, Adrian von Bidder wrote:
 
 What happened: Somehow, I seem to have transitioned from sarge ssh to 
 openssh-client/-server directly without first installing the 'ssh' 
 transitional package because I installed some package which depended on 
 openssh-client directly.  With the above operation, I then tried to purge 
 the old ssh package - which, obviously, blew my ssh configuration along 
 with the 'sshd' user.  In this case, I was prepared because I had an idea 
 that this could happen - but nonetheless, I think it shouldn't.

Hm. I don't understand something. If I recall correctly

1) (almost) Everything under /etc/ is config file

2) No two package can contain the same _installed_ file.

If this two is true (and I think so) then you couldn't install the old
ssh package and the new one. So how can you do this?

The transient package is because the same config file problem. But noe
to keep them, but to enable to install new new package with the same
file.

Or I missing something?


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Purging configurations of non-installed transitional packages

2006-11-08 Thread Michael Biebl
SZALAY Attila schrieb:
 
 2) No two package can contain the same _installed_ file.
 
 If this two is true (and I think so) then you couldn't install the old
 ssh package and the new one. So how can you do this?
 

If the new package has a Replaces: old_package, it will *take over*
the conflicting config_files from the old package [1].

Cheers,
Michael

[1]
http://www.us.debian.org/doc/debian-policy/ch-relationships.html#s-replaces



signature.asc
Description: OpenPGP digital signature


Purging configurations of non-installed transitional packages

2006-11-07 Thread Adrian von Bidder
Yodel!

Since I hate having tons of configuration files lying around from my various 
tests (and build-dep installing orgies), I do dpkg -l | grep ^rc | cut -f 
3 -d \  | xargs dpkg -P every now and then.  Actually, I first look at the 
list, and this proved very important here...

What happened: Somehow, I seem to have transitioned from sarge ssh to 
openssh-client/-server directly without first installing the 'ssh' 
transitional package because I installed some package which depended on 
openssh-client directly.  With the above operation, I then tried to purge 
the old ssh package - which, obviously, blew my ssh configuration along 
with the 'sshd' user.  In this case, I was prepared because I had an idea 
that this could happen - but nonetheless, I think it shouldn't.

How to prevent this?  (btw: ntp has the same problem: /var/lib/ntp was 
removed without me noticing.  Obviously this is not near as bad, as it 
won't even stop ntp working)

Huge hack #1: openssh-server (new package) knows the contents of the old 
ssh.preinst/ssh.postinst, so it could remove those file on installation or 
replace them by newer ones that take into account the transition.  
Obviously this is dangerous and should probably be secured by md5 of the 
known files.

Huge hack #2: openssh-server/openssh-client know that they're replacing the 
old package.  So they could just remove records of ssh from the database of 
installed packages by surgery.  I feel that this one could even be made 
official if specified properly as a method to transition package names  
(and replacing surgery by official sourcery by dpkg).  OTOH there's bound 
to be many pitfalls, and probably no two transitions are ever the same.

Other methods?  The only sane way I can think of is a hard dependency on the 
transitional package for a full release cycle.  But that means keeping 
useless packages around for a long time :-(

Yes, it all only was a problem because I was mixing stable and testing, but 
I think being able to do that is one of the biggest assets Debian GNU/Linux 
has over other distributions, so making this as easy as possible is A Good 
Thing(tm) in my book.

cheers
-- vbi


-- 
featured link: http://fortytwo.ch/gpg/subkeys


pgpt9tSYh1v9x.pgp
Description: PGP signature