diff options
Diffstat (limited to 'community/lxd/APKBUILD')
-rw-r--r-- | community/lxd/APKBUILD | 113 |
1 files changed, 69 insertions, 44 deletions
diff --git a/community/lxd/APKBUILD b/community/lxd/APKBUILD index d0625a34cb7..d42626a8a95 100644 --- a/community/lxd/APKBUILD +++ b/community/lxd/APKBUILD @@ -2,10 +2,10 @@ # Contributor: Francesco Colista <fcolista@alpinelinux.org> # Maintainer: Leonardo Arena <larena@alpinelinux.org> pkgname=lxd -pkgver=4.0.9 # only LTS releases -pkgrel=3 +pkgver=5.0.3 +pkgrel=1 pkgdesc="A container hypervisor and a new user experience for LXC - 'LTS' release channel" -url="https://linuxcontainers.org/lxd/" +url="https://ubuntu.com/lxd" arch="all" license="Apache-2.0" depends="acl @@ -15,8 +15,8 @@ depends="acl dbus dnsmasq lxc - ip6tables iproute2 + iptables netcat-openbsd rsync squashfs-tools @@ -39,61 +39,77 @@ makedepends="acl-dev lxc-dev lz4-dev raft-dev - rsync sqlite-dev tcl-dev " -subpackages="$pkgname-scripts:scripts +subpackages="$pkgname-client + $pkgname-scripts:scripts $pkgname-bash-completion:bashcomp:noarch $pkgname-openrc - $pkgname-client + $pkgname-vm:vm:noarch " provides=$pkgname-lts=$pkgver-r$pkgrel install="$pkgname.pre-install" -options="!check" -source="https://linuxcontainers.org/downloads/$pkgname/$pkgname-$pkgver.tar.gz +options="!check" # FIXME: several tests failing +source="$pkgname-$pkgver-2.tar.gz::https://github.com/canonical/lxd/archive/refs/tags/lxd-$pkgver.tar.gz $pkgname.confd $pkgname.initd - lxd-dont-go-get.patch - add-missing-includes.patch + 0002-bump-base-vm-filesystem-volume-to-500mib.patch + 0003-statically-build-lxd-agent-and-lxd-migrate.patch " +builddir="$srcdir/lxd-lxd-$pkgver" +_tools="lxc fuidshift lxc-to-lxd lxd-benchmark lxd-agent lxd-migrate" _project="github.com/lxc/lxd" +export GOFLAGS="$GOFLAGS -tags=libsqlite3" +export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}" +export GOTMPDIR="${GOTMPDIR:-"$srcdir"}" +export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}" + +prepare() { + default_prepare + go mod download +} + build() { - export GOPATH="$builddir/vendor" export CGO_CFLAGS="-I/usr/include/raft -I/usr/include/dqlite" - export CGO_LDFLAGS="$CGO_LDFLAGS -lintl" + export CGO_LDFLAGS="$LDFLAGS -lintl" export CGO_LDFLAGS_ALLOW="(-Wl,-wrap,pthread_create)|(-Wl,-z,now)" - make - - for bin in lxc fuidshift lxc-to-lxd lxd-benchmark lxd-agent lxd-p2c; do - go install -v -x $_project/$bin + mkdir bin + for tool in lxd $_tools; do + if [ "$tool" = "lxd-agent" ] || [ "$tool" = "lxd-migrate" ]; then + make GOPATH="$builddir" $tool + else + go build -v -o bin/$tool ./$tool + fi done } package() { - cd $GOPATH - install -Dm755 bin/$pkgname "$pkgdir"/usr/sbin/$pkgname - install -Dm755 bin/lxc "$pkgdir"/usr/bin/lxc + install -Dm755 bin/lxd "$pkgdir"/usr/sbin/lxd + + for tool in $_tools; do + install -Dm755 bin/$tool "$pkgdir"/usr/bin/$tool + done install -Dm755 "$srcdir"/$pkgname.initd \ "$pkgdir"/etc/init.d/lxd install -Dm644 "$srcdir"/$pkgname.confd \ "$pkgdir"/etc/conf.d/lxd -} -bashcomp() { - depends="bash" - pkgdesc="Bash completions for $pkgname" - install_if="$pkgname=$pkgver-r$pkgrel bash-completion" - provides=$pkgname-lts-bash-completion=$pkgver-r$pkgrel + install -Dm644 scripts/bash/lxd-client \ + "$pkgdir"/usr/share/bash-completion/completions/lxd-client - cd "$builddir" - mkdir -p "$subpkgdir"/usr/share/bash-completion/completions - cp scripts/bash/lxd-client "$subpkgdir"/usr/share/bash-completion/completions/lxd-client + install -Dm755 scripts/empty-lxd.sh \ + "$pkgdir"/usr/bin/empty-lxd.sh +} + +client() { + pkgdesc="LXD CLI client" + amove usr/bin/lxc } scripts() { @@ -101,13 +117,24 @@ scripts() { depends="$pkgname py3-lxc" provides=$pkgname-lts-scripts=$pkgver-r$pkgrel - export GOPATH="$builddir/vendor" - cd $GOPATH + amove usr/bin +} - for tool in fuidshift lxc-to-lxd lxd-benchmark lxd-agent lxd-p2c; do - install -Dm755 bin/$tool "$subpkgdir"/usr/bin/$tool - done - install -Dm755 ../scripts/empty-lxd.sh "$subpkgdir"/usr/bin/empty-lxd.sh +vm() { + pkgdesc="Install packages required to run VMs under LXD" + depends="qemu-system-x86_64 + qemu-chardev-spice + qemu-hw-usb-redirect + qemu-hw-display-virtio-vga + qemu-img + qemu-ui-spice-core + lxd-scripts + ovmf + sgdisk + util-linux-misc + virtiofsd + " + install -d "$subpkgdir" } openrc() { @@ -115,16 +142,14 @@ openrc() { default_openrc } -client() { - pkgdesc="LXD CLI client" - mkdir -p "$subpkgdir"/usr/bin - mv "$pkgdir"/usr/bin/lxc "$subpkgdir"/usr/bin +check() { + LXD_OFFLINE=true make check } sha512sums=" -657949311753895f3941deaabae2d03092fc67490d2de78db48b296fdd3e9df4c5844467dd6913814426ca423a6ee1da9705bb1a2652ea99fe1356eb7da97ebb lxd-4.0.9.tar.gz -bc32c71f2ce10f508433e1e4651c08c18e8a17e9419a7ce391c0f127fc7cf378c665178926b35eae8813e290d9c5eab3ceb605679fd32efdf2cf98a57cee4127 lxd.confd -32a10201441e65bc342c9feffce9e2cd2977db4d8fe9c4d2d32530ff787a31088d97cb5a76a27cd7e1bcdb0ed3c3363106ff0ebfa8043b978ad9ec7262f4c088 lxd.initd -d15cf32be09c4eeaa81979c930f5dc531f158cda1aea019e98e51d8559ad9bc1e05eb9a359811f5e7061abc383c5790b3957118221d3fbfddbeedad21b48dd2b lxd-dont-go-get.patch -1e3a33a1e59ff202b556dd20596abf562d6af652b50ac6ce85d762043e765c0b5f91676735319132ed68d543c7857796e8a1aa9a642ae892e4c1311c727dbd2a add-missing-includes.patch +cbea9eb139b14e9dcfa585855c04f73246d6465ee0eeb9be71bc5497c476f4b1da57592665a5ca5c254e11e87397aabcf1666a13a5d90c83d16cd71c36b02fb7 lxd-5.0.3-2.tar.gz +1a88a60b09e0beccfa90357539d88a143e4e2099a2548dcc9109c374db045e6e8104af84c31151233961a15f505d3bbf1d5c6983637625663fb415d3c768e4ef lxd.confd +3085a418f7260909e890cdda35b3dcc6bb1cb9c6268d507df0f7d00968cf185d185bea606b2514de8dc122581d485017f1b97758395e23fd4f53bab18c0cadf3 lxd.initd +44a47769f21bbd6260c0ca04145b57c367338adb2f41ee8149c9e6202e40b981a4278d996b78ec57e1b77de214337c0ea567e5266f74b02b1aa32ad309e7ab59 0002-bump-base-vm-filesystem-volume-to-500mib.patch +bd4c63e4ce70490b6dd510ab6d614f76bd6b6eabeeef18066fbc22fc6aaf9c35153da4b3bd716bd89f0ab6f8b6593c411c3d674934ce18acbb9f18c2abc834c8 0003-statically-build-lxd-agent-and-lxd-migrate.patch " |