Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.bugs.dist > #1188823 > unrolled thread

Bug#1065316: libatspi2.0-dev 2.51.90-1 no longer multi-arch installable due to dependencies

Started byChristian Klein <dvlohp@gmail.com>
First post2024-03-02 16:40 +0100
Last post2024-03-03 02:30 +0100
Articles 4 — 3 participants

Back to article view | Back to linux.debian.bugs.dist


Contents

  Bug#1065316: libatspi2.0-dev 2.51.90-1 no longer multi-arch installable due to dependencies Christian Klein <dvlohp@gmail.com> - 2024-03-02 16:40 +0100
    Bug#1065316: libatspi2.0-dev 2.51.90-1 no longer multi-arch installable due to dependencies Samuel Thibault <sthibault@debian.org> - 2024-03-03 00:50 +0100
      Bug#1065316: libatspi2.0-dev 2.51.90-1 no longer multi-arch installable due to dependencies Simon McVittie <smcv@debian.org> - 2024-03-03 01:50 +0100
        Bug#1065316: libatspi2.0-dev 2.51.90-1 no longer multi-arch installable due to dependencies Samuel Thibault <sthibault@debian.org> - 2024-03-03 02:30 +0100

#1188823 — Bug#1065316: libatspi2.0-dev 2.51.90-1 no longer multi-arch installable due to dependencies

FromChristian Klein <dvlohp@gmail.com>
Date2024-03-02 16:40 +0100
SubjectBug#1065316: libatspi2.0-dev 2.51.90-1 no longer multi-arch installable due to dependencies
Message-ID<IdzCV-dWCD-5@gated-at.bofh.it>
Package: libatspi2.0-dev
Version: 2.51.90-1
Severity: important
X-Debbugs-Cc: dvlohp@gmail.com

libatspi2.0-dev is no longer muti-arch installable.
It now has a dependency on libgirepository1.0-dev, which isn't multi-arch.
2.50.0-1 didn't have that dependency

This breaks libgtk-3-dev multiarch install, since libgtk-3-dev depends on
libatspi2.0-dev via libatk-bridge2.0-dev.

Looking at the changelog, I don't see why the additional dependency is
necessary.
Even worse, for i386, this now pulls in ~250MB additional packages, because
libgirepository1.0-dev needs gobject-introspection:i386, which pulls in
gcc-i686-linux-gnu.


-- System Information:
Debian Release: trixie/sid
  APT prefers unstable
  APT policy: (999, 'unstable'), (998, 'testing'), (990, 'stable'), (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'proposed-updates'), (350, 'experimental'), (1, 'experimental-debug')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.7-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libatspi2.0-dev depends on:
ii  gir1.2-atspi-2.0  2.50.0-1+b1
pn  libatspi2.0-0     <none>
ii  libdbus-1-dev     1.14.10-4
ii  libglib2.0-dev    2.78.4-2.1
ii  libxtst-dev       2:1.2.3-1.1

libatspi2.0-dev recommends no packages.

libatspi2.0-dev suggests no packages.

-- no debconf information

[toc] | [next] | [standalone]


#1188854

FromSamuel Thibault <sthibault@debian.org>
Date2024-03-03 00:50 +0100
Message-ID<IdHh7-e1cm-1@gated-at.bofh.it>
In reply to#1188823
Hello,

Christian Klein, le sam. 02 mars 2024 16:33:15 +0100, a ecrit:
> libatspi2.0-dev is no longer muti-arch installable.
> It now has a dependency on libgirepository1.0-dev, which isn't multi-arch.
> 2.50.0-1 didn't have that dependency
> 
> Looking at the changelog, I don't see why the additional dependency is
> necessary.

This is coming from gir:Depends:

./debian/libatspi2.0-dev.substvars:gir:Depends=gir1.2-atspi-2.0 (= 2.51.90-1), gir1.2-dbus-1.0-dev, gir1.2-gobject-2.0-dev, libgirepository1.0-dev

I don't know the ins and outs why this comes like this, thus asking for
help on this.

> This breaks libgtk-3-dev multiarch install, since libgtk-3-dev depends on
> libatspi2.0-dev via libatk-bridge2.0-dev.
> 
> Even worse, for i386, this now pulls in ~250MB additional packages, because
> libgirepository1.0-dev needs gobject-introspection:i386, which pulls in
> gcc-i686-linux-gnu.

Samuel

[toc] | [prev] | [next] | [standalone]


#1188858

FromSimon McVittie <smcv@debian.org>
Date2024-03-03 01:50 +0100
Message-ID<IdIdb-e1KC-3@gated-at.bofh.it>
In reply to#1188854
Control: clone -1 -2
Control: reassign -2 gobject-introspection 1.78.1-15
Control: retitle -2 dh_girepository: generates unwanted dependency on libgirepository1.0-dev if that package is installed
Control: severity -2 important

On Sun, 03 Mar 2024 at 00:40:52 +0100, Samuel Thibault wrote:
> Christian Klein, le sam. 02 mars 2024 16:33:15 +0100, a ecrit:
> > libatspi2.0-dev is no longer muti-arch installable.
> > It now has a dependency on libgirepository1.0-dev, which isn't multi-arch.
> > 2.50.0-1 didn't have that dependency
> > 
> > Looking at the changelog, I don't see why the additional dependency is
> > necessary.
> 
> This is coming from gir:Depends:
> 
> ./debian/libatspi2.0-dev.substvars:gir:Depends=gir1.2-atspi-2.0 (= 2.51.90-1), gir1.2-dbus-1.0-dev, gir1.2-gobject-2.0-dev, libgirepository1.0-dev
> 
> I don't know the ins and outs why this comes like this, thus asking for
> help on this.

This was an unintended regression caused by changes made in
gobject-introspection, ironically to make multiarch co-installability and
cross-compilation of GObject-Introspection data possible. I am sorry to
have inconvenienced you and will try to fix the bug in dh_girepository
soon. I know that regressions are unacceptable, but this week there have
been several unrelated time-sensitive issues for which I have been made
a single point of failure, so I hope you will forgive me for not putting
this right at the top of my queue.

The bug is that if libgirepository1.0-dev is installed, dh_girepository
will wrongly generate dependencies on that package in preference to
gir1.2-glib-2.0-dev. This is because, for backwards compatibility
with packages that have not yet been updated to look for GIR XML
in a multiarch-friendly location, libgirepository1.0-dev provides a
symbolic link to the architecture-specific GIR XML for GLib-2.0 in a
non-multiarch-friendly location. This backwards compatibility glue is also
the reason why libgirepository1.0-dev cannot be Multi-Arch: same.

Samuel or other AT-SPI maintainers, if you want to avoid this unwanted
dependency while also bringing libatspi2.0-dev one step closer to being
cross-compilable itself, please consider replacing the build-dependency on
libgirepository1.0-dev with the canonicalized package names corresponding
to the GIR modules required by the upstream source, which according to
the build log means this:

diff --git a/debian/control b/debian/control
index 5408552..1dd2830 100644
--- a/debian/control
+++ b/debian/control
@@ -11,8 +11,10 @@ Build-Depends: dpkg-dev (>= 1.22.5), debhelper-compat (= 13),
                libx11-dev, libxtst-dev,
                meson (>= 0.63.0),
                pkgconf,
-               libgirepository1.0-dev,
                gtk-doc-tools, gi-docgen, python3-sphinx,
+               gir1.2-dbus-1.0-dev,
+               gir1.2-glib-2.0-dev,
+               gir1.2-gobject-2.0-dev,
                gobject-introspection | dh-sequence-gir,
                xauth <!nocheck>,
                xvfb <!nocheck>,

(Compile-tested only, I have not attempted to verify that the resulting
binaries are perfect; at the moment I'm only looking at this while I wait
for an urgent glib2.0 bug fix to finish running automated tests, and I
will have to re-prioritize back to glib2.0 as soon as it is ready. I
apologise for not providing an exhaustively-tested, production-ready
solution right now.)

    smcv

[toc] | [prev] | [next] | [standalone]


#1188859

FromSamuel Thibault <sthibault@debian.org>
Date2024-03-03 02:30 +0100
Message-ID<IdIPT-e2c0-1@gated-at.bofh.it>
In reply to#1188858
Hello,

Simon McVittie, le dim. 03 mars 2024 00:43:12 +0000, a ecrit:
> This was an unintended regression caused by changes made in
> gobject-introspection, ironically to make multiarch co-installability and
> cross-compilation of GObject-Introspection data possible.

Heh :)

> I am sorry to have inconvenienced you

No problem, thanks for the quick feedback!

> Samuel or other AT-SPI maintainers, if you want to avoid this unwanted
> dependency while also bringing libatspi2.0-dev one step closer to being
> cross-compilable itself, please consider replacing the build-dependency on
> libgirepository1.0-dev with the canonicalized package names corresponding
> to the GIR modules required by the upstream source, which according to
> the build log means this:

Oh, indeed. This does look right and produces correct binaries, I'll
upload that, thanks!

Samuel

[toc] | [prev] | [standalone]


Back to top | Article view | linux.debian.bugs.dist


csiph-web