Bug#531538: another dangling symlink

2009-07-17 Thread Savvas Radevic
I was informed that Rafael Laboissiere, the maintainer, is not
involved in Debian development.
This package is too import for me to play with (since I'm still a
beginner at packaging). If you know someone that wishes to take over,
please do!

Also, it's too risky to include a patch for older debian releases. I
think it's best to revert the changes I made and not proceed with this
libmtp-common package, at least not for now.

There are already a bunch of debian-specific checks that we should
wait about 2 years until the next stable Debian release in order to
remove the current checks in preinst and postinst.

To sum up, I think it's best to wait the next stable Debian release to
introduce another big change (I mean to make the libmtp.rules in its
own libmtp-common package) with the package change.

(And frankly, I don't have the time to test older Debian package
versions with my exam period until October)



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



Bug#531538: another dangling symlink

2009-07-17 Thread Savvas Radevic
 I was informed that Rafael Laboissiere, the maintainer, is not
 involved in Debian development.
 This package is too import for me to play with (since I'm still a
 beginner at packaging). If you know someone that wishes to take over,
 please do!

Typos:
I was informed that Rafael Laboissiere, the maintainer, is not
involved in Debian development anymore.
This package is too important for me to play with (since I'm still a
beginner at packaging). If you know someone that wishes to take over,
please do!

 I think it's best to revert the changes I made
I just re-checked what I did, but the current git revision checks for
the older debian packages. I'm not so sure though, whether it's
effective or not.



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



Bug#531538: another dangling symlink

2009-06-03 Thread Raphael Hertzog
On Tue, 02 Jun 2009, Rafael Laboissiere wrote:
 The libmtp7 package contains the file /etc/udev/rules.d/libmtp7.rules. This
 file is not touched by libmtp8, AFAIK.
 
 On the other hand, libmtp5 seems to be affected by the following offending
 code in postinst:
 
 if dpkg --compare-versions $2 lt-nl 0.3.7-3 ; then
 mv_conffile /etc/udev/$PACKAGE.rules \
 /etc/udev/rules.d/45-$PACKAGE.rules
 fi
 
 I do not remember why the above is necessary.  Could you please refresh my
 memory, Savvas?

(On a somewhat unrelated note) Maybe the udev files should be moved to
libmtp-common to avoid similar problems in the future and to avoid
duplication of udev rules if you have several versions of the library
installed?

Cheers,
-- 
Raphaël Hertzog

Contribuez à Debian et gagnez un cahier de l'admin Debian Lenny :
http://www.ouaza.com/wp/2009/03/02/contribuer-a-debian-gagner-un-livre/



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



Bug#531538: another dangling symlink

2009-06-03 Thread Rafael Laboissiere
* Raphael Hertzog hert...@debian.org [2009-06-03 08:54]:

 On Tue, 02 Jun 2009, Rafael Laboissiere wrote:
  The libmtp7 package contains the file /etc/udev/rules.d/libmtp7.rules. This
  file is not touched by libmtp8, AFAIK.
  
  On the other hand, libmtp5 seems to be affected by the following offending
  code in postinst:
  
  if dpkg --compare-versions $2 lt-nl 0.3.7-3 ; then
  mv_conffile /etc/udev/$PACKAGE.rules \
  /etc/udev/rules.d/45-$PACKAGE.rules
  fi
  
  I do not remember why the above is necessary.  Could you please refresh my
  memory, Savvas?
 
 (On a somewhat unrelated note) Maybe the udev files should be moved to
 libmtp-common to avoid similar problems in the future and to avoid
 duplication of udev rules if you have several versions of the library
 installed?

I am not sure this would be useful, since the The udev rules file is
versioned now:

$ dpkg -L libmtp8 | grep rules$
/lib/udev/rules.d/45-libmtp8.rules

I think that each libmtpn package will need its specific rules file.

-- 
Rafael



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



Bug#531538: another dangling symlink

2009-06-03 Thread Savvas Radevic
@Sean: thank you for the tip, didn't know that! :)
Sean, can you reply with the output of:

apt-cache policy libmtp5 libmtp6
apt-cache rdepends libmtp5 libmtp6

I really need to see where they came from, if they were manually
installed (or from another source) and if any packages depend on it.

Raphael Hertzog:
 (On a somewhat unrelated note) Maybe the udev files should be moved to
 libmtp-common to avoid similar problems in the future and to avoid
 duplication of udev rules if you have several versions of the library
 installed?
Rafael Laboissiere:
 I think that each libmtpn package will need its specific rules file.

Raphael, thanks for the info, but you mean to have one libmtp.rules
installed? What if older releases don't support the new layout/format
of rules?
I agree with Rafael Laboissiere on this one.


Affected packages:

libmtp5: 
http://git.debian.org/?p=collab-maint/libmtp.git;a=tree;f=debian;h=1d35f255c7cc570b09a707b6e40cb7f3ee92717c;hb=7ce7562b3c3594bf823911d807bd810a3089b7e3

early libmtp6 ( 0.2.1-2):
http://git.debian.org/?p=collab-maint/libmtp.git;a=tree;f=debian;h=188431f317af7795c6b610ded59cfd9c3f9b;hb=6067ac7eb599663c951ba403f8fe8564c25b18db

The old installation in libmtp5 and libmtp6 was like this as far as I see:
- Rules file is installed in /etc/udev/libmtp.rules.
- A symlink /etc/udev/rules.d/libmtp.rules is created.

Rafael Laboissiere:
 Are you sure that this change will not break libmtp5?

The change I suggested:
http://git.debian.org/?p=collab-maint/libmtp.git;a=commitdiff;h=67f58bb49779e156d0eb9ff1f94093ff31501537

Rafael, you are right, it probably will. But I'm worried about these:
(1) Is the remaining /etc/udev/libmtp.rules (and symlink
/etc/udev/rules.d/libmtp.rules) going to affect libmtp8? We'll have to
ask upstream I guess.
(2) Aren't libmtp5 and early libmtp6 considered deprecated? Their
files should be deprecated
(3) In libmtp6, the change from libmtp.rules - libmtp6.rules did NOT
remove the leftover /etc/udev/libmtp.rules (and symlink
/etc/udev/rules.d/libmtp.rules).
(4) Users like Sean have installed libmtp8 now, and the file
/etc/udev/libmtp.rules is now removed. There is a dangling symlink
that should be removed.

Solutions:
a) This upgrade desperately needs a Breaks: libmtp5, libmtp6 (
0.2.1-2) for these deprecated versions which would satisfy this
change.

b) On the other hand, we can comment out #rm -f
/etc/udev/libmtp.rules in debian/libmtp.preinst.in to avoid breakage
and reconsider it at some point in the future. Now, I'm not sure about
this change and (1) above though.
If you decide to go with (b), the current git change should stay
because of (4), and comment out the rm command:

-rm -f /etc/udev/libmtp.rules
+
+# Commented out, part of libmtp5 and older libmtp6 (bug #531538)
+#rm -f /etc/udev/libmtp.rules



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



Bug#531538: another dangling symlink

2009-06-03 Thread Savvas Radevic
 Rafael, you are right, it probably will. But I'm worried about these:
 (1) Is the remaining /etc/udev/libmtp.rules (and symlink
 /etc/udev/rules.d/libmtp.rules) going to affect libmtp8? We'll have to
 ask upstream I guess.

http://sourceforge.net/tracker/?func=detailatid=809062aid=2800399group_id=158745

Rafael, I have a followup question though. Say for example I have
libmtp7 and libmtp8 on my machine.
Does that mean that libmtp7.rules is *only* used with libmtp7, or will
libmtp8 read that file as well (and vice versa, is libmtp8.rules only
for libmtp8)? I mean, we install a separate libmtp8.rules for libmtp8,
is the library linked to only the rules we provide?



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



Bug#531538: another dangling symlink

2009-06-03 Thread sean finney
hi savvas,

On Wed, Jun 03, 2009 at 11:13:11AM +0200, Savvas Radevic wrote:
 @Sean: thank you for the tip, didn't know that! :)
 Sean, can you reply with the output of:
 
 apt-cache policy libmtp5 libmtp6

libmtp5:
  Installed: (none)
  Candidate: (none)
  Version table:
 0.1.5-2 0
100 /var/lib/dpkg/status
W: Unable to locate package libmtp6

 apt-cache rdepends libmtp5 libmtp6

libmtp5
Reverse Depends:
W: Unable to locate package libmtp6

libmtp5 is not a candidate for autoremove via apt-get, but that may also be 
from poking that i did before doing the bugreport.

 I really need to see where they came from, if they were manually
 installed (or from another source) and if any packages depend on it.

looks like that information is lost into the sands of time.  i'm going to
go with a hypothesis along the lines of:

* long long ago i installed some package/metapackage that brought it in.
* later on that/those packages were updated for a new libmtp8
* nothing ever removed libmtp5 from the system
* the library/configfile/symlink combination didn't consider older libmtp's.


sean

-- 


signature.asc
Description: Digital signature


Bug#531538: another dangling symlink

2009-06-03 Thread Rafael Laboissiere
* Savvas Radevic vice...@gmail.com [2009-06-03 12:51]:

  Rafael, you are right, it probably will. But I'm worried about these:
  (1) Is the remaining /etc/udev/libmtp.rules (and symlink
  /etc/udev/rules.d/libmtp.rules) going to affect libmtp8? We'll have to
  ask upstream I guess.
 
 http://sourceforge.net/tracker/?func=detailatid=809062aid=2800399group_id=158745
 
 Rafael, I have a followup question though. Say for example I have
 libmtp7 and libmtp8 on my machine.
 Does that mean that libmtp7.rules is *only* used with libmtp7, or will
 libmtp8 read that file as well (and vice versa, is libmtp8.rules only
 for libmtp8)? I mean, we install a separate libmtp8.rules for libmtp8,
 is the library linked to only the rules we provide?

I have looked more closely to this issue.  I do not know much of the
internals of udev, but is seems that all the files in /etc/udev/rules.d/
are read when udev is initialized.  It does not seem that different
version of libmtp (say, libmtmp7 and libmtp8) will use different *.rules.
This is beyond libmtp control and is in the realm of udev, it seems.

That said, i am wondering why the libmtp.rules files should be versioned,
as we are doing currently.  Perhaps, the 45-libmpt8.rules files would
work just fine with previous versions (5, 6, and 7) of the package. I
think we must test this.

What do you think?

-- 
Rafael



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



Bug#531538: another dangling symlink

2009-06-03 Thread Savvas Radevic
CC'ed the bug report

2009/6/3 Savvas Radevic vice...@gmail.com:
 Sean, thank you, very helpful!

 Rafael:
 That said, i am wondering why the libmtp.rules files should be versioned,
 as we are doing currently.  Perhaps, the 45-libmpt8.rules files would
 work just fine with previous versions (5, 6, and 7) of the package. I
 think we must test this.

 What do you think?

 Well, then Raphael was right, we need a libmtp-common :)
 Worth a shot to try, but I don't have a cellphone anymore that needs libmtp. 
 :(

 One more thing the .fdi file should not be versioned too:
 ../../20-lib...@soversion@.fdi usr/share/hal/fdi/information/20thirdparty

 I've done some work to get this working, attached the git patch (based
 on current git).
 As mentioned, it needs testing (virtual machine?). :)

  * Check if libmtp5 and libmtp6 ( 0.2.1-2) are installed. If not, remove
   /etc/udev/libmtp.rules (Closes: #531538)
  * debian/libmtp.postinst.in: Remove dangling symlink
   /etc/udev/rules.d/libmtp.rules
  * libmtp-common: Unversioned /lib/udev/rules.d/45-libmtp.rules and
   /usr/share/hal/fdi/information/20thirdparty/20-libmtp.fdi
  * Remove old conffile /lib/udev/rules.d/45-libmtp8.rules

 Let me know what you think!
 P.S. I'm not sure about rm_conffile $PACKAGE
 /lib/udev/rules.d/45-libmtp8.rules, but since that's the default one,
 simply using rm_conffile for it *should* work, needs testing. :)




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



Bug#531538: another dangling symlink

2009-06-02 Thread Savvas Radevic
That's quite an old package, I don't see it in the supported releases:
http://packages.debian.org/libmtp5
Can you explain how did this happen?
I can only assume that you upgraded, but from which older release to
which one, using which commands? :)

Also, reply with the output of:

apt-cache policy libmtp5 libmtp7 libmtp8



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



Bug#531538: another dangling symlink

2009-06-02 Thread Savvas Radevic
I'm not completely sure, but I think the package is missing
Conflicts and Replaces for older libmtp* packages?

Something like:

Conflicts: libmtp7, libmtp6, libmtp5
Replaces: libmtp7, libmtp6, libmtp5

..in debian/control.in and debian/control files.

Thoughts?



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



Bug#531538: another dangling symlink

2009-06-02 Thread Rafael Laboissiere
* Savvas Radevic vice...@gmail.com [2009-06-02 12:50]:

 I'm not completely sure, but I think the package is missing
 Conflicts and Replaces for older libmtp* packages?
 
 Something like:
 
 Conflicts: libmtp7, libmtp6, libmtp5
 Replaces: libmtp7, libmtp6, libmtp5
 
 ..in debian/control.in and debian/control files.

This is something that should absolutely *_never_* be done with shared
library packages.  Newer SONAME versions do not replace older ones. Some
packages depend on libmtp5, says, because they contain programs that link
against /usr/lib/libmtp.so.5.*.  If you make libmtp6, say, replace
libmtp5, then the library above will be gone and... BOOM! packages
depending on libmtp5 will crash.

This is the very reason we change the package name when a version of the
library is backward-incompatible with previous version.  Those package
_*must_* co-exist in peace in the system.

In sum: never, ever try to implement Conflicts/Replaces as proposed
above.

-- 
Rafael



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



Bug#531538: another dangling symlink

2009-06-02 Thread Savvas Radevic
 I think this is related to bug #525094 - the reporter probably has not
 updated to the latest available package:
 libmtp8 0.3.7-7

 Sean, is my assumption true?


Ah wait, now I get it. Rafael, is Breaks allowed on older libmtp* packages?
It seems like libmtp5-7 might require the older rules (not in /lib)



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



Bug#531538: another dangling symlink

2009-06-02 Thread Savvas Radevic
 In sum: never, ever try to implement Conflicts/Replaces as proposed
 above.

Noted! :)

I think this is related to bug #525094 - the reporter probably has not
updated to the latest available package:
libmtp8 0.3.7-7

Sean, is my assumption true?



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



Bug#531538: another dangling symlink

2009-06-02 Thread Rafael Laboissiere
[Cc:ing to the BTS, this time, sorry.]

* Savvas Radevic vice...@gmail.com [2009-06-02 15:51]:

 Ah wait, now I get it. Rafael, is Breaks allowed on older libmtp* packages?

No, for the same reason Replaces is not allowed.

 It seems like libmtp5-7 might require the older rules (not in /lib)

The libmtp7 package contains the file /etc/udev/rules.d/libmtp7.rules. This
file is not touched by libmtp8, AFAIK.

On the other hand, libmtp5 seems to be affected by the following offending
code in postinst:

if dpkg --compare-versions $2 lt-nl 0.3.7-3 ; then
mv_conffile /etc/udev/$PACKAGE.rules \
/etc/udev/rules.d/45-$PACKAGE.rules
fi

I do not remember why the above is necessary.  Could you please refresh my
memory, Savvas?

-- 
Rafael




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



Bug#531538: another dangling symlink

2009-06-02 Thread Savvas Radevic
 * Savvas Radevic vice...@gmail.com [2009-06-02 15:51]:

 Ah wait, now I get it. Rafael, is Breaks allowed on older libmtp* packages?

 No, for the same reason Replaces is not allowed.

 It seems like libmtp5-7 might require the older rules (not in /lib)

 The libmtp7 package contains the file /etc/udev/rules.d/libmtp7.rules. This
 file is not touched by libmtp8, AFAIK.

OK, thanks again

 On the other hand, libmtp5 seems to be affected by the following offending
 code in postinst:

    if dpkg --compare-versions $2 lt-nl 0.3.7-3 ; then
        mv_conffile /etc/udev/$PACKAGE.rules \
                    /etc/udev/rules.d/45-$PACKAGE.rules
    fi

 I do not remember why the above is necessary.  Could you please refresh my
 memory, Savvas?

/etc/udev/$PACKAGE.rules was in the wrong directory, the correct one
is and should be in /etc/udev/rules.d/45-$PACKAGE.rules that's why
the files are moved.

But that's not it, since $PACKAGE is libmtp8 actually:
package=lib...@soversion@

I'll check the code more tonight, but consider this:

Looks like libmtp5 is not using libmtp5.rules:
 rangda[/home/sean] dpkg -S /etc/udev/rules.d/libmtp.rules[2] 
 :(
 libmtp5: /etc/udev/rules.d/libmtp.rules

..which points to /etc/udev/libmtp.rules:
 rangda[/home/sean] ls -l /etc/udev/rules.d/libmtp.rules  
 :)
 lrwxrwxrwx 1 root root 15 2007-06-09 15:19 /etc/udev/rules.d/libmtp.rules - 
 ../libmtp.rules

..which is removed by debian/libmtp.postinst.in:
rm -f /etc/udev/libmtp.rules

I think that it's correct, but leaves a dangling symlink.

Also, I think it needs to remove the symlink
/etc/udev/rules.d/libmtp.rules (non-versioned) too. We can do it
similarly to the one with the versioned symlink:

In debian/libmtp.postinst.in:

oldlink=/etc/udev/rules.d/libmtp8.rules
if [ -L $oldlink -a ! -f $oldlink ] ; then
rm -f $oldlink
fi

oldlink2=/etc/udev/rules.d/libmtp.rules
if [ -L $oldlink2 -a ! -f $oldlink2 ] ; then
rm -f $oldlink2
fi



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



Bug#531538: another dangling symlink

2009-06-02 Thread Savvas Radevic
2009/6/2 Savvas Radevic vice...@gmail.com:

 ..which is removed by debian/libmtp.postinst.in:
 rm -f /etc/udev/libmtp.rules

Correction:

..which is removed by debian/libmtp.preinst.in:
rm -f /etc/udev/libmtp.rules



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



Bug#531538: another dangling symlink

2009-06-02 Thread sean finney
hiya,

On Tue, Jun 02, 2009 at 03:49:42PM +0200, Savvas Radevic wrote:
 I think this is related to bug #525094 - the reporter probably has not
 updated to the latest available package:
 libmtp8 0.3.7-7
 
 Sean, is my assumption true?

note sure for the last email whether you still needed this, but yes that's
the version i have installed:

rangda[/home/sean] dpkg -l libmtp8   :)
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name   VersionDescription
+++-==-==-
ii  libmtp80.3.7-7Media Transfer Protocol (MTP) library


sean
-- 


signature.asc
Description: Digital signature