Blob Blame History Raw
# Review at https://bugzilla.redhat.com/show_bug.cgi?id=553402

# https://fedoraproject.org/wiki/Packaging:SourceURL#Github
%global commit b3237e832df87bffc176c4f4024000b3d2d776cf
%global shortcommit %(c=%{commit}; echo ${c:0:7})

Name:           remmina
Version:        1.2.0
Release:        0.8%{?shortcommit:.git.%{shortcommit}}%{?dist}
Summary:        Remote Desktop Client

License:        GPLv2+ and MIT
URL:            http://remmina.sourceforge.net
# VCS: git:https://github.com/FreeRDP/Remmina.git
Source0:        https://github.com/FreeRDP/Remmina/archive/%{commit}/Remmina-%{commit}.tar.gz

# Cmake helper file to easy build plugins outside remmina sourse tree
# See http://www.muflone.com/remmina-plugin-rdesktop/english/install.html which
# use http://www.muflone.com/remmina-plugin-builder/ with remmina bundled source.
# So we can't use it directly only as instructions.
Source1:        pluginBuild-CMakeLists.txt

BuildRequires:  cmake >= 2.8
BuildRequires:  desktop-file-utils
BuildRequires:  gettext
BuildRequires:  intltool
BuildRequires:  libappstream-glib
BuildRequires:  libgcrypt-devel
BuildRequires:  pkgconfig(appindicator3-0.1)
BuildRequires:  pkgconfig(avahi-ui) >= 0.6.30
BuildRequires:  pkgconfig(avahi-ui-gtk3) >= 0.6.30
BuildRequires:  pkgconfig(freerdp) >= 1.2.0-beta1
BuildRequires:  pkgconfig(gnome-keyring-1)
BuildRequires:  pkgconfig(gtk+-3.0)
BuildRequires:  pkgconfig(libssh) >= 0.6
BuildRequires:  pkgconfig(libvncserver)
BuildRequires:  pkgconfig(telepathy-glib)
BuildRequires:  pkgconfig(vte-2.91)
BuildRequires:  pkgconfig(xkbfile)

# We don't ship the remmina-plugins-common package any longer
Provides:       remmina-plugins-common = %{version}
Obsoletes:      remmina-plugins-common < 1.0.0-7


%description
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 net-books.

Remmina supports multiple network protocols in an integrated and consistent
user interface. Currently RDP, VNC, XDMCP and SSH are supported.

Please don't forget to install the plugins for the protocols you want to use.


%package        devel
Summary:        Development files for %{name}
Requires:       %{name} = %{version}-%{release}
Requires:       pkgconfig

%description    devel
The %{name}-devel package contains header files for developing plugins for
%{name}.


%package        plugins-gnome
Summary:        GNOME keyring integration for Remmina Remote Desktop Client
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description    plugins-gnome
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 net-books.

This package contains the plugin with GNOME keyring support for the Remmina
remote desktop client.


%package        plugins-nx
Summary:        NX plugin for Remmina Remote Desktop Client
Requires:       %{name}%{?_isa} = %{version}-%{release}
Requires:       nxproxy

%description    plugins-nx
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 net-books.

This package contains the NX plugin for the Remmina remote desktop client.


%package        plugins-rdp
Summary:        RDP plugin for Remmina Remote Desktop Client
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description    plugins-rdp
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 net-books.

This package contains the Remote Desktop Protocol (RDP) plugin for the Remmina
remote desktop client.


%package        plugins-telepathy
Summary:        Telepathy plugin for Remmina Remote Desktop Client
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description    plugins-telepathy
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 net-books.

This package contains the Telepathy plugin for the Remmina remote desktop
client.


%package        plugins-vnc
Summary:        VNC plugin for Remmina Remote Desktop Client
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description    plugins-vnc
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 net-books.

This package contains the VNC plugin for the Remmina remote desktop
client.


%package        plugins-xdmcp
Summary:        XDMCP plugin for Remmina Remote Desktop Client
Requires:       %{name}%{?_isa} = %{version}-%{release}
Requires:       xorg-x11-server-Xephyr

%description    plugins-xdmcp
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 net-books.

This package contains the XDMCP plugin for the Remmina remote desktop
client.


%prep
%setup -qn Remmina-%{commit}

#? Hack: https://github.com/FreeRDP/Remmina/issues/292
sed -i 's#install(DIRECTORY include/remmina DESTINATION include/remmina #install(DIRECTORY remmina/include/remmina DESTINATION include/ #' CMakeLists.txt

%build
mkdir -p build

%cmake --build=build \
    -DCMAKE_INSTALL_LIBDIR=%{_lib} \
    -DCMAKE_INSTALL_PREFIX=%{_prefix} \
    -DCMAKE_INSTALL_COMPONENT=1 \
    -DWITH_APPINDICATOR=ON \
    -DWITH_AVAHI=ON \
    -DWITH_FREERDP=ON \
    -DWITH_GCRYPT=ON \
    -DWITH_GETTEXT=ON \
    -DWITH_GETTEXT=ON \
    -DWITH_LIBSSH=ON \
    -DWITH_LIBSSH=ON \
    -DWITH_PTHREAD=ON \
    -DWITH_TELEPATHY=ON \
    -DWITH_VTE=ON \
    -DWITH_ZLIB=ON \
    .

make %{?_smp_mflags}

%install
%make_install

desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/appdata/%{name}.appdata.xml

mkdir -p %{buildroot}/%{_libdir}/cmake/%{name}/
cp -pr cmake/*.cmake %{buildroot}/%{_libdir}/cmake/%{name}/
cp -pr config.h.in %{buildroot}/%{_includedir}/%{name}/
cp -p %{SOURCE1} %{buildroot}/%{_includedir}/%{name}/

%find_lang %{name}

%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
%doc AUTHORS ChangeLog LICENSE README
%{_bindir}/%{name}
%{_datadir}/appdata/*.appdata.xml
%{_datadir}/applications/*.desktop
%{_datadir}/icons/hicolor/*/actions/*.*
%{_datadir}/icons/hicolor/*/apps/*.*
%{_datadir}/icons/hicolor/*/emblems/remmina-sftp.png
%{_datadir}/%{name}/
%dir %{_libdir}/remmina/
%dir %{_libdir}/remmina/plugins/

%files devel
%{_includedir}/%{name}/
%{_libdir}/pkgconfig/%{name}.pc
%{_libdir}/cmake/%{name}/*.cmake

%files plugins-gnome
%{_libdir}/remmina/plugins/remmina-plugins-gnome.so

%files plugins-nx
%{_libdir}/remmina/plugins/remmina-plugin-nx.so
%{_datadir}/icons/hicolor/*/emblems/remmina-nx.png

%files plugins-rdp
%{_libdir}/remmina/plugins/remmina-plugin-rdp.so
%{_datadir}/icons/hicolor/*/emblems/remmina-rdp-ssh.png
%{_datadir}/icons/hicolor/*/emblems/remmina-rdp.png

%files plugins-telepathy
%{_libdir}/remmina/plugins/remmina-plugin-telepathy.so

%files plugins-vnc
%{_libdir}/remmina/plugins/remmina-plugin-vnc.so
%{_datadir}/icons/hicolor/*/emblems/remmina-vnc-ssh.png
%{_datadir}/icons/hicolor/*/emblems/remmina-vnc.png

%files plugins-xdmcp
%{_libdir}/remmina/plugins/remmina-plugin-xdmcp.so
%{_datadir}/icons/hicolor/*/emblems/remmina-xdmcp-ssh.png
%{_datadir}/icons/hicolor/*/emblems/remmina-xdmcp.png


%changelog
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.0-0.8.git.b3237e8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Fri Jun 05 2015 Simone Caronni <negativo17@gmail.com> - 1.2.0-0.7.git.b3237e8
- Re-add appindicator support. See:
  https://lists.fedoraproject.org/pipermail/devel/2015-June/211121.html
  https://lists.fedoraproject.org/pipermail/devel/2014-March/196343.html

* Wed Jun 03 2015 Simone Caronni <negativo17@gmail.com> - 1.2.0-0.6.git.b3237e8
- Remove appindicator support.

* Fri May 01 2015 Simone Caronni <negativo17@gmail.com> - 1.2.0-0.5.git.b3237e8
- Update to latest snapshot (post 1.2.0-rcgit.3).

* Tue Mar 17 2015 Simone Caronni <negativo17@gmail.com> - 1.2.0-0.4.git.b3e339e
- Update build requirements.

* Tue Feb 24 2015 Simone Caronni <negativo17@gmail.com> - 1.2.0-0.3.git.b3e339e
- Update to latest 1.2.0 snapshot (post 1.2.0-rcgit.2) for updated FreeRDP.
- Require latest FreeRDP snapshot for building.
- Remove upstream patch.
- Format and sort BuildRequires, add AppData file.

* Tue Dec 16 2014 Simone Caronni <negativo17@gmail.com> - 1.2.0-0.1.rcgit.1
- Update to latest 1.2.0 snapshot.
- Require latest FreeRDP 1.2.0-beta1+android9 for building.
- External tools now in datadir, use upstream commit for it.
- Removed upstreamed patch.

* Thu Oct 23 2014 Pavel Alexeev <Pahan@Hubbitus.info> - 1.1.1-2.git.efb7b5f
- Try enable APPINDICATOR by suggestion of Giovanni Panozzo.

* Tue Oct 21 2014 Simone Caronni <negativo17@gmail.com> - 1.1.1-1.git.efb7b5f
- Update to latest snapshot, version now at 1.1.1. Remove upstreamed patch.
- Full GTK3 version removed and moved to 1.2.0 branch.
- Add patch that was lost upstram in the various branching.

* Wed Sep 3 2014 Orion Poplawski <orion@cora.nwra.com> - 1.0.0-15.git.65d2ca4
- Have remmina-plugins-nx require nxproxy (bug #1004860)

* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-14.git.65d2ca4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

* Fri Aug 15 2014 Pavel Alexeev <Pahan@Hubbitus.info> - 1.0.0-13.git.65d2ca4
- Add Patch0: remmina-1.0-clipboard-fix.patch
- Update to 65d2ca4872150942cced1fbe92248dd933e9c0cb

* Mon Aug 11 2014 Pavel Alexeev <Pahan@Hubbitus.info> - 1.0.0-12.git.1470c97
- Include in devel sub-package for build external plugins:
    o %%{_libdir}/cmake/%%{name}/*.cmake
    o config.h.in
    o Source1: pluginBuild-CMakeLists.txt (with short instructions inside)
- Fix error installing devel files /usr/include/remmina/*.h (hack!)

* Fri Jul 18 2014 Simone Caronni <negativo17@gmail.com> - 1.0.0-11.git.1470c97
- Update to latest snapshot.
- Release number bumped to 1.2.0 beta 1 and then reverted to 1.0.0 upstram,
  adjust accordingly.
- Desktop file fixed upstream, remove sed line.
- Package grdc, qtnx, gnome-applet-remmina and xfce4-remmina-plugin are not
  required anymore by any package.
- Remove requirement on freerdp binary for plugins-rdp.

* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.0-0.3.git.26b814a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Tue May 27 2014 Simone Caronni <negativo17@gmail.com> - 1.1.0-0.2.git.26b814a
- Remove Group tags.
- Fix file list.
- Remove duplicate buildrequires.
- Fix rpmlint errors.

* Mon May 19 2014 Pavel Alexeev <Pahan@Hubbitus.info> - 1.1.0-0.1.git.26b814a
- Try build master branch with new freerdp 1.2 in rawhide (https://github.com/FreeRDP/Remmina/issues/193)
- Some spec cleanup.
- Drop all patches.
- Fix desktop file installation, remove --remove-key="Actions" option.
- Fix %%doc files path.
- Drop strange external_tools installed in $HOME/.remmina
- Bump BuildRequires: freerdp-devel to version >= 1.2.0

* Thu Apr 24 2014 Tomáš Mráz <tmraz@redhat.com> - 1.0.0-10
- Rebuild for new libgcrypt

* Mon Dec 02 2013 Orion Poplawski <orion@cora.nwra.com> - 1.0.0-9
- Obsolete/Provide qtnx (Bug #1034046)

* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild

* 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
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Sat Jun 09 2012 Christoph Wickert <cwickert@fedoraproject.org> - 1.0.0-4
- Fix DSO linking against gnutls (#819976)

* Sun Jun 03 2012 Christoph Wickert <cwickert@fedoraproject.org> - 1.0.0-3
- Fix crash introduced by clipboard support (#827756)

* Fri Jun 01 2012 Christoph Wickert <cwickert@fedoraproject.org> - 1.0.0-2
- Add clipboard support (#818155)
- Fix a memory leak and a crash

* Sun Apr 22 2012 Christoph Wickert <cwickert@fedoraproject.org> - 1.0.0-1
- Update to 1.0.0
- Plugins are now part of this package (again)
- Fix two linker errors
- Add VCS key

* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Tue Dec 06 2011 Adam Jackson <ajax@redhat.com> - 0.9.3-4
- Rebuild for new libpng

* Sat Mar 05 2011 Christoph Wickert <cwickert@fedoraproject.org> - 0.9.3-3
- Fix obsoletes for for gnome-applet-remmina and xfce4-remmina-plugin

* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Wed Jan 19 2011 Christoph Wickert <cwickert@fedoraproject.org> - 0.9.3-1
- Update to 0.9.3

* Sun Nov 28 2010 Christoph Wickert <cwickert@fedoraproject.org> - 0.8.3-1
- Update to 0.8.3
- Plugins are in remmina-plugins now

* Sat Nov 27 2010 Christoph Wickert <cwickert@fedoraproject.org> - 0.7.5-3
- Enable 32-bit color depth (#656120)

* Mon Jul 19 2010 Christoph Wickert <cwickert@fedoraproject.org> - 0.7.5-2
- Fix menu entry (#616115)

* Wed May 05 2010 Damien Durand <splinux@fedoraproject.org> - 0.7.5-1
- Upstream release, 0.7.5
- Remove the old "DSO" patch

* Tue Mar 16 2010 Christoph Wickert <cwickert@fedoraproject.org> - 0.7.4-2
- Add patch to fix DSO issue

* Sat Feb 27 2010 Damien Durand <splinux@fedoraproject.org> 0.7.4-1
- Update to 0.7.4
- Fix License tag

* Sun Feb 14 2010 Damien Durand <splinux@fedoraproject.org> 0.7.3-1
- Upstream release
- Add rdesktop, xorg-x11-server-Xephyr in Requires
- Add grdc in Provides/Obsoletes
- Add --enable-vnc=dl in %%configure
- Remove unneeded README.LibVNCServer
- Fix "icons/hicolor" path

* Thu Jan 07 2010 Damien Durand <splinux@fedoraproject.org> 0.7.2-2
- Fix Summary
- Split BuildRequires

* Thu Jan 07 2010 Damien Durand <splinux@fedoraproject.org> 0.7.2-1
- Initial release