|
Bugzilla – Full Text Bug Listing |
| Summary: | rpm-build pulling Qt6 dependency without need | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE Tumbleweed | Reporter: | Marcus Rückert <mrueckert> |
| Component: | KDE Workspace (Plasma) | Assignee: | E-Mail List <opensuse-kde-bugs> |
| Status: | REOPENED --- | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Normal | ||
| Priority: | P5 - None | CC: | fvogt, kocelfc |
| Version: | Current | ||
| Target Milestone: | --- | ||
| Hardware: | Other | ||
| OS: | Other | ||
| See Also: | https://bugzilla.opensuse.org/show_bug.cgi?id=1224157 | ||
| Whiteboard: | |||
| Found By: | --- | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
This is intentional. Any package shipping .qml files needs the .qml dependency generator in qml-autoreqprov, but not all such applications pull in QML -devel packages (at least for Qt 5 there were such cases, not sure for Qt 6). It might be possible to slim this down a bit, but not completely. this seems completely backwards. making rpm-build pull in the whole Qt devel stack is wrong. fix some Qt core devel package to pull the dependency generator. but not have rpmbuild be the trigger. something like `(qml-autoreqprov if libQt6Core-devel)` or so would be way better. See comment 1: (In reply to Fabian Vogt from comment #1) > not all such applications pull in QML -devel packages (at least for Qt 5 there were such cases, not sure > for Qt 6) I am specifically not talking about the QML devel package but a Qt core package. if python bindings or so are a problem then let those packages also pull the generator ... but not every dev who uses some Qt apps and needs source validator should have to install qt devel packages. the alternative would be an rpmlint check similar to the one we just did for "symlinked scripts in /usr/bin" ... check if a package has QML files and the correct requires. if not error out with "please add a BuildRequires for qml-autoreqprov" (In reply to Marcus Rückert from comment #4) > I am specifically not talking about the QML devel package but a Qt core > package. > > if python bindings or so are a problem then let those packages also pull the > generator ... but not every dev who uses some Qt apps and needs source > validator should have to install qt devel packages. qtpaths6 could be moved to some other package or the path hardcoded in qml-autoreqprov, then qt6-base-common-devel would no longer be necessary. submitted fixes to both qt5 and qt6 to remove this dependency. *** Bug 1224157 has been marked as a duplicate of this bug. *** Still reproducible, here is the full list of things it wants to pull in: binutils cmake cmake-full debugedit dwz gcc gcc13 gcc13-c++ gcc-c++ gettext-tools glibc-devel jq libasan8 libctf0 libctf-nobfd0 libhwasan0 libitm1 libjq1 libjsoncpp25 liblsan0 libonig5 libqt5-qtdeclarative-tools libQt6JsonRpc6 libQt6LanguageServer6 libQt6QmlCompiler6 librhash1 librpmbuild10 libstdc++6-devel-gcc13 libtsan2 libxcrypt-devel linux-glibc-devel make ninja patch python311-packaging python-rpm-macros python-rpm-packaging qml-autoreqprov qt6-base-common-devel qt6-declarative-tools qt6-macros rpm-build rpm-build-perl (In reply to Kostadin Shishmanov from comment #9) > Still reproducible, here is the full list of things it wants to pull in: > > binutils cmake cmake-full debugedit dwz gcc gcc13 gcc13-c++ gcc-c++ > gettext-tools glibc-devel jq libasan8 libctf0 libctf-nobfd0 libhwasan0 > libitm1 libjq1 libjsoncpp25 liblsan0 libonig5 libqt5-qtdeclarative-tools > libQt6JsonRpc6 libQt6LanguageServer6 libQt6QmlCompiler6 librhash1 > librpmbuild10 libstdc++6-devel-gcc13 libtsan2 libxcrypt-devel > linux-glibc-devel make ninja patch python311-packaging python-rpm-macros > python-rpm-packaging qml-autoreqprov qt6-base-common-devel > qt6-declarative-tools qt6-macros rpm-build rpm-build-perl Most of those are just rpm-build and its deps, unrelated to this. The bug report you linked is about opi, it should not pull in rpm-build. (In reply to Fabian Vogt from comment #10) > (In reply to Kostadin Shishmanov from comment #9) > > Still reproducible, here is the full list of things it wants to pull in: > > > > binutils cmake cmake-full debugedit dwz gcc gcc13 gcc13-c++ gcc-c++ > > gettext-tools glibc-devel jq libasan8 libctf0 libctf-nobfd0 libhwasan0 > > libitm1 libjq1 libjsoncpp25 liblsan0 libonig5 libqt5-qtdeclarative-tools > > libQt6JsonRpc6 libQt6LanguageServer6 libQt6QmlCompiler6 librhash1 > > librpmbuild10 libstdc++6-devel-gcc13 libtsan2 libxcrypt-devel > > linux-glibc-devel make ninja patch python311-packaging python-rpm-macros > > python-rpm-packaging qml-autoreqprov qt6-base-common-devel > > qt6-declarative-tools qt6-macros rpm-build rpm-build-perl > > Most of those are just rpm-build and its deps, unrelated to this. The bug > report you linked is about opi, it should not pull in rpm-build. It's listed as a dependency as you can see on line 47 here: https://build.opensuse.org/projects/utilities/packages/opi/files/opi.spec (In reply to Kostadin Shishmanov from comment #11) > (In reply to Fabian Vogt from comment #10) > > (In reply to Kostadin Shishmanov from comment #9) > > > Still reproducible, here is the full list of things it wants to pull in: > > > > > > binutils cmake cmake-full debugedit dwz gcc gcc13 gcc13-c++ gcc-c++ > > > gettext-tools glibc-devel jq libasan8 libctf0 libctf-nobfd0 libhwasan0 > > > libitm1 libjq1 libjsoncpp25 liblsan0 libonig5 libqt5-qtdeclarative-tools > > > libQt6JsonRpc6 libQt6LanguageServer6 libQt6QmlCompiler6 librhash1 > > > librpmbuild10 libstdc++6-devel-gcc13 libtsan2 libxcrypt-devel > > > linux-glibc-devel make ninja patch python311-packaging python-rpm-macros > > > python-rpm-packaging qml-autoreqprov qt6-base-common-devel > > > qt6-declarative-tools qt6-macros rpm-build rpm-build-perl > > > > Most of those are just rpm-build and its deps, unrelated to this. The bug > > report you linked is about opi, it should not pull in rpm-build. > > It's listed as a dependency as you can see on line 47 here: > https://build.opensuse.org/projects/utilities/packages/opi/files/opi.spec Apparently it's optional and unlikely to be used, so it could be changed. You can reassign bug 1224157 to opi. |
``` zypper in obs-service-source_validator Loading repository data... Reading installed packages... [TechPreview] $ZYPP_SINGLE_RPMTRANS=1 : New rpm install backend is enabled If you find any bugs or issues please let us know: https://bugzilla.opensuse.org/ Component: libzypp (or zypper) And please attach the /var/log/zypper.log to the bug report. Resolving package dependencies... The following 15 NEW packages are going to be installed: gcc13-c++ gcc-c++ libqt5-qtdeclarative-tools libQt6JsonRpc6 libQt6LanguageServer6 libQt6QmlCompiler6 libstdc++6-devel-gcc13 obs-service-source_validator python-rpm-packaging qml-autoreqprov qt6-base-common-devel qt6-declarative-tools qt6-macros rpm-build rpm-build-perl 15 new packages to install. Overall download size: 29,6 MiB. Already cached: 0 B. After the operation, additional 107,8 MiB will be used. ``` I tracked this down to `zypper in rpm-build` which then triggers: ``` rpm -q --requires libQt6Qml6 (qml-autoreqprov if rpm-build) ``` on some Qt devel package I could understand a dependency like this. but for a library package this feels excessive. source_validator/rpmbuild should not build a Qt6 devel stack.