]> git.pld-linux.org Git - packages/remmina.git/blob - remmina.spec
- fixed conditional build of NX plugin
[packages/remmina.git] / remmina.spec
1 #
2 # note: disabling plugins will still build them if deps are met
3 #
4 # Conditional build:
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_with     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  www             # do not build www plugin
14 %bcond_without  xdmcp           # do not build xdmcp plugin
15 #
16 Summary:        Remote Desktop Client
17 Name:           remmina
18 Version:        1.4.7
19 Release:        1
20 License:        GPLv2+ and MIT
21 Group:          X11/Applications
22 Source0:        https://gitlab.com/Remmina/Remmina/-/archive/v%{version}/Remmina-v%{version}.tar.bz2
23 # Source0-md5:  17c9f9530b9863365e9acf18183c69eb
24 # Cmake helper file to easy build plugins outside remmina source tree
25 # See http://www.muflone.com/remmina-plugin-rdesktop/english/install.html which
26 # use http://www.muflone.com/remmina-plugin-builder/ with remmina bundled source.
27 # So we can't use it directly only as instructions.
28 Source1:        pluginBuild-CMakeLists.txt
29 Patch0:         fix-shebangs.patch
30 URL:            http://remmina.org
31 BuildRequires:  appstream-glib
32 BuildRequires:  avahi-ui-gtk3-devel >= 0.6.30
33 BuildRequires:  cmake >= 2.8
34 BuildRequires:  desktop-file-utils
35 %{?with_rdp:BuildRequires:      freerdp2-devel >= 2.0.0-0.20190320}
36 BuildRequires:  gettext
37 BuildRequires:  gtk+3-devel
38 %{?with_www:BuildRequires:      gtk-webkit4-devel}
39 BuildRequires:  intltool
40 BuildRequires:  json-glib-devel
41 BuildRequires:  libappindicator-gtk3-devel
42 BuildRequires:  libgcrypt-devel
43 %{?with_secret:BuildRequires:   libsecret-devel}
44 BuildRequires:  libsoup-devel
45 %{?with_nx:BuildRequires:       libssh-devel >= 0.6}
46 %{?with_vnc:BuildRequires:      libvncserver-devel}
47 BuildRequires:  rpmbuild(macros) >= 1.742
48 %{?with_spice:BuildRequires:    spice-gtk-devel}
49 %{?with_telepathy:BuildRequires:        telepathy-glib-devel}
50 %{?with_vte:BuildRequires:      vte-devel}
51 BuildRequires:  xorg-lib-libxkbfile-devel
52 Requires(post,postun):  gtk-update-icon-cache
53 Requires:       avahi-ui-gtk3 >= 0.6.30
54 Requires:       hicolor-icon-theme
55 Requires:       libssh >= 0.6
56 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
57
58 %description
59 Remmina is a remote desktop client written in GTK+, aiming to be
60 useful for system administrators and travelers, who need to work with
61 lots of remote computers in front of either large monitors or tiny
62 net-books.
63
64 Remmina supports multiple network protocols in an integrated and
65 consistent user interface. Currently RDP, VNC, XDMCP and SSH are
66 supported.
67
68 Please don't forget to install the plugins for the protocols you want
69 to use.
70
71 %package        devel
72 Summary:        Development files for %{name}
73 Requires:       %{name} = %{version}-%{release}
74 Requires:       pkgconfig
75
76 %description    devel
77 The %{name}-devel package contains header files for developing plugins
78 for %{name}.
79
80 %package        plugins-exec
81 Summary:        External execution plugin for Remmina Remote Desktop Client
82 Requires:       %{name} = %{version}-%{release}
83
84 %description    plugins-exec
85 Remmina is a remote desktop client written in GTK+, aiming to be
86 useful for system administrators and travelers, who need to work with
87 lots of remote computers in front of either large monitors or tiny
88 net-books.
89
90 This package contains the plugin to execute external processes
91 (commands or applications) from the Remmina window.
92
93 %package        plugins-nx
94 Summary:        NX plugin for Remmina Remote Desktop Client
95 Requires:       %{name} = %{version}-%{release}
96 Requires:       nxproxy
97
98 %description    plugins-nx
99 Remmina is a remote desktop client written in GTK+, aiming to be
100 useful for system administrators and travelers, who need to work with
101 lots of remote computers in front of either large monitors or tiny
102 net-books.
103
104 This package contains the NX plugin for the Remmina remote desktop
105 client.
106
107 %package        plugins-rdp
108 Summary:        RDP plugin for Remmina Remote Desktop Client
109 Requires:       %{name} = %{version}-%{release}
110 Requires:       freerdp2-libs >= 2.0.0-0.20190320
111
112 %description    plugins-rdp
113 Remmina is a remote desktop client written in GTK+, aiming to be
114 useful for system administrators and travelers, who need to work with
115 lots of remote computers in front of either large monitors or tiny
116 net-books.
117
118 This package contains the Remote Desktop Protocol (RDP) plugin for the
119 Remmina remote desktop client.
120
121 %package        plugins-secret
122 Summary:        Keyring integration for Remmina Remote Desktop Client
123 Requires:       %{name} = %{version}-%{release}
124 Provides:       %{name}-plugins-gnome%{?_isa} = %{version}-%{release}
125 Obsoletes:      remmina-plugins-gnome < %{version}-%{release}
126
127 %description    plugins-secret
128 Remmina is a remote desktop client written in GTK+, aiming to be
129 useful for system administrators and travelers, who need to work with
130 lots of remote computers in front of either large monitors or tiny
131 net-books.
132
133 This package contains the plugin with keyring support for the Remmina
134 remote desktop client.
135
136 %package        plugins-spice
137 Summary:        SPICE plugin for Remmina Remote Desktop Client
138 Requires:       %{name} = %{version}-%{release}
139
140 %description    plugins-spice
141 Remmina is a remote desktop client written in GTK+, aiming to be
142 useful for system administrators and travelers, who need to work with
143 lots of remote computers in front of either large monitors or tiny
144 net-books.
145
146 This package contains the SPICE plugin for the Remmina remote desktop
147 client.
148
149 %package        plugins-telepathy
150 Summary:        Telepathy plugin for Remmina Remote Desktop Client
151 Requires:       %{name} = %{version}-%{release}
152
153 %description    plugins-telepathy
154 Remmina is a remote desktop client written in GTK+, aiming to be
155 useful for system administrators and travelers, who need to work with
156 lots of remote computers in front of either large monitors or tiny
157 net-books.
158
159 This package contains the Telepathy plugin for the Remmina remote
160 desktop client.
161
162 %package        plugins-vnc
163 Summary:        VNC plugin for Remmina Remote Desktop Client
164 Requires:       %{name} = %{version}-%{release}
165
166 %description    plugins-vnc
167 Remmina is a remote desktop client written in GTK+, aiming to be
168 useful for system administrators and travelers, who need to work with
169 lots of remote computers in front of either large monitors or tiny
170 net-books.
171
172 This package contains the VNC plugin for the Remmina remote desktop
173 client.
174
175 %package        plugins-www
176 Summary:        Browser plugin for Remmina Remote Desktop Client
177 Requires:       %{name} = %{version}-%{release}
178
179 %description    plugins-www
180 Remmina is a remote desktop client written in GTK+, aiming to be
181 useful for system administrators and travelers, who need to work with
182 lots of remote computers in front of either large monitors or tiny
183 net-books.
184
185 This package contains the www plugin for the Remmina remote desktop
186 client.
187
188 %package        plugins-xdmcp
189 Summary:        XDMCP plugin for Remmina Remote Desktop Client
190 Requires:       %{name} = %{version}-%{release}
191 Requires:       xorg-xserver-Xephyr
192
193 %description    plugins-xdmcp
194 Remmina is a remote desktop client written in GTK+, aiming to be
195 useful for system administrators and travelers, who need to work with
196 lots of remote computers in front of either large monitors or tiny
197 net-books.
198
199 This package contains the XDMCP plugin for the Remmina remote desktop
200 client.
201
202 %prep
203 %setup -qn Remmina-v%{version}
204 %{__sed} -i s/^pt_PT$// po/LINGUAS
205 %{__rm} -f po/pt_PT.po
206 %patch0 -p1
207
208 %build
209 mkdir -p build
210
211 %cmake --build=build \
212         -DCMAKE_INSTALL_LIBDIR=%{_lib} \
213         -DCMAKE_INSTALL_PREFIX=%{_prefix} \
214         -DWITH_APPINDICATOR=ON \
215         -DWITH_AVAHI=ON \
216         %{cmake_on_off rdp FREERDP} \
217         -DWITH_GCRYPT=ON \
218         -DWITH_GETTEXT=ON \
219         -DWITH_LIBSSH=OFF \
220         %{cmake_on_off nx WITH_LIBSSH} \
221         %{cmake_on_off vnc LIBVNCSERVER} \
222         %{cmake_on_off spice SPICE} \
223         %{cmake_on_off telepathy TELEPATHY} \
224         %{cmake_on_off vte VTE} \
225         .
226
227 %{__make}
228
229 %install
230 rm -rf $RPM_BUILD_ROOT
231 %{__make} install \
232         DESTDIR=$RPM_BUILD_ROOT
233
234 install -d $RPM_BUILD_ROOT/%{_libdir}/cmake/%{name}/
235 cp -pr cmake/*.cmake $RPM_BUILD_ROOT/%{_libdir}/cmake/%{name}/
236 cp -pr config.h.in $RPM_BUILD_ROOT/%{_includedir}/%{name}/
237 cp -p %{SOURCE1} $RPM_BUILD_ROOT/%{_includedir}/%{name}/
238
239 # not supported by glibc yet
240 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{br,ckb,eo,ie,hi,shn}
241
242 %find_lang %{name}
243
244 %clean
245 rm -rf $RPM_BUILD_ROOT
246
247 %post
248 %update_icon_cache hicolor
249
250 %postun
251 %update_icon_cache hicolor
252
253 %files -f %{name}.lang
254 %defattr(644,root,root,755)
255 %doc LICENSE AUTHORS ChangeLog README.md
256 %attr(755,root,root) %{_bindir}/remmina-file-wrapper
257 %attr(755,root,root) %{_bindir}/remmina
258 %{_datadir}/metainfo/*.appdata.xml
259 %{_desktopdir}/*.desktop
260 %{_iconsdir}/hicolor/*/actions/*.*
261 %{_iconsdir}/hicolor/*/apps/*.*
262 %{_iconsdir}/hicolor/*/emblems/remmina-sftp-symbolic.svg
263 %{_iconsdir}/hicolor/*/emblems/remmina-ssh-symbolic.svg
264 %{_iconsdir}/hicolor/*/emblems/remmina-tool-symbolic.svg
265 %dir %{_iconsdir}/hicolor/apps
266 %{_iconsdir}/hicolor/apps/*.*
267 %dir %{_iconsdir}/hicolor/scalable/panel
268 %{_iconsdir}/hicolor/scalable/panel/*.*
269 %{_datadir}/mime/packages/*.xml
270 %{_datadir}/%{name}/
271 %dir %{_libdir}/remmina/
272 %dir %{_libdir}/remmina/plugins/
273 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-st.so
274 %{_mandir}/man1/remmina.1*
275 %{_mandir}/man1/remmina-file-wrapper.1*
276
277 %files devel
278 %defattr(644,root,root,755)
279 %{_includedir}/%{name}/
280 %{_pkgconfigdir}/%{name}.pc
281 %dir %{_libdir}/cmake/%{name}
282 %{_libdir}/cmake/%{name}/*.cmake
283
284 %if %{with exec}
285 %files plugins-exec
286 %defattr(644,root,root,755)
287 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-exec.so
288 %endif
289
290 %if %{with nx}
291 %files plugins-nx
292 %defattr(644,root,root,755)
293 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-nx.so
294 %{_iconsdir}/hicolor/*/emblems/remmina-nx-symbolic.svg
295 %endif
296
297 %if %{with rdp}
298 %files plugins-rdp
299 %defattr(644,root,root,755)
300 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-rdp.so
301 %{_iconsdir}/hicolor/*/emblems/remmina-rdp-ssh-symbolic.svg
302 %{_iconsdir}/hicolor/*/emblems/remmina-rdp-symbolic.svg
303 %endif
304
305 %if %{with secret}
306 %files plugins-secret
307 %defattr(644,root,root,755)
308 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-secret.so
309 %endif
310
311 %if %{with spice}
312 %files plugins-spice
313 %defattr(644,root,root,755)
314 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-spice.so
315 %{_iconsdir}/hicolor/*/emblems/remmina-spice-symbolic.svg
316 %{_iconsdir}/hicolor/*/emblems/remmina-spice-ssh-symbolic.svg
317 %endif
318
319 %if %{with telepathy}
320 %files plugins-telepathy
321 %defattr(644,root,root,755)
322 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-telepathy.so
323 %{_datadir}/dbus-1/services/org.freedesktop.Telepathy.Client.Remmina.service
324 %{_datadir}/telepathy/clients/Remmina.client
325 %endif
326
327 %if %{with vnc}
328 %files plugins-vnc
329 %defattr(644,root,root,755)
330 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-vnc.so
331 %{_iconsdir}/hicolor/*/emblems/remmina-vnc-ssh-symbolic.svg
332 %{_iconsdir}/hicolor/*/emblems/remmina-vnc-symbolic.svg
333 %endif
334
335 %if %{with www}
336 %files plugins-www
337 %defattr(644,root,root,755)
338 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-www.so
339 %{_iconsdir}/hicolor/*/emblems/remmina-www-symbolic.svg
340 %endif
341
342 %if %{with xdmcp}
343 %files plugins-xdmcp
344 %defattr(644,root,root,755)
345 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-xdmcp.so
346 %{_iconsdir}/hicolor/*/emblems/remmina-xdmcp-ssh-symbolic.svg
347 %{_iconsdir}/hicolor/*/emblems/remmina-xdmcp-symbolic.svg
348 %endif
349
350 %changelog
This page took 0.075989 seconds and 3 git commands to generate.