SHA256
1
0
forked from pool/fwupd
fwupd/fwupd.spec
Dirk Mueller 1597e4abcc Accepting request 558340 from home:fcrozat:branches:Base:System
- Update to version 1.0.2:
  + Add a plugin for the Nitrokey Storage device
  + Add support for the original AVR DFU protocol
  + Allow different plugins to claim the same device
  + Allow quirks to set common USB properties
  + Move a common plugin functionality out to a new shared object
  + Optionally delay the device removal for better replugging
  + Set environment variables to allow easy per-plugin debugging
  + Use a SHA1 hash for the internal DeviceID
  + Add quirk for AT32UC3B1256 as used in the RubberDucky
  + Disable the dell plugin if libsmbios fails
  + Don't register for USB UDev events to later ignore them
  + Fix a possible buffer overflow when debugging ebitdo devices
  + Fix critical warning when more than one remote fails to load
  + Fix DFU attaching AVR32 devices like the XMEGA
  + Ignore useless Thunderbolt device types
  + Refactor ColorHug into a much more modern plugin
  + Release the Steelseries interface if getting the version failed
  + Remove autoconf-isms from the meson configure options
  + Show a nicer error message if the requirement fails
  + Sort the output of GetUpgrades correctly
- Changes from version 1.0.1:
  + Add support for HWID requirements
  + Add support for programming various AVR32 and XMEGA parts using DFU
  + Add the various DFU quirks for the Jabra Speak devices
  + Allow specifying the output file type for 'dfu-tool read'
  + Move the database of supported devices out into runtime loaded files
  + Support the IHEX record type 0x05
  + Use help2man to generate the man page at build time
  + Use the new quirk infrastructure for version numbers

OBS-URL: https://build.opensuse.org/request/show/558340
OBS-URL: https://build.opensuse.org/package/show/Base:System/fwupd?expand=0&rev=16
2017-12-19 10:31:52 +00:00

230 lines
7.5 KiB
RPMSpec

#
# spec file for package fwupd
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%ifarch %{ix86} x86_64 aarch64
%bcond_without efi_fw_update
%else
%bcond_with efi_fw_update
%endif
Name: fwupd
Version: 1.0.2
Release: 0
Summary: Allow session software to update device firmware
License: GPL-2.0+ and LGPL-2.1+
Group: System/Management
Url: https://pjones.fedorapeople.org/fwupdate/
Source: %{name}-%{version}.tar.xz
BuildRequires: dejavu-fonts
BuildRequires: docbook-utils-minimal
BuildRequires: gcab
# for certtool
BuildRequires: gnutls
BuildRequires: gobject-introspection
BuildRequires: gpgme-devel
BuildRequires: help2man
BuildRequires: intltool
BuildRequires: libelf-devel
BuildRequires: meson
BuildRequires: pkgconfig
BuildRequires: procps
BuildRequires: python3-Pillow
BuildRequires: python3-cairo
BuildRequires: python3-gobject-Gdk
BuildRequires: python3-xml
BuildRequires: pkgconfig(appstream-glib) >= 0.5.10
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(colorhug) >= 1.2.12
%if %{with efi_fw_update}
BuildRequires: pkgconfig(efiboot)
BuildRequires: pkgconfig(efivar)
#!BuildIgnore: shim
BuildRequires: pkgconfig(fwup) >= 5
%endif
BuildRequires: gobject-introspection-devel
BuildRequires: pkgconfig(gio-2.0) >= 2.25.9
BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.45.8
BuildRequires: pkgconfig(gmodule-2.0)
BuildRequires: pkgconfig(gnutls)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gthread-2.0)
BuildRequires: pkgconfig(gtk-doc) >= 1.14
BuildRequires: pkgconfig(gudev-1.0)
BuildRequires: pkgconfig(gusb) >= 0.2.9
BuildRequires: pkgconfig(libarchive)
BuildRequires: pkgconfig(libelf)
# BuildRequires: pkgconfig(libtbtfwu) >= 1
BuildRequires: pkgconfig(libgcab-1.0)
%ifarch %{ix86} x86_64
BuildRequires: pkgconfig(libsmbios_c) >= 2.3.0
%endif
BuildRequires: pkgconfig(libsoup-2.4) >= 2.51.92
BuildRequires: pkgconfig(polkit-gobject-1) >= 0.103
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(udev)
BuildRequires: pkgconfig(valgrind)
%description
fwupd is a simple daemon to allow session software to update device firmware on
your local machine. It's designed for desktops, but this project is probably
quite interesting for phones, tablets and server farms, so I'd be really happy
if this gets used on other non-desktop hardware.
You can either use a GUI software manager like GNOME Software to view and apply
updates, the command line tool or the system D-Bus interface directly.
%package -n libfwupd2
Summary: Allow session software to update device firmware
Group: System/Libraries
%description -n libfwupd2
fwupd is a simple daemon to allow session software to update device firmware on
your local machine. It's designed for desktops, but this project is probably
quite interesting for phones, tablets and server farms, so I'd be really happy
if this gets used on other non-desktop hardware.
%package -n typelib-1_0-Fwupd-2_0
Summary: GObject-introspection bindings for libfwupd
Group: System/Libraries
%description -n typelib-1_0-Fwupd-2_0
fwupd is a simple daemon to allow session software to update device firmware on
your local machine. It's designed for desktops, but this project is probably
quite interesting for phones, tablets and server farms, so I'd be really happy
if this gets used on other non-desktop hardware.
%package -n dfu-tool
Summary: Generic tool Device Firmware Upgrade (DFU) tool
Group: Development/Tools/Other
%description -n dfu-tool
A generic tool to upload firmware to USB Devices based on Device Firmware Upgrade (DFU).
%package devel
Summary: Allow session software to update device firmware
Group: Development/Languages/C and C++
Requires: libfwupd2 = %{version}
%description devel
fwupd is a simple daemon to allow session software to update device firmware on
your local machine. It's designed for desktops, but this project is probably
quite interesting for phones, tablets and server farms, so I'd be really happy
if this gets used on other non-desktop hardware.
%lang_package
%prep
%setup -q
%build
# Dell support requires direct SMBIOS access,
# Synaptics requires Dell support, i.e. x86 only
%{meson} \
%if %{without efi_fw_update}
-Denable-uefi=false \
%endif
%ifnarch %{ix86} x86_64
-Denable-dell=false \
-Denable-synaptics=false \
%endif
-Denable-tests=false
%{meson_build}
%install
%{meson_install}
# README.md is packaged as doc
rm %{buildroot}%{_localstatedir}/lib/fwupd/builder/README.md
# Add SUSE specific rcfoo service symlink
mkdir -p %{buildroot}%{_sbindir}
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcfwupd-offline-update
%find_lang %{name}
# do not package tests
rm -fr %{buildroot}%{_datadir}/installed-tests
%post -n libfwupd2 -p /sbin/ldconfig
%postun -n libfwupd2 -p /sbin/ldconfig
%preun
%service_del_preun %{name}.service fwupd-offline-update.service
%pre
%service_add_pre %{name}.service fwupd-offline-update.service
%post
%service_add_post %{name}.service fwupd-offline-update.service
%postun
%service_del_postun %{name}.service fwupd-offline-update.service
%files
%doc README.md COPYING
%{_libexecdir}/systemd/system/fwupd.service
%{_libexecdir}/systemd/system/fwupd-offline-update.service
%%dir %{_libexecdir}/systemd/system/system-update.target.wants/
%{_libexecdir}/systemd/system/system-update.target.wants/fwupd-offline-update.service
%{_libexecdir}/fwupd
%{_bindir}/fwupdmgr
%{_sbindir}/rc%{name}
%{_sbindir}/rcfwupd-offline-update
%{_sysconfdir}/dbus-1/system.d/org.freedesktop.fwupd.conf
%{_datadir}/dbus-1/interfaces/org.freedesktop.fwupd.xml
%{_datadir}/dbus-1/system-services/org.freedesktop.fwupd.service
%{_datadir}/%{name}/
%{_mandir}/man1/fwupdmgr.1%{?ext_man}
%{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy
%{_datadir}/polkit-1/rules.d/org.freedesktop.fwupd.rules
%config %{_sysconfdir}/%{name}/
%dir %{_sysconfdir}/pki
%dir %{_sysconfdir}/pki/fwupd
%dir %{_sysconfdir}/pki/fwupd-metadata
%{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service
%{_sysconfdir}/pki/fwupd-metadata/LVFS-CA.pem
%{_sysconfdir}/pki/fwupd/GPG-KEY-Hughski-Limited
%{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service
%{_sysconfdir}/pki/fwupd/LVFS-CA.pem
%{_udevrulesdir}/90-fwupd-devices.rules
%{_libdir}/fwupd-plugins-3/
%dir %{_datadir}/metainfo
%{_datadir}/metainfo/org.freedesktop.fwupd.metainfo.xml
%dir %{_localstatedir}/lib/%{name}/
%files -n dfu-tool
%{_bindir}/dfu-tool
%{_mandir}/man1/dfu-tool.1%{?ext_man}
%files -n libfwupd2
%{_libdir}/libfwupd.so.*
%files -n typelib-1_0-Fwupd-2_0
%{_libdir}/girepository-1.0/Fwupd-2.0.typelib
%files lang -f %{name}.lang
%{_datadir}/locale/*/LC_IMAGES/
%files devel
%doc %{_datadir}/gtk-doc/html/libfwupd/
%{_datadir}/gir-1.0/Fwupd-2.0.gir
%{_includedir}/fwupd-1/
%{_libdir}/pkgconfig/fwupd.pc
%{_libdir}/libfwupd.so
%changelog