GNU bug report logs - #46278
[PATCH 2/2] gnu: Add fwupd.

Previous Next

Package: guix-patches;

Reported by: Léo Le Bouter <lle-bout <at> zaclys.net>

Date: Wed, 3 Feb 2021 23:16:03 UTC

Severity: normal

Tags: patch

Merged with 46277, 46279

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 46278 in the body.
You can then email your comments to 46278 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#46278; Package guix-patches. (Wed, 03 Feb 2021 23:16:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Léo Le Bouter <lle-bout <at> zaclys.net>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Wed, 03 Feb 2021 23:16:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Léo Le Bouter <lle-bout <at> zaclys.net>
To: guix-patches <at> gnu.org
Cc: Léo Le Bouter <lle-bout <at> zaclys.net>
Subject: [PATCH 2/2] gnu: Add fwupd.
Date: Thu,  4 Feb 2021 00:14:19 +0100
* gnu/packages/firmware.scm (fwupd): New variable.
* gnu/packages/patches/fwupd-add-option-for-installation-sysconfdir.patch,
gnu/packages/patches/fwupd-do-not-write-to-var.patch,
gnu/packages/patches/fwupd-installed-tests-path.patch,
gnu/packages/patches/fwupd-remove-nonfree-lvfs-repo.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Register them.
---
 gnu/local.mk                                  |   5 +
 gnu/packages/firmware.scm                     | 120 ++++++++++++-
 ...d-option-for-installation-sysconfdir.patch | 161 ++++++++++++++++++
 .../patches/fwupd-do-not-write-to-var.patch   |   8 +
 .../patches/fwupd-installed-tests-path.patch  |  48 ++++++
 .../fwupd-remove-nonfree-lvfs-repo.patch      | 147 ++++++++++++++++
 6 files changed, 488 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/fwupd-add-option-for-installation-sysconfdir.patch
 create mode 100644 gnu/packages/patches/fwupd-do-not-write-to-var.patch
 create mode 100644 gnu/packages/patches/fwupd-installed-tests-path.patch
 create mode 100644 gnu/packages/patches/fwupd-remove-nonfree-lvfs-repo.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 5ef82650c7..3c0e313d2a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1002,6 +1002,10 @@ dist_patch_DATA =						\
   %D%/packages/patches/freedink-engine-fix-sdl-hints.patch	\
   %D%/packages/patches/freeimage-unbundle.patch		\
   %D%/packages/patches/fuse-overlapping-headers.patch				\
+  %D%/packages/patches/fwupd-add-option-for-installation-sysconfdir.patch	\
+  %D%/packages/patches/fwupd-do-not-write-to-var.patch	\
+  %D%/packages/patches/fwupd-installed-tests-path.patch	\
+  %D%/packages/patches/fwupd-remove-nonfree-lvfs-repo.patch	\
   %D%/packages/patches/gajim-honour-GAJIM_PLUGIN_PATH.patch	\
   %D%/packages/patches/ganeti-deterministic-manual.patch	\
   %D%/packages/patches/ganeti-disable-version-symlinks.patch	\
@@ -1760,5 +1764,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/yggdrasil-extra-config.patch	\
   %D%/packages/patches/zziplib-CVE-2018-16548.patch
 
+
 MISC_DISTRO_FILES =				\
   %D%/packages/ld-wrapper.in
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index fcdb5a801e..30afda1796 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -30,18 +30,46 @@
   #:use-module (guix utils)
   #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system meson)
   #:use-module (gnu packages)
   #:use-module (gnu packages admin)
   #:use-module (gnu packages assembly)
+  #:use-module (gnu packages autotools)
+  #:use-module (gnu packages backup)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bison)
+  #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
+  #:use-module (gnu packages compression)
   #:use-module (gnu packages cross-base)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages efi)
+  #:use-module (gnu packages elf)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages gcc)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnupg)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages hardware)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages man)
+  #:use-module (gnu packages mingw)
+  #:use-module (gnu packages package-management)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages perl)
-  #:use-module (gnu packages python))
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages polkit)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages web)
+  #:use-module (gnu packages xml))
 
 (define-public ath9k-htc-firmware
   (package
@@ -621,3 +649,93 @@ switching support).\n")
              #t)))))
     (native-inputs `(("cross-gcc" ,(cross-gcc "arm-none-eabi" #:xgcc gcc-7))
                      ("cross-binutils" ,(cross-binutils "arm-none-eabi"))))))
+
+(define-public fwupd
+  (package
+    (name "fwupd")
+    (version "1.5.5")
+    (source
+     (origin
+       (method git-fetch)
+       (uri
+        (git-reference
+         (url "https://github.com/fwupd/fwupd")
+         (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0hrxp3hl1sm0gb1200qwyb330pknxicf5p0x5vgdv8ha4jf9zygc"))
+       (patches (search-patches
+                 "fwupd-do-not-write-to-var.patch"
+                 "fwupd-add-option-for-installation-sysconfdir.patch"
+                 "fwupd-installed-tests-path.patch"
+                 "fwupd-remove-nonfree-lvfs-repo.patch"))))
+    (build-system meson-build-system)
+    (outputs (list "out" "installed-tests"))
+    (arguments
+     `(#:configure-flags
+       (list "--wrap-mode=nofallback"
+             "-Dsystemd=false"
+             (string-append
+              "-Defi-libdir=" (assoc-ref %build-inputs "gnu-efi") "/lib")
+             (string-append
+              "-Defi-ldsdir=" (assoc-ref %build-inputs "gnu-efi") "/lib")
+             (string-append
+              "-Defi-includedir=" (assoc-ref %build-inputs "gnu-efi")
+              "/include/efi")
+             (string-append
+              "-Dudevdir=" (assoc-ref %outputs "out") "/lib/udev")
+             "--localstatedir=/var"
+             "--sysconfdir=/etc"
+             (string-append
+              "-Dsysconfdir_install=" (assoc-ref %outputs "out") "/etc")
+             (string-append
+              "--libexecdir=" (assoc-ref %outputs "out") "/libexec")
+             "-Dsupported_build=true"
+             (string-append
+              "-Dinstalled_test_prefix="
+              (assoc-ref %outputs "installed-tests")))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'install 'no-polkit-magic
+           ;; Meson ‘magically’ invokes pkexec, which fails (not setuid).
+           (lambda _
+             (setenv "PKEXEC_UID" "something")
+             #t)))))
+    (native-inputs
+     `(("gobject-introspection" ,gobject-introspection)
+       ("python-pygobject" ,python-pygobject)
+       ("python-pillow" ,python-pillow)
+       ("python-pycairo" ,python-pycairo)
+       ("pkg-config" ,pkg-config)
+       ("vala" ,vala)
+       ("umockdev" ,umockdev)
+       ("glib:bin" ,glib "bin")
+       ("help2man" ,help2man)
+       ("gettext" ,gettext-minimal)))
+    (inputs
+     `(("glib" ,glib)
+       ("libgudev" ,libgudev)
+       ("libxmlb" ,libxmlb)
+       ("gusb" ,gusb)
+       ("sqlite" ,sqlite)
+       ("libarchive" ,libarchive)
+       ("libjcat" ,libjcat)
+       ("json-glib" ,json-glib)
+       ("curl" ,curl)
+       ("polkit" ,polkit)
+       ("eudev" ,eudev)
+       ("gcab" ,gcab)
+       ("gnutls" ,gnutls)
+       ("libelf" ,libelf)
+       ("tpm2-tss" ,tpm2-tss)
+       ("cairo" ,cairo)
+       ("efivar" ,efivar)
+       ("pango" ,pango)
+       ("mingw-w64-tools", mingw-w64-tools)
+       ("libsmbios" ,libsmbios)
+       ("gnu-efi" ,gnu-efi)))
+    (home-page "https://fwupd.org/")
+    (synopsis "A simple daemon to allow session software to update firmware")
+    (description "This package aims to make updating firmware on Linux
+automatic, safe and reliable.")
+    (license license:lgpl2.1+)))
diff --git a/gnu/packages/patches/fwupd-add-option-for-installation-sysconfdir.patch b/gnu/packages/patches/fwupd-add-option-for-installation-sysconfdir.patch
new file mode 100644
index 0000000000..0cb397ca47
--- /dev/null
+++ b/gnu/packages/patches/fwupd-add-option-for-installation-sysconfdir.patch
@@ -0,0 +1,161 @@
+diff --git a/data/meson.build b/data/meson.build
+index 50154569..f8058a8e 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -17,7 +17,7 @@ endif
+ 
+ if build_standalone
+   install_data(['daemon.conf'],
+-    install_dir : join_paths(sysconfdir, 'fwupd')
++    install_dir : join_paths(sysconfdir_install, 'fwupd')
+   )
+ endif
+ 
+diff --git a/data/pki/meson.build b/data/pki/meson.build
+index 94bb0b6f..1ea6a9ac 100644
+--- a/data/pki/meson.build
++++ b/data/pki/meson.build
+@@ -3,24 +3,23 @@ install_data([
+     'GPG-KEY-Linux-Foundation-Firmware',
+     'GPG-KEY-Linux-Vendor-Firmware-Service',
+   ],
+-  install_dir : join_paths(sysconfdir, 'pki', 'fwupd')
++  install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd')
+ )
+ 
+ install_data([
+     'GPG-KEY-Linux-Foundation-Metadata',
+     'GPG-KEY-Linux-Vendor-Firmware-Service',
+   ],
+-  install_dir : join_paths(sysconfdir, 'pki', 'fwupd-metadata')
++  install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd-metadata')
+ )
+ 
+ install_data([
+     'LVFS-CA.pem',
+   ],
+-  install_dir : join_paths(sysconfdir, 'pki', 'fwupd')
++  install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd')
+ )
+ install_data([
+     'LVFS-CA.pem',
+   ],
+-  install_dir : join_paths(sysconfdir, 'pki', 'fwupd-metadata')
++  install_dir : join_paths(sysconfdir_install, 'pki', 'fwupd-metadata')
+ )
+-
+diff --git a/data/remotes.d/meson.build b/data/remotes.d/meson.build
+index 826a3c1d..b78db663 100644
+--- a/data/remotes.d/meson.build
++++ b/data/remotes.d/meson.build
+@@ -3,7 +3,7 @@ if build_daemon and get_option('lvfs')
+       'lvfs.conf',
+       'lvfs-testing.conf',
+     ],
+-    install_dir : join_paths(sysconfdir, 'fwupd', 'remotes.d')
++    install_dir : join_paths(sysconfdir_install, 'fwupd', 'remotes.d')
+   )
+   i18n.merge_file(
+     input: 'lvfs.metainfo.xml',
+@@ -37,12 +37,12 @@ configure_file(
+   output : 'vendor.conf',
+   configuration : con2,
+   install: true,
+-  install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'),
++  install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'),
+ )
+ configure_file(
+   input : 'vendor-directory.conf',
+   output : 'vendor-directory.conf',
+   configuration : con2,
+   install: true,
+-  install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'),
++  install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'),
+ )
+diff --git a/meson.build b/meson.build
+index 1ab6519b..0f2fcea6 100644
+--- a/meson.build
++++ b/meson.build
+@@ -196,6 +196,12 @@ endif
+ mandir = join_paths(prefix, get_option('mandir'))
+ localedir = join_paths(prefix, get_option('localedir'))
+ 
++if get_option('sysconfdir_install') != ''
++  sysconfdir_install = join_paths(prefix, get_option('sysconfdir_install'))
++else
++  sysconfdir_install = sysconfdir
++endif
++
+ diffcmd = find_program('diff')
+ gio = dependency('gio-2.0', version : '>= 2.45.8')
+ giounix = dependency('gio-unix-2.0', version : '>= 2.45.8', required: false)
+diff --git a/meson_options.txt b/meson_options.txt
+index 87e76870..16cb876c 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,3 +1,4 @@
++option('sysconfdir_install', type: 'string', value: '', description: 'sysconfdir to use during installation')
+ option('build', type : 'combo', choices : ['all', 'standalone', 'library'], value : 'all', description : 'build type')
+ option('agent', type : 'boolean', value : true, description : 'enable the fwupd agent')
+ option('consolekit', type : 'boolean', value : true, description : 'enable ConsoleKit support')
+diff --git a/plugins/dell-esrt/meson.build b/plugins/dell-esrt/meson.build
+index ed4eee70..76dbdb1d 100644
+--- a/plugins/dell-esrt/meson.build
++++ b/plugins/dell-esrt/meson.build
+@@ -37,5 +37,5 @@ configure_file(
+   output : 'dell-esrt.conf',
+   configuration : con2,
+   install: true,
+-  install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'),
++  install_dir: join_paths(sysconfdir_install, 'fwupd', 'remotes.d'),
+ )
+diff --git a/plugins/redfish/meson.build b/plugins/redfish/meson.build
+index 205d1394..3223f404 100644
+--- a/plugins/redfish/meson.build
++++ b/plugins/redfish/meson.build
+@@ -27,7 +27,7 @@ shared_module('fu_plugin_redfish',
+ )
+ 
+ install_data(['redfish.conf'],
+-  install_dir:  join_paths(sysconfdir, 'fwupd')
++  install_dir:  join_paths(sysconfdir_install, 'fwupd')
+ )
+ 
+ if get_option('tests')
+diff --git a/plugins/thunderbolt/meson.build b/plugins/thunderbolt/meson.build
+index 6b2368fb..2bd06fed 100644
+--- a/plugins/thunderbolt/meson.build
++++ b/plugins/thunderbolt/meson.build
+@@ -31,7 +31,7 @@ fu_plugin_thunderbolt = shared_module('fu_plugin_thunderbolt',
+ )
+ 
+ install_data(['thunderbolt.conf'],
+-  install_dir:  join_paths(sysconfdir, 'fwupd')
++  install_dir:  join_paths(sysconfdir_install, 'fwupd')
+ )
+ # we use functions from 2.52 in the tests
+ if get_option('tests') and umockdev.found() and gio.version().version_compare('>= 2.52')
+diff --git a/plugins/uefi-capsule/meson.build b/plugins/uefi-capsule/meson.build
+index 675de181..a02c7754 100644
+--- a/plugins/uefi-capsule/meson.build
++++ b/plugins/uefi-capsule/meson.build
+@@ -94,7 +94,7 @@ if get_option('man')
+ endif
+ 
+ install_data(['uefi_capsule.conf'],
+-  install_dir:  join_paths(sysconfdir, 'fwupd')
++  install_dir:  join_paths(sysconfdir_install, 'fwupd')
+ )
+ 
+ # add all the .po files as inputs to watch
+diff --git a/plugins/upower/meson.build b/plugins/upower/meson.build
+index 290a3eb6..9ab2f452 100644
+--- a/plugins/upower/meson.build
++++ b/plugins/upower/meson.build
+@@ -23,5 +23,5 @@ shared_module('fu_plugin_upower',
+ )
+ 
+ install_data(['upower.conf'],
+-  install_dir:  join_paths(sysconfdir, 'fwupd')
++  install_dir:  join_paths(sysconfdir_install, 'fwupd')
+ )
diff --git a/gnu/packages/patches/fwupd-do-not-write-to-var.patch b/gnu/packages/patches/fwupd-do-not-write-to-var.patch
new file mode 100644
index 0000000000..474b250097
--- /dev/null
+++ b/gnu/packages/patches/fwupd-do-not-write-to-var.patch
@@ -0,0 +1,8 @@
+diff --git a/data/builder/meson.build b/data/builder/meson.build
+index c7a430c0..e69de29b 100644
+--- a/data/builder/meson.build
++++ b/data/builder/meson.build
+@@ -1,3 +0,0 @@
+-install_data('README.md',
+-  install_dir : join_paths(localstatedir, 'lib', 'fwupd', 'builder')
+-)
diff --git a/gnu/packages/patches/fwupd-installed-tests-path.patch b/gnu/packages/patches/fwupd-installed-tests-path.patch
new file mode 100644
index 0000000000..d8f1a533b8
--- /dev/null
+++ b/gnu/packages/patches/fwupd-installed-tests-path.patch
@@ -0,0 +1,48 @@
+diff --git a/data/device-tests/hardware.py b/data/device-tests/hardware.py
+index 7f1e1907..10fee1b8 100755
+--- a/data/device-tests/hardware.py
++++ b/data/device-tests/hardware.py
+@@ -1,4 +1,4 @@
+-#!/usr/bin/python3
++#!@installedTestsPython@/bin/python3
+ # pylint: disable=wrong-import-position,too-many-locals,unused-argument,wrong-import-order
+ #
+ # Copyright (C) 2017 Richard Hughes <richard <at> hughsie.com>
+diff --git a/data/installed-tests/meson.build b/data/installed-tests/meson.build
+index adadbcdd..1b51bb9c 100644
+--- a/data/installed-tests/meson.build
++++ b/data/installed-tests/meson.build
+@@ -65,5 +65,5 @@ configure_file(
+   output : 'fwupd-tests.conf',
+   configuration : con2,
+   install: true,
+-  install_dir: join_paths(sysconfdir, 'fwupd', 'remotes.d'),
++  install_dir: join_paths(get_option('installed_test_prefix'), 'etc', 'fwupd', 'remotes.d'),
+ )
+diff --git a/meson.build b/meson.build
+index 772b7bbe..f59302cd 100644
+--- a/meson.build
++++ b/meson.build
+@@ -177,8 +177,8 @@ else
+   datadir = join_paths(prefix, get_option('datadir'))
+   sysconfdir = join_paths(prefix, get_option('sysconfdir'))
+   localstatedir = join_paths(prefix, get_option('localstatedir'))
+-  installed_test_bindir = join_paths(libexecdir, 'installed-tests', meson.project_name())
+-  installed_test_datadir = join_paths(datadir, 'installed-tests', meson.project_name())
++  installed_test_bindir = join_paths(get_option('installed_test_prefix'), 'libexec', 'installed-tests', meson.project_name())
++  installed_test_datadir = join_paths(get_option('installed_test_prefix'), 'share', 'installed-tests', meson.project_name())
+ endif
+ mandir = join_paths(prefix, get_option('mandir'))
+ localedir = join_paths(prefix, get_option('localedir'))
+diff --git a/meson_options.txt b/meson_options.txt
+index 0a0e2853..5f68d78b 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -25,6 +26,7 @@ option('plugin_coreboot', type : 'boolean', value : true, description : 'enable
+ option('systemd', type : 'boolean', value : true, description : 'enable systemd support')
+ option('systemd_root_prefix', type: 'string', value: '', description: 'Directory to base systemd’s installation directories on')
+ option('elogind', type : 'boolean', value : false, description : 'enable elogind support')
++option('installed_test_prefix', type: 'string', description: 'Prefix for installed tests')
+ option('tests', type : 'boolean', value : true, description : 'enable tests')
+ option('tpm', type : 'boolean', value : true, description : 'enable TPM support')
+ option('udevdir', type: 'string', value: '', description: 'Directory for udev rules')
diff --git a/gnu/packages/patches/fwupd-remove-nonfree-lvfs-repo.patch b/gnu/packages/patches/fwupd-remove-nonfree-lvfs-repo.patch
new file mode 100644
index 0000000000..3efe523703
--- /dev/null
+++ b/gnu/packages/patches/fwupd-remove-nonfree-lvfs-repo.patch
@@ -0,0 +1,147 @@
+diff --git a/data/remotes.d/lvfs-testing.conf b/data/remotes.d/lvfs-testing.conf
+deleted file mode 100644
+index 740a793e..00000000
+--- a/data/remotes.d/lvfs-testing.conf
++++ /dev/null
+@@ -1,12 +0,0 @@
+-[fwupd Remote]
+-
+-# this remote provides metadata and firmware marked as 'testing' from the LVFS
+-Enabled=false
+-Title=Linux Vendor Firmware Service (testing)
+-MetadataURI=https://cdn.fwupd.org/downloads/firmware-testing.xml.gz
+-ReportURI=https://fwupd.org/lvfs/firmware/report
+-Username=
+-Password=
+-OrderBefore=lvfs,fwupd
+-AutomaticReports=false
+-ApprovalRequired=false
+diff --git a/data/remotes.d/lvfs-testing.metainfo.xml b/data/remotes.d/lvfs-testing.metainfo.xml
+deleted file mode 100644
+index 3e36aab7..00000000
+--- a/data/remotes.d/lvfs-testing.metainfo.xml
++++ /dev/null
+@@ -1,35 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!-- Copyright 2018 Richard Hughes <richard <at> hughsie.com> -->
+-
+-<component type="source">
+-  <id>org.freedesktop.fwupd.remotes.lvfs-testing</id>
+-  <name>Linux Vendor Firmware Service (testing firmware)</name>
+-  <metadata_license>CC0-1.0</metadata_license>
+-  <agreement version_id="1.0">
+-    <agreement_section>
+-      <description>
+-        <!-- TRANSLATORS: do not translate the variables marked using $ -->
+-        <p>
+-          The LVFS is a free service that operates as an independent legal
+-          entity and has no connection with $OS_RELEASE:NAME$.
+-          Your distributor may not have verified any of the firmware updates for
+-          compatibility with your system or connected devices.
+-          All firmware is provided only by the original equipment manufacturer.
+-        </p>
+-        <p>
+-          This remote contains firmware which is not embargoed, but is still being
+-          tested by the hardware vendor.
+-          You should ensure you have a way to manually downgrade the firmware if
+-          the firmware update fails.
+-        </p>
+-        <p>
+-          Enabling this functionality is done at your own risk, which means you
+-          have to contact your original equipment manufacturer regarding any
+-          problems caused by these updates.
+-          Only problems with the update process itself should be filed at
+-          $OS_RELEASE:BUG_REPORT_URL$.
+-        </p>
+-      </description>
+-    </agreement_section>
+-  </agreement>
+-</component>
+diff --git a/data/remotes.d/lvfs.conf b/data/remotes.d/lvfs.conf
+deleted file mode 100644
+index f956bc97..00000000
+--- a/data/remotes.d/lvfs.conf
++++ /dev/null
+@@ -1,12 +0,0 @@
+-[fwupd Remote]
+-
+-# this remote provides metadata and firmware marked as 'stable' from the LVFS
+-Enabled=true
+-Title=Linux Vendor Firmware Service
+-MetadataURI=https://cdn.fwupd.org/downloads/firmware.xml.gz
+-ReportURI=https://fwupd.org/lvfs/firmware/report
+-SecurityReportURI=https://fwupd.org/lvfs/hsireports/upload
+-OrderBefore=fwupd
+-AutomaticReports=false
+-AutomaticSecurityReports=false
+-ApprovalRequired=false
+diff --git a/data/remotes.d/lvfs.metainfo.xml b/data/remotes.d/lvfs.metainfo.xml
+deleted file mode 100644
+index d9565ddd..00000000
+--- a/data/remotes.d/lvfs.metainfo.xml
++++ /dev/null
+@@ -1,29 +0,0 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!-- Copyright 2018 Richard Hughes <richard <at> hughsie.com> -->
+-
+-<component type="source">
+-  <id>org.freedesktop.fwupd.remotes.lvfs</id>
+-  <name>Linux Vendor Firmware Service (stable firmware)</name>
+-  <metadata_license>CC0-1.0</metadata_license>
+-  <agreement version_id="1.0">
+-    <agreement_section>
+-      <description>
+-        <!-- TRANSLATORS: do not translate the variables marked using $ -->
+-        <p>
+-          The LVFS is a free service that operates as an independent legal
+-          entity and has no connection with $OS_RELEASE:NAME$.
+-          Your distributor may not have verified any of the firmware updates for
+-          compatibility with your system or connected devices.
+-          All firmware is provided only by the original equipment manufacturer.
+-        </p>
+-        <p>
+-          Enabling this functionality is done at your own risk, which means you
+-          have to contact your original equipment manufacturer regarding any
+-          problems caused by these updates.
+-          Only problems with the update process itself should be filed at
+-          $OS_RELEASE:BUG_REPORT_URL$.
+-        </p>
+-      </description>
+-    </agreement_section>
+-  </agreement>
+-</component>
+diff --git a/data/remotes.d/meson.build b/data/remotes.d/meson.build
+index 826a3c1d..1f585c09 100644
+--- a/data/remotes.d/meson.build
++++ b/data/remotes.d/meson.build
+@@ -1,30 +1,3 @@
+-if build_daemon and get_option('lvfs')
+-  install_data([
+-      'lvfs.conf',
+-      'lvfs-testing.conf',
+-    ],
+-    install_dir : join_paths(sysconfdir, 'fwupd', 'remotes.d')
+-  )
+-  i18n.merge_file(
+-    input: 'lvfs.metainfo.xml',
+-    output: 'org.freedesktop.fwupd.remotes.lvfs.metainfo.xml',
+-    type: 'xml',
+-    po_dir: join_paths(meson.source_root(), 'po'),
+-    data_dirs: join_paths(meson.source_root(), 'po'),
+-    install: true,
+-    install_dir: join_paths(get_option('datadir'), 'fwupd', 'metainfo')
+-  )
+-  i18n.merge_file(
+-    input: 'lvfs-testing.metainfo.xml',
+-    output: 'org.freedesktop.fwupd.remotes.lvfs-testing.metainfo.xml',
+-    type: 'xml',
+-    po_dir: join_paths(meson.source_root(), 'po'),
+-    data_dirs: join_paths(meson.source_root(), 'po'),
+-    install: true,
+-    install_dir: join_paths(get_option('datadir'), 'fwupd', 'metainfo')
+-  )
+-endif
+-
+ install_data('README.md',
+   install_dir : join_paths(datadir, 'fwupd', 'remotes.d', 'vendor', 'firmware')
+ )
-- 
2.30.0





Merged 46277 46278 46279. Request was from Leo Le Bouter <lle-bout <at> zaclys.net> to control <at> debbugs.gnu.org. (Wed, 03 Feb 2021 23:22:02 GMT) Full text and rfc822 format available.

Information forwarded to guix-patches <at> gnu.org:
bug#46278; Package guix-patches. (Sun, 14 Aug 2022 21:45:02 GMT) Full text and rfc822 format available.

Message #10 received at 46278 <at> debbugs.gnu.org (full text, mbox):

From: phodina <phodina <at> protonmail.com>
To: "46278 <at> debbugs.gnu.org" <46278 <at> debbugs.gnu.org>
Cc: Ludovic Courtès <ludo <at> gnu.org>
Subject: [PATCH v2] Add fwupd
Date: Sun, 14 Aug 2022 21:44:07 +0000
[Message part 1 (text/plain, inline)]
Hi,

here's updated patch for fwupd.

I attempted to add also Gnome GUI but for some reason the pkgconfig in meson is not detecting the fwupd even though that when ran manually it finds it.

Here's the error:

Found pkg-config: /gnu/store/2b3blhwbag1ial0dhxw7wh4zjxl0cqpk-pkg-config-0.29.2/bin/pkg-config (0.29.2)
Run-time dependency gtk4 found: YES 4.6.6
Run-time dependency gio-2.0 found: YES 2.70.2
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency fwupd found: NO (tried pkgconfig and cmake)
Looking for a fallback subproject for the dependency fwupd

../source/meson.build:81:0: ERROR: Git program not found, cannot download fwupd.wrap via git.

A full log can be found at /tmp/guix-build-gnome-firmware-42.2.drv-0/build/meson-logs/meson-log.txterror: in phase 'configure': uncaught exception:

And here's the search result (I sourced the environment first):

/tmp/guix-build-gnome-firmware-42.2.drv-0/source$ pkg-config --list-all | grep fwupd
fwupdplugin fwupdplugin - library for plugins to use to interact with fwupd daemonfwupd fwupd - fwupd is a system daemon for installing device firmware

FIY Same error happens when I attempt to build the libaccounts-qt for KDE updates.[1][2]

[1] https://gitlab.com/accounts-sso/libaccounts-qt/-/issues/5
[2] https://issues.guix.gnu.org/50862#38
[Message part 2 (text/html, inline)]
[v2-0002-gnu-Add-gnome-firmware.patch (text/x-patch, attachment)]
[v2-0001-gnu-Add-fwupd.patch (text/x-patch, attachment)]

Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Wed, 31 Aug 2022 11:05:01 GMT) Full text and rfc822 format available.

Notification sent to Léo Le Bouter <lle-bout <at> zaclys.net>:
bug acknowledged by developer. (Wed, 31 Aug 2022 11:05:02 GMT) Full text and rfc822 format available.

Message #15 received at 46278-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: phodina <phodina <at> protonmail.com>
Cc: "46278 <at> debbugs.gnu.org" <46278-done <at> debbugs.gnu.org>
Subject: Re: [PATCH v2] Add fwupd
Date: Wed, 31 Aug 2022 13:04:17 +0200
[Message part 1 (text/plain, inline)]
Hi,

phodina <phodina <at> protonmail.com> skribis:

> I attempted to add also Gnome GUI but for some reason the pkgconfig in meson is not detecting the fwupd even though that when ran manually it finds it.

Hmm maybe we should discuss that separately.

> From d5bb4d798b40d91119d54077514d70234f6f3818 Mon Sep 17 00:00:00 2001
> From: Petr Hodina <phodina <at> protonmail.com>
> Date: Tue, 4 Jan 2022 06:58:51 +0100
> Subject: [PATCH v2 1/2] gnu: Add fwupd.
>
> * gnu/packages/firmware.scm (fwupd): New variable.

Applied with the minor changes below, thanks!

Ludo’.

[Message part 2 (text/x-patch, inline)]
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index dc5d5c3452..3a5ade4b77 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -268,9 +268,9 @@ (define-public fwupd
                   libsmbios
                   gnu-efi))
     (home-page "https://fwupd.org/")
-    (synopsis "A simple daemon to allow session software to update firmware")
-    (description "This package aims to make updating firmware on Linux
-automatic, safe and reliable.")
+    (synopsis "Daemon to allow session software to update firmware")
+    (description "This package aims to make updating firmware on GNU/Linux
+automatic, safe and reliable.  It is used by tools such as GNOME Software.")
     (license license:lgpl2.1+)))
 
 (define-public openfwwf-firmware

Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Wed, 31 Aug 2022 11:05:02 GMT) Full text and rfc822 format available.

Notification sent to Léo Le Bouter <lle-bout <at> zaclys.net>:
bug acknowledged by developer. (Wed, 31 Aug 2022 11:05:02 GMT) Full text and rfc822 format available.

Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Wed, 31 Aug 2022 11:05:02 GMT) Full text and rfc822 format available.

Notification sent to Léo Le Bouter <lle-bout <at> zaclys.net>:
bug acknowledged by developer. (Wed, 31 Aug 2022 11:05:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 28 Sep 2022 11:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 223 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.