3 %bcond_with pesign # EFI apps signing with pesign
5 Summary: Tools to manage UEFI firmware updates
6 Summary(pl.UTF-8): Narzędzia do zarządzania aktualizacjami firmware'u przez UEFI
12 Source0: https://github.com/rhinstaller/fwupdate/archive/%{version}/%{name}-%{version}.tar.gz
13 # Source0-md5: 0ce656b18a60256a7cf9fa42fd5d99de
14 Patch0: %{name}-overflow.patch
15 Patch1: %{name}-undefined.patch
16 URL: https://github.com/rhinstaller/fwupdate
17 BuildRequires: efivar-devel >= 0.30
18 BuildRequires: gnu-efi
19 %{?with_pesign:BuildRequires: pesign}
20 BuildRequires: popt-devel
21 BuildRequires: sed >= 4.0
22 Requires: %{name}-libs = %{version}-%{release}
23 #Requires(post): efibootmgr >= 0.12
24 ExclusiveArch: %{ix86} %{x8664} arm aarch64 ia64
25 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
30 fwupdate provides a simple command line interface to the UEFI firmware
33 %description -l pl.UTF-8
34 fwupdate zapewnia prosty interfejs linii poleceń do aktualizacji
35 firmware'u przez UEFI.
38 Summary: Library to manage UEFI firmware updates
39 Summary(pl.UTF-8): Biblioteka do zarządzania aktualizacjami firmware'u przez UEFI
41 Requires: efivar-libs >= 0.30
44 Library to manage UEFI firmware updates.
46 %description libs -l pl.UTF-8
47 Biblioteka do zarządzania aktualizacjami firmware'u przez UEFI.
50 Summary: Header files for libfwup library
51 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libfwup
52 Group: Development/Libraries
53 Requires: %{name}-libs = %{version}-%{release}
54 Requires: efivar-devel >= 0.30
57 Header files for libfwup library.
59 %description devel -l pl.UTF-8
60 Pliki nagłówkowe biblioteki libfwup.
62 %package -n bash-completion-fwupdate
63 Summary: Bash completion for fwupdate command
64 Summary(pl.UTF-8): Bashowe uzupełnianie parametrów polecenia fwupdate
65 Group: Applications/Shells
66 Requires: %{name} = %{version}-%{release}
67 Requires: bash-completion >= 2.0
69 %description -n bash-completion-fwupdate
70 Bash completion for fwupdate command.
72 %description -n bash-completion-fwupdate -l pl.UTF-8
73 Bashowe uzupełnianie parametrów polecenia fwupdate.
81 %{__sed} -i -e 's/pesign/cp $< $@ \&\& : &/' efi/Makefile
90 CFLAGS="%{rpmcflags}" \
92 GNUEFIDIR=%{_libdir} \
94 libexecdir=%{_libexecdir}
97 rm -rf $RPM_BUILD_ROOT
103 DESTDIR=$RPM_BUILD_ROOT \
106 libexecdir=%{_libexecdir}
109 install -d $RPM_BUILD_ROOT%{systemdunitdir}
110 %{__mv} $RPM_BUILD_ROOT%{_prefix}/lib/systemd/system/*.service $RPM_BUILD_ROOT%{systemdunitdir}
113 %{__rm} $RPM_BUILD_ROOT%{_localedir}/en/*.po
115 # debuginfo installed by make install?
116 %{__rm} -r $RPM_BUILD_ROOT{%{_prefix}/lib/debug,%{_prefix}/src/debug}
119 rm -rf $RPM_BUILD_ROOT
122 # Fedora script below - but we don't want to hardcode /dev/sda
124 efibootmgr -b 1337 -B >/dev/null || :
125 efibootmgr -C -b 1337 -d /dev/sda -p 1 -l /EFI/%{efidir}/fwupdate.efi -L "Firmware Update" >/dev/null || :
128 %post libs -p /sbin/ldconfig
129 %postun libs -p /sbin/ldconfig
132 %defattr(644,root,root,755)
134 %attr(755,root,root) %{_bindir}/fwupdate
135 %dir %{_libexecdir}/fwupdate
136 %attr(755,root,root) %{_libexecdir}/fwupdate/cleanup
138 %{systemdunitdir}/fwupdate-cleanup.service
139 %{_mandir}/man1/fwupdate.1*
140 %dir /boot/efi/EFI/%{efidir}
142 /boot/efi/EFI/%{efidir}/fwupia32.efi
145 /boot/efi/EFI/%{efidir}/fwupx64.efi
148 /boot/efi/EFI/%{efidir}/fwuparm.efi
151 /boot/efi/EFI/%{efidir}/fwupaa64.efi
153 %ifnarch %{ix86} %{x8664} x32 arm aarch64
154 /boot/efi/EFI/%{efidir}/fwupdate.efi
156 %dir /boot/efi/EFI/%{efidir}/fw
159 %defattr(644,root,root,755)
160 %attr(755,root,root) %{_libdir}/libfwup.so.*.*
161 %attr(755,root,root) %ghost %{_libdir}/libfwup.so.1
164 %defattr(644,root,root,755)
165 %attr(755,root,root) %{_libdir}/libfwup.so
166 %{_includedir}/fwup.h
167 %{_includedir}/fwup-version.h
168 %{_pkgconfigdir}/fwup.pc
169 %{_mandir}/man3/fwup_*.3*
170 %{_mandir}/man3/libfwup.3*
171 %{_mandir}/man3/libfwup.h.3*
173 %files -n bash-completion-fwupdate
174 %defattr(644,root,root,755)
175 %{_datadir}/bash-completion/completions/fwupdate