]> git.pld-linux.org Git - packages/fwupd.git/blame - fwupd.spec
noarch bash/fish completion packages
[packages/fwupd.git] / fwupd.spec
CommitLineData
8dceaca0
JB
1#
2# Conditional build:
328e4a1a 3%bcond_without apidocs
445379a6 4%bcond_without efi # UEFI (and dell, redfish) support
425d8043
JB
5%bcond_without flashrom # flashrom plugin
6%bcond_without modemmanager # modem_manager plugin
9d82ffc9 7%bcond_without thunderbolt # Thunderbolt support
dad21322 8
445379a6 9%ifnarch %{ix86} %{x8664} x32 %{arm} aarch64
8dceaca0
JB
10%undefine with_efi
11%endif
12Summary: System daemon for installing device firmware
13Summary(pl.UTF-8): Demon systemowy do instalowania firmware'u urządzeń
14Name: fwupd
efc4a6c8 15Version: 1.8.10
6c954d9b 16Release: 1
bd3466ff 17License: LGPL v2.1+
8dceaca0 18Group: Applications/System
2a7d50df 19Source0: https://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz
efc4a6c8 20# Source0-md5: bf6b6486f79732656980ba17a2087362
8dceaca0 21URL: https://github.com/hughsie/fwupd
425d8043 22%{?with_modemmanager:BuildRequires: ModemManager-devel >= 1.10.0}
a2237966 23BuildRequires: bash-completion-devel >= 1:2.0
445379a6 24%{?with_cairo:BuildRequires: cairo-devel}
6c954d9b 25BuildRequires: curl-devel >= 7.62.0
445379a6 26%{?with_efi:BuildRequires: efivar-devel >= 33}
e5466782 27# pkgconfig(libelf); can be also libelf-devel
445379a6 28BuildRequires: gcab-devel >= 1.0
efc4a6c8
JB
29# C11
30BuildRequires: gcc >= 6:4.7
e22481c9 31%ifarch x32
efc4a6c8 32BuildRequires: gcc-multilib-64 >= 6:4.7
e22481c9 33%endif
bd3466ff 34BuildRequires: gettext-tools >= 0.19.7
445379a6 35BuildRequires: glib2-devel >= 1:2.55.0
425d8043 36BuildRequires: gnutls-devel >= 3.6.0
8dceaca0 37BuildRequires: gobject-introspection-devel >= 0.9.8
efc4a6c8 38%{?with_doc:BuildRequires: gi-docgen >= 2022.2}
445379a6 39BuildRequires: json-glib-devel >= 1.1.1
91b560a2 40BuildRequires: libarchive-devel
f69ebcf4 41BuildRequires: libcbor-devel >= 0.7.0
6c954d9b 42%{?with_flashrom:BuildRequires: libflashrom-devel >= 1.2}
445379a6 43BuildRequires: libgudev-devel >= 232
6c954d9b 44BuildRequires: libgusb-devel >= 0.3.5
f69ebcf4 45BuildRequires: libjcat-devel >= 0.1.4
70eebab3
JB
46%{?with_modemmanager:BuildRequires: libmbim-devel >= 1.22.0}
47%{?with_modemmanager:BuildRequires: libqmi-devel >= 1.23.1}
425d8043 48# for dell (which requires also uefi plugin and efivar)
445379a6 49%{?with_efi:BuildRequires: libsmbios-devel >= 2.4.0}
67e55b6b 50BuildRequires: libsoup-devel >= 2.52
445379a6 51BuildRequires: libuuid-devel
efc4a6c8 52BuildRequires: libxmlb-devel >= 0.1.15
445379a6
JB
53# for <linux/nvme_ioctl.h>
54BuildRequires: linux-libc-headers >= 7:4.4
efc4a6c8 55BuildRequires: meson >= 0.61.0
579e28a9 56BuildRequires: ninja >= 1.6
8dceaca0 57BuildRequires: pkgconfig
445379a6 58BuildRequires: polkit-devel >= 0.114
d5513f57 59BuildRequires: python3 >= 1:3.0
bfd8ba8d
AM
60BuildRequires: python3-pillow
61BuildRequires: python3-pycairo
6c954d9b
JB
62BuildRequires: rpm-build >= 4.6
63BuildRequires: rpmbuild(macros) >= 1.736
8dceaca0 64BuildRequires: sqlite3-devel >= 3
efc4a6c8 65BuildRequires: systemd-devel >= 1:209
445379a6 66BuildRequires: systemd-units >= 1:211
8dceaca0 67BuildRequires: tar >= 1:1.22
d5513f57 68BuildRequires: tpm2-tss-devel >= 2.0
bd3466ff 69BuildRequires: udev-devel
445379a6 70%{?with_thunderbolt:BuildRequires: umockdev-devel}
8dceaca0 71BuildRequires: xz
6c954d9b 72BuildRequires: xz-devel
8dceaca0 73Requires: %{name}-libs = %{version}-%{release}
425d8043 74%{?with_modemmanager:BuildRequires: ModemManager-libs >= 1.10.0}
6c954d9b 75Requires: curl-libs >= 7.62.0
445379a6 76Requires: gcab >= 1.0
425d8043 77Requires: gnutls-libs >= 3.6.0
f69ebcf4 78Requires: libcbor >= 0.7.0
445379a6 79Requires: libgudev >= 232
6c954d9b 80Requires: libgusb >= 0.3.5
f69ebcf4 81Requires: libjcat >= 0.1.4
70eebab3
JB
82%{?with_modemmanager:Requires: libmbim >= 1.22.0}
83%{?with_modemmanager:Requires: libqmi >= 1.23.1}
445379a6 84%{?with_efi:Requires: libsmbios >= 2.4.0}
67e55b6b 85Requires: libsoup >= 2.52
efc4a6c8 86Requires: libxmlb >= 0.1.15
445379a6 87Requires: polkit >= 0.114
d5513f57 88Requires: tpm2-tss >= 2.0
6c954d9b
JB
89%if %{with efi}
90Suggests: fwupd-efi
91%endif
8dceaca0
JB
92BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
93
efc4a6c8 94%define fwupd_plugins_dir %{_libdir}/fwupd-%{version}
f69ebcf4 95
8dceaca0
JB
96%description
97fwupd is a simple daemon to allow session software to update device
98firmware on your local machine. It's designed for desktops, but this
99project is probably quite interesting for phones, tablets and server
100farms.
101
102%description -l pl.UTF-8
103fwupd to prosty demon pozwalający programom sesyjnym na aktualizację
104firmware'u urządzeń na maszynie lokalnej. Jest zaprojektowany dla
105komputerów osobistych, ale może być interesujący także dla telefonów,
106tabletów i farm serwerów.
107
445379a6
JB
108%package -n bash-completion-fwupd
109Summary: Bash completion for fwupd commands
110Summary(pl.UTF-8): Bashowe dopełnianie składni poleceń fwupd
111Group: Applications/Shells
112Requires: %{name} = %{version}-%{release}
a2237966 113Requires: bash-completion >= 1:2.0
1da9f11c 114BuildArch: noarch
445379a6
JB
115
116%description -n bash-completion-fwupd
117Bash completion for fwupd commands.
118
119%description -n bash-completion-fwupd -l pl.UTF-8
120Bashowe dopełnianie składni poleceń fwupd.
121
d5513f57
JB
122%package -n fish-completion-fwupd
123Summary: Fish completion for fwupd commands
124Summary(pl.UTF-8): Dopełnianie składni poleceń fwupd w fish
125Group: Applications/Shells
126Requires: %{name} = %{version}-%{release}
127Requires: fish
1da9f11c 128BuildArch: noarch
d5513f57
JB
129
130%description -n fish-completion-fwupd
131Fish completion for fwupd commands.
132
133%description -n fish-completion-fwupd -l pl.UTF-8
134Dopełnianie składni poleceń fwupd w fish.
135
8dceaca0 136%package libs
fdff42f4
JB
137Summary: Libraries for fwupd device firmware installing daemon
138Summary(pl.UTF-8): Biblioteki dla demona fwupd instalującego aktualizacje firmware'u
8dceaca0 139Group: Libraries
445379a6
JB
140Requires: glib2-devel >= 1:2.55.0
141Requires: json-glib >= 1.1.1
8dceaca0
JB
142
143%description libs
fdff42f4 144Libraries for fwupd device firmware installing daemon.
8dceaca0
JB
145
146%description libs -l pl.UTF-8
fdff42f4 147Biblioteki dla demona fwupd instalującego aktualizacje firmware'u.
8dceaca0
JB
148
149%package devel
fdff42f4
JB
150Summary: Header files for fwupd libraries
151Summary(pl.UTF-8): Pliki nagłówkowe bibliotek fwupd
8dceaca0
JB
152Group: Development/Libraries
153Requires: %{name}-libs = %{version}-%{release}
445379a6 154Requires: glib2-devel >= 1:2.55.0
8dceaca0
JB
155
156%description devel
fdff42f4 157Header files for fwupd libraries.
8dceaca0
JB
158
159%description devel -l pl.UTF-8
fdff42f4 160Pliki nagłówkowe bibliotek fwupd.
8dceaca0 161
6c954d9b
JB
162%package static
163Summary: Static fwupd libraries
164Summary(pl.UTF-8): Statyczne biblioteki fwupd
165Group: Development/Libraries
166Requires: %{name}-devel = %{version}-%{release}
167
168%description static
169Static fwupd libraries.
170
171%description static -l pl.UTF-8
172Statyczne biblioteki fwupd.
173
fdff42f4
JB
174%package apidocs
175Summary: API documentation for fwupd libraries
176Summary(pl.UTF-8): Dokumentacja API do bibliotek fwupd
177Group: Documentation
dad21322 178BuildArch: noarch
fdff42f4
JB
179
180%description apidocs
181API documentation for fwupd libraries.
182
183%description apidocs -l pl.UTF-8
184Dokumentacja API do bibliotek fwupd.
8dceaca0 185
445379a6
JB
186%package -n vala-fwupd
187Summary: Vala API for fwupd library
188Summary(pl.UTF-8): API języka Vala do biblioteki fwupd
189Group: Development/Libraries
190Requires: %{name}-devel = %{version}-%{release}
191Requires: vala-libsoup >= 2.52
192
193%description -n vala-fwupd
194Vala API for fwupd library.
195
196%description -n vala-fwupd -l pl.UTF-8
197API języka Vala do biblioteki fwupd.
198
8dceaca0
JB
199%prep
200%setup -q
201
202%build
2317379a 203%meson build \
2dde8c83 204 -Dbluez=enabled \
6c954d9b 205 -Defi_binary=false \
882dade5 206 -Ddocs=%{__enabled_disabled apidocs} \
2dde8c83
JB
207 -Dlzma=enabled \
208 %{!?with_efi:-Dplugin_dell=disabled} \
efc4a6c8 209 %{!?with_flashrom:-Dplugin_flashrom=disabled} \
6c954d9b 210 -Dplugin_intel_spi=true \
efc4a6c8 211 %{!?with_modemmanager:-Dplugin_modem_manager=disabled} \
2dde8c83 212 %{!?with_efi:-Dplugin_redfish=disabled} \
2dde8c83 213 %{!?with_efi:-Dplugin_uefi_capsule=disabled} \
efc4a6c8 214 %{!?with_efi:-Dplugin_uefi_pk=disabled} \
445379a6 215 -Dtests=false
bd3466ff 216
f6aa7e37 217%ninja_build -C build
8dceaca0
JB
218
219%install
220rm -rf $RPM_BUILD_ROOT
221
f6aa7e37 222%ninja_install -C build
8dceaca0 223
445379a6
JB
224for pdoc in plugins/*/README.md ; do
225 pname=$(basename $(dirname $pdoc))
226 cp -p plugins/${pname}/README.md README-${pname}.md
227done
228
efc4a6c8
JB
229%if %{with apidocs}
230# FIXME: where to package gi-docgen generated docs?
231install -d $RPM_BUILD_ROOT%{_gtkdocdir}
232%{__mv} $RPM_BUILD_ROOT%{_docdir}/*fwupd* $RPM_BUILD_ROOT%{_gtkdocdir}
233%endif
234
8dceaca0
JB
235%find_lang %{name}
236
237%clean
238rm -rf $RPM_BUILD_ROOT
239
240%post libs -p /sbin/ldconfig
241%postun libs -p /sbin/ldconfig
242
243%files -f %{name}.lang
244%defattr(644,root,root,755)
6c954d9b 245%doc AUTHORS MAINTAINERS README.md README-*.md SECURITY.md
e014f3a3 246%{?with_efi:%attr(755,root,root) %{_bindir}/dbxtool}
fdff42f4 247%attr(755,root,root) %{_bindir}/dfu-tool
d5513f57 248%attr(755,root,root) %{_bindir}/fwupdagent
f24e464a 249%{?with_efi:%attr(755,root,root) %{_bindir}/fwupdate}
8dceaca0 250%attr(755,root,root) %{_bindir}/fwupdmgr
d5513f57 251%attr(755,root,root) %{_bindir}/fwupdtool
445379a6
JB
252%dir %{_libexecdir}/fwupd
253%attr(755,root,root) %{_libexecdir}/fwupd/fwupd
6c954d9b 254%attr(755,root,root) %{_libexecdir}/fwupd/fwupd-detect-cet
425d8043 255%attr(755,root,root) %{_libexecdir}/fwupd/fwupdoffline
425d8043 256%if %{with flashrom}
f69ebcf4 257%attr(755,root,root) %{fwupd_plugins_dir}/libfu_plugin_flashrom.so
425d8043
JB
258%endif
259%if %{with modemmanager}
f69ebcf4 260%attr(755,root,root) %{fwupd_plugins_dir}/libfu_plugin_modem_manager.so
425d8043 261%endif
bfd8ba8d
AM
262%dir %{_sysconfdir}/fwupd
263%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/daemon.conf
f69ebcf4 264%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/msr.conf
328e4a1a 265%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/thunderbolt.conf
f24e464a
JP
266%if %{with efi}
267%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/redfish.conf
6c954d9b 268%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/uefi_capsule.conf
f24e464a 269%endif
bfd8ba8d 270%dir %{_sysconfdir}/fwupd/remotes.d
425d8043
JB
271%if %{with efi}
272%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/dell-esrt.conf
273%endif
bfd8ba8d 274%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs.conf
445379a6 275%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs-testing.conf
bfd8ba8d 276%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/vendor.conf
86752ae9 277%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/vendor-directory.conf
70eebab3 278#/etc/grub.d/35_fwupd
f29fd781 279%dir %{_sysconfdir}/pki/fwupd
f29fd781
AM
280%{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Foundation-Firmware
281%{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service
282%{_sysconfdir}/pki/fwupd/LVFS-CA.pem
283%dir %{_sysconfdir}/pki/fwupd-metadata
284%{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata
285%{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service
286%{_sysconfdir}/pki/fwupd-metadata/LVFS-CA.pem
70eebab3 287#/lib/modules-load.d/fwupd-msr.conf
8dceaca0 288%{systemdunitdir}/fwupd.service
a557ad5c 289%{systemdunitdir}/fwupd-offline-update.service
328e4a1a
AM
290%{systemdunitdir}/fwupd-refresh.service
291%{systemdunitdir}/fwupd-refresh.timer
a557ad5c 292%{systemdunitdir}/system-update.target.wants/fwupd-offline-update.service
328e4a1a 293/lib/systemd/system-preset/fwupd-refresh.preset
425d8043 294/lib/systemd/system-shutdown/fwupd.shutdown
91b560a2 295/lib/udev/rules.d/90-fwupd-devices.rules
328e4a1a 296%{_datadir}/dbus-1/system.d/org.freedesktop.fwupd.conf
8dceaca0 297%{_datadir}/dbus-1/system-services/org.freedesktop.fwupd.service
bfd8ba8d 298%dir %{_datadir}/fwupd
328e4a1a
AM
299%attr(755,root,root) %{_datadir}/fwupd/add_capsule_header.py
300%attr(755,root,root) %{_datadir}/fwupd/firmware_packager.py
301%attr(755,root,root) %{_datadir}/fwupd/install_dell_bios_exe.py
302%attr(755,root,root) %{_datadir}/fwupd/simple_client.py
6c954d9b
JB
303%if %{with efi}
304%{_datadir}/fwupd/uefi-capsule-ux.tar.xz
305%endif
f477a3c7 306%{_datadir}/fwupd/quirks.d
bfd8ba8d 307%dir %{_datadir}/fwupd/remotes.d
425d8043
JB
308%if %{with efi}
309%{_datadir}/fwupd/remotes.d/dell-esrt
310%endif
bfd8ba8d
AM
311%{_datadir}/fwupd/remotes.d/vendor
312%{_datadir}/metainfo/org.freedesktop.fwupd.metainfo.xml
f29fd781
AM
313%dir %{_datadir}/fwupd/metainfo
314%{_datadir}/fwupd/metainfo/org.freedesktop.fwupd.remotes.lvfs-testing.metainfo.xml
315%{_datadir}/fwupd/metainfo/org.freedesktop.fwupd.remotes.lvfs.metainfo.xml
8dceaca0
JB
316%{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy
317%{_datadir}/polkit-1/rules.d/org.freedesktop.fwupd.rules
425d8043 318%{_iconsdir}/hicolor/scalable/apps/org.freedesktop.fwupd.svg
e014f3a3 319%{?with_efi:%{_mandir}/man1/dbxtool.1*}
fdff42f4 320%{_mandir}/man1/dfu-tool.1*
d5513f57 321%{_mandir}/man1/fwupdagent.1*
f24e464a 322%{?with_efi:%{_mandir}/man1/fwupdate.1*}
8dceaca0 323%{_mandir}/man1/fwupdmgr.1*
d5513f57 324%{_mandir}/man1/fwupdtool.1*
8dceaca0 325
445379a6
JB
326%files -n bash-completion-fwupd
327%defattr(644,root,root,755)
425d8043 328%{bash_compdir}/fwupdagent
445379a6
JB
329%{bash_compdir}/fwupdmgr
330%{bash_compdir}/fwupdtool
331
d5513f57
JB
332%files -n fish-completion-fwupd
333%defattr(644,root,root,755)
334%{_datadir}/fish/vendor_completions.d/fwupdmgr.fish
335
8dceaca0
JB
336%files libs
337%defattr(644,root,root,755)
338%attr(755,root,root) %{_libdir}/libfwupd.so.*.*.*
bfd8ba8d 339%attr(755,root,root) %ghost %{_libdir}/libfwupd.so.2
445379a6 340%{_libdir}/girepository-1.0/Fwupd-2.0.typelib
efc4a6c8
JB
341%dir %{fwupd_plugins_dir}
342%attr(755,root,root) %{fwupd_plugins_dir}/libfwupdengine.so
343%attr(755,root,root) %{fwupd_plugins_dir}/libfwupdplugin.so
344%attr(755,root,root) %{fwupd_plugins_dir}/libfwupdutil.so
8dceaca0
JB
345
346%files devel
347%defattr(644,root,root,755)
445379a6 348%doc libfwupd/README.md
8dceaca0
JB
349%attr(755,root,root) %{_libdir}/libfwupd.so
350%{_includedir}/fwupd-1
bfd8ba8d 351%{_datadir}/gir-1.0/Fwupd-2.0.gir
8dceaca0
JB
352%{_datadir}/dbus-1/interfaces/org.freedesktop.fwupd.xml
353%{_pkgconfigdir}/fwupd.pc
354
6c954d9b
JB
355%files static
356%defattr(644,root,root,755)
357%{_libdir}/libfwupd.a
efc4a6c8
JB
358%{fwupd_plugins_dir}/libfwupdengine.a
359%{fwupd_plugins_dir}/libfwupdplugin.a
360%{fwupd_plugins_dir}/libfwupdutil.a
6c954d9b 361
5dbae069 362%if %{with apidocs}
fdff42f4
JB
363%files apidocs
364%defattr(644,root,root,755)
328e4a1a 365%{_gtkdocdir}/fwupd
efc4a6c8
JB
366%{_gtkdocdir}/libfwupd
367%{_gtkdocdir}/libfwupdplugin
5dbae069 368%endif
f29fd781 369
445379a6
JB
370%files -n vala-fwupd
371%defattr(644,root,root,755)
372%{_datadir}/vala/vapi/fwupd.deps
373%{_datadir}/vala/vapi/fwupd.vapi
This page took 3.999957 seconds and 4 git commands to generate.