]> git.pld-linux.org Git - packages/remmina.git/blob - remmina.spec
0c232fe75e23f70977ade386d16504a2f8adcd47
[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  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
11 #
12 Summary:        Remote Desktop Client
13 Name:           remmina
14 Version:        1.4.31
15 Release:        1
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
53 %if %{with spice}
54 BuildRequires:  spice-glib-devel
55 BuildRequires:  spice-gtk-devel
56 BuildRequires:  spice-protocol
57 %endif
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)
68
69 %description
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
73 net-books.
74
75 Remmina supports multiple network protocols in an integrated and
76 consistent user interface. Currently RDP, VNC, XDMCP and SSH are
77 supported.
78
79 Please don't forget to install the plugins for the protocols you want
80 to use.
81
82 %package        devel
83 Summary:        Development files for %{name}
84 Requires:       %{name} = %{version}-%{release}
85 Requires:       pkgconfig
86
87 %description    devel
88 The %{name}-devel package contains header files for developing plugins
89 for %{name}.
90
91 %package        plugins-exec
92 Summary:        External execution plugin for Remmina Remote Desktop Client
93 Requires:       %{name} = %{version}-%{release}
94
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
99 net-books.
100
101 This package contains the plugin to execute external processes
102 (commands or applications) from the Remmina window.
103
104 %package        plugins-python_wrapper
105 Summary:        Python Wrapper plugin for Remmina Remote Desktop Client
106 Requires:       %{name} = %{version}-%{release}
107
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
112 net-books.
113
114 This package enables Python plugins for Remmina.
115
116 %package        plugins-rdp
117 Summary:        RDP plugin for Remmina Remote Desktop Client
118 Requires:       %{name} = %{version}-%{release}
119 Requires:       freerdp2-libs >= 2.0.0-0.20190320
120
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
125 net-books.
126
127 This package contains the Remote Desktop Protocol (RDP) plugin for the
128 Remmina remote desktop client.
129
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}
135
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
140 net-books.
141
142 This package contains the plugin with keyring support for the Remmina
143 remote desktop client.
144
145 %package        plugins-spice
146 Summary:        SPICE plugin for Remmina Remote Desktop Client
147 Requires:       %{name} = %{version}-%{release}
148
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
153 net-books.
154
155 This package contains the SPICE plugin for the Remmina remote desktop
156 client.
157
158 %package        plugins-vnc
159 Summary:        VNC plugin for Remmina Remote Desktop Client
160 Requires:       %{name} = %{version}-%{release}
161
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
166 net-books.
167
168 This package contains the VNC plugin for the Remmina remote desktop
169 client.
170
171 %package        plugins-www
172 Summary:        Browser plugin for Remmina Remote Desktop Client
173 Requires:       %{name} = %{version}-%{release}
174
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
179 net-books.
180
181 This package contains the www plugin for the Remmina remote desktop
182 client.
183
184 %prep
185 %setup -qn Remmina-v%{version}
186 %{__sed} -i s/^pt_PT$// po/LINGUAS
187 %{__rm} -f po/pt_PT.po
188 %patch0 -p1
189
190 %build
191 mkdir -p build
192 cd build
193 %cmake \
194         -DCMAKE_INSTALL_LIBDIR=%{_lib} \
195         -DCMAKE_INSTALL_PREFIX=%{_prefix} \
196         -DWITH_APPINDICATOR=ON \
197         -DWITH_AVAHI=ON \
198         -DWITH_CUPS=ON \
199         -DWITH_GCRYPT=ON \
200         -DWITH_GETTEXT=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} \
207         ..
208
209 %{__make}
210
211 %install
212 rm -rf $RPM_BUILD_ROOT
213 cd build
214 %{__make} install \
215         DESTDIR=$RPM_BUILD_ROOT
216 cd ..
217
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}/
222
223 # not supported by glibc yet
224 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{ber,br,ckb,eo,ie,ka,hi,shn}
225
226 %find_lang %{name}
227
228 %clean
229 rm -rf $RPM_BUILD_ROOT
230
231 %post
232 %update_icon_cache hicolor
233
234 %postun
235 %update_icon_cache hicolor
236
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
253 %{_datadir}/%{name}/
254 %dir %{_libdir}/remmina/
255 %dir %{_libdir}/remmina/plugins/
256 %{_mandir}/man1/remmina.1*
257 %{_mandir}/man1/remmina-file-wrapper.1*
258
259 %files devel
260 %defattr(644,root,root,755)
261 %{_includedir}/%{name}/
262 %{_pkgconfigdir}/%{name}.pc
263 %dir %{_libdir}/cmake/%{name}
264 %{_libdir}/cmake/%{name}/*.cmake
265
266 %files plugins-exec
267 %defattr(644,root,root,755)
268 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-exec.so
269
270 %files plugins-python_wrapper
271 %defattr(644,root,root,755)
272 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-python_wrapper.so
273
274 %if %{with rdp}
275 %files plugins-rdp
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
280 %endif
281
282 %if %{with secret}
283 %files plugins-secret
284 %defattr(644,root,root,755)
285 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-secret.so
286 %endif
287
288 %if %{with spice}
289 %files plugins-spice
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
294 %endif
295
296 %if %{with vnc}
297 %files plugins-vnc
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
302 %endif
303
304 %if %{with www}
305 %files plugins-www
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
309 %endif
310
311 %changelog
This page took 0.089777 seconds and 3 git commands to generate.