@ -2,7 +2,7 @@
Name: remmina
Name: remmina
Version: 1.0.0
Version: 1.0.0
Release: 6 %{?dist}
Release: 7 %{?dist}
Summary: Remote Desktop Client
Summary: Remote Desktop Client
Group: Applications/Internet
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
# https://github.com/FreeRDP/Remmina/commit/b2277827
Patch11: remmina-1.0.0-fix-memory-leak.patch
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
# 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 <gber at opensuse dot org>
Patch31: remmina-1.0.0-fix-desktop-file.patch
Patch32: remmina-1.0.0-fix-install-paths.patch
# From Debian. Thanks to Luca Falavigna <dktrkranz at debian dot org>
Patch35: remmina-1.0.0-remove-inline-libvncserver.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@ -52,6 +85,10 @@ BuildRequires: gnutls-devel
BuildRequires: libjpeg-devel
BuildRequires: libjpeg-devel
BuildRequires: libvncserver-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
# Remmina used to be called grdc
Provides: grdc = %{version}
Provides: grdc = %{version}
Obsoletes: grdc < 0.6.1
Obsoletes: grdc < 0.6.1
@ -85,25 +122,11 @@ The %{name}-devel package contains header files for developing plugins for
%{name}.
%{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
%package plugins-gnome
Summary: GNOME keyring integration for Remmina Remote Desktop Client
Summary: GNOME keyring integration for Remmina Remote Desktop Client
BuildRequires: libgnome-keyring-devel
BuildRequires: libgnome-keyring-devel
Group: Applications/System
Group: Applications/System
Requires: %{name}-plugins-common %{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: libgnome-keyring
Requires: libgnome-keyring
%description plugins-gnome
%description plugins-gnome
@ -118,7 +141,7 @@ remote desktop client.
%package plugins-nx
%package plugins-nx
Summary: NX plugin for Remmina Remote Desktop Client
Summary: NX plugin for Remmina Remote Desktop Client
Group: Applications/System
Group: Applications/System
Requires: %{name}-plugins-common %{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: nx
Requires: nx
%description plugins-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
Summary: RDP plugin for Remmina Remote Desktop Client
Group: Applications/System
Group: Applications/System
BuildRequires: freerdp-devel
BuildRequires: freerdp-devel
Requires: %{name}-plugins-common %{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: freerdp
Requires: freerdp
%description plugins-rdp
%description plugins-rdp
@ -149,7 +172,7 @@ remote desktop client.
Summary: Telepathy plugin for Remmina Remote Desktop Client
Summary: Telepathy plugin for Remmina Remote Desktop Client
Group: Applications/System
Group: Applications/System
BuildRequires: telepathy-glib-devel
BuildRequires: telepathy-glib-devel
Requires: %{name}-plugins-common %{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description plugins-telepathy
%description plugins-telepathy
Remmina is a remote desktop client written in GTK+, aiming to be useful for
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: gnutls-devel
BuildRequires: libjpeg-devel
BuildRequires: libjpeg-devel
BuildRequires: libvncserver-devel
BuildRequires: libvncserver-devel
Requires: %{name}-plugins-common %{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description plugins-vnc
%description plugins-vnc
Remmina is a remote desktop client written in GTK+, aiming to be useful for
Remmina is a remote desktop client written in GTK+, aiming to be useful for
@ -180,7 +203,7 @@ client.
%package plugins-xdmcp
%package plugins-xdmcp
Summary: XDMCP plugin for Remmina Remote Desktop Client
Summary: XDMCP plugin for Remmina Remote Desktop Client
Group: Applications/System
Group: Applications/System
Requires: %{name}-plugins-common %{?_isa} = %{version}-%{release}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: xorg-x11-server-Xephyr
Requires: xorg-x11-server-Xephyr
%description plugins-xdmcp
%description plugins-xdmcp
@ -206,21 +229,31 @@ client.
%patch10 -p1 -b .fix-crashes-in-some-cases
%patch10 -p1 -b .fix-crashes-in-some-cases
%patch11 -p1 -b .fix-memory-leak
%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
%patch15 -p1 -b .GDK_SCROLL_SMOOTH
sed -i "s,/lib/remmina/plugins,/%{_lib}/remmina/plugins,g" CMakeLists.txt
%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
%build
mkdir -p build
mkdir -p build
pushd build
pushd build
CFLAGS="%{optflags} -DLIBVNCSERVER_WITH_CLIENT_TLS=1"
LDFLAGS="-Wl,-z,relro -Wl,--no-as-needed"
LDFLAGS="-Wl,-z,relro -Wl,--no-as-needed"
%cmake \
%cmake \
@ -237,7 +270,9 @@ LDFLAGS="-Wl,-z,relro -Wl,--no-as-needed"
-DWITH_AVAHI=ON \
-DWITH_AVAHI=ON \
-DWITH_APPINDICATOR=OFF \
-DWITH_APPINDICATOR=OFF \
-LIBVNCSERVER_INCLUDE_DIRS=%{_includedir} \
-LIBVNCSERVER_INCLUDE_DIRS=%{_includedir} \
-DCMAKE_INSTALL_LIBDIR=%{_libdir} \
-DLIBVNCSERVER_WITH_CLIENT_TLS=1 \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DCMAKE_INSTALL_LIBDIR=%{_lib} \
..
..
make %{?_smp_mflags}
make %{?_smp_mflags}
@ -245,25 +280,19 @@ popd
%install
%install
rm -rf %{buildroot}
rm -rf %{buildroot}
# make install DESTDIR=%{buildroot}
make install/fast DESTDIR=%{buildroot} -C build
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 \
desktop-file-install --vendor="" --delete-original \
--add-category="RemoteAccess" \
--add-category="RemoteAccess" \
--remove-category="X-GNOME-NetworkSettings" \
--remove-key="Actions" \
--remove-key="Actions" \
--dir %{buildroot}%{_datadir}/applications \
--dir %{buildroot}%{_datadir}/applications \
remmina/desktop/remmina .desktop
%{buildroot}/%{_datadir}/applications/%{name}.desktop
%find_lang %{name}
%find_lang %{name}
%find_lang %{name}-plugins
%find_lang %{name}-plugins
%clean
%clean
rm -rf %{buildroot}
rm -rf %{buildroot}
@ -271,24 +300,75 @@ rm -rf %{buildroot}
%post
%post
touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
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
%postun
if [ $1 -eq 0 ] ; then
if [ $1 -eq 0 ] ; then
touch --no-create %{_datadir}/icons/hicolor &>/dev/null
touch --no-create %{_datadir}/icons/hicolor &>/dev/null
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
fi
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
%posttrans
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
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,-)
%defattr(-,root,root,-)
# FIXME: Add NEWS if not empty
# FIXME: Add NEWS if not empty
%doc remmina/AUTHORS remmina/ChangeLog remmina/COPYING README
%doc remmina/AUTHORS remmina/ChangeLog remmina/COPYING README
%{_bindir}/%{name}
%{_bindir}/%{name}
%{_datadir}/applications/*.desktop
%{_datadir}/applications/*.desktop
%{_datadir}/icons/hicolor/*/*/*.*
%{_datadir}/icons/hicolor/*/*/*.*
%{_datadir}/%{name}/
%dir %{_libdir}/remmina/
%dir %{_libdir}/remmina/plugins/
%files devel
%files devel
%defattr(-,root,root,-)
%defattr(-,root,root,-)
@ -296,13 +376,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%{_includedir}/%{name}/
%{_includedir}/%{name}/
%{_libdir}/pkgconfig/%{name}.pc
%{_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
%files plugins-gnome
%defattr(-,root,root,-)
%defattr(-,root,root,-)
%{_libdir}/remmina/plugins/remmina-plugins-gnome.so
%{_libdir}/remmina/plugins/remmina-plugins-gnome.so
@ -338,6 +411,20 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%changelog
%changelog
* Tue May 07 2013 Christoph Wickert <cwickert@fedoraproject.org> - 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 <rel-eng@lists.fedoraproject.org> - 1.0.0-6
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild