2 # note: disabling plugins will still build them if deps are met
5 %bcond_without rdp # do not build rdp plugin
6 %bcond_without secret # do not build secret plugin
7 %bcond_without spice # do not build spice plugin
8 %bcond_without vnc # do not build vnc plugin
9 %bcond_without vte # do not build vte plugin
10 %bcond_without www # do not build www plugin
12 Summary: Remote Desktop Client
16 License: GPLv2+ and MIT
17 Group: X11/Applications
18 Source0: https://gitlab.com/Remmina/Remmina/-/archive/v%{version}/Remmina-v%{version}.tar.bz2
19 # Source0-md5: 72d0975ad6899c9017ad9e3699933e46
20 # Cmake helper file to easy build plugins outside remmina source tree
21 # See http://www.muflone.com/remmina-plugin-rdesktop/english/install.html which
22 # use http://www.muflone.com/remmina-plugin-builder/ with remmina bundled source.
23 # So we can't use it directly only as instructions.
24 Source1: pluginBuild-CMakeLists.txt
25 Patch0: fix-shebangs.patch
26 URL: http://remmina.org
27 BuildRequires: atk-devel
28 BuildRequires: avahi-devel >= 0.6.30
29 BuildRequires: avahi-ui-gtk3-devel >= 0.6.30
30 BuildRequires: cairo-devel
31 BuildRequires: cmake >= 3.10.0
32 %{?with_rdp:BuildRequires: cups-devel}
33 %{?with_rdp:BuildRequires: freerdp2-devel >= 2.0.0-0.20190320}
34 BuildRequires: gdk-pixbuf2-devel
35 BuildRequires: gettext-tools
36 BuildRequires: glib2-devel
37 BuildRequires: gtk+3-devel >= 3.14.0
38 %{?with_www:BuildRequires: gtk-webkit4-devel}
39 BuildRequires: harfbuzz-devel
40 BuildRequires: json-glib-devel
41 BuildRequires: libayatana-appindicator-gtk3-devel
42 BuildRequires: libgcrypt-devel
43 %{?with_secret:BuildRequires: libsecret-devel}
44 BuildRequires: libsodium-devel
45 %{?with_www:BuildRequires: libsoup3-devel}
46 BuildRequires: libssh-devel >= 0.6
47 %{?with_vnc:BuildRequires: libvncserver-devel}
48 BuildRequires: pango-devel
49 BuildRequires: pcre2-8-devel
50 BuildRequires: pkgconfig
51 BuildRequires: python3-devel
52 BuildRequires: rpmbuild(macros) >= 1.742
54 BuildRequires: spice-glib-devel
55 BuildRequires: spice-gtk-devel
56 BuildRequires: spice-protocol
58 BuildRequires: wayland-devel
59 %{?with_vte:BuildRequires: vte-devel >= 0.38}
60 BuildRequires: xorg-lib-libxkbcommon-devel
61 Requires(post,postun): gtk-update-icon-cache
62 Requires: avahi-ui-gtk3 >= 0.6.30
63 Requires: gtk+3 >= 3.14.0
64 Requires: hicolor-icon-theme
65 Obsoletes: remmina-plugins-nx < 1.4.20
66 Obsoletes: remmina-plugins-xdmcp < 1.4.20
67 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
70 Remmina is a remote desktop client written in GTK+, aiming to be
71 useful for system administrators and travelers, who need to work with
72 lots of remote computers in front of either large monitors or tiny
75 Remmina supports multiple network protocols in an integrated and
76 consistent user interface. Currently RDP, VNC, XDMCP and SSH are
79 Please don't forget to install the plugins for the protocols you want
83 Summary: Development files for %{name}
84 Requires: %{name} = %{version}-%{release}
88 The %{name}-devel package contains header files for developing plugins
92 Summary: External execution plugin for Remmina Remote Desktop Client
93 Requires: %{name} = %{version}-%{release}
95 %description plugins-exec
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 plugin to execute external processes
102 (commands or applications) from the Remmina window.
104 %package plugins-python_wrapper
105 Summary: Python Wrapper plugin for Remmina Remote Desktop Client
106 Requires: %{name} = %{version}-%{release}
108 %description plugins-python_wrapper
109 Remmina is a remote desktop client written in GTK+, aiming to be
110 useful for system administrators and travelers, who need to work with
111 lots of remote computers in front of either large monitors or tiny
114 This package enables Python plugins for Remmina.
117 Summary: RDP plugin for Remmina Remote Desktop Client
118 Requires: %{name} = %{version}-%{release}
119 Requires: freerdp2-libs >= 2.0.0-0.20190320
121 %description plugins-rdp
122 Remmina is a remote desktop client written in GTK+, aiming to be
123 useful for system administrators and travelers, who need to work with
124 lots of remote computers in front of either large monitors or tiny
127 This package contains the Remote Desktop Protocol (RDP) plugin for the
128 Remmina remote desktop client.
130 %package plugins-secret
131 Summary: Keyring integration for Remmina Remote Desktop Client
132 Requires: %{name} = %{version}-%{release}
133 Provides: %{name}-plugins-gnome%{?_isa} = %{version}-%{release}
134 Obsoletes: remmina-plugins-gnome < %{version}-%{release}
136 %description plugins-secret
137 Remmina is a remote desktop client written in GTK+, aiming to be
138 useful for system administrators and travelers, who need to work with
139 lots of remote computers in front of either large monitors or tiny
142 This package contains the plugin with keyring support for the Remmina
143 remote desktop client.
145 %package plugins-spice
146 Summary: SPICE plugin for Remmina Remote Desktop Client
147 Requires: %{name} = %{version}-%{release}
149 %description plugins-spice
150 Remmina is a remote desktop client written in GTK+, aiming to be
151 useful for system administrators and travelers, who need to work with
152 lots of remote computers in front of either large monitors or tiny
155 This package contains the SPICE plugin for the Remmina remote desktop
159 Summary: VNC plugin for Remmina Remote Desktop Client
160 Requires: %{name} = %{version}-%{release}
162 %description plugins-vnc
163 Remmina is a remote desktop client written in GTK+, aiming to be
164 useful for system administrators and travelers, who need to work with
165 lots of remote computers in front of either large monitors or tiny
168 This package contains the VNC plugin for the Remmina remote desktop
172 Summary: Browser plugin for Remmina Remote Desktop Client
173 Requires: %{name} = %{version}-%{release}
175 %description plugins-www
176 Remmina is a remote desktop client written in GTK+, aiming to be
177 useful for system administrators and travelers, who need to work with
178 lots of remote computers in front of either large monitors or tiny
181 This package contains the www plugin for the Remmina remote desktop
185 %setup -qn Remmina-v%{version}
186 %{__sed} -i s/^pt_PT$// po/LINGUAS
187 %{__rm} -f po/pt_PT.po
194 -DCMAKE_INSTALL_LIBDIR=%{_lib} \
195 -DCMAKE_INSTALL_PREFIX=%{_prefix} \
196 -DWITH_APPINDICATOR=ON \
201 -DWITH_ICON_CACHE=OFF \
202 -DWITH_LIBSECRET=ON \
203 %{cmake_on_off vnc WITH_LIBVNCSERVER} \
204 %{cmake_on_off spice WITH_SPICE} \
205 -DWITH_UPDATE_DESKTOP_DB=OFF \
206 %{cmake_on_off vte WITH_VTE} \
212 rm -rf $RPM_BUILD_ROOT
215 DESTDIR=$RPM_BUILD_ROOT
218 install -d $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/
219 cp -pr cmake/*.cmake $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/
220 cp -pr config.h.in $RPM_BUILD_ROOT%{_includedir}/%{name}/
221 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_includedir}/%{name}/
223 # not supported by glibc yet
224 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{ber,br,ckb,eo,ie,ka,hi,shn}
229 rm -rf $RPM_BUILD_ROOT
232 %update_icon_cache hicolor
235 %update_icon_cache hicolor
237 %files -f %{name}.lang
238 %defattr(644,root,root,755)
239 %doc LICENSE AUTHORS ChangeLog README.md
240 %attr(755,root,root) %{_bindir}/remmina-file-wrapper
241 %attr(755,root,root) %{_bindir}/remmina
242 %{_datadir}/metainfo/*.appdata.xml
243 %{_desktopdir}/*.desktop
244 %{_iconsdir}/hicolor/*/actions/*.*
245 %{_iconsdir}/hicolor/*/apps/*.*
246 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-sftp-symbolic.svg
247 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-ssh-symbolic.svg
248 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-tool-symbolic.svg
249 %{_iconsdir}/hicolor/*/status/org.remmina.Remmina-status.svg
250 %dir %{_iconsdir}/hicolor/apps
251 %{_iconsdir}/hicolor/apps/*.*
252 %{_datadir}/mime/packages/*.xml
254 %dir %{_libdir}/remmina/
255 %dir %{_libdir}/remmina/plugins/
256 %{_mandir}/man1/remmina.1*
257 %{_mandir}/man1/remmina-file-wrapper.1*
260 %defattr(644,root,root,755)
261 %{_includedir}/%{name}/
262 %{_pkgconfigdir}/%{name}.pc
263 %dir %{_libdir}/cmake/%{name}
264 %{_libdir}/cmake/%{name}/*.cmake
267 %defattr(644,root,root,755)
268 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-exec.so
270 %files plugins-python_wrapper
271 %defattr(644,root,root,755)
272 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-python_wrapper.so
276 %defattr(644,root,root,755)
277 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-rdp.so
278 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-rdp-ssh-symbolic.svg
279 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-rdp-symbolic.svg
283 %files plugins-secret
284 %defattr(644,root,root,755)
285 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-secret.so
290 %defattr(644,root,root,755)
291 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-spice.so
292 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-spice-symbolic.svg
293 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-spice-ssh-symbolic.svg
298 %defattr(644,root,root,755)
299 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-vnc.so
300 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-vnc-ssh-symbolic.svg
301 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-vnc-symbolic.svg
306 %defattr(644,root,root,755)
307 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-www.so
308 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-www-symbolic.svg