diff --git a/remmina.spec b/remmina.spec index d066e11..722b7f4 100644 --- a/remmina.spec +++ b/remmina.spec @@ -2,7 +2,7 @@ Name: remmina Version: 1.0.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Remote Desktop Client Group: Applications/Internet @@ -32,8 +32,41 @@ Patch10: remmina-1.0.0-fix-crashes-in-some-cases.patch # https://github.com/FreeRDP/Remmina/commit/b2277827 Patch11: remmina-1.0.0-fix-memory-leak.patch +# Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=953678 +# upstream bug: https://github.com/FreeRDP/Remmina/issues/63 +# upstream fix: https://github.com/FreeRDP/Remmina/commit/1901a1e9 +Patch12: remmina-1.0.0-fix-typo-when-fitting-window.patch + +# Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=834883 +# upstream bug: https://github.com/FreeRDP/Remmina/issues/76 +# upstream fix: https://github.com/FreeRDP/Remmina/commit/1901a1e9 +Patch13: remmina-1.0.0-trayicon-patch + +# Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=830210 +# upstream fix: https://github.com/FreeRDP/Remmina/commit/ +Patch14: remmina-1.0.0-fix-scrolling-in-vnc-plugin.patch +# upstream fix: https://github.com/FreeRDP/Remmina/commit/fe1b698e +Patch15: remmina-1.0.0-Also-handle-GDK_SCROLL_SMOOTH.patch + +# upstream bug: https://github.com/FreeRDP/Remmina/issues/77 +# upstream fix: https://github.com/FreeRDP/Remmina/commit/bed49ad6 +Patch16: remmina-1.0.0-close-SSH-tunnel-on-disconnect.patch + +# Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=864262 +# upstream fix: https://github.com/FreeRDP/Remmina/commit/348e01d2 +Patch17: remmina-1.0.0-fix-fullscreen-with-multiple-monitors.patch + # https://bugzilla.redhat.com/show_bug.cgi?id=819976 -Patch20: remmina-1.0.0-dsofix.patch +Patch30: remmina-1.0.0-dsofix.patch + +# From OpenSUSE. All patches are backport from upstream. +# Thanks to Guido Berhoerster +Patch31: remmina-1.0.0-fix-desktop-file.patch +Patch32: remmina-1.0.0-fix-install-paths.patch + +# From Debian. Thanks to Luca Falavigna +Patch35: remmina-1.0.0-remove-inline-libvncserver.patch + BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -52,6 +85,10 @@ BuildRequires: gnutls-devel BuildRequires: libjpeg-devel BuildRequires: libvncserver-devel +# We don't ship the remmina-plugins-common package any longer +Provides: remmina-plugins-common = %{version} +Obsoletes: remmina-plugins-common < 1.0.0-7 + # Remmina used to be called grdc Provides: grdc = %{version} Obsoletes: grdc < 0.6.1 @@ -85,25 +122,11 @@ The %{name}-devel package contains header files for developing plugins for %{name}. -%package plugins-common -Summary: Common files for Remmina Remote Desktop Client plugins -Group: Applications/System -Requires: %{name} >= 0.9 - -%description plugins-common -Remmina is a remote desktop client written in GTK+, aiming to be useful for -system administrators and travelers, who need to work with lots of remote -computers in front of either large monitors or tiny netbooks. - -This package contains files shared among all plugins for the Remmina remote -desktop client. - - %package plugins-gnome Summary: GNOME keyring integration for Remmina Remote Desktop Client BuildRequires: libgnome-keyring-devel Group: Applications/System -Requires: %{name}-plugins-common%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: libgnome-keyring %description plugins-gnome @@ -118,7 +141,7 @@ remote desktop client. %package plugins-nx Summary: NX plugin for Remmina Remote Desktop Client Group: Applications/System -Requires: %{name}-plugins-common%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: nx %description plugins-nx @@ -133,7 +156,7 @@ This package contains the NX plugin for the Remmina remote desktop client. Summary: RDP plugin for Remmina Remote Desktop Client Group: Applications/System BuildRequires: freerdp-devel -Requires: %{name}-plugins-common%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: freerdp %description plugins-rdp @@ -149,7 +172,7 @@ remote desktop client. Summary: Telepathy plugin for Remmina Remote Desktop Client Group: Applications/System BuildRequires: telepathy-glib-devel -Requires: %{name}-plugins-common%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} %description plugins-telepathy Remmina is a remote desktop client written in GTK+, aiming to be useful for @@ -166,7 +189,7 @@ Group: Applications/System BuildRequires: gnutls-devel BuildRequires: libjpeg-devel BuildRequires: libvncserver-devel -Requires: %{name}-plugins-common%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} %description plugins-vnc Remmina is a remote desktop client written in GTK+, aiming to be useful for @@ -180,7 +203,7 @@ client. %package plugins-xdmcp Summary: XDMCP plugin for Remmina Remote Desktop Client Group: Applications/System -Requires: %{name}-plugins-common%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} Requires: xorg-x11-server-Xephyr %description plugins-xdmcp @@ -206,64 +229,70 @@ client. %patch10 -p1 -b .fix-crashes-in-some-cases %patch11 -p1 -b .fix-memory-leak -%patch20 -p0 -b .dsofix +%patch12 -p1 -b .fitting-window + +%patch13 -p1 -b .trayicon + +%patch14 -p1 -b .vnc-scrolling -# Don't hardcode libdir -sed -i "s,/lib/remmina/plugins,/%{_lib}/remmina/plugins,g" CMakeLists.txt +%patch15 -p1 -b .GDK_SCROLL_SMOOTH + +%patch16 -p1 -b .ssh-disconnect + +%patch17 -p1 -b .multiple-monitors + +%patch30 -p0 -b .dsofix +%patch31 -p1 -b .desktop-file +%patch32 -p1 -b .install-paths + + +%patch35 -p1 -b .libvncserver -# Don't build against bundled libvncserver -#grep -v libvncserver remmina-plugins/CMakeLists.txt > remmina-plugins/CMakeLists.txt.new -#mv remmina-plugins/CMakeLists.txt.new remmina-plugins/CMakeLists.txt -# -#rm -rf remmina-plugins/vnc/libvncserver/ %build mkdir -p build pushd build +CFLAGS="%{optflags} -DLIBVNCSERVER_WITH_CLIENT_TLS=1" LDFLAGS="-Wl,-z,relro -Wl,--no-as-needed" %cmake \ - -DWITH_PTHREAD=ON \ - -DWITH_GCRYPT=ON \ - -DWITH_LIBSSH=ON \ - -DWITH_VTE=ON \ - -DWITH_GETTEXT=ON \ - -DWITH_LIBSSH=ON \ - -DWITH_FREERDP=ON \ - -DWITH_TELEPATHY=ON \ - -DWITH_ZLIB=ON \ - -DWITH_GETTEXT=ON \ - -DWITH_AVAHI=ON \ - -DWITH_APPINDICATOR=OFF \ - -LIBVNCSERVER_INCLUDE_DIRS=%{_includedir} \ - -DCMAKE_INSTALL_LIBDIR=%{_libdir} \ - .. + -DWITH_PTHREAD=ON \ + -DWITH_GCRYPT=ON \ + -DWITH_LIBSSH=ON \ + -DWITH_VTE=ON \ + -DWITH_GETTEXT=ON \ + -DWITH_LIBSSH=ON \ + -DWITH_FREERDP=ON \ + -DWITH_TELEPATHY=ON \ + -DWITH_ZLIB=ON \ + -DWITH_GETTEXT=ON \ + -DWITH_AVAHI=ON \ + -DWITH_APPINDICATOR=OFF \ + -LIBVNCSERVER_INCLUDE_DIRS=%{_includedir} \ + -DLIBVNCSERVER_WITH_CLIENT_TLS=1 \ + -DCMAKE_INSTALL_PREFIX=%{_prefix} \ + -DCMAKE_INSTALL_LIBDIR=%{_lib} \ + .. make %{?_smp_mflags} popd %install rm -rf %{buildroot} -# make install DESTDIR=%{buildroot} make install/fast DESTDIR=%{buildroot} -C build - -# dirty hack as desktop file does not get built. -sed 's,^_,,g' remmina/desktop/remmina.desktop.in > remmina/desktop/remmina.desktop - -# another dirty hack -mv %{buildroot}/usr/share/remmina/icons %{buildroot}/usr/share/icons - desktop-file-install --vendor="" --delete-original \ - --add-category="RemoteAccess" \ - --remove-key="Actions" \ - --dir %{buildroot}%{_datadir}/applications \ - remmina/desktop/remmina.desktop + --add-category="RemoteAccess" \ + --remove-category="X-GNOME-NetworkSettings" \ + --remove-key="Actions" \ + --dir %{buildroot}%{_datadir}/applications \ + %{buildroot}/%{_datadir}/applications/%{name}.desktop %find_lang %{name} %find_lang %{name}-plugins + %clean rm -rf %{buildroot} @@ -271,24 +300,75 @@ rm -rf %{buildroot} %post touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : +%post plugins-nx +touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + +%post plugins-rdp +touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + +%post plugins-vnc +touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + +%post plugins-xdmcp +touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + + %postun if [ $1 -eq 0 ] ; then touch --no-create %{_datadir}/icons/hicolor &>/dev/null gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : fi +%postun plugins-nx +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &>/dev/null + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%postun plugins-rdp +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &>/dev/null + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%postun plugins-vnc +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &>/dev/null + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%postun plugins-xdmcp +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &>/dev/null + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + + %posttrans gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +%posttrans plugins-nx +gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + +%posttrans plugins-rdp +gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + +%posttrans plugins-vnc +gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + +%posttrans plugins-xdmcp +gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + -%files -f %{name}.lang +%files -f %{name}.lang -f %{name}-plugins.lang %defattr(-,root,root,-) # FIXME: Add NEWS if not empty %doc remmina/AUTHORS remmina/ChangeLog remmina/COPYING README %{_bindir}/%{name} %{_datadir}/applications/*.desktop %{_datadir}/icons/hicolor/*/*/*.* -%{_datadir}/%{name}/ +%dir %{_libdir}/remmina/ +%dir %{_libdir}/remmina/plugins/ %files devel %defattr(-,root,root,-) @@ -296,13 +376,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %{_includedir}/%{name}/ %{_libdir}/pkgconfig/%{name}.pc -%files plugins-common -f %{name}-plugins.lang -%defattr(-,root,root,-) -# FIXME: Add docs once there are some *proper* ones -#%doc remmina-plugins/AUTHORS remmina-plugins/COPYING -%dir %{_libdir}/remmina/ -%dir %{_libdir}/remmina/plugins/ - %files plugins-gnome %defattr(-,root,root,-) %{_libdir}/remmina/plugins/remmina-plugins-gnome.so @@ -338,6 +411,20 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %changelog +* Tue May 07 2013 Christoph Wickert - 1.0.0-7 +- Fix scrolling in VNC (#830210) +- Handle GDK_SCROLL_SMOOTH in VNC and RDP +- Bring back the --icon/-i autostart option (#834883) +- Fix fullscreen with multiple monitors (#864262) +- Resize window to fit remote resolution (#953678) +- Enable TLS-support in VNC plugin +- Close SSH tunnels on disconnect (https://github.com/FreeRDP/Remmina/issues/77) +- Patch out copy of libvncserver shipped in source tarball +- Update icon cache also for plugins +- Drop the remmina-plugins-common package +- Drop Provides/Obsoletes for grdc +- Spec file clean-up + * Thu Feb 14 2013 Fedora Release Engineering - 1.0.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild