-
Improvement
-
Resolution: Fixed
-
Severe (Users)
-
None
-
None
-
None
-
Impacts the kde-apps/kitinerary upgrade and potentially that of 340 other packages.
-
It appears that deps being too loose will cause upgrades of KDE to fail due to improper ordering of merged packages.
Trying to emerge kde-apps/kitinerary-22.08.1 on my Next machine, it pulls kde-apps/kpkpass-22.08.1 as a dependency, which fails with the following error message:
CMake Error at CMakeLists.txt:11 (find_package): Could not find a configuration file for package "ECM" that is compatible with requested version "5.95.0". The following configuration files were considered but not accepted: /usr/share/ECM/cmake/ECMConfig.cmake, version: 5.94.0
I get this because I had kde-frameworks/extra-cmake-modules-5.94.0 installed and the kde-apps/kpkpass-22.08.1 ebuild has FRAMEWORKS_MINIMAL=5.75.0, therefore it doesn't automatically trigger a kde-frameworks/extra-cmake-modules upgrade.
As the information in the error message shows, I actually need >=kde-frameworks/extra-cmake-modules-5.95.0. We have kde-frameworks/extra-cmake-modules-5.98.0 available on the tree, so manually upgrading the package makes the problem go away.
However, the next time around, the same will happen with kde-frameworks/karchive. Then, I have kde-apps/kmime requiring >=kde-frameworks/ki18n-5.95.0 and >=kde-frameworks/kcodecs-5.95.0 in a similar way.
All that needs to be done to solve the issue above is to set FRAMEWORKS_MINIMAL to 5.95.0 bot in the kde-apps/kpkpass and the kde-apps/kmime ebuilds.
Currently, there are 340 packages on Next that use the variable FRAMEWORKS_MINIMAL. Potentially all of them need to be checked. Of those, 192 set FRAMEWORKS_MINIMAL to 5.57.
You can use the following commands to see the full list of the packages:
find /var/git/meta-repo -name "*.ebuild" -exec grep -l -F "FRAMEWORKS_MINIMAL" '{}' '+' | cut -d/ -f7,8 | sort -u find /var/git/meta-repo -name "*.ebuild" -exec grep -l -F "FRAMEWORKS_MINIMAL=5.75" '{}' '+' | cut -d/ -f7,8 | sort -u