Hi Dirk,

to be true in future i would only take care of versions that are to be
expected in the wild.
That should keep the list short.

Greetz Alf

On 05.08.2017 06:10, Dirk Eddelbuettel wrote:
> On 5 August 2017 at 00:04, Alf Gaida wrote:
> | Package: libgsl23
> | Version: 2.4+dfsg-3
> | Severity: grave
> | Tags: patch
> | 
> | Dear Maintainer, 
> | 
> | like the subject says libgsl lacks some breaks and replaces, that breaks 
> the upgrade path:
> | 
> | % LANG=C sudo apt -f install                                                
>                       :(
> | Reading package lists... Done
> | Building dependency tree       
> | Reading state information... Done
> | Correcting dependencies... Done
> | The following additional packages will be installed:
> |   libgsl23
> | Suggested packages:
> |   gsl-ref-psdoc | gsl-doc-pdf | gsl-doc-info | gsl-ref-html
> | The following NEW packages will be installed:
> |   libgsl23
> | 0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
> | 28 not fully installed or removed.
> | Need to get 0 B/914 kB of archives.
> | After this operation, 2.887 kB of additional disk space will be used.
> | Do you want to continue? [Y/n] y
> | (Reading database ... 537126 files and directories currently installed.)
> | Preparing to unpack .../libgsl23_2.4+dfsg-3_amd64.deb ...
> | Unpacking libgsl23:amd64 (2.4+dfsg-3) ...
> | dpkg: error processing archive 
> /var/cache/apt/archives/libgsl23_2.4+dfsg-3_amd64.deb (--unpack):
> |  trying to overwrite '/usr/lib/x86_64-linux-gnu/libgslcblas.so.0.0.0', 
> which is also in package libgsl2:amd64 2.4+dfsg-2
> | dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
> | Errors were encountered while processing:
> |  /var/cache/apt/archives/libgsl23_2.4+dfsg-3_amd64.deb
> | E: Sub-process /usr/bin/dpkg returned an error code (1)
> | 
> | 
> | The following should fix that
> | 
> | diff --git a/debian/control b/debian/control
> | index 5e12819..486169d 100644
> | --- a/debian/control
> | +++ b/debian/control
> | @@ -12,8 +12,9 @@ Architecture: any
> |  Multi-Arch: same
> |  Pre-Depends: ${misc:Pre-Depends}
> |  Depends: ${shlibs:Depends}, ${misc:Depends}
> | +Breaks: libgsl2
> |  Conflicts: gsl, libgsl0, libgsl0ldbl
> | -Replaces: gsl, libgsl0 (<= 1.9-4), libgsl0ldbl (<= 1.16+dfsg-4)
> | +Replaces: gsl, libgsl0 (<= 1.9-4), libgsl0ldbl (<= 1.16+dfsg-4), libgsl2
> |  Suggests: gsl-ref-psdoc | gsl-doc-pdf | gsl-doc-info | gsl-ref-html
> |  Description: GNU Scientific Library (GSL) -- library package 
> |   The GNU Scientific Library (GSL) is a collection of routines for
> | 
>
> Thanks for that.
>
> One possibly alternative would be to put libgslcblas.so.0.0.0  into its own
> libgslcblas depend on it as this library has no soname.  But it is probably
> easier to go with 'Breaks: ' as you suggest.
>
> The thing that is unpleasant is that we probably need to keep adding the old
> soname libraries to debian/control as this progresses.
>
> Dirk
>  
> | Cheers Alf
> | 
> | -- System Information:
> | Debian Release: buster/sid
> |   APT prefers buildd-unstable
> |   APT policy: (500, 'buildd-unstable'), (500, 'unstable'), (500, 
> 'testing'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental')
> | Architecture: amd64 (x86_64)
> | Foreign Architectures: i386
> | 
> | Kernel: Linux 4.12.4-towo.2-siduction-amd64 (SMP w/8 CPU cores; PREEMPT)
> | Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8), LANGUAGE= 
> (charmap=UTF-8)
> | Shell: /bin/sh linked to /bin/dash
> | Init: systemd (via /run/systemd/system)
> | 
> | Versions of packages libgsl23 depends on:
> | ii  libc6  2.24-14
> | 
> | libgsl23 recommends no packages.
> | 
> | Versions of packages libgsl23 suggests:
> | pn  gsl-ref-psdoc | gsl-doc-pdf | gsl-doc-info | gsl-ref-html  <none>
> | 
> | -- no debconf information
>

Reply via email to