]> git.pld-linux.org Git - SPECS.git/blob - remmina.spec
SPECS updated Thu 20 Jun 07:54:00 CEST 2024
[SPECS.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.35
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:  f655881007cc55db30518b9bfcae5ec4
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 BuildRequires:  curl-devel
34 %{?with_rdp:BuildRequires:      freerdp2-devel >= 2.0.0-0.20190320}
35 BuildRequires:  gdk-pixbuf2-devel
36 BuildRequires:  gettext-tools
37 BuildRequires:  glib2-devel
38 BuildRequires:  gtk+3-devel >= 3.14.0
39 %{?with_www:BuildRequires:      gtk-webkit4.1-devel}
40 BuildRequires:  harfbuzz-devel
41 BuildRequires:  json-glib-devel
42 BuildRequires:  libayatana-appindicator-gtk3-devel
43 BuildRequires:  libgcrypt-devel
44 %{?with_secret:BuildRequires:   libsecret-devel}
45 BuildRequires:  libsodium-devel
46 %{?with_www:BuildRequires:      libsoup3-devel}
47 BuildRequires:  libssh-devel >= 0.6
48 %{?with_vnc:BuildRequires:      libvncserver-devel}
49 BuildRequires:  pango-devel
50 BuildRequires:  pcre2-8-devel
51 BuildRequires:  pkgconfig
52 BuildRequires:  python3-devel
53 BuildRequires:  rpmbuild(macros) >= 1.742
54 %if %{with spice}
55 BuildRequires:  spice-glib-devel
56 BuildRequires:  spice-gtk-devel
57 BuildRequires:  spice-protocol
58 %endif
59 BuildRequires:  wayland-devel
60 %{?with_vte:BuildRequires:      vte-devel >= 0.38}
61 BuildRequires:  xorg-lib-libxkbcommon-devel
62 Requires(post,postun):  desktop-file-utils
63 Requires(post,postun):  gtk-update-icon-cache
64 Requires(post,postun):  shared-mime-info
65 Requires:       avahi-ui-gtk3 >= 0.6.30
66 Requires:       gtk+3 >= 3.14.0
67 Requires:       hicolor-icon-theme
68 Obsoletes:      remmina-plugins-nx < 1.4.20
69 Obsoletes:      remmina-plugins-xdmcp < 1.4.20
70 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
71
72 %description
73 Remmina is a remote desktop client written in GTK+, aiming to be
74 useful for system administrators and travelers, who need to work with
75 lots of remote computers in front of either large monitors or tiny
76 net-books.
77
78 Remmina supports multiple network protocols in an integrated and
79 consistent user interface. Currently RDP, VNC, XDMCP and SSH are
80 supported.
81
82 Please don't forget to install the plugins for the protocols you want
83 to use.
84
85 %package        devel
86 Summary:        Development files for %{name}
87 Requires:       %{name} = %{version}-%{release}
88 Requires:       pkgconfig
89
90 %description    devel
91 The %{name}-devel package contains header files for developing plugins
92 for %{name}.
93
94 %package        plugins-exec
95 Summary:        External execution plugin for Remmina Remote Desktop Client
96 Requires:       %{name} = %{version}-%{release}
97
98 %description    plugins-exec
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 plugin to execute external processes
105 (commands or applications) from the Remmina window.
106
107 %package        plugins-python_wrapper
108 Summary:        Python Wrapper plugin for Remmina Remote Desktop Client
109 Requires:       %{name} = %{version}-%{release}
110
111 %description    plugins-python_wrapper
112 Remmina is a remote desktop client written in GTK+, aiming to be
113 useful for system administrators and travelers, who need to work with
114 lots of remote computers in front of either large monitors or tiny
115 net-books.
116
117 This package enables Python plugins for Remmina.
118
119 %package        plugins-rdp
120 Summary:        RDP plugin for Remmina Remote Desktop Client
121 Requires:       %{name} = %{version}-%{release}
122 Requires:       freerdp2-libs >= 2.0.0-0.20190320
123
124 %description    plugins-rdp
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
128 net-books.
129
130 This package contains the Remote Desktop Protocol (RDP) plugin for the
131 Remmina remote desktop client.
132
133 %package        plugins-secret
134 Summary:        Keyring integration for Remmina Remote Desktop Client
135 Requires:       %{name} = %{version}-%{release}
136 Provides:       %{name}-plugins-gnome%{?_isa} = %{version}-%{release}
137 Obsoletes:      remmina-plugins-gnome < %{version}-%{release}
138
139 %description    plugins-secret
140 Remmina is a remote desktop client written in GTK+, aiming to be
141 useful for system administrators and travelers, who need to work with
142 lots of remote computers in front of either large monitors or tiny
143 net-books.
144
145 This package contains the plugin with keyring support for the Remmina
146 remote desktop client.
147
148 %package        plugins-spice
149 Summary:        SPICE plugin for Remmina Remote Desktop Client
150 Requires:       %{name} = %{version}-%{release}
151
152 %description    plugins-spice
153 Remmina is a remote desktop client written in GTK+, aiming to be
154 useful for system administrators and travelers, who need to work with
155 lots of remote computers in front of either large monitors or tiny
156 net-books.
157
158 This package contains the SPICE plugin for the Remmina remote desktop
159 client.
160
161 %package        plugins-vnc
162 Summary:        VNC plugin for Remmina Remote Desktop Client
163 Requires:       %{name} = %{version}-%{release}
164
165 %description    plugins-vnc
166 Remmina is a remote desktop client written in GTK+, aiming to be
167 useful for system administrators and travelers, who need to work with
168 lots of remote computers in front of either large monitors or tiny
169 net-books.
170
171 This package contains the VNC plugin for the Remmina remote desktop
172 client.
173
174 %package        plugins-www
175 Summary:        Browser plugin for Remmina Remote Desktop Client
176 Requires:       %{name} = %{version}-%{release}
177
178 %description    plugins-www
179 Remmina is a remote desktop client written in GTK+, aiming to be
180 useful for system administrators and travelers, who need to work with
181 lots of remote computers in front of either large monitors or tiny
182 net-books.
183
184 This package contains the www plugin for the Remmina remote desktop
185 client.
186
187 %prep
188 %setup -qn Remmina-v%{version}
189 %{__sed} -i s/^pt_PT$// po/LINGUAS
190 %{__rm} -f po/pt_PT.po
191 %patch0 -p1
192
193 %build
194 mkdir -p build
195 cd build
196 %cmake \
197         -DCMAKE_INSTALL_LIBDIR=%{_lib} \
198         -DCMAKE_INSTALL_PREFIX=%{_prefix} \
199         -DWITH_APPINDICATOR=ON \
200         -DWITH_AVAHI=ON \
201         -DWITH_CUPS=ON \
202         -DWITH_GCRYPT=ON \
203         -DWITH_GETTEXT=ON \
204         -DWITH_ICON_CACHE=OFF \
205         %{cmake_on_off secret WITH_LIBSECRET} \
206         %{cmake_on_off vnc WITH_LIBVNCSERVER} \
207         -DWITH_NEWS:BOOL=OFF \
208         %{cmake_on_off spice WITH_SPICE} \
209         -DWITH_STATS:BOOL=OFF \
210         -DWITH_UPDATE_DESKTOP_DB=OFF \
211         %{cmake_on_off vte WITH_VTE} \
212         %{cmake_on_off www WITH_WWW} \
213         ..
214
215 %{__make}
216
217 %install
218 rm -rf $RPM_BUILD_ROOT
219 cd build
220 %{__make} install \
221         DESTDIR=$RPM_BUILD_ROOT
222 cd ..
223
224 install -d $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/
225 cp -pr cmake/*.cmake $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/
226 cp -pr config.h.in $RPM_BUILD_ROOT%{_includedir}/%{name}/
227 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_includedir}/%{name}/
228
229 # not supported by glibc yet
230 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{ber,br,ckb,eo,ie,ka,hi,shn}
231
232 %find_lang %{name}
233
234 %clean
235 rm -rf $RPM_BUILD_ROOT
236
237 %post
238 %update_icon_cache hicolor
239 %update_desktop_database_post
240 %update_mime_database
241
242 %postun
243 %update_icon_cache hicolor
244 %update_desktop_database_postun
245 %update_mime_database
246
247 %files -f %{name}.lang
248 %defattr(644,root,root,755)
249 %doc LICENSE AUTHORS ChangeLog README.md
250 %attr(755,root,root) %{_bindir}/remmina-file-wrapper
251 %attr(755,root,root) %{_bindir}/remmina
252 %{_datadir}/metainfo/*.appdata.xml
253 %{_desktopdir}/*.desktop
254 %{_iconsdir}/hicolor/*/actions/*.*
255 %{_iconsdir}/hicolor/*/apps/*.*
256 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-sftp-symbolic.svg
257 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-ssh-symbolic.svg
258 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-tool-symbolic.svg
259 %{_iconsdir}/hicolor/*/status/org.remmina.Remmina-status.svg
260 %dir %{_iconsdir}/hicolor/apps
261 %{_iconsdir}/hicolor/apps/*.*
262 %{_datadir}/mime/packages/*.xml
263 %{_datadir}/%{name}/
264 %dir %{_libdir}/remmina/
265 %dir %{_libdir}/remmina/plugins/
266 %{_mandir}/man1/remmina.1*
267 %{_mandir}/man1/remmina-file-wrapper.1*
268
269 %files devel
270 %defattr(644,root,root,755)
271 %{_includedir}/%{name}/
272 %{_pkgconfigdir}/%{name}.pc
273 %dir %{_libdir}/cmake/%{name}
274 %{_libdir}/cmake/%{name}/*.cmake
275
276 %files plugins-exec
277 %defattr(644,root,root,755)
278 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-exec.so
279
280 %files plugins-python_wrapper
281 %defattr(644,root,root,755)
282 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-python_wrapper.so
283
284 %if %{with rdp}
285 %files plugins-rdp
286 %defattr(644,root,root,755)
287 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-rdp.so
288 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-rdp-ssh-symbolic.svg
289 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-rdp-symbolic.svg
290 %endif
291
292 %if %{with secret}
293 %files plugins-secret
294 %defattr(644,root,root,755)
295 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-secret.so
296 %endif
297
298 %if %{with spice}
299 %files plugins-spice
300 %defattr(644,root,root,755)
301 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-spice.so
302 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-spice-symbolic.svg
303 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-spice-ssh-symbolic.svg
304 %endif
305
306 %if %{with vnc}
307 %files plugins-vnc
308 %defattr(644,root,root,755)
309 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-vnc.so
310 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-vnc-ssh-symbolic.svg
311 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-vnc-symbolic.svg
312 %endif
313
314 %if %{with www}
315 %files plugins-www
316 %defattr(644,root,root,755)
317 %attr(755,root,root) %{_libdir}/remmina/plugins/remmina-plugin-www.so
318 %{_iconsdir}/hicolor/*/emblems/org.remmina.Remmina-www-symbolic.svg
319 %endif
320
321 %changelog
This page took 0.139081 seconds and 4 git commands to generate.