@@ -1,10 +1,10 @@
1−{ mkDerivation, appstream, qtbase, qttools, nixosTests }:
1+{ lib, mkDerivation, appstream, qtbase, qttools, nixosTests }:
3# TODO: look into using the libraries from the regular appstream derivation as we keep duplicates here
3# TODO: look into using the libraries from the regular appstream derivation as we keep duplicates here
5mkDerivation {
5mkDerivation {
6 pname = "appstream-qt";
6 pname = "appstream-qt";
7− inherit (appstream) version src patches;
7+ inherit (appstream) version src;
9 outputs = [ "out" "dev" "installedTests" ];
9 outputs = [ "out" "dev" "installedTests" ];
@@ -14,6 +14,15 @@ mkDerivation {
15 mesonFlags = appstream.mesonFlags ++ [ "-Dqt=true" ];
15 mesonFlags = appstream.mesonFlags ++ [ "-Dqt=true" ];
17+ patches = (appstream.patches or []) ++ lib.optionals (lib.versionOlder qtbase.version "5.14") [
18+ # Fix darwin build for libsForQt5.appstream-qt
19+ # Old Qt moc doesn't know about fancy C++14 features
20+ # ../qt/component.h:93: Parse error at "UrlTranslate"
21+ # Remove both this patch and related comment in default.nix
22+ # once Qt 5.14 or later becomes default on darwin
23+ ./fix-build-for-qt-olderthan-514.patch
17 postFixup = ''
26 postFixup = ''
18 sed -i "$dev/lib/cmake/AppStreamQt/AppStreamQtConfig.cmake" \
27 sed -i "$dev/lib/cmake/AppStreamQt/AppStreamQtConfig.cmake" \
19 -e "/INTERFACE_INCLUDE_DIRECTORIES/ s@\''${PACKAGE_PREFIX_DIR}@$dev@"
28 -e "/INTERFACE_INCLUDE_DIRECTORIES/ s@\''${PACKAGE_PREFIX_DIR}@$dev@"