3 %bcond_without colorhug # ColorHug support
4 %bcond_without efi # UEFI (and dell, redfish) support
5 %bcond_without thunderbolt # Thunderbolt support
7 %ifnarch %{ix86} %{x8664} x32 %{arm} aarch64
10 Summary: System daemon for installing device firmware
11 Summary(pl.UTF-8): Demon systemowy do instalowania firmware'u urządzeń
16 Group: Applications/System
17 Source0: https://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz
18 # Source0-md5: 3f76eadf496d21b547d46299f925ecf3
19 Patch0: %{name}-bashcomp.patch
20 URL: https://github.com/hughsie/fwupd
21 BuildRequires: appstream-glib-devel >= 0.7.4
22 %{?with_cairo:BuildRequires: cairo-devel}
23 %{?with_colorhug:BuildRequires: colord-devel >= 1.2.12}
24 BuildRequires: docbook-dtd41-sgml
25 BuildRequires: docbook-utils
26 %{?with_efi:BuildRequires: efivar-devel >= 33}
27 # pkgconfig(libelf); can be also libelf-devel
28 BuildRequires: elfutils-devel >= 0.166
29 %{?with_fontconfig:BuildRequires: fontconfig-devel}
30 %{?with_fontconfig:BuildRequires: freetype-devel >= 2}
31 %{?with_efi:BuildRequires: fwupdate-devel >= 5}
32 BuildRequires: gcab-devel >= 1.0
34 BuildRequires: gcc >= 5:3.2
36 BuildRequires: gcc-multilib-64 >= 5:3.2
38 BuildRequires: gettext-tools >= 0.19.7
39 BuildRequires: glib2-devel >= 1:2.55.0
40 %{?with_efi:BuildRequires: gnu-efi}
41 BuildRequires: gnutls-devel >= 3.4.4.1
42 BuildRequires: gobject-introspection-devel >= 0.9.8
43 BuildRequires: gpgme-devel
44 BuildRequires: gtk-doc >= 1.14
45 BuildRequires: intltool >= 0.35.0
46 BuildRequires: json-glib-devel >= 1.1.1
47 BuildRequires: libarchive-devel
48 BuildRequires: libgpg-error-devel
49 BuildRequires: libgudev-devel >= 232
50 BuildRequires: libgusb-devel >= 0.2.9
51 # for dell (which depends on fwupdate too)
52 %{?with_efi:BuildRequires: libsmbios-devel >= 2.4.0}
53 BuildRequires: libsoup-devel >= 2.52
54 BuildRequires: libuuid-devel
55 BuildRequires: libxslt-progs
56 # for <linux/nvme_ioctl.h>
57 BuildRequires: linux-libc-headers >= 7:4.4
58 BuildRequires: meson >= 0.43.0
59 BuildRequires: ninja >= 1.6
60 BuildRequires: pkgconfig
61 BuildRequires: polkit-devel >= 0.114
62 BuildRequires: python3-pillow
63 BuildRequires: python3-pycairo
64 BuildRequires: rpmbuild(macros) >= 1.726
65 BuildRequires: sqlite3-devel >= 3
66 BuildRequires: systemd-units >= 1:211
67 BuildRequires: tar >= 1:1.22
68 BuildRequires: udev-devel
69 %{?with_thunderbolt:BuildRequires: umockdev-devel}
71 Requires: %{name}-libs = %{version}-%{release}
72 Requires: appstream-glib >= 0.7.4
73 %{?with_colorhug:Requires: colord-libs >= 1.2.12}
74 %{?with_efi:Requires: fwupdate-libs >= 5}
76 Requires: gnutls-libs >= 3.4.4.1
77 Requires: libgudev >= 232
78 Requires: libgusb >= 0.2.9
79 %{?with_efi:Requires: libsmbios >= 2.4.0}
80 Requires: libsoup >= 2.52
81 Requires: polkit >= 0.114
82 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
85 fwupd is a simple daemon to allow session software to update device
86 firmware on your local machine. It's designed for desktops, but this
87 project is probably quite interesting for phones, tablets and server
90 %description -l pl.UTF-8
91 fwupd to prosty demon pozwalający programom sesyjnym na aktualizację
92 firmware'u urządzeń na maszynie lokalnej. Jest zaprojektowany dla
93 komputerów osobistych, ale może być interesujący także dla telefonów,
94 tabletów i farm serwerów.
96 %package -n bash-completion-fwupd
97 Summary: Bash completion for fwupd commands
98 Summary(pl.UTF-8): Bashowe dopełnianie składni poleceń fwupd
99 Group: Applications/Shells
100 Requires: %{name} = %{version}-%{release}
101 Requires: bash-completion >= 2.0
103 %description -n bash-completion-fwupd
104 Bash completion for fwupd commands.
106 %description -n bash-completion-fwupd -l pl.UTF-8
107 Bashowe dopełnianie składni poleceń fwupd.
110 Summary: Libraries for fwupd device firmware installing daemon
111 Summary(pl.UTF-8): Biblioteki dla demona fwupd instalującego aktualizacje firmware'u
113 Requires: glib2-devel >= 1:2.55.0
114 Requires: json-glib >= 1.1.1
117 Libraries for fwupd device firmware installing daemon.
119 %description libs -l pl.UTF-8
120 Biblioteki dla demona fwupd instalującego aktualizacje firmware'u.
123 Summary: Header files for fwupd libraries
124 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek fwupd
125 Group: Development/Libraries
126 Requires: %{name}-libs = %{version}-%{release}
127 Requires: glib2-devel >= 1:2.55.0
128 Obsoletes: fwupd-static
131 Header files for fwupd libraries.
133 %description devel -l pl.UTF-8
134 Pliki nagłówkowe bibliotek fwupd.
137 Summary: API documentation for fwupd libraries
138 Summary(pl.UTF-8): Dokumentacja API do bibliotek fwupd
140 %if "%{_rpmversion}" >= "5"
145 API documentation for fwupd libraries.
147 %description apidocs -l pl.UTF-8
148 Dokumentacja API do bibliotek fwupd.
150 %package -n vala-fwupd
151 Summary: Vala API for fwupd library
152 Summary(pl.UTF-8): API języka Vala do biblioteki fwupd
153 Group: Development/Libraries
154 Requires: %{name}-devel = %{version}-%{release}
155 Requires: vala-libsoup >= 2.52
157 %description -n vala-fwupd
158 Vala API for fwupd library.
160 %description -n vala-fwupd -l pl.UTF-8
161 API języka Vala do biblioteki fwupd.
168 # -m64 is needed to build x64 EFI
169 %{__sed} -i -e "/^if efi_arch == 'x86_64'/,/^elif/ s/'-mno-red-zone',/& '-m64',/" plugins/uefi/efi/meson.build
174 -Dbash_completiondir=%{bash_compdir} \
175 %{!?with_efi:-Dplugin_dell=false} \
176 %{!?with_efi:-Dplugin_redfish=false} \
177 %{!?with_thunderbolt:-Dplugin_thunderbolt=false} \
178 %{!?with_efi:-Dplugin_uefi=false} \
181 %meson_build -C build
184 rm -rf $RPM_BUILD_ROOT
186 %meson_install -C build
188 for pdoc in plugins/*/README.md ; do
189 pname=$(basename $(dirname $pdoc))
190 cp -p plugins/${pname}/README.md README-${pname}.md
196 rm -rf $RPM_BUILD_ROOT
198 %post libs -p /sbin/ldconfig
199 %postun libs -p /sbin/ldconfig
201 %files -f %{name}.lang
202 %defattr(644,root,root,755)
203 %doc AUTHORS MAINTAINERS NEWS README.md README-*.md
204 %attr(755,root,root) %{_bindir}/dfu-tool
205 %attr(755,root,root) %{_bindir}/fwupdmgr
206 %dir %{_libexecdir}/fwupd
207 %attr(755,root,root) %{_libexecdir}/fwupd/fwupd
208 %attr(755,root,root) %{_libexecdir}/fwupd/fwupdate
209 %attr(755,root,root) %{_libexecdir}/fwupd/fwupdtool
210 %dir %{_libexecdir}/fwupd/efi
211 %{_libexecdir}/fwupd/efi/fwupd*.efi
212 %dir %{_libdir}/fwupd-plugins-3
213 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_altos.so
214 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_amt.so
215 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_colorhug.so
216 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_csr.so
218 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_dell.so
219 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_dell_esrt.so
221 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_dell_dock.so
222 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_dfu.so
223 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_ebitdo.so
224 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_flashrom.so
225 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_nitrokey.so
226 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_nvme.so
228 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_redfish.so
230 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_rts54hid.so
231 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_rts54hub.so
232 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_steelseries.so
233 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_superio.so
234 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_synapticsmst.so
235 %if %{with thunderbolt}
236 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_thunderbolt.so
237 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_thunderbolt_power.so
239 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_udev.so
241 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_uefi.so
243 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_unifying.so
244 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_upower.so
245 %attr(755,root,root) %{_libdir}/fwupd-plugins-3/libfu_plugin_wacomhid.so
246 %dir %{_sysconfdir}/fwupd
247 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/daemon.conf
248 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/redfish.conf
249 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/uefi.conf
250 %dir %{_sysconfdir}/fwupd/remotes.d
251 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/fwupd.conf
252 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs.conf
253 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs-testing.conf
254 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/vendor.conf
255 %dir %{_sysconfdir}/pki/fwupd
256 %{_sysconfdir}/pki/fwupd/GPG-KEY-Hughski-Limited
257 %{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Foundation-Firmware
258 %{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service
259 %{_sysconfdir}/pki/fwupd/LVFS-CA.pem
260 %dir %{_sysconfdir}/pki/fwupd-metadata
261 %{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata
262 %{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service
263 %{_sysconfdir}/pki/fwupd-metadata/LVFS-CA.pem
264 %{systemdunitdir}/fwupd.service
265 %{systemdunitdir}/fwupd-offline-update.service
266 %{systemdunitdir}/system-update.target.wants/fwupd-offline-update.service
267 /lib/udev/rules.d/90-fwupd-devices.rules
268 /etc/dbus-1/system.d/org.freedesktop.fwupd.conf
269 %{_datadir}/dbus-1/system-services/org.freedesktop.fwupd.service
270 %dir %{_datadir}/fwupd
271 %attr(755,root,root) %{_datadir}/fwupd/firmware-packager
272 %{_datadir}/fwupd/quirks.d
273 %dir %{_datadir}/fwupd/remotes.d
274 %{_datadir}/fwupd/remotes.d/fwupd
275 %{_datadir}/fwupd/remotes.d/vendor
276 %{_datadir}/metainfo/org.freedesktop.fwupd.metainfo.xml
277 %dir %{_datadir}/fwupd/metainfo
278 %{_datadir}/fwupd/metainfo/org.freedesktop.fwupd.remotes.lvfs-testing.metainfo.xml
279 %{_datadir}/fwupd/metainfo/org.freedesktop.fwupd.remotes.lvfs.metainfo.xml
280 %{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy
281 %{_datadir}/polkit-1/rules.d/org.freedesktop.fwupd.rules
282 %lang(ca) %{_localedir}/ca/LC_IMAGES
283 %lang(cs) %{_localedir}/cs/LC_IMAGES
284 %lang(en) %{_localedir}/en/LC_IMAGES
285 %lang(fi) %{_localedir}/fi/LC_IMAGES
286 %lang(fur) %{_localedir}/fur/LC_IMAGES
287 %lang(hr) %{_localedir}/hr/LC_IMAGES
288 %lang(hu) %{_localedir}/hu/LC_IMAGES
289 %lang(id) %{_localedir}/id/LC_IMAGES
290 %lang(it) %{_localedir}/it/LC_IMAGES
291 %lang(ko) %{_localedir}/ko/LC_IMAGES
292 %lang(pl) %{_localedir}/pl/LC_IMAGES
293 %lang(pt_BR) %{_localedir}/pt_BR/LC_IMAGES
294 %lang(ru) %{_localedir}/ru/LC_IMAGES
295 %lang(sr) %{_localedir}/sr/LC_IMAGES
296 %lang(sv) %{_localedir}/sv/LC_IMAGES
297 %lang(uk) %{_localedir}/uk/LC_IMAGES
298 %lang(zh_CN) %{_localedir}/zh_CN/LC_IMAGES
299 %lang(zh_TW) %{_localedir}/zh_TW/LC_IMAGES
301 %dir /var/lib/fwupd/builder
302 /var/lib/fwupd/builder/README.md
303 %{_mandir}/man1/dfu-tool.1*
304 %{_mandir}/man1/fwupdmgr.1*
306 %files -n bash-completion-fwupd
307 %defattr(644,root,root,755)
308 %{bash_compdir}/fwupdmgr
309 %{bash_compdir}/fwupdtool
312 %defattr(644,root,root,755)
313 %attr(755,root,root) %{_libdir}/libfwupd.so.*.*.*
314 %attr(755,root,root) %ghost %{_libdir}/libfwupd.so.2
315 %{_libdir}/girepository-1.0/Fwupd-2.0.typelib
318 %defattr(644,root,root,755)
319 %doc libfwupd/README.md
320 %attr(755,root,root) %{_libdir}/libfwupd.so
321 %{_includedir}/fwupd-1
322 %{_datadir}/gir-1.0/Fwupd-2.0.gir
323 %{_datadir}/dbus-1/interfaces/org.freedesktop.fwupd.xml
324 %{_pkgconfigdir}/fwupd.pc
327 %defattr(644,root,root,755)
328 %{_gtkdocdir}/libfwupd
331 %defattr(644,root,root,755)
332 %{_datadir}/vala/vapi/fwupd.deps
333 %{_datadir}/vala/vapi/fwupd.vapi