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): desktop-file-utils
62 Requires(post,postun): gtk-update-icon-cache
63 Requires(post,postun): shared-mime-info
64 Requires: avahi-ui-gtk3 >= 0.6.30
65 Requires: gtk+3 >= 3.14.0
66 Requires: hicolor-icon-theme
67 Obsoletes: remmina-plugins-nx < 1.4.20
68 Obsoletes: remmina-plugins-xdmcp < 1.4.20
69 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
72 Remmina is a remote desktop client written in GTK+, aiming to be
73 useful for system administrators and travelers, who need to work with
74 lots of remote computers in front of either large monitors or tiny
77 Remmina supports multiple network protocols in an integrated and
78 consistent user interface. Currently RDP, VNC, XDMCP and SSH are
81 Please don't forget to install the plugins for the protocols you want
85 Summary: Development files for %{name}
86 Requires: %{name} = %{version}-%{release}
90 The %{name}-devel package contains header files for developing plugins
94 Summary: External execution plugin for Remmina Remote Desktop Client
95 Requires: %{name} = %{version}-%{release}
97 %description plugins-exec
98 Remmina is a remote desktop client written in GTK+, aiming to be
99 useful for system administrators and travelers, who need to work with
100 lots of remote computers in front of either large monitors or tiny
103 This package contains the plugin to execute external processes
104 (commands or applications) from the Remmina window.
106 %package plugins-python_wrapper
107 Summary: Python Wrapper plugin for Remmina Remote Desktop Client
108 Requires: %{name} = %{version}-%{release}
110 %description plugins-python_wrapper
111 Remmina is a remote desktop client written in GTK+, aiming to be
112 useful for system administrators and travelers, who need to work with
113 lots of remote computers in front of either large monitors or tiny
116 This package enables Python plugins for Remmina.
119 Summary: RDP plugin for Remmina Remote Desktop Client
120 Requires: %{name} = %{version}-%{release}
121 Requires: freerdp2-libs >= 2.0.0-0.20190320
123 %description plugins-rdp
124 Remmina is a remote desktop client written in GTK+, aiming to be
125 useful for system administrators and travelers, who need to work with
126 lots of remote computers in front of either large monitors or tiny
129 This package contains the Remote Desktop Protocol (RDP) plugin for the
130 Remmina remote desktop client.
132 %package plugins-secret
133 Summary: Keyring integration for Remmina Remote Desktop Client
134 Requires: %{name} = %{version}-%{release}
135 Provides: %{name}-plugins-gnome%{?_isa} = %{version}-%{release}
136 Obsoletes: remmina-plugins-gnome < %{version}-%{release}
138 %description plugins-secret
139 Remmina is a remote desktop client written in GTK+, aiming to be
140 useful for system administrators and travelers, who need to work with
141 lots of remote computers in front of either large monitors or tiny
144 This package contains the plugin with keyring support for the Remmina
145 remote desktop client.
147 %package plugins-spice
148 Summary: SPICE plugin for Remmina Remote Desktop Client
149 Requires: %{name} = %{version}-%{release}
151 %description plugins-spice
152 Remmina is a remote desktop client written in GTK+, aiming to be
153 useful for system administrators and travelers, who need to work with
154 lots of remote computers in front of either large monitors or tiny
157 This package contains the SPICE plugin for the Remmina remote desktop
161 Summary: VNC plugin for Remmina Remote Desktop Client
162 Requires: %{name} = %{version}-%{release}
164 %description plugins-vnc
165 Remmina is a remote desktop client written in GTK+, aiming to be
166 useful for system administrators and travelers, who need to work with
167 lots of remote computers in front of either large monitors or tiny
170 This package contains the VNC plugin for the Remmina remote desktop
174 Summary: Browser plugin for Remmina Remote Desktop Client
175 Requires: %{name} = %{version}-%{release}
177 %description plugins-www
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 www 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
196 -DCMAKE_INSTALL_LIBDIR=%{_lib} \
197 -DCMAKE_INSTALL_PREFIX=%{_prefix} \
198 -DWITH_APPINDICATOR=ON \
203 -DWITH_ICON_CACHE=OFF \
204 %{cmake_on_off secret WITH_LIBSECRET} \
205 %{cmake_on_off vnc WITH_LIBVNCSERVER} \
206 %{cmake_on_off spice WITH_SPICE} \
207 -DWITH_UPDATE_DESKTOP_DB=OFF \
208 %{cmake_on_off vte WITH_VTE} \
209 %{cmake_on_off www WITH_WWW} \
215 rm -rf $RPM_BUILD_ROOT
218 DESTDIR=$RPM_BUILD_ROOT
221 install -d $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/
222 cp -pr cmake/*.cmake $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/
223 cp -pr config.h.in $RPM_BUILD_ROOT%{_includedir}/%{name}/
224 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_includedir}/%{name}/
226 # not supported by glibc yet
227 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{ber,br,ckb,eo,ie,ka,hi,shn}
232 rm -rf $RPM_BUILD_ROOT
235 %update_icon_cache hicolor
236 %update_desktop_database
237 %update_mime_database
240 %update_icon_cache hicolor
241 %update_desktop_database
242 %update_mime_database
244 %files -f %{name}.lang
245 %defattr(644,root,root,755)
246 %doc LICENSE AUTHORS ChangeLog README.md
247 %attr(755,root,root) %{_bindir}/remmina-file-wrapper
248 %attr(755,root,root) %{_bindir}/remmina
249 %{_datadir}/metainfo/*.appdata.xml
250 %{_desktopdir}/*.desktop
251 %{_iconsdir}/hicolor/*/actions/*.*
252 %{_iconsdir}/hicolor/*/apps/*.*
253 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-sftp-symbolic.svg
254 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-ssh-symbolic.svg
255 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-tool-symbolic.svg
256 %{_iconsdir}/hicolor/*/status/org.remmina.Remmina-status.svg
257 %dir %{_iconsdir}/hicolor/apps
258 %{_iconsdir}/hicolor/apps/*.*
259 %{_datadir}/mime/packages/*.xml
261 %dir %{_libdir}/remmina/
262 %dir %{_libdir}/remmina/plugins/
263 %{_mandir}/man1/remmina.1*
264 %{_mandir}/man1/remmina-file-wrapper.1*
267 %defattr(644,root,root,755)
268 %{_includedir}/%{name}/
269 %{_pkgconfigdir}/%{name}.pc
270 %dir %{_libdir}/cmake/%{name}
271 %{_libdir}/cmake/%{name}/*.cmake
274 %defattr(644,root,root,755)
275 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-exec.so
277 %files plugins-python_wrapper
278 %defattr(644,root,root,755)
279 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-python_wrapper.so
283 %defattr(644,root,root,755)
284 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-rdp.so
285 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-rdp-ssh-symbolic.svg
286 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-rdp-symbolic.svg
290 %files plugins-secret
291 %defattr(644,root,root,755)
292 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-secret.so
297 %defattr(644,root,root,755)
298 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-spice.so
299 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-spice-symbolic.svg
300 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-spice-ssh-symbolic.svg
305 %defattr(644,root,root,755)
306 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-vnc.so
307 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-vnc-ssh-symbolic.svg
308 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-vnc-symbolic.svg
313 %defattr(644,root,root,755)
314 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-www.so
315 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-www-symbolic.svg