add fwupd live ebuild
This commit is contained in:
parent
594a4943b6
commit
d561963942
17
metadata/md5-cache/sys-apps/fwupd-9999
Normal file
17
metadata/md5-cache/sys-apps/fwupd-9999
Normal file
@ -0,0 +1,17 @@
|
||||
BDEPEND=|| ( dev-lang/vala:0.56 ) python_single_target_python3_10? ( dev-python/jinja2[python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/jinja2[python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/jinja2[python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/jinja2[python_targets_python3_13(-)] ) >=dev-build/meson-1.3.2 virtual/pkgconfig gtk-doc? ( python_single_target_python3_10? ( >=dev-python/markdown-3.2[python_targets_python3_10(-)] ) python_single_target_python3_11? ( >=dev-python/markdown-3.2[python_targets_python3_11(-)] ) python_single_target_python3_12? ( >=dev-python/markdown-3.2[python_targets_python3_12(-)] ) python_single_target_python3_13? ( >=dev-python/markdown-3.2[python_targets_python3_13(-)] ) >=dev-util/gi-docgen-2021.1 ) bash-completion? ( >=app-shells/bash-completion-2.0 ) introspection? ( dev-libs/gobject-introspection ) test? ( net-libs/gnutls[tools] ) >=dev-build/meson-1.2.3 app-alternatives/ninja dev-build/meson-format-array virtual/pkgconfig >=dev-vcs/git-1.8.2.1[curl]
|
||||
DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup test unpack
|
||||
DEPEND=python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) >=app-arch/gcab-1.0 app-arch/xz-utils >=dev-libs/glib-2.72:2 >=dev-libs/json-glib-1.6.0 >=dev-libs/libjcat-0.1.4[gpg,pkcs7] >=dev-libs/libxmlb-0.3.19:=[introspection?] python_single_target_python3_10? ( dev-python/pygobject:3[cairo,python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pygobject:3[cairo,python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pygobject:3[cairo,python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pygobject:3[cairo,python_targets_python3_13(-)] ) >=net-misc/curl-7.62.0 archive? ( app-arch/libarchive:= ) cbor? ( >=dev-libs/libcbor-0.7.0:= ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( >=sys-apps/flashrom-1.2-r3 ) gnutls? ( >=net-libs/gnutls-3.6.0 ) virtual/libusb:1 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 ) x11-libs/pango[introspection] amdgpu? ( sys-kernel/linux-headers x11-libs/libdrm[video_cards_amdgpu] )
|
||||
DESCRIPTION=Aims to make updating firmware on Linux automatic, safe and reliable
|
||||
EAPI=8
|
||||
HOMEPAGE=https://fwupd.org
|
||||
IDEPEND=dev-util/desktop-file-utils x11-misc/shared-mime-info
|
||||
INHERIT=meson python-single-r1 vala udev xdg git-r3
|
||||
IUSE=amdgpu amt +archive bash-completion bluetooth cbor elogind fastboot flashrom gnutls gtk-doc introspection logitech lzma minimal modemmanager nvme policykit spi +sqlite synaptics systemd test tpm uefi python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13
|
||||
LICENSE=LGPL-2.1+
|
||||
PROPERTIES=live
|
||||
RDEPEND=python_single_target_python3_10? ( dev-lang/python:3.10 ) python_single_target_python3_11? ( dev-lang/python:3.11 ) python_single_target_python3_12? ( dev-lang/python:3.12 ) python_single_target_python3_13? ( dev-lang/python:3.13 ) >=app-arch/gcab-1.0 app-arch/xz-utils >=dev-libs/glib-2.72:2 >=dev-libs/json-glib-1.6.0 >=dev-libs/libjcat-0.1.4[gpg,pkcs7] >=dev-libs/libxmlb-0.3.19:=[introspection?] python_single_target_python3_10? ( dev-python/pygobject:3[cairo,python_targets_python3_10(-)] ) python_single_target_python3_11? ( dev-python/pygobject:3[cairo,python_targets_python3_11(-)] ) python_single_target_python3_12? ( dev-python/pygobject:3[cairo,python_targets_python3_12(-)] ) python_single_target_python3_13? ( dev-python/pygobject:3[cairo,python_targets_python3_13(-)] ) >=net-misc/curl-7.62.0 archive? ( app-arch/libarchive:= ) cbor? ( >=dev-libs/libcbor-0.7.0:= ) elogind? ( >=sys-auth/elogind-211 ) flashrom? ( >=sys-apps/flashrom-1.2-r3 ) gnutls? ( >=net-libs/gnutls-3.6.0 ) virtual/libusb:1 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 ) sys-apps/dbus
|
||||
REQUIRED_USE=^^ ( python_single_target_python3_10 python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 ) ^^ ( elogind minimal systemd ) minimal? ( !introspection ) spi? ( lzma ) synaptics? ( gnutls ) test? ( archive ) uefi? ( gnutls )
|
||||
RESTRICT=!test? ( test )
|
||||
SLOT=0
|
||||
_eclasses_=toolchain-funcs d3d42b22a610ce81c267b644bcec9b87 multilib b2a329026f2e404e9e371097dda47f96 flag-o-matic f14aba975c94ccaa9f357a27e3b17ffe multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-utils-r1 2fee95c11e5f883024588d4837db6802 meson 99466844dd8d4fcfb07578a76f5a9922 python-single-r1 47d8ac9be330c9366112b78fd4f8ce57 vala e477903dbe0105930c51f170a592dc16 udev f3d9a4376ebd22131726a68e1a0a058f xdg-utils 42869b3c8d86a70ef3cf75165a395e09 xdg 3ef49a87c52c8b77c476351195dfe575 git-r3 875eb471682d3e1f18da124be97dcc81
|
||||
_md5_=7eb2acf754cfad7dc16c2a6d3b7cd57a
|
||||
28
sys-apps/fwupd/files/fwupd-1.9.6-fragile_tests.patch
Normal file
28
sys-apps/fwupd/files/fwupd-1.9.6-fragile_tests.patch
Normal file
@ -0,0 +1,28 @@
|
||||
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
|
||||
@@ -457,6 +457,11 @@
|
||||
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',
|
||||
--- 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())
|
||||
13
sys-apps/fwupd/files/fwupd-r2
Normal file
13
sys-apps/fwupd/files/fwupd-r2
Normal file
@ -0,0 +1,13 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
description="Firmware update daemon"
|
||||
pidfile="/var/run/fwupd.pid"
|
||||
command="/usr/libexec/fwupd/fwupd"
|
||||
command_background="true"
|
||||
|
||||
depend() {
|
||||
need elogind dbus
|
||||
before display-manager
|
||||
}
|
||||
192
sys-apps/fwupd/fwupd-9999.ebuild
Normal file
192
sys-apps/fwupd/fwupd-9999.ebuild
Normal file
@ -0,0 +1,192 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
|
||||
inherit meson python-single-r1 vala udev xdg
|
||||
|
||||
DESCRIPTION="Aims to make updating firmware on Linux automatic, safe and reliable"
|
||||
HOMEPAGE="https://fwupd.org"
|
||||
|
||||
if [[ "${PV}" = *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/${PN}/${PN}.git"
|
||||
else
|
||||
SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.xz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="LGPL-2.1+"
|
||||
SLOT="0"
|
||||
IUSE="amdgpu amt +archive bash-completion bluetooth cbor elogind fastboot flashrom gnutls gtk-doc introspection logitech lzma minimal modemmanager nvme policykit spi +sqlite synaptics systemd test tpm uefi"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}
|
||||
^^ ( elogind minimal systemd )
|
||||
minimal? ( !introspection )
|
||||
spi? ( lzma )
|
||||
synaptics? ( gnutls )
|
||||
test? ( archive )
|
||||
uefi? ( gnutls )
|
||||
"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="$(vala_depend)
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/jinja2[${PYTHON_USEDEP}]
|
||||
')
|
||||
>=dev-build/meson-1.3.2
|
||||
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]
|
||||
)
|
||||
"
|
||||
COMMON_DEPEND="${PYTHON_DEPS}
|
||||
>=app-arch/gcab-1.0
|
||||
app-arch/xz-utils
|
||||
>=dev-libs/glib-2.72:2
|
||||
>=dev-libs/json-glib-1.6.0
|
||||
>=dev-libs/libjcat-0.1.4[gpg,pkcs7]
|
||||
>=dev-libs/libxmlb-0.3.19:=[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:= )
|
||||
elogind? ( >=sys-auth/elogind-211 )
|
||||
flashrom? ( >=sys-apps/flashrom-1.2-r3 )
|
||||
gnutls? ( >=net-libs/gnutls-3.6.0 )
|
||||
virtual/libusb:1
|
||||
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]
|
||||
amdgpu? (
|
||||
sys-kernel/linux-headers
|
||||
x11-libs/libdrm[video_cards_amdgpu]
|
||||
)
|
||||
"
|
||||
|
||||
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"
|
||||
-Dplugin_uf2="enabled"
|
||||
$(meson_feature amdgpu plugin_amdgpu)
|
||||
$(meson_feature amt plugin_intel_me)
|
||||
$(meson_feature fastboot plugin_fastboot)
|
||||
$(meson_feature flashrom plugin_flashrom)
|
||||
$(meson_feature logitech plugin_logitech_bulkcontroller)
|
||||
$(meson_feature modemmanager plugin_modem_manager)
|
||||
$(meson_feature nvme plugin_nvme)
|
||||
$(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"
|
||||
-Dsystemd_unit_user=""
|
||||
$(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 lzma)
|
||||
$(meson_feature introspection)
|
||||
$(meson_feature policykit polkit)
|
||||
$(meson_feature sqlite)
|
||||
$(meson_feature systemd)
|
||||
$(meson_use test tests)
|
||||
|
||||
${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}"/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
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user