SHA256
1
0
forked from pool/fwupd
fwupd/fwupd.spec

196 lines
6.4 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/
#
Name: fwupd
Version: 0.9.7
Release: 0
Summary: Allow session software to update device firmware
# FIXME: use correct group, see "https://en.opensuse.org/openSUSE:Package_group_guidelines"
License: GPL-2.0+ and LGPL-2.1+
Group: Hardware
Url: https://pjones.fedorapeople.org/fwupdate/
Source: %{name}-%{version}.tar.xz
BuildRequires: docbook-utils-minimal
BuildRequires: gcab
BuildRequires: gpgme-devel
BuildRequires: intltool
BuildRequires: libelf-devel
BuildRequires: meson
BuildRequires: pkgconfig
BuildRequires: procps
BuildRequires: python3-Pillow
BuildRequires: python3-cairo
BuildRequires: python3-gobject-Gdk
BuildRequires: pkgconfig(appstream-glib) >= 0.5.10
BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(colorhug) >= 1.2.12
BuildRequires: pkgconfig(efiboot)
BuildRequires: pkgconfig(efivar)
#!BuildIgnore: shim
BuildRequires: pkgconfig(fwup) >= 5
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)
BuildRequires: pkgconfig(libsmbios_c) >= 2.3.0
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 libfwupd1
Summary: Allow session software to update device firmware
Group: System/Libraries
%description -n libfwupd1
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 libdfu1
Summary: A library for reading and writing USB device firmware
Group: System/Libraries
%description -n libdfu1
DFU (Device Firmware Uploader): A library for reading and writing USB device firmware.
%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: libdfu1 = %{version}
Requires: libfwupd1 = %{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
%{meson}
%{meson_build}
%install
%{meson_install}
# Add SUSE specific rcfoo service symlink
mkdir -p %{buildroot}%{_sbindir}
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
%find_lang %{name}
%post -n libfwupd1 -p /sbin/ldconfig
%postun -n libfwupd1 -p /sbin/ldconfig
%post -n libdfu1 -p /sbin/ldconfig
%postun -n libdfu1 -p /sbin/ldconfig
%preun
%service_del_preun %{name}.service
%pre
%service_add_pre %{name}.service
%post
%service_add_post %{name}.service
%postun
%service_del_postun %{name}.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}
%{_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
%{_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}.conf
%dir %{_sysconfdir}/pki
%dir %{_sysconfdir}/pki/fwupd
%dir %{_sysconfdir}/pki/fwupd-metadata
%{_sysconfdir}/pki/fwupd/GPG-KEY-Hughski-Limited
%{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service
%{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service
%{_udevrulesdir}/90-fwupd-devices.rules
%{_libdir}/fwupd-plugins-2/
%{_datadir}/app-info/xmls/org.freedesktop.fwupd.xml
%dir %{_datadir}/app-info
%dir %{_datadir}/app-info/xmls
%dir %{_localstatedir}/lib/%{name}/
%files -n dfu-tool
%{_bindir}/dfu-tool
%{_mandir}/man1/dfu-tool.1%{?ext_man}
%files -n libfwupd1
%{_libdir}/libfwupd.so.*
%files -n libdfu1
%{_libdir}/libdfu.so.*
%files lang -f %{name}.lang
%files devel
%{_includedir}/fwupd-1/
%{_libdir}/pkgconfig/dfu.pc
%{_libdir}/pkgconfig/fwupd.pc
%{_libdir}/libdfu.so
%{_libdir}/libfwupd.so
%{_includedir}/dfu.h
%{_includedir}/libdfu/
%changelog