mirror of
https://git.proxmox.com/git/fwupd
synced 2025-05-17 20:26:33 +00:00
433 lines
12 KiB
RPMSpec
433 lines
12 KiB
RPMSpec
%global glib2_version 2.45.8
|
|
%global libxmlb_version 0.1.3
|
|
%global libgusb_version 0.3.3
|
|
%global libsoup_version 2.51.92
|
|
%global libjcat_version 0.1.0
|
|
%global systemd_version 231
|
|
%global json_glib_version 1.1.1
|
|
|
|
%define alphatag #ALPHATAG#
|
|
|
|
%global enable_ci 0
|
|
%global enable_tests 1
|
|
%global enable_dummy 1
|
|
%global __meson_wrap_mode default
|
|
|
|
# fwupd.efi is only available on these arches
|
|
%ifarch x86_64 aarch64
|
|
%global have_uefi 1
|
|
%endif
|
|
|
|
# flashrom is only available on these arches
|
|
%ifarch i686 x86_64 armv7hl aarch64 ppc64le
|
|
%global have_flashrom 1
|
|
%endif
|
|
|
|
# redfish is only available on this arch
|
|
%ifarch x86_64
|
|
%global have_redfish 1
|
|
%endif
|
|
|
|
# libsmbios is only available on x86
|
|
%ifarch x86_64
|
|
%global have_dell 1
|
|
%endif
|
|
|
|
# only available recently
|
|
%if 0%{?fedora} >= 30
|
|
%global have_modem_manager 1
|
|
%endif
|
|
|
|
Summary: Firmware update daemon
|
|
Name: fwupd
|
|
Version: #VERSION#
|
|
Release: 0.#BUILD#%{?alphatag}%{?dist}
|
|
License: LGPLv2+
|
|
URL: https://github.com/fwupd/fwupd
|
|
Source0: http://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz
|
|
|
|
BuildRequires: gettext
|
|
BuildRequires: glib2-devel >= %{glib2_version}
|
|
BuildRequires: libxmlb-devel >= %{libxmlb_version}
|
|
BuildRequires: libgcab1-devel
|
|
BuildRequires: libgudev1-devel
|
|
BuildRequires: libgusb-devel >= %{libgusb_version}
|
|
BuildRequires: libsoup-devel >= %{libsoup_version}
|
|
BuildRequires: libjcat-devel >= %{libjcat_version}
|
|
BuildRequires: polkit-devel >= 0.103
|
|
BuildRequires: sqlite-devel
|
|
BuildRequires: systemd >= %{systemd_version}
|
|
BuildRequires: libarchive-devel
|
|
BuildRequires: gobject-introspection-devel
|
|
BuildRequires: gcab
|
|
%ifarch %{valgrind_arches}
|
|
BuildRequires: valgrind
|
|
BuildRequires: valgrind-devel
|
|
%endif
|
|
BuildRequires: elfutils-libelf-devel
|
|
BuildRequires: gtk-doc
|
|
BuildRequires: gnutls-devel
|
|
BuildRequires: gnutls-utils
|
|
BuildRequires: meson
|
|
BuildRequires: help2man
|
|
BuildRequires: json-glib-devel >= %{json_glib_version}
|
|
BuildRequires: vala
|
|
BuildRequires: bash-completion
|
|
BuildRequires: git-core
|
|
%if 0%{?have_flashrom}
|
|
BuildRequires: flashrom-devel >= 1.2-2
|
|
%endif
|
|
|
|
%if 0%{?have_modem_manager}
|
|
BuildRequires: ModemManager-glib-devel >= 1.10.0
|
|
BuildRequires: libqmi-devel >= 1.22.0
|
|
%endif
|
|
|
|
%if 0%{?have_redfish}
|
|
BuildRequires: efivar-devel >= 33
|
|
%endif
|
|
|
|
%if 0%{?have_uefi}
|
|
BuildRequires: efivar-devel >= 33
|
|
BuildRequires: python3 python3-cairo python3-gobject python3-pillow
|
|
BuildRequires: pango-devel
|
|
BuildRequires: cairo-devel cairo-gobject-devel
|
|
BuildRequires: freetype
|
|
BuildRequires: fontconfig
|
|
BuildRequires: google-noto-sans-cjk-ttc-fonts
|
|
BuildRequires: gnu-efi-devel
|
|
BuildRequires: tpm2-tss-devel >= 2.2.3
|
|
BuildRequires: pesign
|
|
%endif
|
|
|
|
%if 0%{?have_dell}
|
|
BuildRequires: efivar-devel >= 33
|
|
BuildRequires: libsmbios-devel >= 2.3.0
|
|
%endif
|
|
|
|
Requires(post): systemd
|
|
Requires(preun): systemd
|
|
Requires(postun): systemd
|
|
|
|
Requires: glib2%{?_isa} >= %{glib2_version}
|
|
Requires: libxmlb%{?_isa} >= %{libxmlb_version}
|
|
Requires: libgusb%{?_isa} >= %{libgusb_version}
|
|
Requires: libsoup%{?_isa} >= %{libsoup_version}
|
|
Requires: bubblewrap
|
|
Requires: shared-mime-info
|
|
|
|
%if 0%{?have_uefi}
|
|
Requires: dbxtool
|
|
%endif
|
|
|
|
%if 0%{?rhel} > 7 || 0%{?fedora} > 28
|
|
Recommends: python3
|
|
%endif
|
|
|
|
Obsoletes: fwupd-sign < 0.1.6
|
|
Obsoletes: libebitdo < 0.7.5-3
|
|
Obsoletes: libdfu < 1.0.0
|
|
Obsoletes: fwupd-labels < 1.1.0-1
|
|
|
|
%if 0%{?rhel} > 7
|
|
Obsoletes: fwupdate < 11-4
|
|
Obsoletes: fwupdate-efi < 11-4
|
|
|
|
Provides: fwupdate
|
|
Provides: fwupdate-efi
|
|
%endif
|
|
|
|
%description
|
|
fwupd is a daemon to allow session software to update device firmware.
|
|
|
|
%package devel
|
|
Summary: Development package for %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Obsoletes: libebitdo-devel < 0.7.5-3
|
|
Obsoletes: libdfu-devel < 1.0.0
|
|
|
|
%description devel
|
|
Files for development with %{name}.
|
|
|
|
%package tests
|
|
Summary: Data files for installed tests
|
|
BuildArch: noarch
|
|
|
|
%description tests
|
|
Data files for installed tests.
|
|
|
|
%prep
|
|
%autosetup -p1
|
|
|
|
%build
|
|
|
|
%meson \
|
|
%if 0%{?enable_ci}
|
|
--werror \
|
|
%endif
|
|
-Dgtkdoc=true \
|
|
-Defi_dbxdir=%{_datadir}/dbxtool \
|
|
%if 0%{?enable_tests}
|
|
-Dtests=true \
|
|
%else
|
|
-Dtests=false \
|
|
%endif
|
|
%if 0%{?enable_dummy}
|
|
-Dplugin_dummy=true \
|
|
%else
|
|
-Dplugin_dummy=false \
|
|
%endif
|
|
%if 0%{?have_flashrom}
|
|
-Dplugin_flashrom=true \
|
|
%else
|
|
-Dplugin_flashrom=false \
|
|
%endif
|
|
-Dplugin_thunderbolt=true \
|
|
%if 0%{?have_redfish}
|
|
-Dplugin_redfish=true \
|
|
%else
|
|
-Dplugin_redfish=false \
|
|
%endif
|
|
%if 0%{?have_uefi}
|
|
-Dplugin_uefi=true \
|
|
-Dplugin_nvme=true \
|
|
-Dplugin_tpm=true \
|
|
%else
|
|
-Dplugin_uefi=false \
|
|
-Dplugin_nvme=false \
|
|
-Dplugin_tpm=false \
|
|
%endif
|
|
%if 0%{?have_dell}
|
|
-Dplugin_dell=true \
|
|
-Dplugin_synaptics=true \
|
|
%else
|
|
-Dplugin_dell=false \
|
|
-Dplugin_synaptics=false \
|
|
%endif
|
|
%if 0%{?have_modem_manager}
|
|
-Dplugin_modem_manager=true \
|
|
%else
|
|
-Dplugin_modem_manager=false \
|
|
%endif
|
|
-Dman=true
|
|
|
|
%meson_build
|
|
|
|
%if 0%{?enable_tests}
|
|
%check
|
|
%meson_test
|
|
%endif
|
|
|
|
%install
|
|
%meson_install
|
|
|
|
# sign fwupd.efi loader
|
|
%if 0%{?have_uefi}
|
|
%ifarch x86_64
|
|
%global efiarch x64
|
|
%endif
|
|
%ifarch aarch64
|
|
%global efiarch aa64
|
|
%endif
|
|
%global fwup_efi_fn $RPM_BUILD_ROOT%{_libexecdir}/fwupd/efi/fwupd%{efiarch}.efi
|
|
%pesign -s -i %{fwup_efi_fn} -o %{fwup_efi_fn}.signed
|
|
%endif
|
|
|
|
mkdir -p --mode=0700 $RPM_BUILD_ROOT%{_localstatedir}/lib/fwupd/gnupg
|
|
|
|
%find_lang %{name}
|
|
|
|
%post
|
|
%systemd_post fwupd.service
|
|
|
|
%preun
|
|
%systemd_preun fwupd.service
|
|
|
|
%postun
|
|
%systemd_postun_with_restart fwupd.service
|
|
%systemd_postun_with_restart pesign.service
|
|
|
|
%files -f %{name}.lang
|
|
%doc README.md AUTHORS
|
|
%license COPYING
|
|
%config(noreplace)%{_sysconfdir}/fwupd/ata.conf
|
|
%config(noreplace)%{_sysconfdir}/fwupd/daemon.conf
|
|
%config(noreplace)%{_sysconfdir}/fwupd/upower.conf
|
|
%if 0%{?have_uefi}
|
|
%config(noreplace)%{_sysconfdir}/fwupd/uefi.conf
|
|
%endif
|
|
%if 0%{?have_redfish}
|
|
%config(noreplace)%{_sysconfdir}/fwupd/redfish.conf
|
|
%endif
|
|
%config(noreplace)%{_sysconfdir}/fwupd/thunderbolt.conf
|
|
%dir %{_libexecdir}/fwupd
|
|
%{_libexecdir}/fwupd/fwupd
|
|
%{_libexecdir}/fwupd/fwupdoffline
|
|
%if 0%{?have_uefi}
|
|
%{_libexecdir}/fwupd/efi/*.efi
|
|
%{_libexecdir}/fwupd/efi/*.efi.signed
|
|
%{_bindir}/fwupdate
|
|
%{_bindir}/fwupdtpmevlog
|
|
%endif
|
|
%{_bindir}/dfu-tool
|
|
%{_bindir}/fwupdmgr
|
|
%{_bindir}/fwupdtool
|
|
%{_bindir}/fwupdagent
|
|
%dir %{_sysconfdir}/fwupd
|
|
%dir %{_sysconfdir}/fwupd/remotes.d
|
|
%if 0%{?have_dell}
|
|
%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/dell-esrt.conf
|
|
%endif
|
|
%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/lvfs.conf
|
|
%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/lvfs-testing.conf
|
|
%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/vendor.conf
|
|
%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/vendor-directory.conf
|
|
%config(noreplace)%{_sysconfdir}/pki/fwupd
|
|
%{_sysconfdir}/pki/fwupd-metadata
|
|
%{_datadir}/dbus-1/system.d/org.freedesktop.fwupd.conf
|
|
%{_datadir}/bash-completion/completions/fwupdmgr
|
|
%{_datadir}/bash-completion/completions/fwupdtool
|
|
%{_datadir}/bash-completion/completions/fwupdagent
|
|
%{_datadir}/fish/vendor_completions.d/fwupdmgr.fish
|
|
%{_datadir}/fwupd/metainfo/org.freedesktop.fwupd*.metainfo.xml
|
|
%if 0%{?have_dell}
|
|
%{_datadir}/fwupd/remotes.d/dell-esrt/metadata.xml
|
|
%endif
|
|
%{_datadir}/fwupd/remotes.d/vendor/firmware/README.md
|
|
%{_datadir}/dbus-1/interfaces/org.freedesktop.fwupd.xml
|
|
%{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy
|
|
%{_datadir}/polkit-1/rules.d/org.freedesktop.fwupd.rules
|
|
%{_datadir}/dbus-1/system-services/org.freedesktop.fwupd.service
|
|
%{_datadir}/man/man1/fwupdtool.1.gz
|
|
%{_datadir}/man/man1/fwupdagent.1.gz
|
|
%{_datadir}/man/man1/dfu-tool.1.gz
|
|
%{_datadir}/man/man1/fwupdmgr.1.gz
|
|
%if 0%{?have_uefi}
|
|
%{_datadir}/man/man1/fwupdate.1.gz
|
|
%{_datadir}/man/man1/fwupdtpmevlog.1.gz
|
|
%endif
|
|
%{_datadir}/metainfo/org.freedesktop.fwupd.metainfo.xml
|
|
%{_datadir}/icons/hicolor/scalable/apps/org.freedesktop.fwupd.svg
|
|
%{_datadir}/fwupd/firmware_packager.py
|
|
%{_datadir}/fwupd/simple_client.py
|
|
%{_datadir}/fwupd/add_capsule_header.py
|
|
%{_datadir}/fwupd/install_dell_bios_exe.py
|
|
%{_unitdir}/fwupd-offline-update.service
|
|
%{_unitdir}/fwupd.service
|
|
%{_unitdir}/fwupd-refresh.service
|
|
%{_unitdir}/fwupd-refresh.timer
|
|
%{_presetdir}/fwupd-refresh.preset
|
|
%{_unitdir}/system-update.target.wants/
|
|
%dir %{_localstatedir}/lib/fwupd
|
|
%dir %{_datadir}/fwupd/quirks.d
|
|
%{_datadir}/fwupd/quirks.d/*.quirk
|
|
%{_localstatedir}/lib/fwupd/builder/README.md
|
|
%{_libdir}/libfwupd*.so.*
|
|
%{_libdir}/girepository-1.0/Fwupd-2.0.typelib
|
|
%{_libdir}/girepository-1.0/FwupdPlugin-1.0.typelib
|
|
/usr/lib/udev/rules.d/*.rules
|
|
/usr/lib/systemd/system-shutdown/fwupd.shutdown
|
|
%dir %{_libdir}/fwupd-plugins-3
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_acpi_dmar.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_acpi_facp.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_altos.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_amt.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_ata.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_ccgx.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_colorhug.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_coreboot.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_cros_ec.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_csr.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_cpu.so
|
|
%if 0%{?have_dell}
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_dell.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_dell_esrt.so
|
|
%endif
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_dell_dock.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_dfu.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_ebitdo.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_emmc.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_ep963x.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_fastboot.so
|
|
%if 0%{?have_flashrom}
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_flashrom.so
|
|
%endif
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_fresco_pd.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_iommu.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_jabra.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_linux_lockdown.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_linux_sleep.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_linux_swap.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_linux_tainted.so
|
|
%if 0%{?have_modem_manager}
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_modem_manager.so
|
|
%endif
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_nitrokey.so
|
|
%if 0%{?have_uefi}
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_nvme.so
|
|
%endif
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_optionrom.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_pci_bcr.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_pci_mei.so
|
|
%if 0%{?have_redfish}
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_redfish.so
|
|
%endif
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_rts54hid.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_rts54hub.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_solokey.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_steelseries.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_superio.so
|
|
%if 0%{?have_dell}
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_mst.so
|
|
%endif
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_cxaudio.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_prometheus.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_rmi.so
|
|
%if 0%{?enable_dummy}
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_test.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_invalid.so
|
|
%endif
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_thelio_io.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_thunderbolt.so
|
|
%if 0%{?have_uefi}
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_tpm.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_tpm_eventlog.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_uefi.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_uefi_dbx.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_uefi_recovery.so
|
|
%endif
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_logind.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_logitech_hidpp.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_upower.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_vli.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_wacom_raw.so
|
|
%{_libdir}/fwupd-plugins-3/libfu_plugin_wacom_usb.so
|
|
%ghost %{_localstatedir}/lib/fwupd/gnupg
|
|
%if 0%{?have_uefi}
|
|
%{_datadir}/locale/*/LC_IMAGES/fwupd*
|
|
%endif
|
|
|
|
%files devel
|
|
%{_datadir}/gir-1.0/Fwupd-2.0.gir
|
|
%{_datadir}/gir-1.0/FwupdPlugin-1.0.gir
|
|
%{_datadir}/gtk-doc/html/fwupd
|
|
%{_datadir}/vala/vapi
|
|
%{_includedir}/fwupd-1
|
|
%{_libdir}/libfwupd*.so
|
|
%{_libdir}/pkgconfig/fwupd.pc
|
|
%{_libdir}/pkgconfig/fwupdplugin.pc
|
|
|
|
%files tests
|
|
%dir %{_datadir}/installed-tests/fwupd
|
|
%{_datadir}/installed-tests/fwupd/fwupd-tests.xml
|
|
%{_datadir}/installed-tests/fwupd/*.test
|
|
%{_datadir}/installed-tests/fwupd/*.cab
|
|
%{_datadir}/installed-tests/fwupd/*.sh
|
|
%dir %{_sysconfdir}/fwupd/remotes.d
|
|
%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/fwupd-tests.conf
|
|
|
|
%changelog
|
|
* #LONGDATE# Richard Hughes <richard@hughsie.com> #VERSION#-0.#BUILD##ALPHATAG#
|
|
- Update from git
|
|
|