Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 604356 - [kde overlay] kde-plasma/plasma-desktop-9999 new dependency (lib)appstream-qt
Summary: [kde overlay] kde-plasma/plasma-desktop-9999 new dependency (lib)appstream-qt
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo KDE team
URL: https://phabricator.kde.org/D3923
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-01-02 08:58 UTC by Duncan
Modified: 2017-01-04 16:26 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Duncan 2017-01-02 08:58:55 UTC
See Reviewboard https://git.reviewboard.kde.org/r/129697/ (also linked in URL field).

Summarized: appstream-qt is now a required dep of plasma-desktop (with formerly optional packagekit-qt dep dropped).  It doesn't necessarily seem particularly gentooish, but unless we patch it out...

I haven't been able to (re)build plasma-desktop since that went in.  Unfortunately, it doesn't appear gentoo (nor the kde overlay) has it in the tree yet.  All I see is appstream-gtk.  So I haven't been able to merge it manually, and it'll have to be added to the tree in ordered to depend on it.

(FWIW I'm following the plasma-devel list now, but I didn't recognize the significance of that "required dep" when I saw it there, only later when I tried to live-update after the code got merged.)

Here's the error from the build log.  It's in src_configure (I suppose I shouldn't need the full log, since I did even better and got you the upstream reviewboard, with the discussion and commit, etc.)

[Earlier snippet with USE/FEATURES]

^[[32;01m * ^[[39;49;00mUSE:        abi_x86_64 amd64 elibc_glibc fontconfig handbook input_devices_evdev kernel_linux legacy-systray qt4 userland_GNU
^[[32;01m * ^[[39;49;00mFEATURES:   ccache sandbox userpriv usersandbox

[...]

-- Found KF5DBusAddons: /usr/lib64/cmake/KF5DBusAddons/KF5DBusAddonsConfig.cmake (found version "5.30.0")
-- Found KF5Activities: /usr/lib64/cmake/KF5Activities/KF5ActivitiesConfig.cmake (found version "5.30.0")
-- Found KF5ActivitiesStats: /usr/lib64/cmake/KF5ActivitiesStats/KF5ActivitiesStatsConfig.cmake (found version "5.30.0")
-- Found KF5Config: /usr/lib64/cmake/KF5Config/KF5ConfigConfig.cmake (found version "5.30.0")
-- Found KF5: success (found suitable version "5.30.0", minimum required is "5.24.0") found components:  Auth Plasma PlasmaQuick DocTools I18n KCMUtils NewStuff KDELibs4Support Notifications NotifyConfig Attica Wallet Runner GlobalAccel Declarative People DBusAddons Activities ActivitiesStats Config

CMake Error at CMakeLists.txt:66 (find_package):
  Could not find a package configuration file provided by "AppStreamQt"
  (requested version 0.10.4) with any of the following names:

    AppStreamQtConfig.cmake
    appstreamqt-config.cmake

  Add the installation prefix of "AppStreamQt" to CMAKE_PREFIX_PATH or set
  "AppStreamQt_DIR" to a directory containing one of the above files.  If
  "AppStreamQt" provides a separate development package or SDK, be sure it
  has been installed.


-- Configuring incomplete, errors occurred!
See also "/tmp/portage/kde-plasma/plasma-desktop-9999/work/plasma-desktop-9999_build/CMakeFiles/CMakeOutput.log".
 ^[[31m*^[[0m ERROR: kde-plasma/plasma-desktop-9999::kde failed (configure phase):
 ^[[31m*^[[0m   cmake failed
 ^[[31m*^[[0m.
 ^[[31m*^[[0m Call stack:
 ^[[31m*^[[0m     ebuild.sh, line  115:  Called src_configure
 ^[[31m*^[[0m   environment, line 4774:  Called kde5_src_configure
 ^[[31m*^[[0m   environment, line 3744:  Called cmake-utils_src_configure
 ^[[31m*^[[0m   environment, line 1612:  Called _cmake_execute_optionally 'src_configure'
 ^[[31m*^[[0m   environment, line  767:  Called enable_cmake-utils_src_configure
 ^[[31m*^[[0m   environment, line 2061:  Called die
 ^[[31m*^[[0m The specific snippet of code:
 ^[[31m*^[[0m       "${CMAKE_BINARY}" "${cmakeargs[@]}" "${CMAKE_USE_DIR}" || die "cmake failed";

[@ Wranglers, kde@ is CCed.  Maybe un-CC them when it's assigned to them?  At least with the old setup, choosing kde did the assignment and bypassed wranglers.]
Comment 1 Johannes Huber (RETIRED) gentoo-dev 2017-01-03 16:56:18 UTC
dev-libs/appstream added. Waiting for optional patch landing in master.

https://gitweb.gentoo.org/proj/kde.git/commit/?id=cdc87ddd47ed51c7725d71b3d51b949c999ff477
Comment 2 Duncan 2017-01-04 05:06:14 UTC
(In reply to Johannes Huber from comment #1)
> dev-libs/appstream added. Waiting for optional patch landing in master.
> 
> https://gitweb.gentoo.org/proj/kde.git/commit/
> ?id=cdc87ddd47ed51c7725d71b3d51b949c999ff477

Thanks, and thanks for updating the URL (I'm following the plasma-devel list but due to real life haven't updated in a couple days).


1) I tried appstream-9999 and it failed configure, wanting itstool.  Merging dev-libs/itstool solved that, so it needs to be a (build-time only?) dep.

2) But the actual build then failed with this (a couple blank lines added to make the wrapping a bit clearer):

Generating moc source AppStreamQt_automoc.dir/moc_category_ELDPQGVNSO6XJD.cpp

/usr/lib64/qt5/bin/moc -I/tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build/qt -I/tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build/src -I/tmp/portage/dev-libs/appstream-9999/work/appstream-9999/qt -I/tmp/portage/dev-libs/appstream-9999/work/appstream-9999/src -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I/usr/lib64/qt5/mkspecs/linux-g++ -DQT_CORE_LIB -DQT_NO_DEBUG -o /tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build/qt/AppStreamQt_automoc.dir/moc_category_ELDPQGVNSO6XJD.cpp /tmp/portage/dev-libs/appstream-9999/work/appstream-9999/qt/category.h

Error: cannot open mo file /tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build/po/*.gmo
make[2]: *** [data/CMakeFiles/merge-l10n.dir/build.make:57: data/CMakeFiles/merge-l10n] Error 1
make[2]: Leaving directory '/tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build'
make[1]: *** [CMakeFiles/Makefile2:306: data/CMakeFiles/merge-l10n.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

That was with -j10 and it looked like it might be a parallel-make error so I tried -j1, and that got a bit further, but still aborted at about 56%, same missing po/*.gmo error.  With -j1:

Scanning dependencies of target merge-l10n

make[2]: Leaving directory '/tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build'
make -f data/CMakeFiles/merge-l10n.dir/build.make data/CMakeFiles/merge-l10n.dir/build

make[2]: Entering directory '/tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build'
/usr/sbin/itstool -i /tmp/portage/dev-libs/appstream-9999/work/appstream-9999/contrib/its/metainfo.its -j /tmp/portage/dev-libs/appstream-9999/work/appstream-9999/data/org.freedesktop.appstream.cli.metainfo.xml -o /tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build/data/org.freedesktop.appstream.cli.metainfo.xml /tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build/po/*.gmo

Error: cannot open mo file /tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build/po/*.gmo
make[2]: *** [data/CMakeFiles/merge-l10n.dir/build.make:57: data/CMakeFiles/merge-l10n] Error 1
make[2]: Leaving directory '/tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build'
make[1]: *** [CMakeFiles/Makefile2:306: data/CMakeFiles/merge-l10n.dir/all] Error 2
make[1]: Leaving directory '/tmp/portage/dev-libs/appstream-9999/work/appstream-9999_build'
make: *** [Makefile:139: all] Error 2

And manually confirmed both times, the dir indeed has no *.gmo files (checked the subdirs the second time, with -j1, none in the subdirs either).


So far, I've been pleasantly surprised; the dep, while new and not particularly welcomed, does at least seem to be a rather lite one as these things go.  Both snowball-stemmer and itstool are small and fast builds and appstream itself seems pretty reasonable as well if that 56% where it aborted can be believed.  Apol seems correct on that, tho of course I can't actually be sure yet, since it's not yet actually building for me.  Hopefully that doesn't mean I'm missing the really weighty dep! =:^/

Meanwhile, from the appstream missing error and the d3923 discussion, it seems there's an actual release available.  Is it possible it builds any better?  Maybe I just hit appstream-git at the wrong time?  (I can try setting the live-build to get the latest tag instead of head, but haven't yet.)
Comment 3 Duncan 2017-01-04 05:46:28 UTC
(In reply to Duncan from comment #2)
> 
> Meanwhile, from the appstream missing error and the d3923 discussion, it
> seems there's an actual release available.  Is it possible it builds any
> better?  Maybe I just hit appstream-git at the wrong time?  (I can try
> setting the live-build to get the latest tag instead of head, but haven't
> yet.)

I tried the appstream 0.10.4 and 0.10.5 tags, no luck, same error. 0.10.4 was the minimum plasma-desktop was looking for, so I didn't try before that.

So I'll give up on appstream for the moment and will try the proposed d3923 patch making appstream optional, next.
Comment 4 Duncan 2017-01-04 08:11:22 UTC
(In reply to Duncan from comment #3)
> So I'll give up on appstream for the moment and will try the proposed d3923
> patch making appstream optional, next.

FWIW, works fine here (after patching the appstream dep back out of the ebuild too).  Was able to update plasma-desktop for the first time in several days, and am back up and running on it now.
Comment 5 Johannes Huber (RETIRED) gentoo-dev 2017-01-04 16:26:17 UTC
Appstream is now optional.

https://gitweb.gentoo.org/proj/kde.git/commit/?id=15803f3cd9add1d01617e7bb39fc869cb28250fc