]> git.pld-linux.org Git - packages/fwupd.git/blob - fwupd.spec
- up to 1.3.7
[packages/fwupd.git] / fwupd.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs
4 %bcond_without  efi             # UEFI (and dell, redfish) support
5 %bcond_without  flashrom        # flashrom plugin
6 %bcond_without  modemmanager    # modem_manager plugin
7 %bcond_without  thunderbolt     # Thunderbolt support
8
9 %ifnarch %{ix86} %{x8664} x32 %{arm} aarch64
10 %undefine       with_efi
11 %endif
12 Summary:        System daemon for installing device firmware
13 Summary(pl.UTF-8):      Demon systemowy do instalowania firmware'u urządzeń
14 Name:           fwupd
15 Version:        1.3.7
16 Release:        1
17 License:        LGPL v2.1+
18 Group:          Applications/System
19 Source0:        https://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz
20 # Source0-md5:  ae5a9c871f18d23ca52264ea31012340
21 Patch0:         %{name}-bashcomp.patch
22 Patch1:         %{name}-flashrom.patch
23 URL:            https://github.com/hughsie/fwupd
24 %{?with_modemmanager:BuildRequires:     ModemManager-devel >= 1.10.0}
25 %{?with_cairo:BuildRequires:    cairo-devel}
26 BuildRequires:  docbook-dtd41-sgml
27 BuildRequires:  docbook-utils
28 %{?with_efi:BuildRequires:      efivar-devel >= 33}
29 # pkgconfig(libelf); can be also libelf-devel
30 BuildRequires:  elfutils-devel >= 0.166
31 %{?with_fontconfig:BuildRequires:       fontconfig-devel}
32 %{?with_fontconfig:BuildRequires:       freetype-devel >= 2}
33 BuildRequires:  gcab-devel >= 1.0
34 # C99
35 BuildRequires:  gcc >= 5:3.2
36 %ifarch x32
37 BuildRequires:  gcc-multilib-64 >= 5:3.2
38 %endif
39 BuildRequires:  gettext-tools >= 0.19.7
40 BuildRequires:  glib2-devel >= 1:2.55.0
41 %{?with_efi:BuildRequires:      gnu-efi}
42 BuildRequires:  gnutls-devel >= 3.6.0
43 BuildRequires:  gobject-introspection-devel >= 0.9.8
44 BuildRequires:  gpgme-devel
45 %{?with_doc:BuildRequires:      gtk-doc >= 1.14}
46 BuildRequires:  intltool >= 0.35.0
47 BuildRequires:  json-glib-devel >= 1.1.1
48 BuildRequires:  libarchive-devel
49 %{?with_flashrom:BuildRequires: libflashrom-devel}
50 BuildRequires:  libgpg-error-devel
51 BuildRequires:  libgudev-devel >= 232
52 BuildRequires:  libgusb-devel >= 0.2.9
53 %{?with_modemmanager:BuildRequires:     libqmi-devel >= 1.22.0}
54 # for dell (which requires also uefi plugin and efivar)
55 %{?with_efi:BuildRequires:      libsmbios-devel >= 2.4.0}
56 BuildRequires:  libsoup-devel >= 2.52
57 BuildRequires:  libuuid-devel
58 BuildRequires:  libxmlb-devel >= 0.1.13
59 BuildRequires:  libxslt-progs
60 # for <linux/nvme_ioctl.h>
61 BuildRequires:  linux-libc-headers >= 7:4.4
62 BuildRequires:  meson >= 0.47.0
63 BuildRequires:  ninja >= 1.6
64 BuildRequires:  pkgconfig
65 BuildRequires:  polkit-devel >= 0.114
66 BuildRequires:  python3-pillow
67 BuildRequires:  python3-pycairo
68 BuildRequires:  rpmbuild(macros) >= 1.726
69 BuildRequires:  sqlite3-devel >= 3
70 BuildRequires:  systemd-units >= 1:211
71 BuildRequires:  tar >= 1:1.22
72 BuildRequires:  tpm2-tss-devel
73 BuildRequires:  udev-devel
74 %{?with_thunderbolt:BuildRequires:      umockdev-devel}
75 BuildRequires:  xz
76 Requires:       %{name}-libs = %{version}-%{release}
77 %{?with_modemmanager:BuildRequires:     ModemManager-libs >= 1.10.0}
78 Requires:       gcab >= 1.0
79 Requires:       gnutls-libs >= 3.6.0
80 Requires:       libgudev >= 232
81 Requires:       libgusb >= 0.2.9
82 %{?with_modemmanager:Requires:  libqmi >= 1.22.0}
83 %{?with_efi:Requires:   libsmbios >= 2.4.0}
84 Requires:       libsoup >= 2.52
85 Requires:       libxmlb >= 0.1.7
86 Requires:       polkit >= 0.114
87 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
88
89 %description
90 fwupd is a simple daemon to allow session software to update device
91 firmware on your local machine. It's designed for desktops, but this
92 project is probably quite interesting for phones, tablets and server
93 farms.
94
95 %description -l pl.UTF-8
96 fwupd to prosty demon pozwalający programom sesyjnym na aktualizację
97 firmware'u urządzeń na maszynie lokalnej. Jest zaprojektowany dla
98 komputerów osobistych, ale może być interesujący także dla telefonów,
99 tabletów i farm serwerów.
100
101 %package -n bash-completion-fwupd
102 Summary:        Bash completion for fwupd commands
103 Summary(pl.UTF-8):      Bashowe dopełnianie składni poleceń fwupd
104 Group:          Applications/Shells
105 Requires:       %{name} = %{version}-%{release}
106 Requires:       bash-completion >= 2.0
107
108 %description -n bash-completion-fwupd
109 Bash completion for fwupd commands.
110
111 %description -n bash-completion-fwupd -l pl.UTF-8
112 Bashowe dopełnianie składni poleceń fwupd.
113
114 %package libs
115 Summary:        Libraries for fwupd device firmware installing daemon
116 Summary(pl.UTF-8):      Biblioteki dla demona fwupd instalującego aktualizacje firmware'u
117 Group:          Libraries
118 Requires:       glib2-devel >= 1:2.55.0
119 Requires:       json-glib >= 1.1.1
120
121 %description libs
122 Libraries for fwupd device firmware installing daemon.
123
124 %description libs -l pl.UTF-8
125 Biblioteki dla demona fwupd instalującego aktualizacje firmware'u.
126
127 %package devel
128 Summary:        Header files for fwupd libraries
129 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek fwupd
130 Group:          Development/Libraries
131 Requires:       %{name}-libs = %{version}-%{release}
132 Requires:       glib2-devel >= 1:2.55.0
133 Obsoletes:      fwupd-static
134
135 %description devel
136 Header files for fwupd libraries.
137
138 %description devel -l pl.UTF-8
139 Pliki nagłówkowe bibliotek fwupd.
140
141 %package apidocs
142 Summary:        API documentation for fwupd libraries
143 Summary(pl.UTF-8):      Dokumentacja API do bibliotek fwupd
144 Group:          Documentation
145 %if "%{_rpmversion}" >= "5"
146 BuildArch:      noarch
147 %endif
148
149 %description apidocs
150 API documentation for fwupd libraries.
151
152 %description apidocs -l pl.UTF-8
153 Dokumentacja API do bibliotek fwupd.
154
155 %package -n vala-fwupd
156 Summary:        Vala API for fwupd library
157 Summary(pl.UTF-8):      API języka Vala do biblioteki fwupd
158 Group:          Development/Libraries
159 Requires:       %{name}-devel = %{version}-%{release}
160 Requires:       vala-libsoup >= 2.52
161
162 %description -n vala-fwupd
163 Vala API for fwupd library.
164
165 %description -n vala-fwupd -l pl.UTF-8
166 API języka Vala do biblioteki fwupd.
167
168 %prep
169 %setup -q
170 %patch0 -p1
171 %patch1 -p1
172
173 %ifarch x32
174 # -m64 is needed to build x64 EFI
175 %{__sed} -i -e "/^if efi_arch == 'x86_64'/,/^elif/ s/'-mno-red-zone',/& '-m64',/" plugins/uefi/efi/meson.build
176 %endif
177
178 %build
179 %meson build \
180         -Dbash_completiondir=%{bash_compdir} \
181         -Dgtkdoc=%{__true_false apidocs} \
182         %{!?with_efi:-Dplugin_dell=false} \
183         %{?with_flashrom:-Dplugin_flashrom=true} \
184         %{?with_modemmanager:-Dplugin_modem_manager=true} \
185         %{!?with_efi:-Dplugin_redfish=false} \
186         %{!?with_thunderbolt:-Dplugin_thunderbolt=false} \
187         %{!?with_efi:-Dplugin_uefi=false} \
188         -Dtests=false
189
190 %meson_build -C build
191
192 %install
193 rm -rf $RPM_BUILD_ROOT
194
195 %meson_install -C build
196
197 for pdoc in plugins/*/README.md ; do
198         pname=$(basename $(dirname $pdoc))
199         cp -p plugins/${pname}/README.md README-${pname}.md
200 done
201
202 %find_lang %{name}
203
204 %clean
205 rm -rf $RPM_BUILD_ROOT
206
207 %post   libs -p /sbin/ldconfig
208 %postun libs -p /sbin/ldconfig
209
210 %files -f %{name}.lang
211 %defattr(644,root,root,755)
212 %doc AUTHORS MAINTAINERS README.md README-*.md
213 %attr(755,root,root) %{_bindir}/dfu-tool
214 %attr(755,root,root) %{_bindir}/fwupdmgr
215 %dir %{_libexecdir}/fwupd
216 %attr(755,root,root) %{_libexecdir}/fwupd/fwupd
217 %attr(755,root,root) %{_libexecdir}/fwupd/fwupdagent
218 %attr(755,root,root) %{_libexecdir}/fwupd/fwupdate
219 %attr(755,root,root) %{_libexecdir}/fwupd/fwupdoffline
220 %attr(755,root,root) %{_libexecdir}/fwupd/fwupdtool
221 %attr(755,root,root) %{_libexecdir}/fwupd/fwupdtpmevlog
222 %dir %{_libexecdir}/fwupd/efi
223 %{_libexecdir}/fwupd/efi/fwupd*.efi
224 %dir %{_libdir}/fwupd-plugins-3
225 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_altos.so
226 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_amt.so
227 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_ata.so
228 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_colorhug.so
229 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_coreboot.so
230 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_csr.so
231 %if %{with efi}
232 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_dell.so
233 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_dell_esrt.so
234 %endif
235 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_dell_dock.so
236 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_dfu.so
237 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_ebitdo.so
238 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_emmc.so
239 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_fastboot.so
240 %if %{with flashrom}
241 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_flashrom.so
242 %endif
243 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_jabra.so
244 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_logitech_hidpp.so
245 %if %{with modemmanager}
246 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_modem_manager.so
247 %endif
248 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_nitrokey.so
249 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_nvme.so
250 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_optionrom.so
251 %if %{with efi}
252 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_redfish.so
253 %endif
254 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_rts54hid.so
255 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_rts54hub.so
256 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_solokey.so
257 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_steelseries.so
258 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_superio.so
259 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_cxaudio.so
260 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_mst.so
261 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_prometheus.so
262 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_rmi.so
263 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_thelio_io.so
264 %if %{with thunderbolt}
265 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_thunderbolt.so
266 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_thunderbolt_power.so
267 %endif
268 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_tpm.so
269 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_tpm_eventlog.so
270 %if %{with efi}
271 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_uefi.so
272 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_uefi_recovery.so
273 %endif
274 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_upower.so
275 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_vli.so
276 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_wacom_raw.so
277 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_wacom_usb.so
278 %dir %{_sysconfdir}/fwupd
279 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/daemon.conf
280 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/redfish.conf
281 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/thunderbolt.conf
282 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/uefi.conf
283 %dir %{_sysconfdir}/fwupd/remotes.d
284 %if %{with efi}
285 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/dell-esrt.conf
286 %endif
287 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/fwupd-tests.conf
288 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs.conf
289 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs-testing.conf
290 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/vendor.conf
291 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/vendor-directory.conf
292 %dir %{_sysconfdir}/pki/fwupd
293 %{_sysconfdir}/pki/fwupd/GPG-KEY-Hughski-Limited
294 %{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Foundation-Firmware
295 %{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service
296 %{_sysconfdir}/pki/fwupd/LVFS-CA.pem
297 %dir %{_sysconfdir}/pki/fwupd-metadata
298 %{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata
299 %{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service
300 %{_sysconfdir}/pki/fwupd-metadata/LVFS-CA.pem
301 %{systemdunitdir}/fwupd.service
302 %{systemdunitdir}/fwupd-offline-update.service
303 %{systemdunitdir}/fwupd-refresh.service
304 %{systemdunitdir}/fwupd-refresh.timer
305 %{systemdunitdir}/system-update.target.wants/fwupd-offline-update.service
306 /lib/systemd/system-preset/fwupd-refresh.preset
307 /lib/systemd/system-shutdown/fwupd.shutdown
308 /lib/udev/rules.d/90-fwupd-devices.rules
309 %{_datadir}/dbus-1/system.d/org.freedesktop.fwupd.conf
310 %{_datadir}/dbus-1/system-services/org.freedesktop.fwupd.service
311 %dir %{_datadir}/fwupd
312 %attr(755,root,root) %{_datadir}/fwupd/add_capsule_header.py
313 %attr(755,root,root) %{_datadir}/fwupd/firmware_packager.py
314 %attr(755,root,root) %{_datadir}/fwupd/install_dell_bios_exe.py
315 %attr(755,root,root) %{_datadir}/fwupd/simple_client.py
316 %{_datadir}/fwupd/quirks.d
317 %dir %{_datadir}/fwupd/remotes.d
318 %if %{with efi}
319 %{_datadir}/fwupd/remotes.d/dell-esrt
320 %endif
321 %{_datadir}/fwupd/remotes.d/vendor
322 %{_datadir}/metainfo/org.freedesktop.fwupd.metainfo.xml
323 %dir %{_datadir}/fwupd/metainfo
324 %{_datadir}/fwupd/metainfo/org.freedesktop.fwupd.remotes.lvfs-testing.metainfo.xml
325 %{_datadir}/fwupd/metainfo/org.freedesktop.fwupd.remotes.lvfs.metainfo.xml
326 %{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy
327 %{_datadir}/polkit-1/rules.d/org.freedesktop.fwupd.rules
328 %{_iconsdir}/hicolor/scalable/apps/org.freedesktop.fwupd.svg
329 %lang(ca) %{_localedir}/ca/LC_IMAGES
330 %lang(cs) %{_localedir}/cs/LC_IMAGES
331 %lang(da) %{_localedir}/da/LC_IMAGES
332 %lang(de) %{_localedir}/de/LC_IMAGES
333 %lang(en) %{_localedir}/en/LC_IMAGES
334 %lang(fi) %{_localedir}/fi/LC_IMAGES
335 %lang(fur) %{_localedir}/fur/LC_IMAGES
336 %lang(hr) %{_localedir}/hr/LC_IMAGES
337 %lang(hu) %{_localedir}/hu/LC_IMAGES
338 %lang(id) %{_localedir}/id/LC_IMAGES
339 %lang(it) %{_localedir}/it/LC_IMAGES
340 %lang(ko) %{_localedir}/ko/LC_IMAGES
341 %lang(lt) %{_localedir}/lt/LC_IMAGES
342 %lang(pl) %{_localedir}/pl/LC_IMAGES
343 %lang(pt_BR) %{_localedir}/pt_BR/LC_IMAGES
344 %lang(ru) %{_localedir}/ru/LC_IMAGES
345 %lang(sr) %{_localedir}/sr/LC_IMAGES
346 %lang(sv) %{_localedir}/sv/LC_IMAGES
347 %lang(uk) %{_localedir}/uk/LC_IMAGES
348 %lang(zh_CN) %{_localedir}/zh_CN/LC_IMAGES
349 %lang(zh_TW) %{_localedir}/zh_TW/LC_IMAGES
350 %dir /var/lib/fwupd
351 %dir /var/lib/fwupd/builder
352 /var/lib/fwupd/builder/README.md
353 %{_mandir}/man1/dfu-tool.1*
354 %{_mandir}/man1/fwupdmgr.1*
355
356 %files -n bash-completion-fwupd
357 %defattr(644,root,root,755)
358 %{bash_compdir}/fwupdagent
359 %{bash_compdir}/fwupdmgr
360 %{bash_compdir}/fwupdtool
361
362 %files libs
363 %defattr(644,root,root,755)
364 %attr(755,root,root) %{_libdir}/libfwupd.so.*.*.*
365 %attr(755,root,root) %{_libdir}/libfwupdplugin.so.*.*.*
366 %attr(755,root,root) %ghost %{_libdir}/libfwupd.so.2
367 %attr(755,root,root) %ghost %{_libdir}/libfwupdplugin.so.1
368 %{_libdir}/girepository-1.0/Fwupd-2.0.typelib
369 %{_libdir}/girepository-1.0/FwupdPlugin-1.0.typelib
370
371 %files devel
372 %defattr(644,root,root,755)
373 %doc libfwupd/README.md
374 %attr(755,root,root) %{_libdir}/libfwupd.so
375 %attr(755,root,root) %{_libdir}/libfwupdplugin.so
376 %{_includedir}/fwupd-1
377 %{_datadir}/gir-1.0/Fwupd-2.0.gir
378 %{_datadir}/gir-1.0/FwupdPlugin-1.0.gir
379 %{_datadir}/dbus-1/interfaces/org.freedesktop.fwupd.xml
380 %{_pkgconfigdir}/fwupd.pc
381 %{_pkgconfigdir}/fwupdplugin.pc
382
383 %files apidocs
384 %defattr(644,root,root,755)
385 %{_gtkdocdir}/fwupd
386
387 %files -n vala-fwupd
388 %defattr(644,root,root,755)
389 %{_datadir}/vala/vapi/fwupd.deps
390 %{_datadir}/vala/vapi/fwupd.vapi
391 %{_datadir}/vala/vapi/fwupdplugin.deps
392 %{_datadir}/vala/vapi/fwupdplugin.vapi
This page took 0.109485 seconds and 4 git commands to generate.