%global CMakeLibCommit 3b445d91fd4620542162f35ccc6bf14533a76321 %global CMakeLibShortcommit 3b445d91 %global CMakeLibCommitdate 20220923 %global QtColorWidgetsCommit 0bb2f5ddb44769d4135e89e7e97e17cab110d654 %global QtColorWidgetsShortcommit 0bb2f5dd 352bc8f9 %global QtColorWidgetsCommitdate 20231127 %global pybind11Commit 8a099e44b3d5f85b20f05828d919d2332a8de841 %global pybind11Shortcommit 8a088e4 %global pybind11Commitdate 20230717 %global pythonlottieCommit 9e742aadb5ca7d0e8c9b01b2553c0a81de238ae4 %global pythonlottieShortcommit 9e742aad %global pythonlottieCommitdate 20201115 Name: glaxnimate Summary: A simple vector graphics animation program Version: 0.5.80 Release: 2%{?dist} License: GPL-2.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-2-Clause AND CC0-1.0 AND CC-BY-SA-4.0 AND GPL-3.0-or-later URL: https://glaxnimate.mattbas.org/ Source0: https://invent.kde.org/graphics/glaxnimate/-/archive/v%{version}/glaxnimate-v%{version}.tar.gz Source1: https://gitlab.com/mattbas/CMake-Lib/-/archive/%{CMakeLibCommit}/CMake-Lib-%{CMakeLibCommit}.tar.gz Source2: https://gitlab.com/mattbas/Qt-Color-Widgets/-/archive/%{QtColorWidgetsCommit}/Qt-Color-Widgets-%{QtColorWidgetsCommit}.tar.gz Source3: https://github.com/pybind/pybind11/archive/%{pybind11Commit}/pybind11-%{pybind11Shortcommit}.tar.gz Source4: https://gitlab.com/mattbas/python-lottie/-/archive/%{pythonlottieCommit}/python-lottie-%{pythonlottieCommit}.tar.gz BuildRequires: desktop-file-utils BuildRequires: libappstream-glib BuildRequires: kf6-rpm-macros BuildRequires: extra-cmake-modules BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: cmake(Qt6Core) BuildRequires: cmake(Qt6Widgets) BuildRequires: cmake(Qt6Xml) BuildRequires: cmake(Qt6UiTools) BuildRequires: cmake(Qt6Concurrent) BuildRequires: cmake(Qt6Network) BuildRequires: cmake(Qt6Svg) BuildRequires: cmake(KF6BreezeIcons) BuildRequires: cmake(KF6I18n) BuildRequires: cmake(KF6CoreAddons) BuildRequires: cmake(KF6WidgetsAddons) BuildRequires: cmake(KF6XmlGui) BuildRequires: cmake(KF6Archive) BuildRequires: cmake(KF6Completion) BuildRequires: cmake(KF6IconThemes) BuildRequires: cmake(KF6Config) BuildRequires: cmake(KF6Crash) BuildRequires: ffmpeg-free-devel BuildRequires: libarchive-devel BuildRequires: doxygen BuildRequires: graphviz BuildRequires: python3-devel BuildRequires: python3dist(docutils) BuildRequires: potrace-devel BuildRequires: texinfo BuildRequires: tree Requires: hicolor-icon-theme %description Glaxnimate is a powerful and user-friendly desktop application for vector animation and motion design. It focuses on Lottie and SVG and provides an intuitive interface that makes it easy to create stunning animations. %prep %autosetup -n glaxnimate-v%{version} # Additional modules for cmake rm -r cmake tar -xf %{SOURCE1} mv CMake-Lib-%{CMakeLibCommit} cmake rm -r external/Qt-Color-Widgets tar -xf %{SOURCE2} --directory external mv external/Qt-Color-Widgets-%{QtColorWidgetsCommit} external/Qt-Color-Widgets rm -r external/QtAppSetup/external/pybind11 tar -xf %{SOURCE3} --directory external/QtAppSetup/external mv external/QtAppSetup/external/pybind11-%{pybind11Commit} \ external/QtAppSetup/external/pybind11 rm -r data/lib/python-lottie tar -xf %{SOURCE4} --directory data/lib mv data/lib/python-lottie-%{pythonlottieCommit} data/lib/python-lottie # Generate docbook documentation sed -i 's/GENERATE_DOCBOOK = NO/GENERATE_DOCBOOK = YES/g' Doxyfile.in sed -i 's/DOCBOOK_PROGRAMLISTING = NO/DOCBOOK_PROGRAMLISTING = YES/g' Doxyfile.in sed -i 's/GENERATE_HTML = YES/GENERATE_HTML = NO/g' Doxyfile.in %build %cmake_kf6 -DQT_MAJOR_VERSION=6\ -DGLAXNIMATE_SYSTEM_POTRACE=ON\ -DCMAKE_PREFIX_PATH=%{_prefix} \ -DPotrace_INCLUDEDIR=%{_includedir} \ -DPotrace_LIBDIR=%{_libdir} %cmake_build pushd %__cmake_builddir doxygen tree . popd %install %cmake_install %find_lang %{name} --all-name --with-html mkdir -p %{buildroot}%{_datadir}/help/en/Glaxnimate install -m644 %{__cmake_builddir}/doxygen/docbook/*.xml \ %{buildroot}%{_datadir}/help/en/Glaxnimate/ install -m644 %{__cmake_builddir}/doxygen/docbook/*.svg \ %{buildroot}%{_datadir}/help/en/Glaxnimate/ install -m644 %{__cmake_builddir}/doxygen/docbook/*.md5 \ %{buildroot}%{_datadir}/help/en/Glaxnimate/ %check appstream-util validate-relax --nonet %{buildroot}%{_kf6_metainfodir}/org.kde.glaxnimate.metainfo.xml desktop-file-validate %{buildroot}%{_kf6_datadir}/applications/org.kde.glaxnimate.desktop %files -f %{name}.lang %{_kf6_bindir}/%{name} %{_kf6_datadir}/applications/org.kde.glaxnimate.desktop %{_kf6_datadir}/config.kcfg/glaxnimate_settings.kcfg %{_kf6_datadir}/glaxnimate/ %{_kf6_datadir}/icons/hicolor/512x512/apps/glaxnimate.png %{_kf6_datadir}/icons/hicolor/512x512/apps/org.kde.glaxnimate.png %{_kf6_datadir}/icons/hicolor/scalable/apps/glaxnimate.svg %{_kf6_datadir}/icons/hicolor/scalable/apps/org.kde.glaxnimate.svg %{_kf6_metainfodir}/org.kde.glaxnimate.metainfo.xml %dir %{_datadir}/help/en %lang(en) %{_datadir}/help/en/Glaxnimate %changelog * Tue May 20 2025 Benson Muite - 0.5.80-2 - Add documentation * Sun Feb 16 2025 Steve Cossette - 0.5.80-1 - Initial Release