Hello community, here is the log from the commit of package transmission for openSUSE:Factory checked in at 2018-10-23 20:34:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/transmission (Old) and /work/SRC/openSUSE:Factory/.transmission.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "transmission" Tue Oct 23 20:34:38 2018 rev:85 rq:642596 version:2.94 Changes: -------- --- /work/SRC/openSUSE:Factory/transmission/transmission.changes 2018-05-07 14:51:16.854529009 +0200 +++ /work/SRC/openSUSE:Factory/.transmission.new/transmission.changes 2018-10-23 20:34:51.624940718 +0200 @@ -1,0 +2,31 @@ +Wed Oct 10 08:08:56 UTC 2018 - Marguerite Su <[email protected]> + +- fix boo#1111323 transmission-qt try to load translations from /usr/bin + + upstream issue#736 recommends to use cmake instead of autotools + because codes related to autotools are deprecated. Nowadays + we manually install transmission-qt translations into /usr/ + share/qt5/ directory where is designed for official Qt project + only, while cmake will install to the right location /usr/share/ + transmission/translations. + + switch build time configuration from autotools to cmake +- refactored transmission-appdata.patch to cmake-oriented. + + handle transmission-gtk.appdata.xml translations with + intltool-merge which is used by upstream for desktop files + in gtk/CMakeLists.txt + + handle transmission-qt.appdata.xml installation in + qt/CMakeLists.txt instead of in specfile, because anyway + we binary patch the -gtk.appdata.xml.in, we'd better not + binary patch one while add another one as Source. so the + SOURCE4 is also dropped. +- add transmission-3rdparty-no-download.patch + + transmission's cmake configuration will download and build + some 3rd-party libraries that could not be found in system. + we patch its ExternalProject_Add() method to avoid the download + because there are already source codes for such 3rd-party + libraries located in third-party directory. Also, our OBS + build machine doesn't support downloading in the build VM. +- mark COPYING with %license tag instead of %doc tag +- add extras/{rpc-spec.txt,send-email-when-torrent-done.sh} + as doc since upstream installs them as doc too + +------------------------------------------------------------------- Old: ---- transmission-qt.appdata.xml New: ---- transmission-3rdparty-no-download.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ transmission.spec ++++++ --- /var/tmp/diff_new_pack.vEU3VS/_old 2018-10-23 20:34:52.676939461 +0200 +++ /var/tmp/diff_new_pack.vEU3VS/_new 2018-10-23 20:34:52.676939461 +0200 @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # @@ -27,12 +27,14 @@ Source1: transmission-qt.desktop Source2: transmission-daemon-systemd Source3: README.openSUSE -Source4: transmission-qt.appdata.xml # PATCH-FIX-UPSTREAM transmission-appdata.patch [email protected] -- Add and install appdata files for both gtk and qt applications; enable translations for the gtk metainfo Patch0: transmission-appdata.patch # PATCH-FIX-UPSTREAM transmission-systemd.patch [email protected] -- Fix build with systemd 232, patch taken from git Patch1: transmission-systemd.patch -# Patch0 touches autotool files +# PATCH-FIX-UPSTREAM translmission-3rdparty-no-download.patch [email protected] do not update \ +# 3rd-party dependencies from github during build, specify the SOURCE_DIR containing sources. +Patch2: transmission-3rdparty-no-download.patch +BuildRequires: cmake BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: intltool @@ -40,7 +42,7 @@ BuildRequires: libcurl-devel BuildRequires: libevent-devel >= 2.0.0 BuildRequires: libminiupnpc-devel -BuildRequires: libqt5-linguist +BuildRequires: libqt5-linguist-devel BuildRequires: libqt5-qtbase-devel BuildRequires: libtool BuildRequires: openssl-devel >= 0.9.7 @@ -55,7 +57,7 @@ Requires(postun): update-alternatives Provides: %{name}-ui = %{version} %if 0%{?WITH_APPINDICATOR} -BuildRequires: libappindicator-devel >= 0.4.90 +BuildRequires: libappindicator3-devel >= 0.4.90 %endif %description @@ -130,57 +132,45 @@ %setup -q %patch0 -p1 %patch1 -p1 +%patch2 -p1 cp %{SOURCE3} . +# required by patch2 +mv third-party/libnatpmp third-party/natpmp +mv third-party/libutp third-party/utp %build -# Prevent m4_copy error when running aclocal -# m4_copy: won't overwrite defined macro: glib_DEFUN -rm m4/glib-gettext.m4 || exit 1 -autoreconf export CFLAGS="%{optflags} -fPIC" export CXXFLAGS="%{optflags} -fPIC" -%configure \ - --disable-static \ +%cmake \ %if 0%{?WITH_APPINDICATOR} - --enable-libappindicator \ + -DWITH_LIBAPPINDICATOR=ON \ %endif - --with-gtk \ - --enable-external-b64 \ - --enable-cli + -DENABLE_QT=ON \ + -DUSE_QT5=ON \ + -DUSE_SYSTEM_B64=ON \ + -DENABLE_CLI=ON make %{?_smp_mflags} -# the qt ui requires an extrawurst for now -cd qt -%qmake5 -%make_jobs -lrelease-qt5 translations/*.ts %install -%make_install -# install qt ui -cd qt -make install INSTALL_ROOT=%{buildroot}%{_prefix} -install -d %{buildroot}%{_datadir}/qt5/translations/ -install -m0644 translations/*.qm %{buildroot}%{_datadir}/qt5/translations/ +%cmake_install install -D -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/transmission-daemon.service install -d %{buildroot}%{_sbindir} ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rctransmission-daemon mkdir -p %{buildroot}%{_localstatedir}/lib/transmission -cd .. # create targets for transmission below /etc/alternatives/ mkdir -p %{buildroot}%{_sysconfdir}/alternatives ln -s -f %{_sysconfdir}/alternatives/transmission %{buildroot}/%{_bindir}/transmission ln -s -f %{_sysconfdir}/alternatives/transmission.1.gz %{buildroot}/%{_mandir}/man1/transmission.1.gz +# fix doc +rm -rf %{buildroot}%{_datadir}/doc/transmission %find_lang transmission-gtk %{?no_lang_C} %find_lang transmission transmission-qt.lang --with-qt --without-mo %{?no_lang_C} %suse_update_desktop_file transmission-gtk %suse_update_desktop_file -i transmission-qt %fdupes %{buildroot} -# Install metainfo for qt -install -Dm0644 %{SOURCE4} %{buildroot}%{_datadir}/appdata/transmission-qt.appdata.xml - %check -make %{?_smp_mflags} check +%ctest %pre daemon getent group transmission >/dev/null || groupadd -r transmission @@ -245,7 +235,9 @@ %endif %files -%doc AUTHORS NEWS README COPYING README.openSUSE +%doc AUTHORS NEWS README README.openSUSE +%doc extras/rpc-spec.txt extras/send-email-when-torrent-done.sh +%license COPYING %{_bindir}/%{name}-cli %{_bindir}/%{name}-create %{_bindir}/%{name}-edit @@ -263,7 +255,8 @@ %ghost %{_sysconfdir}/alternatives/%{name}.1.gz %files daemon -%doc AUTHORS NEWS README COPYING README.openSUSE +%doc AUTHORS NEWS README README.openSUSE +%license COPYING %dir %{_localstatedir}/lib/%{name} %{_mandir}/man1/%{name}-daemon.1* %{_bindir}/%{name}-daemon @@ -274,7 +267,8 @@ %files -n %{name}-gtk-lang -f %{name}-gtk.lang %files gtk -%doc AUTHORS NEWS README COPYING README.openSUSE +%doc AUTHORS NEWS README README.openSUSE +%license COPYING %{_bindir}/%{name}-gtk %{_datadir}/applications/%{name}-gtk.desktop %{_mandir}/man1/%{name}-gtk.1* @@ -287,11 +281,11 @@ %{_datadir}/appdata/%{name}-gtk.appdata.xml %files -n %{name}-qt-lang -f %{name}-qt.lang -%dir %{_datadir}/qt5 -%dir %{_datadir}/qt5/translations +%dir %{_datadir}/%{name}/translations %files qt -%doc AUTHORS NEWS README COPYING README.openSUSE +%doc AUTHORS NEWS README README.openSUSE +%license COPYING %{_bindir}/%{name}-qt %{_datadir}/applications/%{name}-qt.desktop %{_mandir}/man1/%{name}-qt.1* @@ -306,6 +300,6 @@ %files common %{_datadir}/%{name}/ %{_datadir}/icons/*/*/apps/%{name}.* -%{_datadir}/pixmaps/%{name}.png +%exclude %{_datadir}/%{name}/translations %changelog ++++++ transmission-3rdparty-no-download.patch ++++++ Index: transmission-2.94/CMakeLists.txt =================================================================== --- transmission-2.94.orig/CMakeLists.txt +++ transmission-2.94/CMakeLists.txt @@ -337,7 +337,7 @@ if(ENABLE_UTP) tr_add_external_auto_library(UTP utp PATCH_COMMAND "${CMAKE_COMMAND}" -E copy "${THIRD_PARTY_DIR}/utp.cmake" "<SOURCE_DIR>/CMakeLists.txt" COMMAND "${CMAKE_COMMAND}" -E copy "${THIRD_PARTY_DIR}/utp_config.h" "<SOURCE_DIR>/utp_config.h" - COMMAND "${CMAKE_COMMAND}" -E chdir "<SOURCE_DIR>" patch -p1 --binary -i "${THIRD_PARTY_DIR}/utp-01-ticket-5002.patch" + #COMMAND "${CMAKE_COMMAND}" -E chdir "<SOURCE_DIR>" patch -p1 --binary -i "${THIRD_PARTY_DIR}/utp-01-ticket-5002.patch" COMMAND "${CMAKE_COMMAND}" -E chdir "<SOURCE_DIR>" patch -p1 --binary -i "${THIRD_PARTY_DIR}/utp-02-win32.patch" COMMAND "${CMAKE_COMMAND}" -E chdir "<SOURCE_DIR>" patch -p1 --binary -i "${THIRD_PARTY_DIR}/utp-03-msvc14.patch") endif() Index: transmission-2.94/cmake/TrMacros.cmake =================================================================== --- transmission-2.94.orig/cmake/TrMacros.cmake +++ transmission-2.94/cmake/TrMacros.cmake @@ -92,7 +92,8 @@ macro(tr_add_external_auto_library ID LI ExternalProject_Add( ${${ID}_UPSTREAM_TARGET} - ${${ID}_UPSTREAM} + #${${ID}_UPSTREAM} + SOURCE_DIR "${CMAKE_SOURCE_DIR}/third-party/${LIBNAME}" ${ARGN} PREFIX "${${ID}_PREFIX}" CMAKE_ARGS ++++++ transmission-appdata.patch ++++++ --- /var/tmp/diff_new_pack.vEU3VS/_old 2018-10-23 20:34:52.704939428 +0200 +++ /var/tmp/diff_new_pack.vEU3VS/_new 2018-10-23 20:34:52.704939428 +0200 @@ -1,33 +1,39 @@ -Index: transmission-2.92/gtk/Makefile.am +Index: transmission-2.94/gtk/CMakeLists.txt =================================================================== ---- transmission-2.92.orig/gtk/Makefile.am -+++ transmission-2.92/gtk/Makefile.am -@@ -97,6 +97,11 @@ DESKTOP_IN_FILES=transmission-gtk.deskto - DESKTOP_FILES=$(DESKTOP_IN_FILES:.desktop.in=.desktop) - @INTLTOOL_DESKTOP_RULE@ +--- transmission-2.94.orig/gtk/CMakeLists.txt ++++ transmission-2.94/gtk/CMakeLists.txt +@@ -51,10 +51,16 @@ add_custom_command( + if(ENABLE_NLS) + find_program(INTLTOOL_MERGE_EXECUTABLE intltool-merge REQUIRED) + set(${PROJECT_NAME}_DESKTOP_FILE "${PROJECT_BINARY_DIR}/${TR_NAME}-gtk.desktop") ++ set(${PROJECT_NAME}_APPDATA_FILE "${PROJECT_BINARY_DIR}/${TR_NAME}-gtk.appdata.xml") + add_custom_command( +- OUTPUT ${${PROJECT_NAME}_DESKTOP_FILE} ++ OUTPUT ++ ${${PROJECT_NAME}_DESKTOP_FILE} ++ ${${PROJECT_NAME}_APPDATA_FILE} + COMMAND ${INTLTOOL_MERGE_EXECUTABLE} --desktop-style --utf8 ${CMAKE_SOURCE_DIR}/po ${PROJECT_SOURCE_DIR}/transmission-gtk.desktop.in ${${PROJECT_NAME}_DESKTOP_FILE} +- DEPENDS ${PROJECT_SOURCE_DIR}/transmission-gtk.desktop.in ++ COMMAND ${INTLTOOL_MERGE_EXECUTABLE} --xml-style --utf8 ${CMAKE_SOURCE_DIR}/po ${PROJECT_SOURCE_DIR}/transmission-gtk.appdata.xml.in ${${PROJECT_NAME}_APPDATA_FILE} ++ DEPENDS ++ ${PROJECT_SOURCE_DIR}/transmission-gtk.desktop.in ++ ${PROJECT_SOURCE_DIR}/transmission-gtk.appdata.xml.in + VERBATIM + ) + endif() +@@ -188,6 +194,8 @@ endif() -+APPDATAdir = $(datadir)/appdata -+APPDATA_IN_FILES = transmission-gtk.appdata.xml.in -+APPDATA_DATA = $(APPDATA_IN_FILES:.appdata.xml.in=.appdata.xml) -+@INTLTOOL_XML_RULE@ -+ - Productivitydir = $(datadir)/applications - Productivity_DATA = $(DESKTOP_FILES) - -@@ -124,7 +129,8 @@ EXTRA_DIST = \ - $(DESKTOP_IN_FILES) \ - $(UI_FILES) \ - transmission.gresource.xml \ -- transmission.png -+ transmission.png \ -+ $(APPDATA_IN_FILES) - - DISTCLEANFILES = \ - transmission-gtk.desktop -Index: transmission-2.92/gtk/transmission-gtk.appdata.xml.in + if(ENABLE_NLS) + install(FILES ${${PROJECT_NAME}_DESKTOP_FILE} DESTINATION ${CMAKE_INSTALL_DATADIR}/applications) ++ install(FILES ${${PROJECT_NAME}_APPDATA_FILE} DESTINATION ${CMAKE_INSTALL_DATADIR}/appdata) + else() + install(FILES transmission-gtk.desktop.in DESTINATION ${CMAKE_INSTALL_DATADIR}/applications RENAME ${TR_NAME}-gtk.desktop) ++ install(FILES transmission-gtk.appdata.xml.in DESTINATION ${CMAKE_INSTALL_DATADIR}/appdata RENAME ${TR_NAME}-gtk.appdata.xml) + endif() +Index: transmission-2.94/gtk/transmission-gtk.appdata.xml.in =================================================================== --- /dev/null -+++ transmission-2.92/gtk/transmission-gtk.appdata.xml.in ++++ transmission-2.94/gtk/transmission-gtk.appdata.xml.in @@ -0,0 +1,26 @@ +<?xml version='1.0' encoding='UTF-8'?> +<component> @@ -55,15 +61,47 @@ + <update_contact>[email protected]</update_contact> + <translation type="gettext">transmission-gtk</translation> +</component> -Index: transmission-2.92/po/POTFILES.in +Index: transmission-2.94/qt/CMakeLists.txt +=================================================================== +--- transmission-2.94.orig/qt/CMakeLists.txt ++++ transmission-2.94/qt/CMakeLists.txt +@@ -250,6 +250,8 @@ endif() + + install(FILES transmission-qt.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications) + ++install(FILES transmission-qt.appdata.xml.in DESTINATION ${CMAKE_INSTALL_DATADIR}/appdata RENAME ${TR_NAME}-qt.appdata.xml) ++ + if(ENABLE_NLS) + install(FILES ${${PROJECT_NAME}_QM_FILES} DESTINATION ${CMAKE_INSTALL_DATADIR}/${TR_NAME}/translations) + endif() +Index: transmission-2.94/qt/transmission-qt.appdata.xml.in =================================================================== ---- transmission-2.92.orig/po/POTFILES.in -+++ transmission-2.92/po/POTFILES.in -@@ -15,6 +15,7 @@ gtk/open-dialog.c - gtk/relocate.c - gtk/stats.c - gtk/torrent-cell-renderer.c -+gtk/transmission-gtk.appdata.xml.in - gtk/transmission-gtk.desktop.in - gtk/tr-core.c - gtk/tr-icon.c +--- /dev/null ++++ transmission-2.94/qt/transmission-qt.appdata.xml.in +@@ -0,0 +1,26 @@ ++<?xml version='1.0' encoding='UTF-8'?> ++<component> ++ <id type="desktop">transmission-qt.desktop</id> ++ <metadata_license>CC0-1.0</metadata_license> ++ <name>Transmission (Qt) BitTorrent Client</name> ++ <project_license>(GPL-2.0 or GPL-3.0) and MIT</project_license> ++ <summary>Lightweight, yet powerful BitTorrent client</summary> ++ <url type="homepage">http://www.transmissionbt.com/</url> ++ <description> ++ <p>Transmission is a fast, easy, and free multi-platform BitTorrent client ++with a focus on being lightweight yet feature-filled. Its simple, ++intuitive interface is designed to integrate tightly with whatever ++computing environment you choose to use. Transmission strikes a balance ++between providing useful functionality without feature bloat. ++Furthermore, it is free for anyone to use or modify.</p> ++ <p> ++This installs the QT graphical user interface to transmission.</p> ++ </description> ++ <screenshots> ++ <screenshot type="default"> ++ <image height="785" width="1165">https://www.transmissionbt.com/images/screenshots/Qt-Large.jpg</image> ++ <caption>QT interface for transmission</caption> ++ </screenshot> ++ </screenshots> ++ <update_contact>[email protected]</update_contact> ++</component>
