# note: disabling plugins will still build them if deps are met
#
# Conditional build:
-%bcond_without exec # do not build exec plugin
-%bcond_with nx # build nx plugin
%bcond_without rdp # do not build rdp plugin
%bcond_without secret # do not build secret plugin
%bcond_without spice # do not build spice plugin
-%bcond_without telepathy # do not build telepathy plugin
%bcond_without vnc # do not build vnc plugin
%bcond_without vte # do not build vte plugin
-%bcond_without xdmcp # do not build xdmcp plugin
+%bcond_without www # do not build www plugin
#
Summary: Remote Desktop Client
Name: remmina
-Version: 1.3.4
+Version: 1.4.31
Release: 1
License: GPLv2+ and MIT
Group: X11/Applications
-Source0: https://gitlab.com/Remmina/Remmina/-/archive/v1.3.4/Remmina-v%{version}.tar.bz2
-# Source0-md5: cd00d28c5b895037901d8aa9f9ace9fc
+Source0: https://gitlab.com/Remmina/Remmina/-/archive/v%{version}/Remmina-v%{version}.tar.bz2
+# Source0-md5: 72d0975ad6899c9017ad9e3699933e46
# Cmake helper file to easy build plugins outside remmina source 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
+Patch0: fix-shebangs.patch
URL: http://remmina.org
-BuildRequires: appstream-glib
+BuildRequires: atk-devel
+BuildRequires: avahi-devel >= 0.6.30
BuildRequires: avahi-ui-gtk3-devel >= 0.6.30
-BuildRequires: cmake >= 2.8
-BuildRequires: desktop-file-utils
+BuildRequires: cairo-devel
+BuildRequires: cmake >= 3.10.0
+%{?with_rdp:BuildRequires: cups-devel}
%{?with_rdp:BuildRequires: freerdp2-devel >= 2.0.0-0.20190320}
-BuildRequires: gettext
-BuildRequires: gtk+3-devel
-BuildRequires: intltool
+BuildRequires: gdk-pixbuf2-devel
+BuildRequires: gettext-tools
+BuildRequires: glib2-devel
+BuildRequires: gtk+3-devel >= 3.14.0
+%{?with_www:BuildRequires: gtk-webkit4-devel}
+BuildRequires: harfbuzz-devel
BuildRequires: json-glib-devel
-BuildRequires: libappindicator-gtk3-devel
+BuildRequires: libayatana-appindicator-gtk3-devel
BuildRequires: libgcrypt-devel
%{?with_secret:BuildRequires: libsecret-devel}
-BuildRequires: libsoup-devel
+BuildRequires: libsodium-devel
+%{?with_www:BuildRequires: libsoup3-devel}
BuildRequires: libssh-devel >= 0.6
%{?with_vnc:BuildRequires: libvncserver-devel}
+BuildRequires: pango-devel
+BuildRequires: pcre2-8-devel
+BuildRequires: pkgconfig
+BuildRequires: python3-devel
BuildRequires: rpmbuild(macros) >= 1.742
-%{?with_spice:BuildRequires: spice-gtk-devel}
-%{?with_telepathy:BuildRequires: telepathy-glib-devel}
-%{?with_vte:BuildRequires: vte2.90-devel}
-BuildRequires: xorg-lib-libxkbfile-devel
+%if %{with spice}
+BuildRequires: spice-glib-devel
+BuildRequires: spice-gtk-devel
+BuildRequires: spice-protocol
+%endif
+BuildRequires: wayland-devel
+%{?with_vte:BuildRequires: vte-devel >= 0.38}
+BuildRequires: xorg-lib-libxkbcommon-devel
+Requires(post,postun): gtk-update-icon-cache
+Requires: avahi-ui-gtk3 >= 0.6.30
+Requires: gtk+3 >= 3.14.0
+Requires: hicolor-icon-theme
+Obsoletes: remmina-plugins-nx < 1.4.20
+Obsoletes: remmina-plugins-xdmcp < 1.4.20
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
This package contains the plugin to execute external processes
(commands or applications) from the Remmina window.
-%package plugins-nx
-Summary: NX plugin for Remmina Remote Desktop Client
+%package plugins-python_wrapper
+Summary: Python Wrapper plugin for Remmina Remote Desktop Client
Requires: %{name} = %{version}-%{release}
-Requires: nxproxy
-%description plugins-nx
+%description plugins-python_wrapper
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.
+This package enables Python plugins for Remmina.
%package plugins-rdp
Summary: RDP plugin for Remmina Remote Desktop Client
Requires: %{name} = %{version}-%{release}
+Requires: freerdp2-libs >= 2.0.0-0.20190320
%description plugins-rdp
Remmina is a remote desktop client written in GTK+, aiming to be
This package contains the SPICE plugin for the Remmina remote desktop
client.
-%package plugins-telepathy
-Summary: Telepathy plugin for Remmina Remote Desktop Client
-Requires: %{name} = %{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} = %{version}-%{release}
This package contains the VNC plugin for the Remmina remote desktop
client.
-%package plugins-xdmcp
-Summary: XDMCP plugin for Remmina Remote Desktop Client
+%package plugins-www
+Summary: Browser plugin for Remmina Remote Desktop Client
Requires: %{name} = %{version}-%{release}
-Requires: xorg-xserver-Xephyr
-%description plugins-xdmcp
+%description plugins-www
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
+This package contains the www plugin for the Remmina remote desktop
client.
%prep
%setup -qn Remmina-v%{version}
+%{__sed} -i s/^pt_PT$// po/LINGUAS
+%{__rm} -f po/pt_PT.po
+%patch0 -p1
%build
mkdir -p build
-
-%cmake --build=build \
+cd build
+%cmake \
-DCMAKE_INSTALL_LIBDIR=%{_lib} \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DWITH_APPINDICATOR=ON \
-DWITH_AVAHI=ON \
- %{cmake_on_off rdp FREERDP} \
+ -DWITH_CUPS=ON \
-DWITH_GCRYPT=ON \
-DWITH_GETTEXT=ON \
- -DWITH_LIBSSH=ON \
- %{cmake_on_off vnc LIBVNCSERVER} \
- %{cmake_on_off spice SPICE} \
- %{cmake_on_off telepathy TELEPATHY} \
- %{cmake_on_off vte VTE} \
- .
+ -DWITH_ICON_CACHE=OFF \
+ -DWITH_LIBSECRET=ON \
+ %{cmake_on_off vnc WITH_LIBVNCSERVER} \
+ %{cmake_on_off spice WITH_SPICE} \
+ -DWITH_UPDATE_DESKTOP_DB=OFF \
+ %{cmake_on_off vte WITH_VTE} \
+ ..
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
+cd build
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
+cd ..
+
+install -d $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/
+cp -pr cmake/*.cmake $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/
+cp -pr config.h.in $RPM_BUILD_ROOT%{_includedir}/%{name}/
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_includedir}/%{name}/
-install -d $RPM_BUILD_ROOT/%{_libdir}/cmake/%{name}/
-cp -pr cmake/*.cmake $RPM_BUILD_ROOT/%{_libdir}/cmake/%{name}/
-cp -pr config.h.in $RPM_BUILD_ROOT/%{_includedir}/%{name}/
-cp -p %{SOURCE1} $RPM_BUILD_ROOT/%{_includedir}/%{name}/
+# not supported by glibc yet
+%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{ber,br,ckb,eo,ie,ka,hi,shn}
%find_lang %{name}
%clean
rm -rf $RPM_BUILD_ROOT
+%post
+%update_icon_cache hicolor
+
+%postun
+%update_icon_cache hicolor
+
%files -f %{name}.lang
%defattr(644,root,root,755)
%doc LICENSE AUTHORS ChangeLog README.md
-%attr(755,root,root) %{_bindir}/gnome-session-remmina
+%attr(755,root,root) %{_bindir}/remmina-file-wrapper
%attr(755,root,root) %{_bindir}/remmina
-%attr(755,root,root) %{_bindir}/remmina-gnome
%{_datadir}/metainfo/*.appdata.xml
%{_desktopdir}/*.desktop
%{_iconsdir}/hicolor/*/actions/*.*
%{_iconsdir}/hicolor/*/apps/*.*
-%{_iconsdir}/hicolor/*/emblems/remmina-sftp-symbolic.svg
-%{_iconsdir}/hicolor/*/emblems/remmina-ssh-symbolic.svg
-%{_iconsdir}/hicolor/*/emblems/remmina-tool-symbolic.svg
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-sftp-symbolic.svg
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-ssh-symbolic.svg
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-tool-symbolic.svg
+%{_iconsdir}/hicolor/*/status/org.remmina.Remmina-status.svg
+%dir %{_iconsdir}/hicolor/apps
+%{_iconsdir}/hicolor/apps/*.*
%{_datadir}/mime/packages/*.xml
%{_datadir}/%{name}/
-%{_datadir}/xsessions/remmina-gnome.desktop
%dir %{_libdir}/remmina/
%dir %{_libdir}/remmina/plugins/
-%{_libdir}/remmina/plugins/remmina-plugin-st.so
%{_mandir}/man1/remmina.1*
-%{_mandir}/man1/gnome-session-remmina.1*
-%{_mandir}/man1/remmina-gnome.1*
+%{_mandir}/man1/remmina-file-wrapper.1*
%files devel
%defattr(644,root,root,755)
%{_includedir}/%{name}/
%{_pkgconfigdir}/%{name}.pc
+%dir %{_libdir}/cmake/%{name}
%{_libdir}/cmake/%{name}/*.cmake
-%if %{with exec}
%files plugins-exec
%defattr(644,root,root,755)
-%{_libdir}/remmina/plugins/remmina-plugin-exec.so
-%endif
+%attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-exec.so
-%if %{with nx}
-%files plugins-nx
+%files plugins-python_wrapper
%defattr(644,root,root,755)
-%{_libdir}/remmina/plugins/remmina-plugin-nx.so
-%{_iconsdir}/hicolor/*/emblems/remmina-nx-symbolic.svg
-%endif
+%attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-python_wrapper.so
%if %{with rdp}
%files plugins-rdp
%defattr(644,root,root,755)
-%{_libdir}/remmina/plugins/remmina-plugin-rdp.so
-%{_iconsdir}/hicolor/*/emblems/remmina-rdp-ssh-symbolic.svg
-%{_iconsdir}/hicolor/*/emblems/remmina-rdp-symbolic.svg
+%attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-rdp.so
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-rdp-ssh-symbolic.svg
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-rdp-symbolic.svg
%endif
%if %{with secret}
%files plugins-secret
%defattr(644,root,root,755)
-%{_libdir}/remmina/plugins/remmina-plugin-secret.so
+%attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-secret.so
%endif
%if %{with spice}
%files plugins-spice
%defattr(644,root,root,755)
-%{_libdir}/remmina/plugins/remmina-plugin-spice.so
-%{_iconsdir}/hicolor/*/emblems/remmina-spice-symbolic.svg
-%{_iconsdir}/hicolor/*/emblems/remmina-spice-ssh-symbolic.svg
-%endif
-
-%if %{with telepathy}
-%files plugins-telepathy
-%defattr(644,root,root,755)
-%{_libdir}/remmina/plugins/remmina-plugin-telepathy.so
-%{_datadir}/dbus-1/services/org.freedesktop.Telepathy.Client.Remmina.service
-%{_datadir}/telepathy/clients/Remmina.client
+%attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-spice.so
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-spice-symbolic.svg
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-spice-ssh-symbolic.svg
%endif
%if %{with vnc}
%files plugins-vnc
%defattr(644,root,root,755)
-%{_libdir}/remmina/plugins/remmina-plugin-vnc.so
-%{_iconsdir}/hicolor/*/emblems/remmina-vnc-ssh-symbolic.svg
-%{_iconsdir}/hicolor/*/emblems/remmina-vnc-symbolic.svg
+%attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-vnc.so
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-vnc-ssh-symbolic.svg
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-vnc-symbolic.svg
%endif
-%if %{with xdmcp}
-%files plugins-xdmcp
+%if %{with www}
+%files plugins-www
%defattr(644,root,root,755)
-%{_libdir}/remmina/plugins/remmina-plugin-xdmcp.so
-%{_iconsdir}/hicolor/*/emblems/remmina-xdmcp-ssh-symbolic.svg
-%{_iconsdir}/hicolor/*/emblems/remmina-xdmcp-symbolic.svg
+%attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-www.so
+%{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-www-symbolic.svg
%endif
%changelog