mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-06-09 20:54:08 +02:00
https://discuss.linuxcontainers.org/t/incus-6-13-has-been-released/23899#p-81674-note-for-packagers-20
220 lines
5.3 KiB
Text
220 lines
5.3 KiB
Text
# Contributor: Will Sinatra <wpsinatra@gmail.com>
|
|
# Contributor: Carlo Landmeter <clandmeter@gmail.com>
|
|
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
|
|
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
|
|
pkgname=incus-feature
|
|
pkgver=6.13.0
|
|
pkgrel=0
|
|
pkgdesc="Powerful system container and virtual machine manager - Feature branch"
|
|
url="https://github.com/lxc/incus"
|
|
arch="all"
|
|
license="Apache-2.0"
|
|
depends="acl
|
|
attr
|
|
ca-certificates
|
|
dbus
|
|
dnsmasq
|
|
lego
|
|
lxc
|
|
iproute2
|
|
iptables
|
|
netcat-openbsd
|
|
rsync
|
|
squashfs-tools
|
|
shadow-uidmap
|
|
tar
|
|
xz
|
|
"
|
|
makedepends="acl-dev
|
|
autoconf
|
|
automake
|
|
cowsql-dev
|
|
raft-cowsql-dev
|
|
eudev-dev
|
|
gettext-dev
|
|
go
|
|
intltool
|
|
libcap-dev
|
|
libtool
|
|
libuv-dev
|
|
linux-headers
|
|
lxc-dev
|
|
lz4-dev
|
|
sqlite-dev
|
|
tcl-dev
|
|
"
|
|
subpackages="$pkgname-client
|
|
$pkgname-agent
|
|
$pkgname-agent-openrc:agent_openrc:noarch
|
|
$pkgname-user
|
|
$pkgname-user-openrc:user_openrc:noarch
|
|
$pkgname-openrc
|
|
$pkgname-conversion
|
|
$pkgname-utils
|
|
$pkgname-bash-completion:bashcomp:noarch
|
|
$pkgname-vm:vm:noarch
|
|
$pkgname-oci:oci:noarch
|
|
"
|
|
install="$pkgname.pre-install"
|
|
options="net"
|
|
source="$pkgname-$pkgver.tar.gz::https://github.com/lxc/incus/archive/refs/tags/v$pkgver.tar.gz
|
|
incusd.confd
|
|
incusd.initd
|
|
$pkgname-agent.initd
|
|
$pkgname-user.initd
|
|
|
|
0001-statically-build-incus-agent-and-incus-migrate.patch
|
|
"
|
|
builddir="$srcdir/incus-$pkgver"
|
|
|
|
_tools="fuidshift
|
|
generate-config
|
|
generate-database
|
|
incus
|
|
incus-benchmark
|
|
incus-migrate
|
|
incus-simplestreams
|
|
lxc-to-incus
|
|
lxd-to-incus
|
|
mini-oidc
|
|
sysinfo
|
|
tls2jwt
|
|
"
|
|
|
|
_project="github.com/lxc/incus"
|
|
|
|
export GOFLAGS="$GOFLAGS -tags=libsqlite3"
|
|
export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
|
|
export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
|
|
export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
|
|
export GOPATH="$srcdir"
|
|
|
|
prepare() {
|
|
default_prepare
|
|
go mod download
|
|
}
|
|
|
|
build() {
|
|
export CGO_CFLAGS="-I/usr/include/raft -I/usr/include/cowsql"
|
|
export CGO_LDFLAGS="$LDFLAGS -lintl"
|
|
export CGO_LDFLAGS_ALLOW="(-Wl,-wrap,pthread_create)|(-Wl,-z,now)"
|
|
|
|
make
|
|
}
|
|
|
|
package() {
|
|
# generate bash shell completion script
|
|
chmod 755 "$srcdir"/bin/incus
|
|
"$srcdir"/bin/incus completion bash > "$builddir"/scripts/bash-completion
|
|
|
|
for daemon in incusd incus-agent incus-user; do
|
|
install -Dm755 "$srcdir"/bin/$daemon "$pkgdir"/usr/sbin/$daemon
|
|
done
|
|
|
|
for tool in $_tools; do
|
|
install -Dm755 "$srcdir"/bin/$tool "$pkgdir"/usr/bin/$tool
|
|
done
|
|
|
|
for init in incusd incus-feature-agent incus-feature-user; do
|
|
install -Dm755 "$srcdir"/$init.initd \
|
|
"$pkgdir"/etc/init.d/${init/-feature/}
|
|
done
|
|
install -Dm644 "$srcdir"/incusd.confd \
|
|
"$pkgdir"/etc/conf.d/incusd
|
|
|
|
install -Dm644 "$builddir"/scripts/bash-completion \
|
|
"$pkgdir"/usr/share/bash-completion/completions/incus
|
|
|
|
install -Dm755 "$builddir"/scripts/empty-incus.sh \
|
|
"$pkgdir"/usr/bin/empty-incus.sh
|
|
}
|
|
|
|
agent() {
|
|
pkgdesc="Incus agent"
|
|
amove usr/sbin/incus-agent
|
|
}
|
|
|
|
agent_openrc() {
|
|
pkgdesc="Incus agent OpenRC scripts"
|
|
install_if="openrc ${subpkgname%-openrc}=$pkgver-r$pkgrel"
|
|
amove etc/init.d/incus-agent
|
|
}
|
|
|
|
client() {
|
|
pkgdesc="Incus CLI client"
|
|
install -d "$subpkgdir"/usr/bin
|
|
amove usr/bin/incus
|
|
}
|
|
|
|
user() {
|
|
pkgdesc="Incus user project daemon"
|
|
amove usr/sbin/incus-user
|
|
}
|
|
|
|
user_openrc() {
|
|
pkgdesc="Incus user project daemon OpenRC scripts"
|
|
install_if="openrc ${subpkgname%-openrc}=$pkgver-r$pkgrel"
|
|
amove etc/init.d/incus-user
|
|
}
|
|
|
|
conversion() {
|
|
pkgdesc="Tools to convert a prior lxc/lxd instance to incus"
|
|
amove usr/bin/lxc-to-incus
|
|
amove usr/bin/lxd-to-incus
|
|
}
|
|
|
|
utils() {
|
|
pkgdesc="Incus utilities and scripts"
|
|
depends="$pkgname py3-lxc jq"
|
|
|
|
amove usr/bin
|
|
}
|
|
|
|
vm() {
|
|
pkgdesc="Install packages required to run VMs under Incus"
|
|
case "$CARCH" in
|
|
x86_64) depends=ovmf ;;
|
|
aarch64) depends=aavmf ;;
|
|
esac
|
|
depends="$depends
|
|
qemu-system-x86_64
|
|
qemu-chardev-spice
|
|
qemu-hw-usb-redirect
|
|
qemu-hw-display-virtio-vga
|
|
qemu-img
|
|
qemu-ui-spice-core
|
|
incus-feature-agent
|
|
incus-feature-utils
|
|
sgdisk
|
|
util-linux-misc
|
|
virtiofsd
|
|
"
|
|
install -d "$subpkgdir"
|
|
}
|
|
|
|
openrc() {
|
|
provides=$pkgname-lts-openrc=$pkgver-r$pkgrel
|
|
default_openrc
|
|
}
|
|
|
|
oci() {
|
|
pkgdesc="Install packages required to run OCI images under Incus"
|
|
depends="$depends skopeo"
|
|
install -d "$subpkgdir"
|
|
}
|
|
|
|
check() {
|
|
export CGO_LDFLAGS="$LDFLAGS -lintl"
|
|
|
|
# FIXME: disable failing tests
|
|
go test -v -skip "TestCluster_*|TestIntegration_UnixSocket|TestContainerTestSuite_*|TestDotGo|TestParse|TestPackages|TestConvertNetworkConfig|TestSnapshotCommon|TestHttpRequest|TestArchitectureFirmwarePairs" ./...
|
|
}
|
|
|
|
sha512sums="
|
|
47812c8aed356a8e9ed2a36132d7512a59a0571144d2a45bacb16a4575b77f8836cba18e6bc14f3bc39b4de4f5c54c0160625d9c83ebf0e178ccde93a733d7d9 incus-feature-6.13.0.tar.gz
|
|
0340f06589acc1509d6cf4c844320f23a40e8da9d6fd1aab59b7424b286bb109e81ded97e26b9a1467f64f378914f4d13f9726c48188468900ab8d88eb528d91 incusd.confd
|
|
ca8762648020b4c933879a7a01b3f6699e9efc1dc1141228342e6619d7e9b07b13d359121767d8cd1ce6d83752ced226964138040454eebec17a3479acdbcda3 incusd.initd
|
|
a495ca525f2d98771e076026e9046f5d120aa929ed114cae330829ad698c4dbc5d80ed815328f3558584520f6c8d44d7b037721eb977b70f0ad288f6ad19e9cf incus-feature-agent.initd
|
|
ac40bdeb902a95c10d814a92ebf8f94b7d03858796278258b3bac43044329790d64fbd29a90db2491964d0228f894a098fee27699a37e635295b5c4386a50028 incus-feature-user.initd
|
|
2fb9f4b3e70eca29b023d17120eb4730efc9e4ad560ad94337ecbaf09992b800554a942847b1b992076712378c644f493a5ca3c58513760a26ba816f4c6dc8fc 0001-statically-build-incus-agent-and-incus-migrate.patch
|
|
"
|