summaryrefslogtreecommitdiff
path: root/sys-apps/fwupd
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-08-25 15:54:35 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-08-25 15:54:35 +0100
commitd0bb3151c569ab6e40c84c177f43bff3c7ce4780 (patch)
tree0c543a2f299a437229bcd5db5c62697a41243689 /sys-apps/fwupd
parent601320c16301dbd7e8830e8c2ab7d6aef5b65abe (diff)
gentoo auto-resync : 25:08:2023 - 15:54:35
Diffstat (limited to 'sys-apps/fwupd')
-rw-r--r--sys-apps/fwupd/Manifest5
-rw-r--r--sys-apps/fwupd/files/fwupd-1.9.4-fragile_tests.patch24
-rw-r--r--sys-apps/fwupd/fwupd-1.9.4.ebuild206
-rw-r--r--sys-apps/fwupd/metadata.xml1
4 files changed, 235 insertions, 1 deletions
diff --git a/sys-apps/fwupd/Manifest b/sys-apps/fwupd/Manifest
index 3f438d399ba9..db815caa057b 100644
--- a/sys-apps/fwupd/Manifest
+++ b/sys-apps/fwupd/Manifest
@@ -1,7 +1,10 @@
AUX fwupd-1.8.13-installed_tests.patch 11799 BLAKE2B 7d1b5e18f27a95aabda2421a9ba2ff98ae68f74fc82b103d199fe57905fbe40d21d88c60f2a0708bd575f6ce013abda848c9d0830f2489fb88ff1810926505db SHA512 3edd59a52310a454a86470feb9b17f627def0362947788c65743e0cbbc4670b94a227080caddc1e7808fc9b63f5e045d4a0638b63ae1ff850f70db9e3b748910
+AUX fwupd-1.9.4-fragile_tests.patch 1571 BLAKE2B b051c32ac4decb4f7eab52b532fe866382ebf203fa47a6a24cd6069a8c231da6a9cc42306a877511a3521f28f52fef4b65cead85bc89118019629f0cebd0d736 SHA512 b80f490ee00e4528adcabfb556a39fbcd581911ad3fa29d416a98b149d955f0cbe8b68089d9f47f569fee76e5f6eb75e05aaebe4d3f5670f2a0f3ef6d172c93a
AUX fwupd-r2 308 BLAKE2B 4494e69515347569965f0966ce2fe0779a6273df18412b4f6045c6186730dc8088f85eb029347b01c22897662d9205f98871752dee99690871a39cbb26db3899 SHA512 0f5070dc73cb6e0cfad7a66781afb85c695faffd05685e9df8c9798b94d55b31c0977134015d0d5418f5815d10529d79c898ae0efb2bdf0dc9ee44b696d5fdd7
DIST fwupd-1.8.15.tar.xz 3734344 BLAKE2B 1b098b98b7700e4a9322c53d1c52408e581d124822d1cc7f4a9d25cf3a9169f3596c559f7b9997930e43a9da983fb0c232674726520c9565c250e6db3e4bc0fa SHA512 c7ad249118d84dab903644975761030bcc16d65d9cd4f8d4a58399f79b30a4889cc62d502d28037d61738da7287998328e6042d29c21c5113c29bfc1ba4c0b75
DIST fwupd-1.9.3.tar.xz 3807376 BLAKE2B 2652bc0bb56419bf443476081eb4af2900f24dbf489970bed058f91958902c0fdc301ac163ddc106250a85f3de8fc2a4ca9518d5498efb3793ffbc6ba85fc0cb SHA512 53a3c7e0cebbc8726f07590b26a9d0a4443ff9b048304ed1bff403de532d64eec83b19e51907d39449d9afa78c1f78a139808cdc6249b7e76a1e3a179692acb0
+DIST fwupd-1.9.4.tar.xz 3836580 BLAKE2B 7d5f97bb804759cb2b48e8bbe6c5c8c0ad6bc835e3f2ca7385ddf830dc8d7e8bd5c658a4bccccce02853e5282aa90ac8f0494a47822d22e07b1dd7600f9aea9a SHA512 c9c3242dc93a1dea967115383377b72dfc813c68b9328e97f581d0d7327daf7b6665323037e9353312ae5debe52fbfec869cfe743bbeae4ab6fbc6ff48562da7
EBUILD fwupd-1.8.15.ebuild 4808 BLAKE2B 451d5c21d9fabb66ef4d383af5bb102daa8d443af15f265ed81e4ab9469a13d20b09df6f46bb6d35029402823238be6fe297d41b788bdaf53187b488786791e8 SHA512 4df4dca82cc6e8f923792b651b0f006957af03809a0566674e3f61489e5cff3ecd4ff5c462450fd3c285aea2bacef5597882963113846f2160e4870e5d0d476d
EBUILD fwupd-1.9.3.ebuild 5011 BLAKE2B 05c0fba2e7da70aef0c2e1adedf1727a458caf1c0b9094ce0a7f83f8a270b196432addbe7ae812cebc04ed3634c958cb8c5aed525173c370ad795543fe0423d1 SHA512 f7f251b020c0624c1fac209bc7e63334a75c006967295b5fcf91d132e5736bd23dc5bd32ce1127b5ef5d2afa21c80e71afa5e4abf53a64cc8a9ddfe05f6c4076
-MISC metadata.xml 1353 BLAKE2B 203dcb3ddbf6e21fcd2c938d8a7091f8d2fc136851588757890ab9038f890770929e8b3e027180332824a47eb6453925958617a8244ddd560e5a893a15d43403 SHA512 2e7595353403e45a78e83c5e0c9dd06d437f07794514e54feb1e9927a2cce4b55c34f0b208a71e168f23e32125dde8f1e86b2b651d39ed93472ff63aa47364c9
+EBUILD fwupd-1.9.4.ebuild 5280 BLAKE2B 74795abf0a5156af12e50ff94f03fa9920d8b8705e2933fb8a994c4a7181e1159e2c4b02c27eed2b76dc19195afc4bac7bccc7650457f7c8273426fb8a81358f SHA512 891f356059d0fe36ab6a205540f12fd1a3bb99a171d9382762ccce58639deb29ac30605433eb30219a10a26a6c7da7e7dacfd37b146bf4539dc0765df87fb6cc
+MISC metadata.xml 1440 BLAKE2B 8900d2afff6f02cc6dde9be36b2dea521ff1df70ef8ace49344b3df153782212547144cab9ceb13a3bcb8a3aaa2278378cee806ebf653ee3f23c3180ea731892 SHA512 8c94dfd783a353e724a6b5f54f556e37c02ef6913e49d76aa6aa0ead9c56297e6c284592774738f8b6950270693b91fd987491c434ac01c1c53053c1bf950343
diff --git a/sys-apps/fwupd/files/fwupd-1.9.4-fragile_tests.patch b/sys-apps/fwupd/files/fwupd-1.9.4-fragile_tests.patch
new file mode 100644
index 000000000000..95105177499b
--- /dev/null
+++ b/sys-apps/fwupd/files/fwupd-1.9.4-fragile_tests.patch
@@ -0,0 +1,24 @@
+umockdev-based tests appear not to play nicely with the sandbox,
+often they work but on some systems they persistently fail.
+
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -60,6 +60,7 @@
+ option('systemd_root_prefix', type: 'string', value: '', description: 'Directory to base systemd’s installation directories on')
+ option('elogind', type : 'feature', description : 'elogind support', deprecated: {'true': 'enabled', 'false': 'disabled'})
+ option('tests', type : 'boolean', value : true, description : 'enable tests')
++option('test-full', type : 'boolean', value : false, description : 'enable tests known to be fragile when called from Gentoo ebuilds')
+ option('curl', type : 'feature', description : 'libcurl support', deprecated: {'true': 'enabled', 'false': 'disabled'})
+ option('udevdir', type: 'string', value: '', description: 'Directory for udev rules')
+ option('efi_os_dir', type: 'string', description : 'the hardcoded name of OS directory in ESP, e.g. fedora')
+--- a/plugins/thunderbolt/meson.build
++++ b/plugins/thunderbolt/meson.build
+@@ -19,7 +19,7 @@
+ plugin_builtins += plugin_builtin_thunderbolt
+
+ # we use functions from 2.52 in the tests
+-if get_option('tests') and run_sanitize_unsafe_tests and umockdev.found() and gio.version().version_compare('>= 2.52')
++if get_option('tests') and get_option('test-full') and run_sanitize_unsafe_tests and umockdev.found() and gio.version().version_compare('>= 2.52')
+ env = environment()
+ env.set('G_TEST_SRCDIR', meson.current_source_dir())
+ env.set('G_TEST_BUILDDIR', meson.current_build_dir())
diff --git a/sys-apps/fwupd/fwupd-1.9.4.ebuild b/sys-apps/fwupd/fwupd-1.9.4.ebuild
new file mode 100644
index 000000000000..568558450cfa
--- /dev/null
+++ b/sys-apps/fwupd/fwupd-1.9.4.ebuild
@@ -0,0 +1,206 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit meson python-single-r1 vala udev xdg
+
+DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
+HOMEPAGE="https://fwupd.org"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="amt +archive bash-completion bluetooth cbor dell elogind fastboot flashrom gnutls gtk-doc +gusb introspection logitech lzma minimal modemmanager nvme policykit spi +sqlite synaptics systemd test test-full tpm uefi"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ ^^ ( elogind minimal systemd )
+ dell? ( uefi )
+ fastboot? ( gusb )
+ logitech? ( gusb )
+ minimal? ( !introspection )
+ modemmanager? ( gusb )
+ spi? ( lzma )
+ synaptics? ( gnutls )
+ test? ( archive gusb )
+ test-full? ( test )
+ uefi? ( gnutls )
+"
+RESTRICT="!test? ( test )"
+
+BDEPEND="$(vala_depend)
+ >=dev-util/meson-0.60.0
+ virtual/pkgconfig
+ gtk-doc? (
+ $(python_gen_cond_dep '
+ >=dev-python/markdown-3.2[${PYTHON_USEDEP}]
+ ')
+ >=dev-util/gi-docgen-2021.1
+ )
+ bash-completion? ( >=app-shells/bash-completion-2.0 )
+ introspection? ( dev-libs/gobject-introspection )
+ test? (
+ net-libs/gnutls[tools]
+ test-full? ( dev-util/umockdev )
+ )
+"
+COMMON_DEPEND="${PYTHON_DEPS}
+ >=app-arch/gcab-1.0
+ app-arch/xz-utils
+ >=dev-libs/glib-2.68:2
+ >=dev-libs/json-glib-1.6.0
+ >=dev-libs/libgudev-232:=
+ >=dev-libs/libjcat-0.1.4[gpg,pkcs7]
+ >=dev-libs/libxmlb-0.3.6:=[introspection?]
+ $(python_gen_cond_dep '
+ dev-python/pygobject:3[cairo,${PYTHON_USEDEP}]
+ ')
+ >=net-misc/curl-7.62.0
+ archive? ( app-arch/libarchive:= )
+ cbor? ( >=dev-libs/libcbor-0.7.0:= )
+ dell? (
+ >=app-crypt/tpm2-tss-2.0
+ >=sys-libs/libsmbios-2.4.0
+ )
+ elogind? ( >=sys-auth/elogind-211 )
+ flashrom? ( >=sys-apps/flashrom-1.2-r3 )
+ gnutls? ( >=net-libs/gnutls-3.6.0 )
+ gusb? ( >=dev-libs/libgusb-0.3.8[introspection?] )
+ logitech? ( dev-libs/protobuf-c:= )
+ lzma? ( app-arch/xz-utils )
+ modemmanager? ( net-misc/modemmanager[mbim,qmi] )
+ policykit? ( >=sys-auth/polkit-0.114 )
+ sqlite? ( dev-db/sqlite )
+ systemd? ( >=sys-apps/systemd-211 )
+ tpm? ( app-crypt/tpm2-tss:= )
+ uefi? (
+ sys-apps/fwupd-efi
+ sys-boot/efibootmgr
+ sys-fs/udisks
+ sys-libs/efivar
+ )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ sys-apps/dbus
+"
+
+DEPEND="
+ ${COMMON_DEPEND}
+ x11-libs/pango[introspection]
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.9.4-fragile_tests.patch
+)
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != buildonly ]]; then
+ if use test-full && has sandbox ${FEATURES}; then
+ ewarn "Certain ${PN} tests are fragile with sandboxing enabled,"
+ ewarn "see https://github.com/fwupd/fwupd/issues/1414."
+ ewarn "When in doubt, emerge ${PN} with USE=-test-full."
+ fi
+ fi
+}
+
+src_prepare() {
+ default
+
+ vala_setup
+
+ sed -e "/install_dir.*'doc'/s/doc/gtk-doc/" \
+ -i docs/meson.build || die
+
+ python_fix_shebang "${S}"/contrib/*.py
+}
+
+src_configure() {
+ local plugins=(
+ -Dplugin_gpio="enabled"
+ $(meson_feature amt plugin_intel_me)
+ $(meson_feature dell plugin_dell)
+ $(meson_feature fastboot plugin_fastboot)
+ $(meson_feature flashrom plugin_flashrom)
+ $(meson_feature gusb plugin_uf2)
+ $(meson_feature logitech plugin_logitech_bulkcontroller)
+ $(meson_feature modemmanager plugin_modem_manager)
+ $(meson_feature nvme plugin_nvme)
+ $(meson_use spi plugin_intel_spi)
+ $(meson_feature synaptics plugin_synaptics_mst)
+ $(meson_feature synaptics plugin_synaptics_rmi)
+ $(meson_feature tpm plugin_tpm)
+ $(meson_feature uefi plugin_uefi_capsule)
+ $(meson_use uefi plugin_uefi_capsule_splash)
+ $(meson_feature uefi plugin_uefi_pk)
+ )
+ if use ppc64 || use riscv ; then
+ plugins+=( -Dplugin_msr="disabled" )
+ fi
+
+ local emesonargs=(
+ --localstatedir "${EPREFIX}"/var
+ -Dbuild="$(usex minimal standalone all)"
+ -Dconsolekit="disabled"
+ -Dcurl="enabled"
+ -Defi_binary="false"
+ -Dman="true"
+ -Dsupported_build="enabled"
+ -Dudevdir="${EPREFIX}$(get_udevdir)"
+ $(meson_feature archive libarchive)
+ $(meson_use bash-completion bash_completion)
+ $(meson_feature bluetooth bluez)
+ $(meson_feature cbor)
+ $(meson_feature elogind)
+ $(meson_feature gnutls)
+ $(meson_feature gtk-doc docs)
+ $(meson_feature gusb)
+ $(meson_feature lzma)
+ $(meson_feature introspection)
+ $(meson_feature policykit polkit)
+ $(meson_feature sqlite)
+ $(meson_feature systemd)
+ $(meson_use test tests)
+ $(meson_use test-full)
+
+ ${plugins[@]}
+ )
+ use uefi && emesonargs+=( -Defi_os_dir="gentoo" )
+ export CACHE_DIRECTORY="${T}"
+ meson_src_configure
+}
+
+src_test() {
+ LC_ALL="C" meson_src_test
+}
+
+src_install() {
+ meson_src_install
+
+ if ! use minimal ; then
+ newinitd "${FILESDIR}"/${PN}-r2 ${PN}
+ fi
+
+ if use test; then
+ # Preventing tests from being installed in the first place is a moving target,
+ # just axe them all afterwards.
+ rm -rf "${ED}"/etc/fwupd/remotes.d/fwupd-tests.conf \
+ "${ED}"/usr/libexec/installed-tests \
+ "${ED}"/usr/share/fwupd/device-tests \
+ "${ED}"/usr/share/fwupd/host-emulate.d/thinkpad-p1-iommu.json.gz \
+ "${ED}"/usr/share/installed-tests \
+ || die
+ fi
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ use minimal || udev_reload
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ use minimal || udev_reload
+}
diff --git a/sys-apps/fwupd/metadata.xml b/sys-apps/fwupd/metadata.xml
index 258aab8e0e0c..8568986b263b 100644
--- a/sys-apps/fwupd/metadata.xml
+++ b/sys-apps/fwupd/metadata.xml
@@ -18,6 +18,7 @@
<flag name="modemmanager">Build and install Modem Manager plugin</flag>
<flag name="spi">Install Intel-SPI plugin</flag>
<flag name="synaptics">Install synaptics plugin</flag>
+ <flag name="test-full">Enable tests known not to play nicely with the sandbox</flag>
<flag name="tpm">Install Trusted Platform Module plugin</flag>
<flag name="uefi">Enable UEFI support</flag>
</use>