[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: obs dependencies (suse)


On 12/16/24 12:31, T Lee Davidson wrote:
On 12/16/24 12:22, Benoît Minisini wrote:
2) Then if no development package is installed, then they have trigerred by some Gambas component packages depending on a specific library. They should be installed one by one until the culprits are found!

That just might take less time than writing a script to walk the dependency tree in reverse. I'll see if I can fit that into my schedule.

Come to find out, it unfortunately was not as simple as just installing the components one-by-one to find the offender. openSUSE apparently provides for conditional dependencies.

Installation of 'gambas3-ide' triggered the installation of 'qt6-base-common-devel', but not all by itself.


Manually walking the dependency tree in reverse:
~~~~~~
user@localhost:~> zypper search --installed-only --requires --recommends qt6-base-common-devel
Loading repository data...
Reading installed packages...

S  | Name            | Summary                                                  | Type
---+-----------------+----------------------------------------------------------+--------
i  | qml-autoreqprov | Automatic dependency generator for QML files and modules | package
~~~~~~

As side note, 'qml-autoreqprov' doesn't unconditionally require 'qt6-base-common-devel'. It is conditionally dependent on if 'libQt6Qml6' is installed.
~~~~~~
user@localhost:~> zypper info --requires qml-autoreqprov
Loading repository data...
Reading installed packages...


Information for package qml-autoreqprov:
----------------------------------------
Repository     : Main Repository
Name           : qml-autoreqprov
Version        : 1.4.1-150600.1.1
Arch           : noarch
Vendor         : SUSE LLC <https://www.suse.com/>
Installed Size : 48.4 KiB
Installed      : Yes (automatically)
Status         : up-to-date
Source package : qml-autoreqprov-1.4.1-150600.1.1.src
Upstream URL   : http://www.opensuse.org
Summary        : Automatic dependency generator for QML files and modules
Description    :
    Automatic dependency generator for QML files and modules.
    If installed, rpm uses this to generate Requires of .qml files
    and Provides of QML modules.
Requires       : [8]
    /bin/bash
    rpm
    jq
    (libqt5-qtdeclarative-tools if libQtQuick5)
    (qmlpluginexports-qt5 if libqt5-qtdeclarative-devel)
    (qmlpluginexports-qt6 if qt6-qml-devel)
    (qt6-base-common-devel if libQt6Qml6)  '<--- this conditional dependency
    (qt6-declarative-tools if libQt6Qml6)
~~~~~~

'libQt6Qml6' is installed due to the installation of 'gambas3-gb-qt6'.

Resuming manually walking the dependency tree in reverse:
~~~~~~
user@localhost:~> zypper search --installed-only --requires --recommends qml-autoreqprov
Loading repository data...
Reading installed packages...

S  | Name                  | Summary                  | Type
---+-----------------------+--------------------------+--------
i  | libQt6Qml6            | Qt 6 Qml library         | package
i  | libQtQuick5           | Qt 5 Declarative Library | package
i  | qt6-declarative-tools | Qt 6 Declarative Tools   | package
~~~~~~

'libQtQuick5' was already installed prior to the installation of Gambas3.

There is a somewhat circular dependency between 'qt6-declarative-tools' and 'qml-autoreqprov', and no definitive dependency link.

There are quite a few Qt6 packages that require 'qt6-base-common-devel'. I discovered what is triggering the installation of 'qt6-base-common-devel' only by querying what 'libQt6Qml6' requires.
~~~~~~
user@localhost:~> zypper info --requires libQt6Qml6
Loading repository data...
Reading installed packages...


Information for package libQt6Qml6:
-----------------------------------
Repository     : Main Repository
Name           : libQt6Qml6
Version        : 6.6.3-150600.1.6
Arch           : x86_64
Vendor         : SUSE LLC <https://www.suse.com/>
Installed Size : 6.0 MiB
Installed      : Yes (automatically)
Status         : up-to-date
Source package : qt6-declarative-6.6.3-150600.1.6.src
Upstream URL   : https://www.qt.io
Summary        : Qt 6 Qml library
Description    :
    The Qt 6 Qml library.
Requires       : [27]
    libstdc++.so.6()(64bit)
    libstdc++.so.6(CXXABI_1.3)(64bit)
    libstdc++.so.6(GLIBCXX_3.4)(64bit)
    libm.so.6()(64bit)
    libgcc_s.so.1()(64bit)
    libc.so.6(GLIBC_2.34)(64bit)
    libstdc++.so.6(CXXABI_1.3.9)(64bit)
    libm.so.6(GLIBC_2.29)(64bit)
    libstdc++.so.6(GLIBCXX_3.4.20)(64bit)
    libstdc++.so.6(GLIBCXX_3.4.14)(64bit)
    libm.so.6(GLIBC_2.2.5)(64bit)
    libstdc++.so.6(GLIBCXX_3.4.18)(64bit)
    libm.so.6(GLIBC_2.38)(64bit)
    libQt6Core.so.6()(64bit)
    libQt6Core.so.6(Qt_6)(64bit)
    libQt6Core.so.6(Qt_6.6)(64bit)
    ld-linux-x86-64.so.2()(64bit)
    ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)
    libstdc++.so.6(GLIBCXX_3.4.29)(64bit)
    libQt6Core.so.6(Qt_6.6.3_PRIVATE_API)(64bit)
    libstdc++.so.6(GLIBCXX_3.4.32)(64bit)
    libQt6Network.so.6()(64bit)
    libQt6Network.so.6(Qt_6)(64bit)
    libgcc_s.so.1(GCC_3.4)(64bit)
    qt6-declarative-imports
    (qml-autoreqprov if rpm-build)  '<--- this conditional dependency
    /sbin/ldconfig
~~~~~~


So, it is the installation of 'rpm-build' which is recommended by 'gambas3-ide' that is indirectly triggering the installation of 'qt6-base-common-devel'.


(Is Arch packaging this convoluted?)


--
Lee

--- Gambas User List Netiquette [https://gambaswiki.org/wiki/doc/netiquette] ----
--- Gambas User List Archive [https://lists.gambas-basic.org/archive/user] ----


References:
obs dependencies (suse)Bruce Steers <bsteers4@xxxxxxxxx>
Re: obs dependencies (suse)Benoît Minisini <benoit.minisini@xxxxxxxxxxxxxxxx>
Re: obs dependencies (suse)T Lee Davidson <t.lee.davidson@xxxxxxxxx>
Re: obs dependencies (suse)Benoît Minisini <benoit.minisini@xxxxxxxxxxxxxxxx>
Re: obs dependencies (suse)T Lee Davidson <t.lee.davidson@xxxxxxxxx>
Re: obs dependencies (suse)T Lee Davidson <t.lee.davidson@xxxxxxxxx>
Re: obs dependencies (suse)Bruce Steers <bsteers4@xxxxxxxxx>
Re: obs dependencies (suse)T Lee Davidson <t.lee.davidson@xxxxxxxxx>
Re: obs dependencies (suse)Benoît Minisini <benoit.minisini@xxxxxxxxxxxxxxxx>
Re: obs dependencies (suse)T Lee Davidson <t.lee.davidson@xxxxxxxxx>