#
# Conditional build:
%bcond_without apidocs
+%bcond_without dell # Dell-specific support
%bcond_without efi # UEFI (and dell, redfish) support
%bcond_without flashrom # flashrom plugin
%bcond_without modemmanager # modem_manager plugin
%ifnarch %{ix86} %{x8664} x32 %{arm} aarch64
%undefine with_efi
%endif
+# libsmbios archs
+%ifnarch %{ix86} %{x8664} x32
+%undefine with_dell
+%endif
+%if %{without efi}
+%undefine with_dell
+%endif
+%ifarch %{ix86} %{x8664} x32
+%define with_intel_spi 1
+%endif
Summary: System daemon for installing device firmware
Summary(pl.UTF-8): Demon systemowy do instalowania firmware'u urządzeń
Name: fwupd
-Version: 1.8.10
-Release: 1
+Version: 1.8.17
+Release: 2
License: LGPL v2.1+
Group: Applications/System
-Source0: https://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz
-# Source0-md5: bf6b6486f79732656980ba17a2087362
+#Source0Download: https://github.com/hughsie/fwupd/releases
+Source0: https://github.com/hughsie/fwupd/releases/download/%{version}/%{name}-%{version}.tar.xz
+# Source0-md5: 12b5ee390019a9fbfec2733597f53ced
URL: https://github.com/hughsie/fwupd
%{?with_modemmanager:BuildRequires: ModemManager-devel >= 1.10.0}
BuildRequires: bash-completion-devel >= 1:2.0
%{?with_modemmanager:BuildRequires: libmbim-devel >= 1.22.0}
%{?with_modemmanager:BuildRequires: libqmi-devel >= 1.23.1}
# for dell (which requires also uefi plugin and efivar)
-%{?with_efi:BuildRequires: libsmbios-devel >= 2.4.0}
+%{?with_dell:BuildRequires: libsmbios-devel >= 2.4.0}
BuildRequires: libsoup-devel >= 2.52
BuildRequires: libuuid-devel
BuildRequires: libxmlb-devel >= 0.1.15
BuildRequires: pkgconfig
BuildRequires: polkit-devel >= 0.114
BuildRequires: python3 >= 1:3.0
-BuildRequires: python3-pillow
-BuildRequires: python3-pycairo
+%{?with_doc:BuildRequires: python3-markdown >= 3.2}
BuildRequires: rpm-build >= 4.6
-BuildRequires: rpmbuild(macros) >= 1.736
+BuildRequires: rpmbuild(macros) >= 2.029
BuildRequires: sqlite3-devel >= 3
BuildRequires: systemd-devel >= 1:209
BuildRequires: systemd-units >= 1:211
BuildRequires: tpm2-tss-devel >= 2.0
BuildRequires: udev-devel
%{?with_thunderbolt:BuildRequires: umockdev-devel}
+BuildRequires: vala
BuildRequires: xz
BuildRequires: xz-devel
+# efi capsule splash (po/test-deps)
+%if %{with efi}
+# any Sans font
+BuildRequires: fonts-TTF-DejaVu
+BuildRequires: pango >= 1:1.26.0
+BuildRequires: python3-pycairo
+BuildRequires: python3-pygobject3
+%endif
Requires: %{name}-libs = %{version}-%{release}
%{?with_modemmanager:BuildRequires: ModemManager-libs >= 1.10.0}
Requires: curl-libs >= 7.62.0
Requires: libjcat >= 0.1.4
%{?with_modemmanager:Requires: libmbim >= 1.22.0}
%{?with_modemmanager:Requires: libqmi >= 1.23.1}
-%{?with_efi:Requires: libsmbios >= 2.4.0}
+%{?with_dell:Requires: libsmbios >= 2.4.0}
Requires: libsoup >= 2.52
Requires: libxmlb >= 0.1.15
Requires: polkit >= 0.114
Group: Applications/Shells
Requires: %{name} = %{version}-%{release}
Requires: bash-completion >= 1:2.0
+BuildArch: noarch
%description -n bash-completion-fwupd
Bash completion for fwupd commands.
Group: Applications/Shells
Requires: %{name} = %{version}-%{release}
Requires: fish
+BuildArch: noarch
%description -n fish-completion-fwupd
Fish completion for fwupd commands.
%build
%meson build \
-Dbluez=enabled \
+ -Dcompat_cli=true \
-Defi_binary=false \
-Ddocs=%{__enabled_disabled apidocs} \
-Dlzma=enabled \
- %{!?with_efi:-Dplugin_dell=disabled} \
+ %{!?with_dell:-Dplugin_dell=disabled} \
%{!?with_flashrom:-Dplugin_flashrom=disabled} \
- -Dplugin_intel_spi=true \
+ %{?with_intel_spi:-Dplugin_intel_spi=true} \
%{!?with_modemmanager:-Dplugin_modem_manager=disabled} \
%{!?with_efi:-Dplugin_redfish=disabled} \
%{!?with_efi:-Dplugin_uefi_capsule=disabled} \
done
%if %{with apidocs}
-# FIXME: where to package gi-docgen generated docs?
-install -d $RPM_BUILD_ROOT%{_gtkdocdir}
-%{__mv} $RPM_BUILD_ROOT%{_docdir}/*fwupd* $RPM_BUILD_ROOT%{_gtkdocdir}
+install -d $RPM_BUILD_ROOT%{_gidocdir}
+%{__mv} $RPM_BUILD_ROOT%{_docdir}/*fwupd* $RPM_BUILD_ROOT%{_gidocdir}
%endif
%find_lang %{name}
%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc AUTHORS MAINTAINERS README.md README-*.md SECURITY.md
+%doc MAINTAINERS README.md README-*.md SECURITY.md
%{?with_efi:%attr(755,root,root) %{_bindir}/dbxtool}
%attr(755,root,root) %{_bindir}/dfu-tool
%attr(755,root,root) %{_bindir}/fwupdagent
%attr(755,root,root) %{_bindir}/fwupdtool
%dir %{_libexecdir}/fwupd
%attr(755,root,root) %{_libexecdir}/fwupd/fwupd
+%ifarch %{ix86} %{x8664} x32
%attr(755,root,root) %{_libexecdir}/fwupd/fwupd-detect-cet
+%endif
%attr(755,root,root) %{_libexecdir}/fwupd/fwupdoffline
%if %{with flashrom}
%attr(755,root,root) %{fwupd_plugins_dir}/libfu_plugin_flashrom.so
%endif
%dir %{_sysconfdir}/fwupd
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/daemon.conf
+%ifarch %{ix86} %{x8664} x32
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/msr.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/thunderbolt.conf
+%endif
%if %{with efi}
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/redfish.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/uefi_capsule.conf
%endif
+%dir %{_sysconfdir}/fwupd/bios-settings.d
%dir %{_sysconfdir}/fwupd/remotes.d
-%if %{with efi}
+%if %{with dell}
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/dell-esrt.conf
%endif
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs.conf
%endif
%{_datadir}/fwupd/quirks.d
%dir %{_datadir}/fwupd/remotes.d
-%if %{with efi}
+%if %{with dell}
%{_datadir}/fwupd/remotes.d/dell-esrt
%endif
%{_datadir}/fwupd/remotes.d/vendor
%files -n bash-completion-fwupd
%defattr(644,root,root,755)
-%{bash_compdir}/fwupdagent
%{bash_compdir}/fwupdmgr
%{bash_compdir}/fwupdtool
%if %{with apidocs}
%files apidocs
%defattr(644,root,root,755)
-%{_gtkdocdir}/fwupd
-%{_gtkdocdir}/libfwupd
-%{_gtkdocdir}/libfwupdplugin
+%{_gidocdir}/fwupd
+%{_gidocdir}/libfwupd
+%{_gidocdir}/libfwupdplugin
%endif
%files -n vala-fwupd