Bug#677146: python-uno uses file from libreoffice-core in preinst without declaring PreDepends

2012-06-11 Thread Rene Engelhard
retitle 677146 python-uno uses unopkg from libreoffice-common in preinst 
without declaring Pre-Depends
# moreinfo. Why is this serious? the package doesn't *depend*
# on a working unopkg but just "hopes" whether/tests it works
tag 677146 + moreinfo
# I don't see a squeeze->wheezy dist-upgrade issue
tag 677146 + unreproducible
thanks

Hi,

Rene Engelhard wrote:
> > This file seems to come from the libreoffice-core pacakge.  According
> 
> No, it comes from -common.

[...]

> Seriously I'd like to avoid this.

Because:

-common: unopkg (calls unopkg.bin)
-core: unopkg.bin

-core depends on -common. -common can't depends on -core (circular
dependency, etc.)

Yeah, a Pre-Depends: on -core does pull in -common, but...

> Note that the preinst checks whether unopkg is functional:
> 
>   if HOME=$INSTDIR /usr/lib/libreoffice/program/unopkg list --bundled 
> >/dev/null 2>/dev/null; then
> if [ -e /usr/lib/libreoffice/share/prereg/bundled ] && readlink 
> /usr/lib/libreoffice/share/prereg/bundled 2>&1 >/dev/null && [ -L $d/ure-link 
> ]; then

... which is because this hack is there, and what is what many packages do
to avoid (Pre-)Dependencies.

> What is your exact problem?

I just tried two dist-upgrades:

1) squeeze + apt-get install openoffice.org -> wheezy (transitional packages 
etc., libreoffice gets installed
   and (e.g.) python-uno upgraded. Succeeded.

2) squeeze + apt-get -t squeeze-backports libreoffice -> wheezy. No 
transitional packages involved,
   libreoffice and python-uno get updated. As a 3.4.6-2~bpo60+2 to 3.4.6-2 
downgrade doesn't make very much sense
   I did that wheezy -> sid, too (3.4.6-2 -> 3.5.4-3). Both succeeded.

We already had a mess with these scripts in the past (see changelogs of 3.5.2-1 
and 3.5.2-4), yeah, but that
should work with the above...

Regards,

Rene



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



Bug#677146: python-uno uses file from libreoffice-core in preinst without declaring PreDepends

2012-06-11 Thread Rene Engelhard
found 677146 1:3.5.4-3
thanks

Hi,

On Mon, Jun 11, 2012 at 11:39:29PM +0200, Rene Engelhard wrote:
> It would have been nice if you could have marked it sanely so that it would
> not block this with other RC and security fixes from migrating:

Ah, nevermind, 3.5.3-5 is an "branch" anyway, so 3.4.5-3 is not marked
as being affected anyway (3.4.1 rcs started from 3.4.5-2) :)

Marking as affecting 3.5.4-3, though I still don't buy the bug.

> > to the policy:
> > 
> > "Pre-Depends are also required if the preinst script depends on
> > the named package"
> 
> Seriously I'd like to avoid this.
> 
> Note that the preinst checks whether unopkg is functional:
> 
>   if HOME=$INSTDIR /usr/lib/libreoffice/program/unopkg list --bundled 
> >/dev/null 2>/dev/null; then
> if [ -e /usr/lib/libreoffice/share/prereg/bundled ] && readlink 
> /usr/lib/libreoffice/share/prereg/bundled 2>&1 >/dev/null && [ -L $d/ure-link 
> ]; then

That doesn't make it *depend* on it. If it doesn't work ("unopkg run fails)
the if is not true -> nothing done.

So I really wonder what's the problem you got...

And that said, the preinst in python-uno is just there to get a sane
upgrade path from python-uno which contained a extension (needs deregistering
to be safe) to one without, thus:

if [ "$1" = "upgrade" ]; then
if dpkg --compare-versions "$2" lt "1:3.5.2-2"; then
rm -rf 
/usr/lib/libreoffice/share/extensions/script-provider-for-python
sync_extensions
fi
fi

After that, the stuff is in script-provider-for-python.

(Not for all the other packages, though: [1])

Regards,

Rene

[1]

$ grep sync_extensions *.in
libreoffice-common.postinst.in:   sync_extensions
libreoffice-mysql-connector.preinst.in: sync_extensions
libreoffice-pdfimport.preinst.in:   sync_extensions
libreoffice-presentation-minimizer.preinst.in:  sync_extensions
libreoffice-presenter-console.preinst.in:   sync_extensions
libreoffice-report-builder.preinst.in:  sync_extensions
libreoffice-script-provider-bsh.preinst.in: sync_extensions
libreoffice-script-provider-js.preinst.in:  sync_extensions
libreoffice-script-provider-python.preinst.in:  sync_extensions
libreoffice-wiki-publisher.preinst.in:  sync_extensions
python3-uno.preinst.in: sync_extensions
python-uno.preinst.in:  sync_extensions

> 
> Regards,
> 
> Rene
> 
> 
> 
> -- 
> To UNSUBSCRIBE, email to debian-openoffice-requ...@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
> Archive: http://lists.debian.org/20120611213929.gb9...@rene-engelhard.de
> 



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



Bug#677146: python-uno uses file from libreoffice-core in preinst without declaring PreDepends

2012-06-11 Thread Rene Engelhard
found 677146 1:3.4.6-2
thanks

On Mon, Jun 11, 2012 at 05:01:20PM -0400, Mike O'Connor wrote:
> Package: python-uno
> Version: 1:3.5.3-5
> Severity: serious

It would have been nice if you could have marked it sanely so that it would
not block this with other RC and security fixes from migrating:

rene@frodo:~/Debian/Pakete/LibreOffice/bpo/libreoffice-3.4.6$ cat 
debian/python-uno.preinst.in
#!/bin/bash

set -e

#INCLUDE_SHELL_LIB#

if [ "$1" = "upgrade" ]; then
rm -rf /usr/lib/libreoffice/share/extensions/script-provider-for-python
sync_extensions
fi

#DEBHELPER#


> Justification: Policy 7.2

come on...

> during an upgrade, the python-uno preinst script calls:
> 
> /usr/lib/libreoffice/program/unopkg
> 
> This file seems to come from the libreoffice-core pacakge.  According

No, it comes from -common.

> to the policy:
> 
> "Pre-Depends are also required if the preinst script depends on
> the named package"

Seriously I'd like to avoid this.

Note that the preinst checks whether unopkg is functional:

  if HOME=$INSTDIR /usr/lib/libreoffice/program/unopkg list --bundled 
>/dev/null 2>/dev/null; then
if [ -e /usr/lib/libreoffice/share/prereg/bundled ] && readlink 
/usr/lib/libreoffice/share/prereg/bundled 2>&1 >/dev/null && [ -L $d/ure-link 
]; then

> I found this when helping someone that was having trouble upgrading
> from squeeze to wheezy and was getting a preinst failure due to this
> file being missing.

What is your exact problem? And wow. squeeze->wheezy and then you file it
against 3.5.3-5?

Regards,

Rene



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



Bug#677146: python-uno uses file from libreoffice-core in preinst without declaring PreDepends

2012-06-11 Thread Mike O'Connor
Package: python-uno
Version: 1:3.5.3-5
Severity: serious
Justification: Policy 7.2

during an upgrade, the python-uno preinst script calls:

/usr/lib/libreoffice/program/unopkg

This file seems to come from the libreoffice-core pacakge.  According
to the policy:

"Pre-Depends are also required if the preinst script depends on
the named package"

I found this when helping someone that was having trouble upgrading
from squeeze to wheezy and was getting a preinst failure due to this
file being missing.

stew

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.2.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages python-uno depends on:
ii  libc6 2.13-32
ii  libgcc1   1:4.7.0-10
ii  libpython2.7  2.7.3~rc2-2.1
ii  libreoffice-core  1:3.5.3-5
ii  libstdc++64.7.0-10
ii  python2.7.2-10
ii  python2.7 2.7.3~rc2-2.1
ii  uno-libs3 3.5.3-5
ii  ure   3.5.3-5

python-uno recommends no packages.

python-uno suggests no packages.

-- no debconf information



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