2 # note: disabling plugins will still build them if deps are met
5 %bcond_without exec # do not build exec plugin
6 %bcond_with nx # build nx plugin
7 %bcond_without rdp # do not build rdp plugin
8 %bcond_without secret # do not build secret plugin
9 %bcond_without spice # do not build spice plugin
10 %bcond_without telepathy # do not build telepathy plugin
11 %bcond_without vnc # do not build vnc plugin
12 %bcond_without vte # do not build vte plugin
13 %bcond_without xdmcp # do not build xdmcp plugin
15 Summary: Remote Desktop Client
19 License: GPLv2+ and MIT
20 Group: X11/Applications
21 Source0: https://gitlab.com/Remmina/Remmina/-/archive/v1.3.4/Remmina-v%{version}.tar.bz2
22 # Source0-md5: cd00d28c5b895037901d8aa9f9ace9fc
23 # Cmake helper file to easy build plugins outside remmina source tree
24 # See http://www.muflone.com/remmina-plugin-rdesktop/english/install.html which
25 # use http://www.muflone.com/remmina-plugin-builder/ with remmina bundled source.
26 # So we can't use it directly only as instructions.
27 Source1: pluginBuild-CMakeLists.txt
28 URL: http://remmina.org
29 BuildRequires: appstream-glib
30 BuildRequires: avahi-ui-gtk3-devel >= 0.6.30
31 BuildRequires: cmake >= 2.8
32 BuildRequires: desktop-file-utils
33 %{?with_rdp:BuildRequires: freerdp2-devel >= 2.0.0-0.20190320}
34 BuildRequires: gettext
35 BuildRequires: gtk+3-devel
36 BuildRequires: intltool
37 BuildRequires: json-glib-devel
38 BuildRequires: libappindicator-gtk3-devel
39 BuildRequires: libgcrypt-devel
40 %{?with_secret:BuildRequires: libsecret-devel}
41 BuildRequires: libsoup-devel
42 BuildRequires: libssh-devel >= 0.6
43 %{?with_vnc:BuildRequires: libvncserver-devel}
44 BuildRequires: rpmbuild(macros) >= 1.742
45 %{?with_spice:BuildRequires: spice-gtk-devel}
46 %{?with_telepathy:BuildRequires: telepathy-glib-devel}
47 %{?with_vte:BuildRequires: vte2.90-devel}
48 BuildRequires: xorg-lib-libxkbfile-devel
49 Requires(post,postun): gtk-update-icon-cache
50 Requires: avahi-ui-gtk3 >= 0.6.30
51 Requires: hicolor-icon-theme
52 Requires: libssh >= 0.6
53 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56 Remmina is a remote desktop client written in GTK+, aiming to be
57 useful for system administrators and travelers, who need to work with
58 lots of remote computers in front of either large monitors or tiny
61 Remmina supports multiple network protocols in an integrated and
62 consistent user interface. Currently RDP, VNC, XDMCP and SSH are
65 Please don't forget to install the plugins for the protocols you want
69 Summary: Development files for %{name}
70 Requires: %{name} = %{version}-%{release}
74 The %{name}-devel package contains header files for developing plugins
78 Summary: External execution plugin for Remmina Remote Desktop Client
79 Requires: %{name} = %{version}-%{release}
81 %description plugins-exec
82 Remmina is a remote desktop client written in GTK+, aiming to be
83 useful for system administrators and travelers, who need to work with
84 lots of remote computers in front of either large monitors or tiny
87 This package contains the plugin to execute external processes
88 (commands or applications) from the Remmina window.
91 Summary: NX plugin for Remmina Remote Desktop Client
92 Requires: %{name} = %{version}-%{release}
95 %description plugins-nx
96 Remmina is a remote desktop client written in GTK+, aiming to be
97 useful for system administrators and travelers, who need to work with
98 lots of remote computers in front of either large monitors or tiny
101 This package contains the NX plugin for the Remmina remote desktop
105 Summary: RDP plugin for Remmina Remote Desktop Client
106 Requires: %{name} = %{version}-%{release}
107 Requires: freerdp2-libs >= 2.0.0-0.20190320
109 %description plugins-rdp
110 Remmina is a remote desktop client written in GTK+, aiming to be
111 useful for system administrators and travelers, who need to work with
112 lots of remote computers in front of either large monitors or tiny
115 This package contains the Remote Desktop Protocol (RDP) plugin for the
116 Remmina remote desktop client.
118 %package plugins-secret
119 Summary: Keyring integration for Remmina Remote Desktop Client
120 Requires: %{name} = %{version}-%{release}
121 Provides: %{name}-plugins-gnome%{?_isa} = %{version}-%{release}
122 Obsoletes: remmina-plugins-gnome < %{version}-%{release}
124 %description plugins-secret
125 Remmina is a remote desktop client written in GTK+, aiming to be
126 useful for system administrators and travelers, who need to work with
127 lots of remote computers in front of either large monitors or tiny
130 This package contains the plugin with keyring support for the Remmina
131 remote desktop client.
133 %package plugins-spice
134 Summary: SPICE plugin for Remmina Remote Desktop Client
135 Requires: %{name} = %{version}-%{release}
137 %description plugins-spice
138 Remmina is a remote desktop client written in GTK+, aiming to be
139 useful for system administrators and travelers, who need to work with
140 lots of remote computers in front of either large monitors or tiny
143 This package contains the SPICE plugin for the Remmina remote desktop
146 %package plugins-telepathy
147 Summary: Telepathy plugin for Remmina Remote Desktop Client
148 Requires: %{name} = %{version}-%{release}
150 %description plugins-telepathy
151 Remmina is a remote desktop client written in GTK+, aiming to be
152 useful for system administrators and travelers, who need to work with
153 lots of remote computers in front of either large monitors or tiny
156 This package contains the Telepathy plugin for the Remmina remote
160 Summary: VNC plugin for Remmina Remote Desktop Client
161 Requires: %{name} = %{version}-%{release}
163 %description plugins-vnc
164 Remmina is a remote desktop client written in GTK+, aiming to be
165 useful for system administrators and travelers, who need to work with
166 lots of remote computers in front of either large monitors or tiny
169 This package contains the VNC plugin for the Remmina remote desktop
172 %package plugins-xdmcp
173 Summary: XDMCP plugin for Remmina Remote Desktop Client
174 Requires: %{name} = %{version}-%{release}
175 Requires: xorg-xserver-Xephyr
177 %description plugins-xdmcp
178 Remmina is a remote desktop client written in GTK+, aiming to be
179 useful for system administrators and travelers, who need to work with
180 lots of remote computers in front of either large monitors or tiny
183 This package contains the XDMCP plugin for the Remmina remote desktop
187 %setup -qn Remmina-v%{version}
188 %{__sed} -i s/^pt_PT$// po/LINGUAS
189 %{__rm} -f po/pt_PT.po
194 %cmake --build=build \
195 -DCMAKE_INSTALL_LIBDIR=%{_lib} \
196 -DCMAKE_INSTALL_PREFIX=%{_prefix} \
197 -DWITH_APPINDICATOR=ON \
199 %{cmake_on_off rdp FREERDP} \
203 %{cmake_on_off vnc LIBVNCSERVER} \
204 %{cmake_on_off spice SPICE} \
205 %{cmake_on_off telepathy TELEPATHY} \
206 %{cmake_on_off vte VTE} \
212 rm -rf $RPM_BUILD_ROOT
214 DESTDIR=$RPM_BUILD_ROOT
216 install -d $RPM_BUILD_ROOT/%{_libdir}/cmake/%{name}/
217 cp -pr cmake/*.cmake $RPM_BUILD_ROOT/%{_libdir}/cmake/%{name}/
218 cp -pr config.h.in $RPM_BUILD_ROOT/%{_includedir}/%{name}/
219 cp -p %{SOURCE1} $RPM_BUILD_ROOT/%{_includedir}/%{name}/
224 rm -rf $RPM_BUILD_ROOT
227 %update_icon_cache hicolor
230 %update_icon_cache hicolor
232 %files -f %{name}.lang
233 %defattr(644,root,root,755)
234 %doc LICENSE AUTHORS ChangeLog README.md
235 %attr(755,root,root) %{_bindir}/gnome-session-remmina
236 %attr(755,root,root) %{_bindir}/remmina
237 %attr(755,root,root) %{_bindir}/remmina-gnome
238 %{_datadir}/metainfo/*.appdata.xml
239 %{_desktopdir}/*.desktop
240 %{_iconsdir}/hicolor/*/actions/*.*
241 %{_iconsdir}/hicolor/*/apps/*.*
242 %{_iconsdir}/hicolor/*/emblems/remmina-sftp-symbolic.svg
243 %{_iconsdir}/hicolor/*/emblems/remmina-ssh-symbolic.svg
244 %{_iconsdir}/hicolor/*/emblems/remmina-tool-symbolic.svg
245 %{_datadir}/mime/packages/*.xml
247 %{_datadir}/xsessions/remmina-gnome.desktop
248 %dir %{_libdir}/remmina/
249 %dir %{_libdir}/remmina/plugins/
250 %{_libdir}/remmina/plugins/remmina-plugin-st.so
251 %{_mandir}/man1/remmina.1*
252 %{_mandir}/man1/gnome-session-remmina.1*
253 %{_mandir}/man1/remmina-gnome.1*
256 %defattr(644,root,root,755)
257 %{_includedir}/%{name}/
258 %{_pkgconfigdir}/%{name}.pc
259 %dir %{_libdir}/cmake/%{name}
260 %{_libdir}/cmake/%{name}/*.cmake
264 %defattr(644,root,root,755)
265 %{_libdir}/remmina/plugins/remmina-plugin-exec.so
270 %defattr(644,root,root,755)
271 %{_libdir}/remmina/plugins/remmina-plugin-nx.so
272 %{_iconsdir}/hicolor/*/emblems/remmina-nx-symbolic.svg
277 %defattr(644,root,root,755)
278 %{_libdir}/remmina/plugins/remmina-plugin-rdp.so
279 %{_iconsdir}/hicolor/*/emblems/remmina-rdp-ssh-symbolic.svg
280 %{_iconsdir}/hicolor/*/emblems/remmina-rdp-symbolic.svg
284 %files plugins-secret
285 %defattr(644,root,root,755)
286 %{_libdir}/remmina/plugins/remmina-plugin-secret.so
291 %defattr(644,root,root,755)
292 %{_libdir}/remmina/plugins/remmina-plugin-spice.so
293 %{_iconsdir}/hicolor/*/emblems/remmina-spice-symbolic.svg
294 %{_iconsdir}/hicolor/*/emblems/remmina-spice-ssh-symbolic.svg
297 %if %{with telepathy}
298 %files plugins-telepathy
299 %defattr(644,root,root,755)
300 %{_libdir}/remmina/plugins/remmina-plugin-telepathy.so
301 %{_datadir}/dbus-1/services/org.freedesktop.Telepathy.Client.Remmina.service
302 %{_datadir}/telepathy/clients/Remmina.client
307 %defattr(644,root,root,755)
308 %{_libdir}/remmina/plugins/remmina-plugin-vnc.so
309 %{_iconsdir}/hicolor/*/emblems/remmina-vnc-ssh-symbolic.svg
310 %{_iconsdir}/hicolor/*/emblems/remmina-vnc-symbolic.svg
315 %defattr(644,root,root,755)
316 %{_libdir}/remmina/plugins/remmina-plugin-xdmcp.so
317 %{_iconsdir}/hicolor/*/emblems/remmina-xdmcp-ssh-symbolic.svg
318 %{_iconsdir}/hicolor/*/emblems/remmina-xdmcp-symbolic.svg