sys-apps/fwupd: add 2.1.5

Upstream commit a4f7c686976524199b2060bc04231f1a7ba4b6c0 drops external
dev-libs/libjcat use albeit for a confusing reason, as gpg support is
optional in libjcat.

Default-enable gnutls as it is preferred over openssl (which we just
disable) for that new NIH internal libjcat impl.

The flashrom plugin is now gone too.

Closes: https://bugs.gentoo.org/977822
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James
2026-06-24 04:59:35 +01:00
parent 8f8f13fcbc
commit d8aecd063b
2 changed files with 207 additions and 0 deletions

View File

@@ -5,3 +5,5 @@ DIST fwupd-2.1.1.tar.xz 5222632 BLAKE2B aab16941695d04417d140958435304a9b6fce6ee
DIST fwupd-2.1.1.tar.xz.asc 488 BLAKE2B 6ca785878673c05866492f46c0180f3d4561533b55663e44f4e926aba95267be3f9552ad1b6144d3382406967e1e49c713e372ddf8d8f01d784ff4c09bf7d189 SHA512 77af140e23bf2bc476a6a39b2ea80d6952df81f2d882d0492d76a025ecccd7247699a21afb490652ffc03dc3bf4f8b2c8a0130b46bf4e87682c03ee25f3f4611
DIST fwupd-2.1.2.tar.xz 5287488 BLAKE2B 137551e1f4ecc547b29758dde6ea33eff1c8d2462e55a5b3d3f63dd3c2f7865111c0cbaecd2c0f98bed87f46d2c928fd12ea95e3f6a6dc66f9685ff94187149b SHA512 d97e21f036d857c208d02b090ab9e0ef50b924c953a28fe9be8b2098daa7c1a0becf431cac480c7629953da16c2fecb593dae84ec5d2d229bebbf1c86243a6b6
DIST fwupd-2.1.2.tar.xz.asc 488 BLAKE2B 05b272d772fc4dfdf46a8293380353053630cef6b53c7ae29c102b579fb7b53ce165807c4b5fb00d3828918ebe5558602586f1de455d41698bf15f33313afb3e SHA512 53512a2b4d11c591d25cd422e86ba35e0b22646eccf75a349ab71063acaa9072d2e2ba4c1e371f7044f3c5f0a8f46cb8baa4ee48fb06f5feb5425fd1f6d42a67
DIST fwupd-2.1.5.tar.xz 5373796 BLAKE2B 0c2cd3fdd909048d5915f149085595115a3d36caef618795af125d337f7dab2494c9a8a1ea273ec8d96bbf2612dd0b42183481ba586f81c8560356b4ef939ab9 SHA512 c478cff14c8b3424f090ab128688653b88e3ccd36728fec0bc9583b988972bb18db367c5dc2f3b3a68845cc42bea0dd19fb0e07d5e5e18913f244dd4759bc42e
DIST fwupd-2.1.5.tar.xz.asc 488 BLAKE2B 8cc0998a7b62c1bfa82e2305f0dc4cbf8df3adbeb851928b287a1aba96d190ebbe3c3161d897d1f01212fb96018be5e827f6fe76c68d319440a5c2fa7a50937a SHA512 ecb3598c067f6482723ae8d0390a5d210fe5505bc3a1391e9261591e4500c0dadb21b57c02076e29f80f4c68b5a906646c64a9aaae8048271f234f7d1ec34ff6

View File

@@ -0,0 +1,205 @@
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..14} )
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/hughsie.asc
inherit meson python-single-r1 vala verify-sig 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
verify-sig? ( https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz.asc )
"
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
IUSE="amdgpu bash-completion bluetooth elogind +gnutls gtk-doc introspection minimal modemmanager policykit selinux seccomp systemd test tpm readline uefi"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
?? ( elogind systemd )
minimal? ( !introspection )
seccomp? ( systemd )
uefi? ( gnutls )
"
# DBus permission failures in 2.0.20 and then other new issues in 2.1.1
# Likely needs wrangling for ebuild environment
RESTRICT="!test? ( test ) test"
COMMON_DEPEND="
${PYTHON_DEPS}
>=app-arch/gcab-1.0
app-arch/xz-utils
dev-db/sqlite:3
>=dev-libs/glib-2.72:2
>=dev-libs/libxmlb-0.3.19:=[introspection?]
$(python_gen_cond_dep '
dev-python/pygobject:3[${PYTHON_USEDEP}]
')
net-libs/libmnl:=
>=net-misc/curl-7.62.0
sys-apps/util-linux
virtual/libusb:1
virtual/zlib:=
amdgpu? (
>=x11-libs/libdrm-2.4.113[video_cards_amdgpu]
)
elogind? ( >=sys-auth/elogind-211 )
gnutls? ( >=net-libs/gnutls-3.6.0:= )
modemmanager? ( >=net-misc/modemmanager-1.22.0[mbim,qmi] )
policykit? ( >=sys-auth/polkit-0.114 )
readline? ( sys-libs/readline:= )
seccomp? ( sys-apps/systemd[seccomp] )
systemd? ( >=sys-apps/systemd-249:= )
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
selinux? ( sec-policy/selinux-fwupd )
"
DEPEND="
${COMMON_DEPEND}
x11-libs/pango[introspection]
virtual/os-headers
"
BDEPEND="
$(vala_depend)
$(python_gen_cond_dep '
dev-python/jinja2[${PYTHON_USEDEP}]
')
>=dev-build/meson-1.3.2
sys-apps/hwdata
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-1.82.0-r2 )
test? (
net-libs/gnutls[tools]
$(python_gen_cond_dep '
dev-python/python-dbusmock[${PYTHON_USEDEP}]
')
)
uefi? (
$(python_gen_cond_dep '
dev-python/pygobject:3[cairo]
')
)
verify-sig? ( sec-keys/openpgp-keys-hughsie )
"
src_prepare() {
default
vala_setup
sed -i -e "/install_dir.*'doc'/s/doc/gtk-doc/" \
docs/meson.build || die
python_fix_shebang "${S}"/contrib/*.py
}
src_configure() {
# Automagic dependency on sys-apps/uswid for SBOMs
local native_file="${T}"/meson.${CHOST}.${ABI}.ini.local
cat >> ${native_file} <<-EOF || die
[binaries]
uswid='uswid-falseified'
EOF
local plugins=(
$(meson_feature amdgpu libdrm)
$(meson_feature modemmanager plugin_modem_manager)
$(meson_feature tpm hsi)
$(meson_use uefi plugin_uefi_capsule_splash)
)
local emesonargs=(
--native-file "${native_file}"
--localstatedir "${EPREFIX}"/var
-Dbuild="$(usex minimal standalone all)"
-Dblkid=enabled
-Defi_binary="false"
-Defi_os_dir="gentoo"
-Dman="true"
-Dsupported_build="enabled"
-Dsystemd_unit_user=""
# Unpackaged dependency
-Dpassim=disabled
-Dlibmnl=enabled
# Upstream prefer gnutls
-Dopenssl=disabled
$(meson_use bash-completion bash_completion)
$(meson_feature bluetooth bluez)
$(meson_feature gnutls)
$(meson_feature gtk-doc docs)
$(meson_feature introspection)
$(meson_feature policykit polkit)
$(meson_feature readline)
$(meson_feature systemd)
$(meson_use test tests)
$(meson_feature test umockdev_tests)
${plugins[@]}
)
if use elogind || use systemd ; then
emesonargs+=( -Dlogind=enabled )
else
emesonargs+=( -Dlogind=disabled )
fi
export CACHE_DIRECTORY="${T}"
meson_src_configure
}
src_test() {
LC_ALL="C.UTF-8" 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}"/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/fwupd/remotes.d/fwupd-tests.conf \
"${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
}