aboutsummaryrefslogtreecommitdiffstats
path: root/community/lxd/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/lxd/APKBUILD')
-rw-r--r--community/lxd/APKBUILD113
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
"