Richard Hughes 489dbfc
Summary:   Firmware update daemon
Richard Hughes 489dbfc
Name:      fwupd
Richard Hughes 423739c
Version:   0.1.5
6952f0b
Release:   3%{?dist}
Richard Hughes 489dbfc
License:   GPLv2+
Richard Hughes 489dbfc
URL:       https://github.com/hughsie/fwupd
Richard Hughes 489dbfc
Source0:   http://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz
Richard Hughes 489dbfc
Richard Hughes 77bbd5e
# Backported from upstream
Richard Hughes 77bbd5e
Patch0:    0001-Use-the-new-secure-metadata-URI.patch
Richard Hughes 77bbd5e
Richard Hughes 489dbfc
BuildRequires: docbook-utils
Richard Hughes 489dbfc
BuildRequires: gettext
Richard Hughes 489dbfc
BuildRequires: glib2-devel
Richard Hughes 489dbfc
BuildRequires: intltool
Richard Hughes 489dbfc
BuildRequires: libgudev1-devel
Richard Hughes 489dbfc
BuildRequires: colord-devel >= 1.0.0
Richard Hughes 489dbfc
BuildRequires: polkit-devel >= 0.103
Richard Hughes 489dbfc
BuildRequires: libgcab1-devel
Richard Hughes 489dbfc
BuildRequires: sqlite-devel
Richard Hughes b6576e7
BuildRequires: gpgme-devel
Richard Hughes 489dbfc
BuildRequires: systemd
Richard Hughes d2a76bd
BuildRequires: libsoup-devel
Richard Hughes 423739c
BuildRequires: libarchive-devel
Richard Hughes 7b50dce
BuildRequires: gobject-introspection-devel
2eff1da
BuildRequires: libappstream-glib-devel >= 0.3.6
Richard Hughes 423739c
BuildRequires: gcab
Richard Hughes d2a76bd
Richard Hughes d2a76bd
%ifarch x86_64 %{ix86} aarch64
Richard Hughes d2a76bd
BuildRequires: fwupdate-devel >= 0.4
Richard Hughes d2a76bd
%endif
Richard Hughes 489dbfc
Richard Hughes 489dbfc
Requires(post): systemd
Richard Hughes 489dbfc
Requires(preun): systemd
Richard Hughes 489dbfc
Requires(postun): systemd
Richard Hughes 489dbfc
Richard Hughes 489dbfc
%description
Richard Hughes 489dbfc
fwupd is a daemon to allow session software to update device firmware.
Richard Hughes 489dbfc
Richard Hughes 7b50dce
%package devel
Richard Hughes 7b50dce
Summary: Development package for %{name}
Richard Hughes 7b50dce
Requires: %{name} = %{version}-%{release}
Richard Hughes 7b50dce
Richard Hughes 7b50dce
%description devel
Richard Hughes 7b50dce
Files for development with %{name}.
Richard Hughes 7b50dce
Richard Hughes d2a76bd
%package sign
Richard Hughes d2a76bd
Summary: Firmware signing server
Richard Hughes d2a76bd
Requires: %{name} = %{version}-%{release}
Richard Hughes d2a76bd
Richard Hughes d2a76bd
%description sign
Richard Hughes d2a76bd
This package provides a signing server suitable for automatically signing
Richard Hughes d2a76bd
firmware in .cab archives.
Richard Hughes d2a76bd
The values in /etc/fwsignd.conf file should be set before starting the daemon.
Richard Hughes d2a76bd
You probably don't need this package unless you're implementing a LVFS clone.
Richard Hughes d2a76bd
Richard Hughes 489dbfc
%prep
Richard Hughes 489dbfc
%setup -q
Richard Hughes 77bbd5e
%patch0 -p1 -b .non-beta
Richard Hughes 489dbfc
Richard Hughes 489dbfc
%build
Richard Hughes 489dbfc
%configure \
Richard Hughes d2a76bd
        --enable-fwsignd        \
Richard Hughes 489dbfc
        --disable-static        \
Richard Hughes d2a76bd
%ifnarch x86_64 %{ix86} aarch64
Richard Hughes 489dbfc
        --disable-uefi          \
Richard Hughes d2a76bd
%endif
Richard Hughes d2a76bd
        --disable-rpath         \
Richard Hughes 489dbfc
        --disable-silent-rules  \
Richard Hughes 489dbfc
        --disable-dependency-tracking
Richard Hughes 489dbfc
Richard Hughes 489dbfc
make %{?_smp_mflags}
Richard Hughes 489dbfc
Richard Hughes 489dbfc
%install
Richard Hughes 489dbfc
make install DESTDIR=$RPM_BUILD_ROOT
Richard Hughes 7b50dce
find %{buildroot} -name '*.la' -exec rm -f {} ';'
Richard Hughes 489dbfc
6952f0b
# Disable the fwupd offline update service for now to avoid it running at the
6952f0b
# same time as packagekit's and rebooting in the middle of transaction
6952f0b
rm -rf %{buildroot}%{_unitdir}/fwupd-offline-update.service
6952f0b
rm -rf %{buildroot}%{_unitdir}/system-update.target.wants/
6952f0b
Richard Hughes 489dbfc
%find_lang %{name}
Richard Hughes 489dbfc
Richard Hughes d2a76bd
%pre sign
Richard Hughes d2a76bd
getent group fwsignd >/dev/null || groupadd -r fwsignd
Richard Hughes d2a76bd
getent passwd fwsignd >/dev/null || \
Richard Hughes d2a76bd
    useradd -r -g fwsignd -d /var/lib/fwsignd -s /sbin/nologin \
Richard Hughes d2a76bd
    -c "User for fwsignd" fwsignd
Richard Hughes d2a76bd
Richard Hughes 489dbfc
%post
Richard Hughes 7b50dce
/sbin/ldconfig
Richard Hughes 489dbfc
%systemd_post fwupd.service
Richard Hughes 489dbfc
Richard Hughes 489dbfc
%preun
Richard Hughes 489dbfc
%systemd_preun fwupd.service
Richard Hughes 489dbfc
Richard Hughes 489dbfc
%postun
Richard Hughes 7b50dce
/sbin/ldconfig
Richard Hughes 489dbfc
%systemd_postun_with_restart fwupd.service
Richard Hughes 489dbfc
Richard Hughes 489dbfc
%files -f %{name}.lang
Richard Hughes 489dbfc
%doc README.md AUTHORS NEWS
Richard Hughes 489dbfc
%license COPYING
Richard Hughes 423739c
%config(noreplace)%{_sysconfdir}/fwupd.conf
Richard Hughes 489dbfc
%{_libexecdir}/fwupd
Richard Hughes 489dbfc
%{_bindir}/fwupdmgr
Richard Hughes b6576e7
%{_sysconfdir}/pki/fwupd
Richard Hughes d2a76bd
%{_sysconfdir}/pki/fwupd-metadata
Richard Hughes 489dbfc
%{_sysconfdir}/dbus-1/system.d/org.freedesktop.fwupd.conf
Richard Hughes 489dbfc
%{_datadir}/dbus-1/interfaces/org.freedesktop.fwupd.xml
Richard Hughes 489dbfc
%{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy
Richard Hughes 489dbfc
%{_datadir}/polkit-1/rules.d/org.freedesktop.fwupd.rules
Richard Hughes 489dbfc
%{_datadir}/dbus-1/system-services/org.freedesktop.fwupd.service
Richard Hughes 489dbfc
%{_datadir}/man/man1/fwupdmgr.1.gz
Richard Hughes d2a76bd
%{_unitdir}/fwupd.service
Richard Hughes 489dbfc
%dir %{_localstatedir}/lib/fwupd
Richard Hughes 7b50dce
%{_libdir}/lib*.so.*
Richard Hughes 7b50dce
%{_libdir}/girepository-1.0/*.typelib
Richard Hughes d2a76bd
%dir %{_localstatedir}/cache/app-info
Richard Hughes d2a76bd
%dir %{_localstatedir}/cache/app-info/icons
Richard Hughes d2a76bd
%dir %{_localstatedir}/cache/app-info/xmls
Richard Hughes d2a76bd
/usr/lib/udev/rules.d/*.rules
Richard Hughes d2a76bd
Richard Hughes d2a76bd
%files sign
Richard Hughes d2a76bd
%config(noreplace)%{_sysconfdir}/fwsignd.conf
Richard Hughes d2a76bd
%{_unitdir}/fwsignd.service
Richard Hughes d2a76bd
%{_libexecdir}/fwsignd
Richard Hughes d2a76bd
%attr(755,fwsignd,fwsignd) %dir %{_localstatedir}/lib/fwsignd
Richard Hughes 7b50dce
Richard Hughes 7b50dce
%files devel
Richard Hughes 7b50dce
%{_includedir}/fwupd-1
Richard Hughes 7b50dce
%{_libdir}/lib*.so
Richard Hughes 7b50dce
%{_libdir}/pkgconfig/*.pc
Richard Hughes 7b50dce
%{_datadir}/gir-1.0/*.gir
Richard Hughes 489dbfc
Richard Hughes 489dbfc
%changelog
6952f0b
* Fri Aug 21 2015 Kalev Lember <klember@redhat.com> 0.1.5-3
6952f0b
- Disable fwupd offline update service
6952f0b
Richard Hughes 77bbd5e
* Wed Aug 19 2015 Richard Hughes <richard@hughsie.com> 0.1.5-2
Richard Hughes 77bbd5e
- Use the non-beta download URL prefix
Richard Hughes 77bbd5e
Richard Hughes 423739c
* Wed Aug 12 2015 Richard Hughes <richard@hughsie.com> 0.1.5-1
Richard Hughes 423739c
- New upstream release
Richard Hughes 423739c
- Add a Raspberry Pi firmware provider
Richard Hughes 423739c
- Fix validation of written firmware
Richard Hughes 423739c
- Make parsing the option ROM runtime optional
Richard Hughes 423739c
- Use the AppStream 0.9 firmware specification by default
Richard Hughes 423739c
Richard Hughes d2a76bd
* Sat Jul 25 2015 Richard Hughes <richard@hughsie.com> 0.1.4-1
Richard Hughes d2a76bd
- New upstream release
Richard Hughes d2a76bd
- Actually parse the complete PCI option ROM
Richard Hughes d2a76bd
- Compile with libfwupdate for UEFI firmware support.
Richard Hughes d2a76bd
- Add a 'fwupdmgr update' command to update all devices to latest versions
Richard Hughes d2a76bd
- Add a simple signing server that operates on .cab files
Richard Hughes d2a76bd
- Add a 'verify' command that verifies the cryptographic hash of device firmware
Richard Hughes d2a76bd
Richard Hughes c9c2951
* Thu May 28 2015 Richard Hughes <richard@hughsie.com> 0.1.3-1
Richard Hughes c9c2951
- New upstream release
Richard Hughes c9c2951
- Coldplug the devices before acquiring the well known name
Richard Hughes c9c2951
- Run the offline actions using systemd when required
Richard Hughes c9c2951
- Support OpenHardware devices using the fwupd vendor extensions
Richard Hughes c9c2951
Richard Hughes b6576e7
* Wed Apr 22 2015 Richard Hughes <richard@hughsie.com> 0.1.2-1
Richard Hughes b6576e7
- New upstream release
Richard Hughes b6576e7
- Only allow signed firmware to be upgraded without a password
Richard Hughes b6576e7
Richard Hughes 7b50dce
* Mon Mar 23 2015 Richard Hughes <richard@hughsie.com> 0.1.1-1
Richard Hughes 7b50dce
- New upstream release
Richard Hughes 7b50dce
- Add a 'get-updates' command to fwupdmgr
Richard Hughes 7b50dce
- Add and document the offline-update lifecycle
Richard Hughes 7b50dce
- Create a libfwupd shared library
Richard Hughes 7b50dce
- Create runtime directories if they do not exist
Richard Hughes 7b50dce
- Do not crash when there are no devices to return
Richard Hughes 7b50dce
Richard Hughes 489dbfc
* Mon Mar 16 2015 Richard Hughes <richard@hughsie.com> 0.1.0-1
Richard Hughes 489dbfc
- First release