mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
app-containers/lxd: add 6.5
Signed-off-by: Brahmajit Das <listout@listout.xyz> Part-of: https://github.com/gentoo/gentoo/pull/43589 Signed-off-by: Joonas Niilola <juippis@gentoo.org>
This commit is contained in:
committed by
Joonas Niilola
parent
596553bb81
commit
b92b85dc80
@@ -6,3 +6,5 @@ DIST lxd-6.1.tar.gz 24960232 BLAKE2B 857d4896f1622166a79ea0324bc4c9c6276b83383f2
|
||||
DIST lxd-6.1.tar.gz.asc 833 BLAKE2B 4cbfcf04f82b2c817793405291566dd2525daba1e9c4d3656b0d694f351a7e5489cb3e6fc0001a58fea6892c5d08fb24ca369733287422b95c82b9252824c29b SHA512 ac6a9e643909fc8262ff7f3af4ef8bf847a8dbc6e74470a0c038231174dcef5d70ea9dcf490547d8b48836f87c86201377bc20b36d4d142b8e88b5467a6c6837
|
||||
DIST lxd-6.3.tar.gz 33286388 BLAKE2B 2f66ebfea94a262fc162b958ea031b6d82d35ea75e20445e8f5a5308689f5a37730aa18d8cf2fe6507cdc88c39a063a2ed295a3a7f8b0537e76835bc92116739 SHA512 0ec8bc8a55529258848045c2ff2e946de78989d8fd8ec2110c3fda15f9da9f56b8343460270d8d1661956bbf8c79dca4422212a4b23e4fe50398a47619834b62
|
||||
DIST lxd-6.3.tar.gz.asc 833 BLAKE2B 0778cdda82dacb3de31723b956a99e1c3c3d8317a87b2bfe35d2ff1516ebd65c0e5d42820bac8e15d6e03f15028556c37ea23234becd296963371be238e56e02 SHA512 8dca8e128b4c19e311a3b1084dbed79e9eea7e9c17306c2618fbcba358c1b540600610c7be8218eb3f8d8f5f4e2ce240c06470a2aa8baf9c3431edd807430720
|
||||
DIST lxd-6.5.tar.gz 36814768 BLAKE2B b176c2ec0784bac97d901e457676d3563552271e67936a1b87404f0ff46d8d38ffbadf2599c8718fb3b47a87235e530e6f8a9b6d27ede539add8c8601f0b44df SHA512 f2282da0acaf0adcc5b9438257aeb4cc456b4a3683f21e241338df4fff2fda30fa05b4cfe7d68d20ace84c08fbb06b0a8e6cd677d0db2112dfb29935c53c77af
|
||||
DIST lxd-6.5.tar.gz.asc 833 BLAKE2B 04a8d5c8c990821640e2ab2bfa3a53eb2a2f7a022365194ce78fd9fd7d2070e9dd6baaa5a682d7568b940722503b74638a255061ee782717d64ca0e51e58b6e5 SHA512 be402e69417c3cee5e5db724bc7680ec48f432b51f79bf7ec3baa5402e5cb68f7299edcf3d1604d4ac10d7eee7361bcdf70f737b6db12f8b80dd75c626b1f2d8
|
||||
|
||||
185
app-containers/lxd/lxd-6.5.ebuild
Normal file
185
app-containers/lxd/lxd-6.5.ebuild
Normal file
@@ -0,0 +1,185 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit go-module linux-info optfeature systemd verify-sig
|
||||
|
||||
DESCRIPTION="Modern, secure and powerful system container and virtual machine manager"
|
||||
HOMEPAGE="https://ubuntu.com/lxd https://github.com/canonical/lxd"
|
||||
SRC_URI="https://github.com/canonical/lxd/releases/download/${P}/${P}.tar.gz
|
||||
verify-sig? ( https://github.com/canonical/lxd/releases/download/${P}/${P}.tar.gz.asc
|
||||
)"
|
||||
|
||||
LICENSE="Apache-2.0 AGPL-3+ BSD LGPL-3 MIT"
|
||||
SLOT="0/stable"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
IUSE="apparmor nls"
|
||||
|
||||
DEPEND="acct-group/lxd
|
||||
app-arch/xz-utils
|
||||
>=app-containers/lxc-6.0.4:=[apparmor?,seccomp(+)]
|
||||
dev-db/sqlite:3
|
||||
>=dev-libs/dqlite-1.18.2:=[lz4]
|
||||
dev-libs/lzo
|
||||
>=dev-util/xdelta-3.0[lzma(+)]
|
||||
net-dns/dnsmasq[dhcp]
|
||||
sys-libs/libcap
|
||||
virtual/udev"
|
||||
RDEPEND="${DEPEND}
|
||||
|| (
|
||||
net-firewall/nftables[json]
|
||||
(
|
||||
net-firewall/ebtables
|
||||
net-firewall/iptables
|
||||
)
|
||||
)
|
||||
sys-apps/iproute2
|
||||
sys-fs/fuse:3
|
||||
>=sys-fs/lxcfs-6.0.4
|
||||
sys-fs/squashfs-tools[lzma]
|
||||
virtual/acl"
|
||||
BDEPEND=">=dev-lang/go-1.24.4
|
||||
nls? ( sys-devel/gettext )
|
||||
verify-sig? ( sec-keys/openpgp-keys-canonical )"
|
||||
|
||||
CONFIG_CHECK="
|
||||
~CGROUPS
|
||||
~IPC_NS
|
||||
~NET_NS
|
||||
~PID_NS
|
||||
|
||||
~SECCOMP
|
||||
~USER_NS
|
||||
~UTS_NS
|
||||
|
||||
~KVM
|
||||
~MACVTAP
|
||||
~VHOST_VSOCK
|
||||
"
|
||||
|
||||
ERROR_IPC_NS="CONFIG_IPC_NS is required."
|
||||
ERROR_NET_NS="CONFIG_NET_NS is required."
|
||||
ERROR_PID_NS="CONFIG_PID_NS is required."
|
||||
ERROR_SECCOMP="CONFIG_SECCOMP is required."
|
||||
ERROR_UTS_NS="CONFIG_UTS_NS is required."
|
||||
|
||||
WARNING_KVM="CONFIG_KVM and CONFIG_KVM_AMD/-INTEL is required for virtual machines."
|
||||
WARNING_MACVTAP="CONFIG_MACVTAP is required for virtual machines."
|
||||
WARNING_VHOST_VSOCK="CONFIG_VHOST_VSOCK is required for virtual machines."
|
||||
|
||||
# Go magic.
|
||||
QA_PREBUILT="/usr/bin/fuidshift
|
||||
/usr/bin/lxc
|
||||
/usr/bin/lxd-agent
|
||||
/usr/bin/lxd-benchmark
|
||||
/usr/bin/lxd-migrate
|
||||
/usr/sbin/lxd"
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/canonical.asc
|
||||
|
||||
# The testsuite must be run as root.
|
||||
# make: *** [Makefile:156: check] Error 1
|
||||
RESTRICT="test"
|
||||
|
||||
GOPATH="${S}/_dist"
|
||||
|
||||
src_prepare() {
|
||||
export GOPATH="${S}/_dist"
|
||||
|
||||
default
|
||||
|
||||
sed -i \
|
||||
-e "s:\./configure:./configure --prefix=/usr --libdir=${EPREFIX}/usr/lib/lxd:g" \
|
||||
-e "s:make:make ${MAKEOPTS}:g" \
|
||||
Makefile || die
|
||||
|
||||
# Fix hardcoded ovmf file path, see bug 763180
|
||||
sed -i \
|
||||
-e "s:/usr/share/OVMF:/usr/share/edk2/OvmfX64:g" \
|
||||
lxd/instance/drivers/edk2/edk2.go || die "Failed to fix hardcoded ovmf paths."
|
||||
|
||||
# Fix hardcoded virtfs-proxy-helper file path, see bug 798924
|
||||
sed -i \
|
||||
-e "s:/usr/lib/qemu/virtfs-proxy-helper:/usr/libexec/virtfs-proxy-helper:g" \
|
||||
lxd/device/device_utils_disk.go || die "Failed to fix virtfs-proxy-helper path."
|
||||
|
||||
cp "${FILESDIR}"/lxd-4.0.9-r1.service "${T}"/lxd.service || die
|
||||
if use apparmor; then
|
||||
sed -i \
|
||||
'/^EnvironmentFile=.*/a ExecStartPre=\/usr\/libexec\/lxc\/lxc-apparmor-load' \
|
||||
"${T}"/lxd.service || die
|
||||
fi
|
||||
|
||||
# Disable -Werror's from go modules.
|
||||
find "${S}" -name "cgo.go" -exec sed -i "s/ -Werror / /g" {} + || die
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() {
|
||||
export GOPATH="${S}/_dist"
|
||||
export CGO_LDFLAGS_ALLOW="-Wl,-z,now"
|
||||
|
||||
for k in fuidshift lxd-benchmark lxc; do
|
||||
go install -v -x "${S}/${k}" || die "failed compiling ${k}"
|
||||
done
|
||||
|
||||
go install -v -x -tags libsqlite3 "${S}"/lxd || die "Failed to build the daemon"
|
||||
|
||||
# Needs to be built statically
|
||||
CGO_ENABLED=0 go install -v -tags netgo "${S}"/lxd-migrate
|
||||
CGO_ENABLED=0 go install -v -tags agent,netgo "${S}"/lxd-agent
|
||||
|
||||
use nls && emake build-mo
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
export GOPATH="${S}/_dist"
|
||||
local bindir="_dist/bin"
|
||||
|
||||
dosbin ${bindir}/lxd
|
||||
|
||||
for l in fuidshift lxd-agent lxd-benchmark lxd-migrate lxc; do
|
||||
dobin ${bindir}/${l}
|
||||
done
|
||||
|
||||
newconfd "${FILESDIR}"/lxd-4.0.0.confd lxd
|
||||
newinitd "${FILESDIR}"/lxd-5.0.2-r1.initd lxd
|
||||
|
||||
systemd_dounit "${T}"/lxd.service
|
||||
systemd_newunit "${FILESDIR}"/lxd-containers-4.0.0.service lxd-containers.service
|
||||
systemd_newunit "${FILESDIR}"/lxd-4.0.0.socket lxd.socket
|
||||
|
||||
dodoc AUTHORS
|
||||
dodoc -r doc/*
|
||||
use nls && domo po/*.mo
|
||||
|
||||
# LXD needs LXD_QEMU_FW_PATH in env to find OVMF files for virtual machines
|
||||
newenvd - 90lxd <<- _EOF_
|
||||
LXD_QEMU_FW_PATH=${EPREFIX}/usr/share/edk2-ovmf
|
||||
_EOF_
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog
|
||||
elog "Consult https://wiki.gentoo.org/wiki/LXD for more information,"
|
||||
elog "including a Quick Start."
|
||||
elog "For virtual machine support, see:"
|
||||
elog "https://wiki.gentoo.org/wiki/LXD#Virtual_machines"
|
||||
elog
|
||||
elog "Please run 'lxc-checkconfig' to see all optional kernel features."
|
||||
elog
|
||||
optfeature "virtual machine support" app-emulation/qemu[spice,usbredir,virtfs]
|
||||
optfeature "btrfs storage backend" sys-fs/btrfs-progs
|
||||
optfeature "ipv6 support" net-dns/dnsmasq[ipv6]
|
||||
optfeature "full lxd-migrate support" net-misc/rsync
|
||||
optfeature "lvm2 storage backend" sys-fs/lvm2
|
||||
optfeature "zfs storage backend" sys-fs/zfs
|
||||
elog
|
||||
elog "Be sure to add your local user to the lxd group."
|
||||
}
|
||||
Reference in New Issue
Block a user