%define app_name QOwnNotes %define app_exec qownnotes %define app_id org.qownnotes.QOwnNotes %define dir_appdata metainfo %if 0%{?rhel}%{?fedora} %if 0%{?rhel} %if 0%{?rhel} <= 7 %define dir_appdata appdata %endif %endif %endif %if 0%{!?_metainfodir:1} %define _metainfodir %{_datadir}/%{dir_appdata} %endif %{!?_licensedir:%global license %doc} Name: qownnotes Version: 18.12.4 Release: 2%{?dist} Group: Applications/Productivity License: GPLv2 URL: https://www.qownnotes.org Summary: Note-taking app and todo list manager with ownCloud/Nextcloud integration Source0: https://download.tuxfamily.org/%{name}/src/%{name}-%{version}.tar.xz Source1: https://raw.githubusercontent.com/pbek/%{app_name}/4897d4c34885f22f326824033a1fca5adf72d8a6/build-systems/flatpak/%{app_id}.appdata.xml # Because of the cpuid.h ExclusiveArch: %{arm} aarch64 %{ix86} x86_64 BuildRequires: gcc gcc-c++ BuildRequires: desktop-file-utils BuildRequires: libappstream-glib BuildRequires: pkgconfig(Qt5Core) BuildRequires: pkgconfig(Qt5Gui) BuildRequires: pkgconfig(Qt5Network) BuildRequires: pkgconfig(Qt5PrintSupport) BuildRequires: pkgconfig(Qt5Qml) BuildRequires: pkgconfig(Qt5Svg) BuildRequires: pkgconfig(Qt5Sql) BuildRequires: pkgconfig(Qt5Widgets) BuildRequires: pkgconfig(Qt5Xml) BuildRequires: pkgconfig(Qt5XmlPatterns) Requires: git # gtk-update-icon-cache Requires(postun): gtk-update-icon-cache Requires(posttrans): gtk-update-icon-cache # update-desktop-database Requires(post): desktop-file-utils Requires(postun): desktop-file-utils %description QOwnNotes is the open source plain-text file markdown note taking application, that works together with the notes application of ownCloud or Nextcloud. %prep %{autosetup} desktop-file-edit --set-key="Icon" --set-value="%{app_id}" "PBE.%{app_name}.desktop" %build %{qmake_qt5} PREFIX="%{_prefix}" %{make_build} %install %{make_install} INSTALL_ROOT="%{buildroot}" %{__ln_s} "%{app_name}" "%{buildroot}%{_bindir}/%{app_exec}" for file in languages/%{app_name}_*.qm; do %{__install} -p -D -m 0644 "${file}" -t "%{buildroot}%{_datadir}/%{app_name}/languages/" done find images/icons/*/apps/ -xtype f \( -name "%{app_name}.png" -o -name "%{app_name}.svg" \) -print0 | sort -zuV | while IFS= read -rd '' file; do s="$( dirname -z "${file}" | xargs -0 dirname -z | xargs -0 basename -z )" %{__install} -p -D -m 0644 "${file}" "%{buildroot}%{_datadir}/icons/hicolor/${s}/apps/%{app_id}.${file##*.}" done %{__mv} "%{buildroot}%{_datadir}/applications/PBE.%{app_name}.desktop" "%{buildroot}%{_datadir}/applications/%{app_id}.desktop" %{__install} -p -D -m 0644 "%{SOURCE1}" "%{buildroot}%{_metainfodir}/%{app_id}.appdata.xml" %check /usr/bin/desktop-file-validate "%{buildroot}/%{_datadir}/applications/%{app_id}.desktop" /usr/bin/appstream-util validate-relax --nonet "%{buildroot}%{_metainfodir}/%{app_id}.appdata.xml" %post /bin/touch --no-create "%{_datadir}/icons/hicolor" &> /dev/null || : /usr/bin/update-desktop-database &> /dev/null || : %postun /usr/bin/update-desktop-database &> /dev/null || : if [[ "${1}" -eq "0" ]] ; then /bin/touch --no-create "%{_datadir}/icons/hicolor" &> /dev/null || : /usr/bin/gtk-update-icon-cache "%{_datadir}/icons/hicolor" &> /dev/null || : fi %posttrans /usr/bin/gtk-update-icon-cache "%{_datadir}/icons/hicolor" &> /dev/null || : %files %doc *.md %license LICENSE %{_bindir}/%{app_name} %{_bindir}/%{app_exec} %{_datadir}/%{app_name}/languages/%{app_name}_*.qm %{_datadir}/icons/hicolor/*/apps/%{app_name}.* %{_datadir}/icons/hicolor/*/apps/%{app_id}.* %{_datadir}/applications/%{app_id}.desktop %{_metainfodir}/%{app_id}.appdata.xml %changelog * Sat Dec 15 2018 Tomasz Tomasik - 18.12.4-2 - Updata AppData file * Sat Dec 15 2018 Tomasz Tomasik - 18.12.4-1 - Initial package