1 # TODO: polkit >= 0.114 when available
4 %bcond_without colorhug # ColorHug support
5 %bcond_without efi # UEFI (and dell) support
6 %bcond_without thunderbolt # Thunderbolt support
8 %ifnarch %{ix86} %{x8664} %{arm} aarch64 ia64
12 %undefine with_thunderbolt
14 Summary: System daemon for installing device firmware
15 Summary(pl.UTF-8): Demon systemowy do instalowania firmware'u urządzeń
20 Group: Applications/System
21 Source0: https://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz
22 # Source0-md5: 1e424f3d722ac4b4984cf73bd36947b8
23 Patch0: %{name}-its.patch
24 URL: https://github.com/hughsie/fwupd
25 BuildRequires: appstream-glib-devel >= 0.5.10
26 %{?with_colorhug:BuildRequires: colord-devel >= 1.2.12}
27 BuildRequires: docbook-utils
28 BuildRequires: docbook-dtd41-sgml
29 %{?with_efi:BuildRequires: efivar-devel}
30 # pkgconfig(libelf); can be also libelf-devel
31 BuildRequires: elfutils-devel >= 0.166
32 %{?with_efi:BuildRequires: fwupdate-devel >= 5}
33 BuildRequires: gcab-devel
34 BuildRequires: gettext-tools >= 0.19.7
35 BuildRequires: glib2-devel >= 1:2.45.8
36 BuildRequires: gobject-introspection-devel >= 0.9.8
37 BuildRequires: gpgme-devel
38 BuildRequires: gtk-doc >= 1.14
39 BuildRequires: intltool >= 0.35.0
40 BuildRequires: libarchive-devel
41 BuildRequires: libgpg-error-devel
42 BuildRequires: libgusb-devel >= 0.2.9
43 # for dell (which depends on fwupdate too)
44 %{?with_efi:BuildRequires: libsmbios-devel >= 2.3.0}
45 BuildRequires: libsoup-devel >= 2.52
46 # pkgconfig(libtbtfwu) >= 1
47 %{?with_thunderbolt:BuildRequires: libtbtfwu-devel >= 0-0.2017.01.19}
48 BuildRequires: libxslt-progs
49 BuildRequires: meson >= 0.37.0
50 BuildRequires: ninja >= 1.6
51 BuildRequires: pkgconfig
52 BuildRequires: polkit-devel >= 0.103
53 BuildRequires: rpmbuild(macros) >= 1.644
54 BuildRequires: sqlite3-devel >= 3
55 BuildRequires: systemd-units
56 BuildRequires: tar >= 1:1.22
57 BuildRequires: udev-devel
58 BuildRequires: udev-glib-devel
60 Requires: %{name}-libs = %{version}-%{release}
61 Requires: appstream-glib >= 0.5.10
62 %{?with_colorhug:Requires: colord-libs >= 1.2.12}
63 %{?with_efi:Requires: fwupdate-libs >= 5}
64 Requires: libgusb >= 0.2.9
65 Requires: libsoup >= 2.52
66 Requires: polkit >= 0.103
67 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
70 fwupd is a simple daemon to allow session software to update device
71 firmware on your local machine. It's designed for desktops, but this
72 project is probably quite interesting for phones, tablets and server
75 %description -l pl.UTF-8
76 fwupd to prosty demon pozwalający programom sesyjnym na aktualizację
77 firmware'u urządzeń na maszynie lokalnej. Jest zaprojektowany dla
78 komputerów osobistych, ale może być interesujący także dla telefonów,
79 tabletów i farm serwerów.
82 Summary: Libraries for fwupd device firmware installing daemon
83 Summary(pl.UTF-8): Biblioteki dla demona fwupd instalującego aktualizacje firmware'u
85 Requires: glib2-devel >= 1:2.45.8
88 Libraries for fwupd device firmware installing daemon.
90 %description libs -l pl.UTF-8
91 Biblioteki dla demona fwupd instalującego aktualizacje firmware'u.
94 Summary: Header files for fwupd libraries
95 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek fwupd
96 Group: Development/Libraries
97 Requires: %{name}-libs = %{version}-%{release}
98 Requires: glib2-devel >= 1:2.45.8
99 Obsoletes: fwupd-static
102 Header files for fwupd libraries.
104 %description devel -l pl.UTF-8
105 Pliki nagłówkowe bibliotek fwupd.
108 Summary: API documentation for fwupd libraries
109 Summary(pl.UTF-8): Dokumentacja API do bibliotek fwupd
111 %if "%{_rpmversion}" >= "5"
116 API documentation for fwupd libraries.
118 %description apidocs -l pl.UTF-8
119 Dokumentacja API do bibliotek fwupd.
127 CFLAGS="%{rpmcflags} %{rpmcppflags}" \
128 LDFLAGS="%{rpmldflags}" \
131 --prefix=%{_prefix} \
132 --libdir=%{_libdir} \
133 --libexecdir=%{_libexecdir} \
134 --localstatedir=%{_localstatedir} \
135 --sysconfdir=%{_sysconfdir} \
136 -Denable-tests=false \
137 %{!?with_thunderbolt:-Denable-thunderbolt=false} \
138 %{!?with_efi:-Denable-uefi=false} \
139 %{!?with_efi:-Denable-dell=false}
144 rm -rf $RPM_BUILD_ROOT
146 DESTDIR=$RPM_BUILD_ROOT \
147 ninja -C build -v install
149 install -d $RPM_BUILD_ROOT%{_gtkdocdir}
150 %{__mv} $RPM_BUILD_ROOT%{_datadir}/gtk-doc/html/* $RPM_BUILD_ROOT%{_gtkdocdir}
155 rm -rf $RPM_BUILD_ROOT
157 %post libs -p /sbin/ldconfig
158 %postun libs -p /sbin/ldconfig
160 %files -f %{name}.lang
161 %defattr(644,root,root,755)
162 %doc AUTHORS MAINTAINERS NEWS README.md
163 %attr(755,root,root) %{_bindir}/dfu-tool
164 %attr(755,root,root) %{_bindir}/fwupdmgr
165 %attr(755,root,root) %{_libexecdir}/fwupd
166 %dir %{_libdir}/fwupd-plugins-2
167 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_altos.so
168 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_colorhug.so
170 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_dell.so
172 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_dfu.so
173 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_ebitdo.so
174 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_raspberrypi.so
175 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_steelseries.so
177 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_synapticsmst.so
179 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_test.so
180 %if %{with thunderbolt}
181 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_thunderbolt.so
183 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_udev.so
185 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_uefi.so
187 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_unifying.so
188 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_upower.so
189 %attr(755,root,root) %{_libdir}/fwupd-plugins-2/libfu_plugin_usb.so
190 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd.conf
192 /etc/pki/fwupd/GPG-KEY-Hughski-Limited
193 /etc/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service
194 %dir /etc/pki/fwupd-metadata
195 /etc/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service
196 %{systemdunitdir}/fwupd.service
197 %{systemdunitdir}/fwupd-offline-update.service
198 %{systemdunitdir}/system-update.target.wants/fwupd-offline-update.service
199 /lib/udev/rules.d/90-fwupd-devices.rules
200 /etc/dbus-1/system.d/org.freedesktop.fwupd.conf
201 # XXX: dir shared with AppStream
202 %dir %{_datadir}/app-info
203 %dir %{_datadir}/app-info/xmls
204 %{_datadir}/app-info/xmls/org.freedesktop.fwupd.xml
205 %{_datadir}/dbus-1/system-services/org.freedesktop.fwupd.service
206 %{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy
207 %{_datadir}/polkit-1/rules.d/org.freedesktop.fwupd.rules
209 %{_mandir}/man1/dfu-tool.1*
210 %{_mandir}/man1/fwupdmgr.1*
213 %defattr(644,root,root,755)
214 %attr(755,root,root) %{_libdir}/libdfu.so.*.*.*
215 %attr(755,root,root) %ghost %{_libdir}/libdfu.so.1
216 %attr(755,root,root) %{_libdir}/libfwupd.so.*.*.*
217 %attr(755,root,root) %ghost %{_libdir}/libfwupd.so.1
218 %{_libdir}/girepository-1.0/Dfu-1.0.typelib
219 %{_libdir}/girepository-1.0/Fwupd-1.0.typelib
222 %defattr(644,root,root,755)
223 %attr(755,root,root) %{_libdir}/libfwupd.so
224 %attr(755,root,root) %{_libdir}/libdfu.so
226 %{_includedir}/fwupd-1
227 %{_includedir}/libdfu
228 %{_datadir}/gir-1.0/Dfu-1.0.gir
229 %{_datadir}/gir-1.0/Fwupd-1.0.gir
230 %{_datadir}/dbus-1/interfaces/org.freedesktop.fwupd.xml
231 %{_pkgconfigdir}/dfu.pc
232 %{_pkgconfigdir}/fwupd.pc
235 %defattr(644,root,root,755)
237 %{_gtkdocdir}/libfwupd