The package rpms/ikona.git has added or updated architecture specific content in its spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s): https://src.fedoraproject.org/cgit/rpms/ikona.git/commit/?id=9f31e5e96028776....
Change: -ExclusiveArch: %{qt5_qtwebengine_arches}
Thanks.
Full change: ============
commit 496d3c1d06ec448f6b95cfbd93fad0b1fe195c6c Author: Carson Black uhhadd@gmail.com Date: Fri Apr 17 18:07:28 2020 -0400
Add new sources
diff --git a/.gitignore b/.gitignore index c1b0177..a8113b5 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ /ikona-v0.7.1.tar.gz +/ikona-1.0.cargo.vendor.tar.xz +/ikona-1.0.tar.xz diff --git a/sources b/sources index e3213fd..0d1bb56 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -SHA512 (ikona-v0.7.1.tar.gz) = 78e82c186e0a0e0d520b0ff6fe6d3c8e92a44579fa0c27d45052eac290329d78a44a462b3749f50e7331a51e9c11c019be320cef87054e8bdab285df10e6f0f4 +SHA512 (ikona-1.0.cargo.vendor.tar.xz) = 3bca0c7b66e603e7e06e0ac30c0cdb3d8c3baa812e600f322ef56a0be1692e57cc39348f1c40fdcfe07da6d4b624604cec0003f0d7e1be419462fff5832cd301 +SHA512 (ikona-1.0.tar.xz) = 30bde3f3b062ccf661ee8950c762412a6b9eebff625216641607cbae7f7f8123702c231cbce82acfb666a8b69c863e4b22e8daf79d1541b7c70781189ffee144
commit a05a913ddfefd8992b4d9808aaa79dd4685262ab Author: Carson Black uhhadd@gmail.com Date: Fri Apr 17 17:53:31 2020 -0400
Fix bad linking
diff --git a/ikona.spec b/ikona.spec index c36df5e..ec1abe8 100644 --- a/ikona.spec +++ b/ikona.spec @@ -147,9 +147,6 @@ Fish completions for %{name}-cli. %{_datadir}/icons/hicolor/scalable/apps/*.svg %{_datadir}/applications/*.desktop %{_datadir}/metainfo/*.appdata.xml -# this library only exists because I forgot to statically link it into the binary -# upstream. -%{_libdir}/libikonars.so
%changelog * Wed Jan 29 2020 Fedora Release Engineering releng@fedoraproject.org - 0.7.1-3 diff --git a/linking.patch b/linking.patch index 33755f1..cead91b 100644 --- a/linking.patch +++ b/linking.patch @@ -39,7 +39,7 @@ index e1fd6b2..d9473aa 100644 PRIVATE $<$<OR:$CONFIG:Debug,$CONFIG:RelWithDebInfo>:QT_QML_DEBUG>) target_link_libraries(ikona - PRIVATE Qt5::Core Qt5::Widgets Qt5::Quick KF5::I18n KF5::Kirigami2 KF5::ConfigWidgets ${RUST_LIB}) -+ PRIVATE dl pthread Qt5::Core Qt5::Widgets Qt5::Quick KF5::I18n KF5::Kirigami2 KF5::ConfigWidgets PkgConfig::cairo PkgConfig::cairo-png PkgConfig::cairo-gobject PkgConfig::fontconfig PkgConfig::freetype2 PkgConfig::gdk-pixbuf-2.0 PkgConfig::gio-2.0 PkgConfig::gio-unix-2.0 PkgConfig::glib-2.0 PkgConfig::gmodule-2.0 PkgConfig::gthread-2.0 PkgConfig::libxml-2.0 PkgConfig::pangocairo PkgConfig::pangoft2 ${RUST_LIB}) ++ PRIVATE Qt5::Core Qt5::Widgets Qt5::Quick KF5::I18n KF5::Kirigami2 KF5::ConfigWidgets PkgConfig::cairo PkgConfig::cairo-png PkgConfig::cairo-gobject PkgConfig::fontconfig PkgConfig::freetype2 PkgConfig::gdk-pixbuf-2.0 PkgConfig::gio-2.0 PkgConfig::gio-unix-2.0 PkgConfig::glib-2.0 PkgConfig::gmodule-2.0 PkgConfig::gthread-2.0 PkgConfig::libxml-2.0 PkgConfig::pangocairo PkgConfig::pangoft2 ${RUST_LIB} dl pthread)
install(TARGETS ikona DESTINATION ${CMAKE_INSTALL_BINDIR}) -install(FILES ${RUST_LIB} DESTINATION ${CMAKE_INSTALL_LIBDIR})
commit 9f31e5e9602877661de9cd6339c94c6bc74aedfe Author: Carson Black uhhadd@gmail.com Date: Fri Apr 17 16:05:23 2020 -0400
Ikona 1.0, faulty
diff --git a/ikona.spec b/ikona.spec index f1abdd1..c36df5e 100644 --- a/ikona.spec +++ b/ikona.spec @@ -1,11 +1,20 @@ +# Ikona's Cargo.toml causes % cargo_prep to fail due to it being a workspace. +# See https://bugzilla.redhat.com/show_bug.cgi?id=1823922. +# And even if that did work, Ikona would have issues due to circular dependencies +# being autogenerated. And even if *that* did work, the crate versions offered in repos +# won't satisfy Ikona's dependencies. Hooray. +%global bundled_rust_deps 1 + Name: ikona -Version: 0.7.1 -Release: 3%{?dist} +Version: 1.0 +Release: 1%{?dist} Summary: Icon Preview designed for Plasma
License: GPLv2+ -URL: https://invent.kde.org/KDE/ikona -Source0: https://invent.kde.org/kde/ikona/-/archive/v%%7Bversion%7D/%%7Bname%7D-v%%7B... +URL: https://invent.kde.org/KDE/%%7Bname%7D +Source0: https://download.kde.org/stable/%%7Bname%7D/%%7Bversion%7D/%%7Bname%7D-%%7Bv... +Source1: https://download.kde.org/stable/%%7Bname%7D/%%7Bversion%7D/%%7Bname%7D-%%7Bv... +Patch0: linking.patch
BuildRequires: appdata-tools BuildRequires: cmake @@ -14,27 +23,57 @@ BuildRequires: gcc-c++ BuildRequires: make BuildRequires: pkgconfig
+BuildRequires: cmake(KF5ConfigWidgets) BuildRequires: cmake(KF5Kirigami2) BuildRequires: cmake(KF5Plasma) BuildRequires: cmake(KF5PlasmaQuick) +BuildRequires: cmake(KF5I18n) + +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(cairo-png) +BuildRequires: pkgconfig(cairo-gobject) +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(gdk-pixbuf-2.0) +BuildRequires: pkgconfig(gio-2.0) +BuildRequires: pkgconfig(gio-unix-2.0) +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(gmodule-2.0) +BuildRequires: pkgconfig(gthread-2.0) +BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(pangocairo) +BuildRequires: pkgconfig(pangoft2)
BuildRequires: pkgconfig(Qt5Core) BuildRequires: pkgconfig(Qt5Quick) BuildRequires: pkgconfig(Qt5QuickControls2) -BuildRequires: pkgconfig(Qt5WebEngine) BuildRequires: pkgconfig(Qt5Widgets)
-Requires: hicolor-icon-theme +%if 0%{?bundled_rust_deps} +BuildRequires: cargo +BuildRequires: rust +%else +BuildRequires: rust-packaging +%endif + Requires: kf5-kirigami2 Requires: kf5-plasma
-ExclusiveArch: %{qt5_qtwebengine_arches} - %description A utility to preview icons as they are being made.
%prep -%setup -q -n %{name}-v%{version} +%setup -q +%patch0 +%if 0%{?bundled_rust_deps} + cp %{SOURCE1} %{name}.cargo.vendor.tar.xz +%else + pushd src/rs + rm -rf vendor .cargo Cargo.lock + %cargo_prep + %cargo_generate_buildrequires + popd +%endif
%build %cmake @@ -42,18 +81,75 @@ A utility to preview icons as they are being made.
%install %make_install +%find_lang ikona ikona-qml.lang +%find_lang ikonacli ikona-cli.lang
%check appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.xml desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
-%files +%package cli +Summary: Access %{name}'s functionality from the command line + +%description cli +%{name}-cli is a command-line utility allowing you to manipulate icons from +the command line. + +%package cli-bash-completions +Summary: Bash completions for %{name}-cli +Requires: %{name}-cli +Requires: bash +Supplements: (%{name}-cli and bash) +BuildArch: noarch + +%description cli-bash-completions +Bash completions for %{name}-cli. + +%package cli-zsh-completions +Summary: ZSH completions for %{name}-cli +Requires: %{name}-cli +Requires: zsh +Supplements: (%{name}-cli and zsh) +BuildArch: noarch + +%description cli-zsh-completions +ZSH completions for %{name}-cli. + +%package cli-fish-completions +Summary: Fish completions for %{name}-cli +Requires: %{name}-cli +Requires: fish +Supplements: (%{name}-cli and fish) +BuildArch: noarch + +%description cli-fish-completions +Fish completions for %{name}-cli. + +%files cli -f ikona-cli.lang +%{_bindir}/ikona-cli + +%files cli-zsh-completions +%{_datadir}/zsh/site-functions/_ikona-cli + +%files cli-fish-completions +%dir %{_datadir}/fish/ +%dir %{_datadir}/fish/completions/ +%{_datadir}/fish/completions/ikona-cli.fish + +%files cli-bash-completions +%dir %{_prefix}%{_sysconfdir}/bash_completion.d/ +%{_prefix}%{_sysconfdir}/bash_completion.d/ikona-cli.bash + +%files -f ikona-qml.lang %license LICENSE %doc README.md %{_bindir}/ikona %{_datadir}/icons/hicolor/scalable/apps/*.svg %{_datadir}/applications/*.desktop %{_datadir}/metainfo/*.appdata.xml +# this library only exists because I forgot to statically link it into the binary +# upstream. +%{_libdir}/libikonars.so
%changelog * Wed Jan 29 2020 Fedora Release Engineering releng@fedoraproject.org - 0.7.1-3 diff --git a/linking.patch b/linking.patch new file mode 100644 index 0000000..33755f1 --- /dev/null +++ b/linking.patch @@ -0,0 +1,48 @@ +diff --git CMakeLists.txt CMakeLists.txt +index e1fd6b2..d9473aa 100644 +--- CMakeLists.txt ++++ CMakeLists.txt +@@ -17,6 +17,22 @@ find_package(Qt5 COMPONENTS Core Widgets Quick REQUIRED) + find_package(KF5Kirigami2) + find_package(KF5ConfigWidgets) + find_package(KF5I18n) ++find_package(PkgConfig REQUIRED) ++ ++pkg_check_modules(cairo REQUIRED IMPORTED_TARGET cairo) ++pkg_check_modules(cairo-png REQUIRED IMPORTED_TARGET cairo-png) ++pkg_check_modules(cairo-gobject REQUIRED IMPORTED_TARGET cairo-gobject) ++pkg_check_modules(fontconfig REQUIRED IMPORTED_TARGET fontconfig) ++pkg_check_modules(freetype2 REQUIRED IMPORTED_TARGET freetype2) ++pkg_check_modules(gdk-pixbuf-2.0 REQUIRED IMPORTED_TARGET gdk-pixbuf-2.0) ++pkg_check_modules(gio-2.0 REQUIRED IMPORTED_TARGET gio-2.0) ++pkg_check_modules(gio-unix-2.0 REQUIRED IMPORTED_TARGET gio-unix-2.0) ++pkg_check_modules(glib-2.0 REQUIRED IMPORTED_TARGET glib-2.0) ++pkg_check_modules(gmodule-2.0 REQUIRED IMPORTED_TARGET gmodule-2.0) ++pkg_check_modules(gthread-2.0 REQUIRED IMPORTED_TARGET gthread-2.0) ++pkg_check_modules(libxml-2.0 REQUIRED IMPORTED_TARGET libxml-2.0) ++pkg_check_modules(pangocairo REQUIRED IMPORTED_TARGET pangocairo) ++pkg_check_modules(pangoft2 REQUIRED IMPORTED_TARGET pangoft2) + + # rust + +@@ -36,7 +52,7 @@ if(withsvgcleaner) + endif() + + SET(RUST_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src/rs") +-SET(RUST_LIB "${RUST_DIR}/${RUST_TARGET_DIR}/libikonars.so") ++SET(RUST_LIB "${RUST_DIR}/${RUST_TARGET_DIR}/libikonars.a") + SET(RUST_BIN "${RUST_DIR}/${RUST_TARGET_DIR}/ikona-cli") + SET(ZSH_COMPL "${RUST_DIR}/${RUST_TARGET_DIR}/_ikona-cli") + SET(BASH_COMPL "${RUST_DIR}/${RUST_TARGET_DIR}/ikona-cli.bash") +@@ -81,10 +97,9 @@ add_dependencies(ikona rust_target) + target_compile_definitions(ikona + PRIVATE $<$<OR:$CONFIG:Debug,$CONFIG:RelWithDebInfo>:QT_QML_DEBUG>) + target_link_libraries(ikona +- PRIVATE Qt5::Core Qt5::Widgets Qt5::Quick KF5::I18n KF5::Kirigami2 KF5::ConfigWidgets ${RUST_LIB}) ++ PRIVATE dl pthread Qt5::Core Qt5::Widgets Qt5::Quick KF5::I18n KF5::Kirigami2 KF5::ConfigWidgets PkgConfig::cairo PkgConfig::cairo-png PkgConfig::cairo-gobject PkgConfig::fontconfig PkgConfig::freetype2 PkgConfig::gdk-pixbuf-2.0 PkgConfig::gio-2.0 PkgConfig::gio-unix-2.0 PkgConfig::glib-2.0 PkgConfig::gmodule-2.0 PkgConfig::gthread-2.0 PkgConfig::libxml-2.0 PkgConfig::pangocairo PkgConfig::pangoft2 ${RUST_LIB}) + + install(TARGETS ikona DESTINATION ${CMAKE_INSTALL_BINDIR}) +-install(FILES ${RUST_LIB} DESTINATION ${CMAKE_INSTALL_LIBDIR}) + install(FILES ${RUST_BIN} + DESTINATION ${CMAKE_INSTALL_BINDIR} + PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
arch-excludes@lists.fedoraproject.org