Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] lxd
@ 2022-04-23  2:44 CameronNemo
  2022-04-23  3:01 ` [PR PATCH] [Updated] lxd CameronNemo
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: CameronNemo @ 2022-04-23  2:44 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1435 bytes --]

There is a new pull request by CameronNemo against master on the void-packages repository

https://github.com/CameronNemo/void-packages lxd
https://github.com/void-linux/void-packages/pull/36824

lxd
- lxd-lts: remove package
- raft: update to 0.13.0
- dqlite: update to 1.10.0
- lxd: update to 5.0.0

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I tested creating/launching an Ubuntu container, including a container created prior to the upgrade from LXD 4.19.

I tested on x86_64 only.

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/36824.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-lxd-36824.patch --]
[-- Type: text/x-diff, Size: 8302 bytes --]

From 57f94677c5627b7af96ff6fe3f0643a3670364cb Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:42:22 -0700
Subject: [PATCH 1/4] lxd-lts: remove package

I do not have the bandwidth to maintain two versions, and the LTS
version has a conflicting dependency with the non-LTS version.
---
 srcpkgs/lxd-lts/INSTALL.msg       | 11 ---------
 srcpkgs/lxd-lts/files/lxd/run     |  9 -------
 srcpkgs/lxd-lts/template          | 39 -------------------------------
 srcpkgs/removed-packages/template |  3 ++-
 4 files changed, 2 insertions(+), 60 deletions(-)
 delete mode 100755 srcpkgs/lxd-lts/INSTALL.msg
 delete mode 100755 srcpkgs/lxd-lts/files/lxd/run
 delete mode 100644 srcpkgs/lxd-lts/template

diff --git a/srcpkgs/lxd-lts/INSTALL.msg b/srcpkgs/lxd-lts/INSTALL.msg
deleted file mode 100755
index 966174f8132d..000000000000
--- a/srcpkgs/lxd-lts/INSTALL.msg
+++ /dev/null
@@ -1,11 +0,0 @@
-Start lxd service:
-
-	$ sudo ln -s /etc/sv/lxd /var/service
-
-Run LXD initialization:
-
-	$ sudo lxd init
-
-To use lxd client your user must be added to the 'lxd' group:
-
-	$ sudo usermod -aG lxd <username>
diff --git a/srcpkgs/lxd-lts/files/lxd/run b/srcpkgs/lxd-lts/files/lxd/run
deleted file mode 100755
index 147eb64e74dc..000000000000
--- a/srcpkgs/lxd-lts/files/lxd/run
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-_systemd_cgrp="/sys/fs/cgroup/systemd"
-if [ ! -d ${_systemd_cgrp} ]; then
-	mkdir ${_systemd_cgrp}
-fi
-if ! mountpoint -q "${_systemd_cgrp}"; then
-	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
-fi
-exec lxd --group lxd 2>&1
diff --git a/srcpkgs/lxd-lts/template b/srcpkgs/lxd-lts/template
deleted file mode 100644
index 42e8a958093f..000000000000
--- a/srcpkgs/lxd-lts/template
+++ /dev/null
@@ -1,39 +0,0 @@
-# Template file for 'lxd-lts'
-pkgname=lxd-lts
-version=4.0.4
-revision=1
-wrksrc="lxd-$version"
-build_style=go
-go_import_path="github.com/lxc/lxd"
-go_build_tags="libsqlite3"
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
-hostmakedepends="pkg-config"
-makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
-depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables"
-short_desc="Next generation system container manager (long term support channel)"
-maintainer="Cameron Nemo <cnemo@tutanota.com>"
-license="Apache-2.0"
-homepage="https://linuxcontainers.org/lxd"
-distfiles="https://linuxcontainers.org/downloads/lxd/${wrksrc}.tar.gz"
-checksum=372a666b84c7cbcb7ccbffbf4aa04a05b2fe22e5e0aafa022b700bbf211557f6
-conflicts="lxd"
-provides="lxd-${version}_${revision}"
-system_groups="lxd"
-
-do_configure() {
-	# the LXD tarball packages up the required dependencies
-	ln -s "$wrksrc/_dist" "$GOPATH"
-}
-
-do_build() {
-	# don't go-get the dependencies, just install with what's there
-	cd "$GOSRCPATH"
-	go_package=${go_package:-$go_import_path}
-	go install -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package}
-}
-
-post_install() {
-	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
-	vsv lxd
-}
diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 0923c53cfc05..72191ecdbf85 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=69
+revision=70
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -244,6 +244,7 @@ replaces="
  luxmark<=3.1_9
  luxrays-devel<=3.1_18
  luxrays<=3.1_18
+ lxd-lts<=4.0.4_1
  mac<=3.99u4b5s7_3
  mailpile<=0.5.2_4
  masterpassword-cli<=2.6_5

From dd6bc90a09544a8f2f2d14dd262fb01b5873bd7e Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:07 -0700
Subject: [PATCH 2/4] raft: update to 0.13.0

---
 common/shlibs         | 2 +-
 srcpkgs/raft/template | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 11328b15a9cc..c9a904bf65d1 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3888,7 +3888,7 @@ libigraph.so.0 igraph-0.9.4_1
 libgtk-layer-shell.so.0 gtk-layer-shell-0.1.0_1
 librdkafka.so.1 librdkafka-1.4.4_3
 librdkafka++.so.1 librdkafka-1.4.4_3
-libraft.so.0 raft-0.9.16_1
+libraft.so.2 raft-0.13.0_1
 libmdnsd.so.1 libmdnsd-0.9_1
 libosdGPU.so.3.4.3 OpenSubdiv-3.4.3_1
 libosdCPU.so.3.4.3 OpenSubdiv-3.4.3_1
diff --git a/srcpkgs/raft/template b/srcpkgs/raft/template
index 85f12e9dd445..6c5ab3c635b4 100644
--- a/srcpkgs/raft/template
+++ b/srcpkgs/raft/template
@@ -1,6 +1,6 @@
 # Template file for 'raft'
 pkgname=raft
-version=0.11.2
+version=0.13.0
 revision=1
 build_style=gnu-configure
 configure_args="--enable-example=no"
@@ -11,7 +11,7 @@ maintainer="Julio Galvan <juliogalvan@protonmail.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/raft"
 distfiles="https://github.com/canonical/raft/archive/v${version}.tar.gz"
-checksum=c89fd6a6fa3c9e6d670b74e389b2d028dfd39d1eec2b18661fae73a9bfd6b89d
+checksum=91b2b0437f443a60498cdf8c53da8a5934a51eee983d2f6eb6f0c8e40af07a8c
 make_check=ci-skip
 
 pre_configure() {

From 04f9abb800782a184d6100dff3deee4c774edc42 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:20 -0700
Subject: [PATCH 3/4] dqlite: update to 1.10.0

---
 srcpkgs/dqlite/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dqlite/template b/srcpkgs/dqlite/template
index 41af8cde377d..e7bccbc107aa 100644
--- a/srcpkgs/dqlite/template
+++ b/srcpkgs/dqlite/template
@@ -1,6 +1,6 @@
 # Template file for 'dqlite'
 pkgname=dqlite
-version=1.9.0
+version=1.10.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config automake libtool"
@@ -10,7 +10,7 @@ maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/dqlite"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=b3f23019bcdc030b8f1d97ef585a34b24128414d6c2e79fcf729e053578d80a7
+checksum=46f57036bd5ac4c67b76c07ef3ce58b674458eb1564131c80f11a2d5ec7db962
 
 pre_configure() {
 	autoreconf -i

From e5bdb082fb851dfa2fe462347a2bcdec7418f845 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:31 -0700
Subject: [PATCH 4/4] lxd: update to 5.0.0

---
 srcpkgs/lxd/template | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/lxd/template b/srcpkgs/lxd/template
index d216d7bb7f7c..df07ba816559 100644
--- a/srcpkgs/lxd/template
+++ b/srcpkgs/lxd/template
@@ -1,12 +1,16 @@
 # Template file for 'lxd'
 pkgname=lxd
-version=4.19
+version=5.0.0
 revision=1
 build_style=go
 go_import_path=github.com/lxc/lxd
 go_build_tags=libsqlite3
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
 hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
 depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
@@ -16,12 +20,18 @@ license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
 changelog="https://github.com/lxc/lxd/releases"
 distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
-checksum=6e4cf6cb1549e1b56802d64ad24d812914e0c0102bfcf146bb18a8dcd1fbab57
+checksum=a99b7edfb52c8195b2de4988844d32d73be6426f6cff28408250517b238fdef9
 system_groups="lxd"
 
 # whitelist dqlite LDFLAGS
 export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
+}
+
 post_install() {
 	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
 	vsv lxd

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
@ 2022-04-23  3:01 ` CameronNemo
  2022-04-23  3:41 ` lxd CameronNemo
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-04-23  3:01 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1440 bytes --]

There is an updated pull request by CameronNemo against master on the void-packages repository

https://github.com/CameronNemo/void-packages lxd
https://github.com/void-linux/void-packages/pull/36824

lxd
- lxd-lts: remove package
- raft: update to 0.13.0
- dqlite: update to 1.10.0
- lxd: update to 5.0.0

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I tested creating/launching an Ubuntu container, including a container created prior to the upgrade from LXD 4.19.

I tested on x86_64 only.

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/36824.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-lxd-36824.patch --]
[-- Type: text/x-diff, Size: 8384 bytes --]

From 57f94677c5627b7af96ff6fe3f0643a3670364cb Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:42:22 -0700
Subject: [PATCH 1/4] lxd-lts: remove package

I do not have the bandwidth to maintain two versions, and the LTS
version has a conflicting dependency with the non-LTS version.
---
 srcpkgs/lxd-lts/INSTALL.msg       | 11 ---------
 srcpkgs/lxd-lts/files/lxd/run     |  9 -------
 srcpkgs/lxd-lts/template          | 39 -------------------------------
 srcpkgs/removed-packages/template |  3 ++-
 4 files changed, 2 insertions(+), 60 deletions(-)
 delete mode 100755 srcpkgs/lxd-lts/INSTALL.msg
 delete mode 100755 srcpkgs/lxd-lts/files/lxd/run
 delete mode 100644 srcpkgs/lxd-lts/template

diff --git a/srcpkgs/lxd-lts/INSTALL.msg b/srcpkgs/lxd-lts/INSTALL.msg
deleted file mode 100755
index 966174f8132d..000000000000
--- a/srcpkgs/lxd-lts/INSTALL.msg
+++ /dev/null
@@ -1,11 +0,0 @@
-Start lxd service:
-
-	$ sudo ln -s /etc/sv/lxd /var/service
-
-Run LXD initialization:
-
-	$ sudo lxd init
-
-To use lxd client your user must be added to the 'lxd' group:
-
-	$ sudo usermod -aG lxd <username>
diff --git a/srcpkgs/lxd-lts/files/lxd/run b/srcpkgs/lxd-lts/files/lxd/run
deleted file mode 100755
index 147eb64e74dc..000000000000
--- a/srcpkgs/lxd-lts/files/lxd/run
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-_systemd_cgrp="/sys/fs/cgroup/systemd"
-if [ ! -d ${_systemd_cgrp} ]; then
-	mkdir ${_systemd_cgrp}
-fi
-if ! mountpoint -q "${_systemd_cgrp}"; then
-	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
-fi
-exec lxd --group lxd 2>&1
diff --git a/srcpkgs/lxd-lts/template b/srcpkgs/lxd-lts/template
deleted file mode 100644
index 42e8a958093f..000000000000
--- a/srcpkgs/lxd-lts/template
+++ /dev/null
@@ -1,39 +0,0 @@
-# Template file for 'lxd-lts'
-pkgname=lxd-lts
-version=4.0.4
-revision=1
-wrksrc="lxd-$version"
-build_style=go
-go_import_path="github.com/lxc/lxd"
-go_build_tags="libsqlite3"
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
-hostmakedepends="pkg-config"
-makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
-depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables"
-short_desc="Next generation system container manager (long term support channel)"
-maintainer="Cameron Nemo <cnemo@tutanota.com>"
-license="Apache-2.0"
-homepage="https://linuxcontainers.org/lxd"
-distfiles="https://linuxcontainers.org/downloads/lxd/${wrksrc}.tar.gz"
-checksum=372a666b84c7cbcb7ccbffbf4aa04a05b2fe22e5e0aafa022b700bbf211557f6
-conflicts="lxd"
-provides="lxd-${version}_${revision}"
-system_groups="lxd"
-
-do_configure() {
-	# the LXD tarball packages up the required dependencies
-	ln -s "$wrksrc/_dist" "$GOPATH"
-}
-
-do_build() {
-	# don't go-get the dependencies, just install with what's there
-	cd "$GOSRCPATH"
-	go_package=${go_package:-$go_import_path}
-	go install -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package}
-}
-
-post_install() {
-	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
-	vsv lxd
-}
diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 0923c53cfc05..72191ecdbf85 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=69
+revision=70
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -244,6 +244,7 @@ replaces="
  luxmark<=3.1_9
  luxrays-devel<=3.1_18
  luxrays<=3.1_18
+ lxd-lts<=4.0.4_1
  mac<=3.99u4b5s7_3
  mailpile<=0.5.2_4
  masterpassword-cli<=2.6_5

From a22c74d66f86a87900790a97b23e397482a110d6 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:07 -0700
Subject: [PATCH 2/4] raft: update to 0.13.0

---
 common/shlibs         | 2 +-
 srcpkgs/raft/template | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 11328b15a9cc..c9a904bf65d1 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3888,7 +3888,7 @@ libigraph.so.0 igraph-0.9.4_1
 libgtk-layer-shell.so.0 gtk-layer-shell-0.1.0_1
 librdkafka.so.1 librdkafka-1.4.4_3
 librdkafka++.so.1 librdkafka-1.4.4_3
-libraft.so.0 raft-0.9.16_1
+libraft.so.2 raft-0.13.0_1
 libmdnsd.so.1 libmdnsd-0.9_1
 libosdGPU.so.3.4.3 OpenSubdiv-3.4.3_1
 libosdCPU.so.3.4.3 OpenSubdiv-3.4.3_1
diff --git a/srcpkgs/raft/template b/srcpkgs/raft/template
index 85f12e9dd445..98ecc91fc144 100644
--- a/srcpkgs/raft/template
+++ b/srcpkgs/raft/template
@@ -1,6 +1,6 @@
 # Template file for 'raft'
 pkgname=raft
-version=0.11.2
+version=0.13.0
 revision=1
 build_style=gnu-configure
 configure_args="--enable-example=no"
@@ -11,7 +11,8 @@ maintainer="Julio Galvan <juliogalvan@protonmail.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/raft"
 distfiles="https://github.com/canonical/raft/archive/v${version}.tar.gz"
-checksum=c89fd6a6fa3c9e6d670b74e389b2d028dfd39d1eec2b18661fae73a9bfd6b89d
+checksum=91b2b0437f443a60498cdf8c53da8a5934a51eee983d2f6eb6f0c8e40af07a8c
+# https://github.com/void-linux/void-packages/pull/33347#issuecomment-937392150
 make_check=ci-skip
 
 pre_configure() {

From 5d3edf9d024d40552890e87c2761c98dfd820357 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:20 -0700
Subject: [PATCH 3/4] dqlite: update to 1.10.0

---
 srcpkgs/dqlite/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dqlite/template b/srcpkgs/dqlite/template
index 41af8cde377d..e7bccbc107aa 100644
--- a/srcpkgs/dqlite/template
+++ b/srcpkgs/dqlite/template
@@ -1,6 +1,6 @@
 # Template file for 'dqlite'
 pkgname=dqlite
-version=1.9.0
+version=1.10.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config automake libtool"
@@ -10,7 +10,7 @@ maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/dqlite"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=b3f23019bcdc030b8f1d97ef585a34b24128414d6c2e79fcf729e053578d80a7
+checksum=46f57036bd5ac4c67b76c07ef3ce58b674458eb1564131c80f11a2d5ec7db962
 
 pre_configure() {
 	autoreconf -i

From 8419e1c9baa2df6fb739ac9a2c626dffebfa299e Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:31 -0700
Subject: [PATCH 4/4] lxd: update to 5.0.0

---
 srcpkgs/lxd/template | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/lxd/template b/srcpkgs/lxd/template
index d216d7bb7f7c..df07ba816559 100644
--- a/srcpkgs/lxd/template
+++ b/srcpkgs/lxd/template
@@ -1,12 +1,16 @@
 # Template file for 'lxd'
 pkgname=lxd
-version=4.19
+version=5.0.0
 revision=1
 build_style=go
 go_import_path=github.com/lxc/lxd
 go_build_tags=libsqlite3
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
 hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
 depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
@@ -16,12 +20,18 @@ license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
 changelog="https://github.com/lxc/lxd/releases"
 distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
-checksum=6e4cf6cb1549e1b56802d64ad24d812914e0c0102bfcf146bb18a8dcd1fbab57
+checksum=a99b7edfb52c8195b2de4988844d32d73be6426f6cff28408250517b238fdef9
 system_groups="lxd"
 
 # whitelist dqlite LDFLAGS
 export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
+}
+
 post_install() {
 	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
 	vsv lxd

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
  2022-04-23  3:01 ` [PR PATCH] [Updated] lxd CameronNemo
@ 2022-04-23  3:41 ` CameronNemo
  2022-05-08 20:59 ` [PR PATCH] [Updated] lxd CameronNemo
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-04-23  3:41 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 487 bytes --]

New comment by CameronNemo on void-packages repository

https://github.com/void-linux/void-packages/pull/36824#issuecomment-1107351056

Comment:
CI is failing on "verify repository state", but I do not understand why (the package with unresolved libs was removed/replaced):

```
lxd-lts-4.0.4_1: broken, unresolvable shlib `libraft.so.0'
Transaction aborted due to unresolved shlibs.
Failed to install 'dqlite' and 'lxd-lts-4.0.4_1'
Error: Process completed with exit code 1.
```

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
  2022-04-23  3:01 ` [PR PATCH] [Updated] lxd CameronNemo
  2022-04-23  3:41 ` lxd CameronNemo
@ 2022-05-08 20:59 ` CameronNemo
  2022-05-08 20:59 ` CameronNemo
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-08 20:59 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1440 bytes --]

There is an updated pull request by CameronNemo against master on the void-packages repository

https://github.com/CameronNemo/void-packages lxd
https://github.com/void-linux/void-packages/pull/36824

lxd
- lxd-lts: remove package
- raft: update to 0.13.0
- dqlite: update to 1.10.0
- lxd: update to 5.0.0

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I tested creating/launching an Ubuntu container, including a container created prior to the upgrade from LXD 4.19.

I tested on x86_64 only.

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/36824.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-lxd-36824.patch --]
[-- Type: text/x-diff, Size: 8384 bytes --]

From 9da4c112d4712c73ab2444b1b837378388de7560 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:42:22 -0700
Subject: [PATCH 1/4] lxd-lts: remove package

I do not have the bandwidth to maintain two versions, and the LTS
version has a conflicting dependency with the non-LTS version.
---
 srcpkgs/lxd-lts/INSTALL.msg       | 11 ---------
 srcpkgs/lxd-lts/files/lxd/run     |  9 -------
 srcpkgs/lxd-lts/template          | 39 -------------------------------
 srcpkgs/removed-packages/template |  3 ++-
 4 files changed, 2 insertions(+), 60 deletions(-)
 delete mode 100755 srcpkgs/lxd-lts/INSTALL.msg
 delete mode 100755 srcpkgs/lxd-lts/files/lxd/run
 delete mode 100644 srcpkgs/lxd-lts/template

diff --git a/srcpkgs/lxd-lts/INSTALL.msg b/srcpkgs/lxd-lts/INSTALL.msg
deleted file mode 100755
index 966174f8132d..000000000000
--- a/srcpkgs/lxd-lts/INSTALL.msg
+++ /dev/null
@@ -1,11 +0,0 @@
-Start lxd service:
-
-	$ sudo ln -s /etc/sv/lxd /var/service
-
-Run LXD initialization:
-
-	$ sudo lxd init
-
-To use lxd client your user must be added to the 'lxd' group:
-
-	$ sudo usermod -aG lxd <username>
diff --git a/srcpkgs/lxd-lts/files/lxd/run b/srcpkgs/lxd-lts/files/lxd/run
deleted file mode 100755
index 147eb64e74dc..000000000000
--- a/srcpkgs/lxd-lts/files/lxd/run
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-_systemd_cgrp="/sys/fs/cgroup/systemd"
-if [ ! -d ${_systemd_cgrp} ]; then
-	mkdir ${_systemd_cgrp}
-fi
-if ! mountpoint -q "${_systemd_cgrp}"; then
-	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
-fi
-exec lxd --group lxd 2>&1
diff --git a/srcpkgs/lxd-lts/template b/srcpkgs/lxd-lts/template
deleted file mode 100644
index 42e8a958093f..000000000000
--- a/srcpkgs/lxd-lts/template
+++ /dev/null
@@ -1,39 +0,0 @@
-# Template file for 'lxd-lts'
-pkgname=lxd-lts
-version=4.0.4
-revision=1
-wrksrc="lxd-$version"
-build_style=go
-go_import_path="github.com/lxc/lxd"
-go_build_tags="libsqlite3"
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
-hostmakedepends="pkg-config"
-makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
-depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables"
-short_desc="Next generation system container manager (long term support channel)"
-maintainer="Cameron Nemo <cnemo@tutanota.com>"
-license="Apache-2.0"
-homepage="https://linuxcontainers.org/lxd"
-distfiles="https://linuxcontainers.org/downloads/lxd/${wrksrc}.tar.gz"
-checksum=372a666b84c7cbcb7ccbffbf4aa04a05b2fe22e5e0aafa022b700bbf211557f6
-conflicts="lxd"
-provides="lxd-${version}_${revision}"
-system_groups="lxd"
-
-do_configure() {
-	# the LXD tarball packages up the required dependencies
-	ln -s "$wrksrc/_dist" "$GOPATH"
-}
-
-do_build() {
-	# don't go-get the dependencies, just install with what's there
-	cd "$GOSRCPATH"
-	go_package=${go_package:-$go_import_path}
-	go install -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package}
-}
-
-post_install() {
-	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
-	vsv lxd
-}
diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 0923c53cfc05..72191ecdbf85 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=69
+revision=70
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -244,6 +244,7 @@ replaces="
  luxmark<=3.1_9
  luxrays-devel<=3.1_18
  luxrays<=3.1_18
+ lxd-lts<=4.0.4_1
  mac<=3.99u4b5s7_3
  mailpile<=0.5.2_4
  masterpassword-cli<=2.6_5

From 60a9524632cd85510de47d1807fef953bf60f620 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:07 -0700
Subject: [PATCH 2/4] raft: update to 0.13.0

---
 common/shlibs         | 2 +-
 srcpkgs/raft/template | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 784375c7c9aa..0a966e0eb121 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3892,7 +3892,7 @@ libigraph.so.0 igraph-0.9.4_1
 libgtk-layer-shell.so.0 gtk-layer-shell-0.1.0_1
 librdkafka.so.1 librdkafka-1.4.4_3
 librdkafka++.so.1 librdkafka-1.4.4_3
-libraft.so.0 raft-0.9.16_1
+libraft.so.2 raft-0.13.0_1
 libmdnsd.so.1 libmdnsd-0.9_1
 libosdGPU.so.3.4.3 OpenSubdiv-3.4.3_1
 libosdCPU.so.3.4.3 OpenSubdiv-3.4.3_1
diff --git a/srcpkgs/raft/template b/srcpkgs/raft/template
index 85f12e9dd445..98ecc91fc144 100644
--- a/srcpkgs/raft/template
+++ b/srcpkgs/raft/template
@@ -1,6 +1,6 @@
 # Template file for 'raft'
 pkgname=raft
-version=0.11.2
+version=0.13.0
 revision=1
 build_style=gnu-configure
 configure_args="--enable-example=no"
@@ -11,7 +11,8 @@ maintainer="Julio Galvan <juliogalvan@protonmail.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/raft"
 distfiles="https://github.com/canonical/raft/archive/v${version}.tar.gz"
-checksum=c89fd6a6fa3c9e6d670b74e389b2d028dfd39d1eec2b18661fae73a9bfd6b89d
+checksum=91b2b0437f443a60498cdf8c53da8a5934a51eee983d2f6eb6f0c8e40af07a8c
+# https://github.com/void-linux/void-packages/pull/33347#issuecomment-937392150
 make_check=ci-skip
 
 pre_configure() {

From 18a326619d95028528066bdb581f9077ebc7577a Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:20 -0700
Subject: [PATCH 3/4] dqlite: update to 1.10.0

---
 srcpkgs/dqlite/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dqlite/template b/srcpkgs/dqlite/template
index 41af8cde377d..e7bccbc107aa 100644
--- a/srcpkgs/dqlite/template
+++ b/srcpkgs/dqlite/template
@@ -1,6 +1,6 @@
 # Template file for 'dqlite'
 pkgname=dqlite
-version=1.9.0
+version=1.10.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config automake libtool"
@@ -10,7 +10,7 @@ maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/dqlite"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=b3f23019bcdc030b8f1d97ef585a34b24128414d6c2e79fcf729e053578d80a7
+checksum=46f57036bd5ac4c67b76c07ef3ce58b674458eb1564131c80f11a2d5ec7db962
 
 pre_configure() {
 	autoreconf -i

From 97bd429c8e9a7e3b4fb2b87a7864659a1ad488d4 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:31 -0700
Subject: [PATCH 4/4] lxd: update to 5.0.0

---
 srcpkgs/lxd/template | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/lxd/template b/srcpkgs/lxd/template
index d216d7bb7f7c..df07ba816559 100644
--- a/srcpkgs/lxd/template
+++ b/srcpkgs/lxd/template
@@ -1,12 +1,16 @@
 # Template file for 'lxd'
 pkgname=lxd
-version=4.19
+version=5.0.0
 revision=1
 build_style=go
 go_import_path=github.com/lxc/lxd
 go_build_tags=libsqlite3
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
 hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
 depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
@@ -16,12 +20,18 @@ license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
 changelog="https://github.com/lxc/lxd/releases"
 distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
-checksum=6e4cf6cb1549e1b56802d64ad24d812914e0c0102bfcf146bb18a8dcd1fbab57
+checksum=a99b7edfb52c8195b2de4988844d32d73be6426f6cff28408250517b238fdef9
 system_groups="lxd"
 
 # whitelist dqlite LDFLAGS
 export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
+}
+
 post_install() {
 	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
 	vsv lxd

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (2 preceding siblings ...)
  2022-05-08 20:59 ` [PR PATCH] [Updated] lxd CameronNemo
@ 2022-05-08 20:59 ` CameronNemo
  2022-05-09  3:12 ` lxd ericonr
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-08 20:59 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1440 bytes --]

There is an updated pull request by CameronNemo against master on the void-packages repository

https://github.com/CameronNemo/void-packages lxd
https://github.com/void-linux/void-packages/pull/36824

lxd
- lxd-lts: remove package
- raft: update to 0.13.0
- dqlite: update to 1.10.0
- lxd: update to 5.0.0

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I tested creating/launching an Ubuntu container, including a container created prior to the upgrade from LXD 4.19.

I tested on x86_64 only.

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/36824.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-lxd-36824.patch --]
[-- Type: text/x-diff, Size: 8380 bytes --]

From 9da4c112d4712c73ab2444b1b837378388de7560 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:42:22 -0700
Subject: [PATCH 1/4] lxd-lts: remove package

I do not have the bandwidth to maintain two versions, and the LTS
version has a conflicting dependency with the non-LTS version.
---
 srcpkgs/lxd-lts/INSTALL.msg       | 11 ---------
 srcpkgs/lxd-lts/files/lxd/run     |  9 -------
 srcpkgs/lxd-lts/template          | 39 -------------------------------
 srcpkgs/removed-packages/template |  3 ++-
 4 files changed, 2 insertions(+), 60 deletions(-)
 delete mode 100755 srcpkgs/lxd-lts/INSTALL.msg
 delete mode 100755 srcpkgs/lxd-lts/files/lxd/run
 delete mode 100644 srcpkgs/lxd-lts/template

diff --git a/srcpkgs/lxd-lts/INSTALL.msg b/srcpkgs/lxd-lts/INSTALL.msg
deleted file mode 100755
index 966174f8132d..000000000000
--- a/srcpkgs/lxd-lts/INSTALL.msg
+++ /dev/null
@@ -1,11 +0,0 @@
-Start lxd service:
-
-	$ sudo ln -s /etc/sv/lxd /var/service
-
-Run LXD initialization:
-
-	$ sudo lxd init
-
-To use lxd client your user must be added to the 'lxd' group:
-
-	$ sudo usermod -aG lxd <username>
diff --git a/srcpkgs/lxd-lts/files/lxd/run b/srcpkgs/lxd-lts/files/lxd/run
deleted file mode 100755
index 147eb64e74dc..000000000000
--- a/srcpkgs/lxd-lts/files/lxd/run
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-_systemd_cgrp="/sys/fs/cgroup/systemd"
-if [ ! -d ${_systemd_cgrp} ]; then
-	mkdir ${_systemd_cgrp}
-fi
-if ! mountpoint -q "${_systemd_cgrp}"; then
-	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
-fi
-exec lxd --group lxd 2>&1
diff --git a/srcpkgs/lxd-lts/template b/srcpkgs/lxd-lts/template
deleted file mode 100644
index 42e8a958093f..000000000000
--- a/srcpkgs/lxd-lts/template
+++ /dev/null
@@ -1,39 +0,0 @@
-# Template file for 'lxd-lts'
-pkgname=lxd-lts
-version=4.0.4
-revision=1
-wrksrc="lxd-$version"
-build_style=go
-go_import_path="github.com/lxc/lxd"
-go_build_tags="libsqlite3"
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
-hostmakedepends="pkg-config"
-makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
-depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables"
-short_desc="Next generation system container manager (long term support channel)"
-maintainer="Cameron Nemo <cnemo@tutanota.com>"
-license="Apache-2.0"
-homepage="https://linuxcontainers.org/lxd"
-distfiles="https://linuxcontainers.org/downloads/lxd/${wrksrc}.tar.gz"
-checksum=372a666b84c7cbcb7ccbffbf4aa04a05b2fe22e5e0aafa022b700bbf211557f6
-conflicts="lxd"
-provides="lxd-${version}_${revision}"
-system_groups="lxd"
-
-do_configure() {
-	# the LXD tarball packages up the required dependencies
-	ln -s "$wrksrc/_dist" "$GOPATH"
-}
-
-do_build() {
-	# don't go-get the dependencies, just install with what's there
-	cd "$GOSRCPATH"
-	go_package=${go_package:-$go_import_path}
-	go install -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package}
-}
-
-post_install() {
-	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
-	vsv lxd
-}
diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 0923c53cfc05..72191ecdbf85 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=69
+revision=70
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -244,6 +244,7 @@ replaces="
  luxmark<=3.1_9
  luxrays-devel<=3.1_18
  luxrays<=3.1_18
+ lxd-lts<=4.0.4_1
  mac<=3.99u4b5s7_3
  mailpile<=0.5.2_4
  masterpassword-cli<=2.6_5

From 60a9524632cd85510de47d1807fef953bf60f620 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:07 -0700
Subject: [PATCH 2/4] raft: update to 0.13.0

---
 common/shlibs         | 2 +-
 srcpkgs/raft/template | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 784375c7c9aa..0a966e0eb121 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3892,7 +3892,7 @@ libigraph.so.0 igraph-0.9.4_1
 libgtk-layer-shell.so.0 gtk-layer-shell-0.1.0_1
 librdkafka.so.1 librdkafka-1.4.4_3
 librdkafka++.so.1 librdkafka-1.4.4_3
-libraft.so.0 raft-0.9.16_1
+libraft.so.2 raft-0.13.0_1
 libmdnsd.so.1 libmdnsd-0.9_1
 libosdGPU.so.3.4.3 OpenSubdiv-3.4.3_1
 libosdCPU.so.3.4.3 OpenSubdiv-3.4.3_1
diff --git a/srcpkgs/raft/template b/srcpkgs/raft/template
index 85f12e9dd445..98ecc91fc144 100644
--- a/srcpkgs/raft/template
+++ b/srcpkgs/raft/template
@@ -1,6 +1,6 @@
 # Template file for 'raft'
 pkgname=raft
-version=0.11.2
+version=0.13.0
 revision=1
 build_style=gnu-configure
 configure_args="--enable-example=no"
@@ -11,7 +11,8 @@ maintainer="Julio Galvan <juliogalvan@protonmail.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/raft"
 distfiles="https://github.com/canonical/raft/archive/v${version}.tar.gz"
-checksum=c89fd6a6fa3c9e6d670b74e389b2d028dfd39d1eec2b18661fae73a9bfd6b89d
+checksum=91b2b0437f443a60498cdf8c53da8a5934a51eee983d2f6eb6f0c8e40af07a8c
+# https://github.com/void-linux/void-packages/pull/33347#issuecomment-937392150
 make_check=ci-skip
 
 pre_configure() {

From 18a326619d95028528066bdb581f9077ebc7577a Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:20 -0700
Subject: [PATCH 3/4] dqlite: update to 1.10.0

---
 srcpkgs/dqlite/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dqlite/template b/srcpkgs/dqlite/template
index 41af8cde377d..e7bccbc107aa 100644
--- a/srcpkgs/dqlite/template
+++ b/srcpkgs/dqlite/template
@@ -1,6 +1,6 @@
 # Template file for 'dqlite'
 pkgname=dqlite
-version=1.9.0
+version=1.10.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config automake libtool"
@@ -10,7 +10,7 @@ maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/dqlite"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=b3f23019bcdc030b8f1d97ef585a34b24128414d6c2e79fcf729e053578d80a7
+checksum=46f57036bd5ac4c67b76c07ef3ce58b674458eb1564131c80f11a2d5ec7db962
 
 pre_configure() {
 	autoreconf -i

From fe92f10503276b088a1060ec8925573c22159e30 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:31 -0700
Subject: [PATCH 4/4] lxd: update to 5.1

---
 srcpkgs/lxd/template | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/lxd/template b/srcpkgs/lxd/template
index d216d7bb7f7c..7f0518321d20 100644
--- a/srcpkgs/lxd/template
+++ b/srcpkgs/lxd/template
@@ -1,12 +1,16 @@
 # Template file for 'lxd'
 pkgname=lxd
-version=4.19
+version=5.1
 revision=1
 build_style=go
 go_import_path=github.com/lxc/lxd
 go_build_tags=libsqlite3
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
 hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
 depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
@@ -16,12 +20,18 @@ license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
 changelog="https://github.com/lxc/lxd/releases"
 distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
-checksum=6e4cf6cb1549e1b56802d64ad24d812914e0c0102bfcf146bb18a8dcd1fbab57
+checksum=319f4e93506e2144edaa280b0185fb37c4374cf7d7468a5e5c8c1b678189250a
 system_groups="lxd"
 
 # whitelist dqlite LDFLAGS
 export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
+}
+
 post_install() {
 	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
 	vsv lxd

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (3 preceding siblings ...)
  2022-05-08 20:59 ` CameronNemo
@ 2022-05-09  3:12 ` ericonr
  2022-05-09  3:24 ` lxd CameronNemo
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: ericonr @ 2022-05-09  3:12 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 411 bytes --]

New comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/36824#issuecomment-1120591422

Comment:
@fosslinux any interest in adopting lxd-lts and adding a versioned raft dep?

Otherwise I think we can merge.

Just please split the `removed-packages` commit; I don't think we can fix that CI step here unless you made it a dummy empty package, which we don't want.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (4 preceding siblings ...)
  2022-05-09  3:12 ` lxd ericonr
@ 2022-05-09  3:24 ` CameronNemo
  2022-05-09  3:24 ` lxd CameronNemo
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-09  3:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 268 bytes --]

New comment by CameronNemo on void-packages repository

https://github.com/void-linux/void-packages/pull/36824#issuecomment-1120597237

Comment:
I guess another option is to bump lxd-lts to 5.0.0, which is the new LTS version. Then no versioned raft dep is necessary.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (5 preceding siblings ...)
  2022-05-09  3:24 ` lxd CameronNemo
@ 2022-05-09  3:24 ` CameronNemo
  2022-05-09 10:46 ` lxd fosslinux
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-09  3:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 302 bytes --]

New comment by CameronNemo on void-packages repository

https://github.com/void-linux/void-packages/pull/36824#issuecomment-1120597237

Comment:
I guess another option is to bump lxd-lts to 5.0.0, which is the new LTS version. Then no versioned raft dep is necessary. Just sort of realized that today.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (6 preceding siblings ...)
  2022-05-09  3:24 ` lxd CameronNemo
@ 2022-05-09 10:46 ` fosslinux
  2022-05-09 18:37 ` [PR PATCH] [Updated] lxd CameronNemo
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: fosslinux @ 2022-05-09 10:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 368 bytes --]

New comment by fosslinux on void-packages repository

https://github.com/void-linux/void-packages/pull/36824#issuecomment-1120941531

Comment:
Hm, I wouldn't really like to adopt any packages right now while I redo a bit of my home infra, but possibly in the future. `lxd-lts` to 5.0.0 if @CameronNemo is happy to continue maintaining lxd-lts seems best option to me.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (7 preceding siblings ...)
  2022-05-09 10:46 ` lxd fosslinux
@ 2022-05-09 18:37 ` CameronNemo
  2022-05-09 20:07 ` CameronNemo
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-09 18:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1440 bytes --]

There is an updated pull request by CameronNemo against master on the void-packages repository

https://github.com/CameronNemo/void-packages lxd
https://github.com/void-linux/void-packages/pull/36824

lxd
- lxd-lts: remove package
- raft: update to 0.13.0
- dqlite: update to 1.10.0
- lxd: update to 5.0.0

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I tested creating/launching an Ubuntu container, including a container created prior to the upgrade from LXD 4.19.

I tested on x86_64 only.

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/36824.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-lxd-36824.patch --]
[-- Type: text/x-diff, Size: 8800 bytes --]

From 0f3c75d66604d2727a3c46acfc372e5093cf618a Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:07 -0700
Subject: [PATCH 1/4] raft: update to 0.13.0

---
 common/shlibs         | 2 +-
 srcpkgs/raft/template | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 784375c7c9aa..0a966e0eb121 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3892,7 +3892,7 @@ libigraph.so.0 igraph-0.9.4_1
 libgtk-layer-shell.so.0 gtk-layer-shell-0.1.0_1
 librdkafka.so.1 librdkafka-1.4.4_3
 librdkafka++.so.1 librdkafka-1.4.4_3
-libraft.so.0 raft-0.9.16_1
+libraft.so.2 raft-0.13.0_1
 libmdnsd.so.1 libmdnsd-0.9_1
 libosdGPU.so.3.4.3 OpenSubdiv-3.4.3_1
 libosdCPU.so.3.4.3 OpenSubdiv-3.4.3_1
diff --git a/srcpkgs/raft/template b/srcpkgs/raft/template
index 85f12e9dd445..98ecc91fc144 100644
--- a/srcpkgs/raft/template
+++ b/srcpkgs/raft/template
@@ -1,6 +1,6 @@
 # Template file for 'raft'
 pkgname=raft
-version=0.11.2
+version=0.13.0
 revision=1
 build_style=gnu-configure
 configure_args="--enable-example=no"
@@ -11,7 +11,8 @@ maintainer="Julio Galvan <juliogalvan@protonmail.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/raft"
 distfiles="https://github.com/canonical/raft/archive/v${version}.tar.gz"
-checksum=c89fd6a6fa3c9e6d670b74e389b2d028dfd39d1eec2b18661fae73a9bfd6b89d
+checksum=91b2b0437f443a60498cdf8c53da8a5934a51eee983d2f6eb6f0c8e40af07a8c
+# https://github.com/void-linux/void-packages/pull/33347#issuecomment-937392150
 make_check=ci-skip
 
 pre_configure() {

From 903969e97382b08caff515654398594172b55073 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:20 -0700
Subject: [PATCH 2/4] dqlite: update to 1.10.0

---
 srcpkgs/dqlite/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dqlite/template b/srcpkgs/dqlite/template
index 41af8cde377d..e7bccbc107aa 100644
--- a/srcpkgs/dqlite/template
+++ b/srcpkgs/dqlite/template
@@ -1,6 +1,6 @@
 # Template file for 'dqlite'
 pkgname=dqlite
-version=1.9.0
+version=1.10.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config automake libtool"
@@ -10,7 +10,7 @@ maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/dqlite"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=b3f23019bcdc030b8f1d97ef585a34b24128414d6c2e79fcf729e053578d80a7
+checksum=46f57036bd5ac4c67b76c07ef3ce58b674458eb1564131c80f11a2d5ec7db962
 
 pre_configure() {
 	autoreconf -i

From 03d248b47b10b43ae273db9a2787216a34214aae Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:31 -0700
Subject: [PATCH 3/4] lxd: update to 5.1

---
 srcpkgs/lxd/files/lxd/run |  4 ----
 srcpkgs/lxd/template      | 18 ++++++++++++++----
 2 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/srcpkgs/lxd/files/lxd/run b/srcpkgs/lxd/files/lxd/run
index 8b02dadb07b9..a32a24389378 100644
--- a/srcpkgs/lxd/files/lxd/run
+++ b/srcpkgs/lxd/files/lxd/run
@@ -6,10 +6,6 @@ fi
 if ! mountpoint -q "${_systemd_cgrp}"; then
 	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
 fi
-# workaround lxc bug -- next release of lxc should obsolete this
-if [ -e /sys/fs/cgroup/cpuset/cgroup.clone_children ]; then
-	echo 1 > /sys/fs/cgroup/cpuset/cgroup.clone_children 2>/dev/null || :
-fi
 
 [ -r conf ] && . ./conf
 exec lxd --group lxd ${OPTS:- --verbose}
diff --git a/srcpkgs/lxd/template b/srcpkgs/lxd/template
index d216d7bb7f7c..7f0518321d20 100644
--- a/srcpkgs/lxd/template
+++ b/srcpkgs/lxd/template
@@ -1,12 +1,16 @@
 # Template file for 'lxd'
 pkgname=lxd
-version=4.19
+version=5.1
 revision=1
 build_style=go
 go_import_path=github.com/lxc/lxd
 go_build_tags=libsqlite3
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
 hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
 depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
@@ -16,12 +20,18 @@ license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
 changelog="https://github.com/lxc/lxd/releases"
 distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
-checksum=6e4cf6cb1549e1b56802d64ad24d812914e0c0102bfcf146bb18a8dcd1fbab57
+checksum=319f4e93506e2144edaa280b0185fb37c4374cf7d7468a5e5c8c1b678189250a
 system_groups="lxd"
 
 # whitelist dqlite LDFLAGS
 export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
+}
+
 post_install() {
 	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
 	vsv lxd

From bc0a5dca5b157fe8c4d44f6e1d6303442f0411c2 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Mon, 9 May 2022 11:34:59 -0700
Subject: [PATCH 4/4] lxd-lts: upgrade to 5.0.0

---
 srcpkgs/lxd-lts/INSTALL.msg   |  2 +-
 srcpkgs/lxd-lts/files/lxd/run |  4 +++-
 srcpkgs/lxd-lts/template      | 38 ++++++++++++++++++-----------------
 3 files changed, 24 insertions(+), 20 deletions(-)

diff --git a/srcpkgs/lxd-lts/INSTALL.msg b/srcpkgs/lxd-lts/INSTALL.msg
index 966174f8132d..5958c9008817 100755
--- a/srcpkgs/lxd-lts/INSTALL.msg
+++ b/srcpkgs/lxd-lts/INSTALL.msg
@@ -1,6 +1,6 @@
 Start lxd service:
 
-	$ sudo ln -s /etc/sv/lxd /var/service
+	$ sudo ln -s /etc/sv/lxd /var/service/
 
 Run LXD initialization:
 
diff --git a/srcpkgs/lxd-lts/files/lxd/run b/srcpkgs/lxd-lts/files/lxd/run
index 147eb64e74dc..a32a24389378 100755
--- a/srcpkgs/lxd-lts/files/lxd/run
+++ b/srcpkgs/lxd-lts/files/lxd/run
@@ -6,4 +6,6 @@ fi
 if ! mountpoint -q "${_systemd_cgrp}"; then
 	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
 fi
-exec lxd --group lxd 2>&1
+
+[ -r conf ] && . ./conf
+exec lxd --group lxd ${OPTS:- --verbose}
diff --git a/srcpkgs/lxd-lts/template b/srcpkgs/lxd-lts/template
index 42e8a958093f..5f0f450e5c3a 100644
--- a/srcpkgs/lxd-lts/template
+++ b/srcpkgs/lxd-lts/template
@@ -1,36 +1,38 @@
 # Template file for 'lxd-lts'
 pkgname=lxd-lts
-version=4.0.4
+version=5.0.0
 revision=1
 wrksrc="lxd-$version"
 build_style=go
-go_import_path="github.com/lxc/lxd"
-go_build_tags="libsqlite3"
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
-hostmakedepends="pkg-config"
+go_import_path=github.com/lxc/lxd
+go_build_tags=libsqlite3
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
+hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
-depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables"
+depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
 short_desc="Next generation system container manager (long term support channel)"
 maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
-distfiles="https://linuxcontainers.org/downloads/lxd/${wrksrc}.tar.gz"
-checksum=372a666b84c7cbcb7ccbffbf4aa04a05b2fe22e5e0aafa022b700bbf211557f6
+changelog="https://github.com/lxc/lxd/releases"
+distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
+checksum=a99b7edfb52c8195b2de4988844d32d73be6426f6cff28408250517b238fdef9
 conflicts="lxd"
 provides="lxd-${version}_${revision}"
 system_groups="lxd"
 
-do_configure() {
-	# the LXD tarball packages up the required dependencies
-	ln -s "$wrksrc/_dist" "$GOPATH"
-}
+# whitelist dqlite LDFLAGS
+export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
-do_build() {
-	# don't go-get the dependencies, just install with what's there
-	cd "$GOSRCPATH"
-	go_package=${go_package:-$go_import_path}
-	go install -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package}
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
 }
 
 post_install() {

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (8 preceding siblings ...)
  2022-05-09 18:37 ` [PR PATCH] [Updated] lxd CameronNemo
@ 2022-05-09 20:07 ` CameronNemo
  2022-05-16 21:54 ` [PR REVIEW] lxd ericonr
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-09 20:07 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1440 bytes --]

There is an updated pull request by CameronNemo against master on the void-packages repository

https://github.com/CameronNemo/void-packages lxd
https://github.com/void-linux/void-packages/pull/36824

lxd
- lxd-lts: remove package
- raft: update to 0.13.0
- dqlite: update to 1.10.0
- lxd: update to 5.0.0

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I tested creating/launching an Ubuntu container, including a container created prior to the upgrade from LXD 4.19.

I tested on x86_64 only.

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/36824.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-lxd-36824.patch --]
[-- Type: text/x-diff, Size: 14618 bytes --]

From 0f3c75d66604d2727a3c46acfc372e5093cf618a Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:07 -0700
Subject: [PATCH 1/4] raft: update to 0.13.0

---
 common/shlibs         | 2 +-
 srcpkgs/raft/template | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 784375c7c9aa..0a966e0eb121 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3892,7 +3892,7 @@ libigraph.so.0 igraph-0.9.4_1
 libgtk-layer-shell.so.0 gtk-layer-shell-0.1.0_1
 librdkafka.so.1 librdkafka-1.4.4_3
 librdkafka++.so.1 librdkafka-1.4.4_3
-libraft.so.0 raft-0.9.16_1
+libraft.so.2 raft-0.13.0_1
 libmdnsd.so.1 libmdnsd-0.9_1
 libosdGPU.so.3.4.3 OpenSubdiv-3.4.3_1
 libosdCPU.so.3.4.3 OpenSubdiv-3.4.3_1
diff --git a/srcpkgs/raft/template b/srcpkgs/raft/template
index 85f12e9dd445..98ecc91fc144 100644
--- a/srcpkgs/raft/template
+++ b/srcpkgs/raft/template
@@ -1,6 +1,6 @@
 # Template file for 'raft'
 pkgname=raft
-version=0.11.2
+version=0.13.0
 revision=1
 build_style=gnu-configure
 configure_args="--enable-example=no"
@@ -11,7 +11,8 @@ maintainer="Julio Galvan <juliogalvan@protonmail.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/raft"
 distfiles="https://github.com/canonical/raft/archive/v${version}.tar.gz"
-checksum=c89fd6a6fa3c9e6d670b74e389b2d028dfd39d1eec2b18661fae73a9bfd6b89d
+checksum=91b2b0437f443a60498cdf8c53da8a5934a51eee983d2f6eb6f0c8e40af07a8c
+# https://github.com/void-linux/void-packages/pull/33347#issuecomment-937392150
 make_check=ci-skip
 
 pre_configure() {

From 903969e97382b08caff515654398594172b55073 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:20 -0700
Subject: [PATCH 2/4] dqlite: update to 1.10.0

---
 srcpkgs/dqlite/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dqlite/template b/srcpkgs/dqlite/template
index 41af8cde377d..e7bccbc107aa 100644
--- a/srcpkgs/dqlite/template
+++ b/srcpkgs/dqlite/template
@@ -1,6 +1,6 @@
 # Template file for 'dqlite'
 pkgname=dqlite
-version=1.9.0
+version=1.10.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config automake libtool"
@@ -10,7 +10,7 @@ maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/dqlite"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=b3f23019bcdc030b8f1d97ef585a34b24128414d6c2e79fcf729e053578d80a7
+checksum=46f57036bd5ac4c67b76c07ef3ce58b674458eb1564131c80f11a2d5ec7db962
 
 pre_configure() {
 	autoreconf -i

From ebad8a537290eb8467bec5aae4c10dbc4a88c19f Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:31 -0700
Subject: [PATCH 3/4] lxd: update to 5.1

---
 srcpkgs/lxd/files/lxd/run                   |   4 -
 srcpkgs/lxd/patches/fix-seccomp-32bit.patch | 170 ++++++++++++++++++++
 srcpkgs/lxd/template                        |  18 ++-
 3 files changed, 184 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/lxd/patches/fix-seccomp-32bit.patch

diff --git a/srcpkgs/lxd/files/lxd/run b/srcpkgs/lxd/files/lxd/run
index 8b02dadb07b9..a32a24389378 100644
--- a/srcpkgs/lxd/files/lxd/run
+++ b/srcpkgs/lxd/files/lxd/run
@@ -6,10 +6,6 @@ fi
 if ! mountpoint -q "${_systemd_cgrp}"; then
 	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
 fi
-# workaround lxc bug -- next release of lxc should obsolete this
-if [ -e /sys/fs/cgroup/cpuset/cgroup.clone_children ]; then
-	echo 1 > /sys/fs/cgroup/cpuset/cgroup.clone_children 2>/dev/null || :
-fi
 
 [ -r conf ] && . ./conf
 exec lxd --group lxd ${OPTS:- --verbose}
diff --git a/srcpkgs/lxd/patches/fix-seccomp-32bit.patch b/srcpkgs/lxd/patches/fix-seccomp-32bit.patch
new file mode 100644
index 000000000000..31f5b3de4486
--- /dev/null
+++ b/srcpkgs/lxd/patches/fix-seccomp-32bit.patch
@@ -0,0 +1,170 @@
+From fd6845ddda3f80cdd24a8f94c42acce6bff0c41f Mon Sep 17 00:00:00 2001
+From: Thomas Parrott <thomas.parrott@canonical.com>
+Date: Fri, 29 Apr 2022 11:12:48 +0100
+Subject: [PATCH] lxd/secommp: Fix sysinfo syscall interception on 32 bit
+ platforms
+
+Fixes #10347
+
+Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
+---
+ lxd/seccomp/seccomp.go    | 22 ++++++++++++++--------
+ lxd/seccomp/sysinfo.go    | 13 +++++++++++++
+ lxd/seccomp/sysinfo_32.go | 19 +++++++++++++++++++
+ lxd/seccomp/sysinfo_64.go | 19 +++++++++++++++++++
+ 4 files changed, 65 insertions(+), 8 deletions(-)
+ create mode 100644 lxd/seccomp/sysinfo.go
+ create mode 100644 lxd/seccomp/sysinfo_32.go
+ create mode 100644 lxd/seccomp/sysinfo_64.go
+
+diff --git a/lxd/seccomp/seccomp.go b/lxd/seccomp/seccomp.go
+index 03fee3c71a0..203d408a828 100644
+--- a/lxd/seccomp/seccomp.go
++++ b/lxd/seccomp/seccomp.go
+@@ -1709,6 +1709,7 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 
+ 	defer l.Debug("Handling sysinfo syscall")
+ 
++	// Pre-fill sysinfo struct with metrics from host system.
+ 	info := unix.Sysinfo_t{}
+ 	err := unix.Sysinfo(&info)
+ 	if err != nil {
+@@ -1718,6 +1719,8 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 		return 0
+ 	}
+ 
++	instMetrics := Sysinfo{} // Architecture independent place to hold instance metrics.
++
+ 	cg, err := cgroup.NewFileReadWriter(int(siov.msg.init_pid), liblxc.HasApiExtension("cgroup2"))
+ 	if err != nil {
+ 		l.Warn("Failed loading cgroup", logger.Ctx{"err": err, "pid": siov.msg.init_pid})
+@@ -1735,7 +1738,7 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 		return 0
+ 	}
+ 
+-	info.Uptime = int64(time.Now().Sub(f.ModTime()).Seconds())
++	instMetrics.Uptime = int64(time.Now().Sub(f.ModTime()).Seconds())
+ 
+ 	// Get instance process count.
+ 	pids, err := cg.GetTotalProcesses()
+@@ -1746,7 +1749,7 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 		return 0
+ 	}
+ 
+-	info.Procs = uint16(pids)
++	instMetrics.Procs = uint16(pids)
+ 
+ 	// Get instance memory stats.
+ 	memStats, err := cg.GetMemoryStats()
+@@ -1760,9 +1763,9 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 	for k, v := range memStats {
+ 		switch k {
+ 		case "shmem":
+-			info.Sharedram = v
++			instMetrics.Sharedram = v
+ 		case "cache":
+-			info.Bufferram = v
++			instMetrics.Bufferram = v
+ 		}
+ 	}
+ 
+@@ -1784,8 +1787,8 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 		return 0
+ 	}
+ 
+-	info.Totalram = uint64(memoryLimit)
+-	info.Freeram = info.Totalram - uint64(memoryUsage) - info.Bufferram
++	instMetrics.Totalram = uint64(memoryLimit)
++	instMetrics.Freeram = instMetrics.Totalram - uint64(memoryUsage) - instMetrics.Bufferram
+ 
+ 	// Get instance swap info.
+ 	if s.s.OS.CGInfo.Supports(cgroup.MemorySwapUsage, cg) {
+@@ -1805,14 +1808,17 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 			return 0
+ 		}
+ 
+-		info.Totalswap = uint64(swapLimit)
+-		info.Freeswap = info.Totalswap - uint64(swapUsage)
++		instMetrics.Totalswap = uint64(swapLimit)
++		instMetrics.Freeswap = instMetrics.Totalswap - uint64(swapUsage)
+ 	}
+ 
+ 	// Get writable pointer to buffer of sysinfo syscall result.
+ 	const sz = int(unsafe.Sizeof(info))
+ 	var b []byte = (*(*[sz]byte)(unsafe.Pointer(&info)))[:]
+ 
++	// Write instance metrics to native sysinfo struct.
++	instMetrics.ToNative(&info)
++
+ 	// Write sysinfo response into buffer.
+ 	_, err = unix.Pwrite(siov.memFd, b, int64(siov.req.data.args[0]))
+ 	if err != nil {
+diff --git a/lxd/seccomp/sysinfo.go b/lxd/seccomp/sysinfo.go
+new file mode 100644
+index 00000000000..b255894af26
+--- /dev/null
++++ b/lxd/seccomp/sysinfo.go
+@@ -0,0 +1,13 @@
++package seccomp
++
++// Sysinfo architecture independent sysinfo struct.
++type Sysinfo struct {
++	Uptime    int64
++	Totalram  uint64
++	Freeram   uint64
++	Sharedram uint64
++	Bufferram uint64
++	Totalswap uint64
++	Freeswap  uint64
++	Procs     uint16
++}
+diff --git a/lxd/seccomp/sysinfo_32.go b/lxd/seccomp/sysinfo_32.go
+new file mode 100644
+index 00000000000..e52808300dd
+--- /dev/null
++++ b/lxd/seccomp/sysinfo_32.go
+@@ -0,0 +1,19 @@
++//go:build 386 || arm || ppc || s390 || mips || mipsle
++
++package seccomp
++
++import (
++	"golang.org/x/sys/unix"
++)
++
++// ToNative fills fields from s into native fields.
++func (s *Sysinfo) ToNative(n *unix.Sysinfo_t) {
++	n.Bufferram = uint32(s.Bufferram)
++	n.Freeram = uint32(s.Freeram)
++	n.Freeswap = uint32(s.Freeswap)
++	n.Procs = s.Procs
++	n.Sharedram = uint32(s.Sharedram)
++	n.Totalram = uint32(s.Totalram)
++	n.Totalswap = uint32(s.Totalswap)
++	n.Uptime = int32(s.Uptime)
++}
+diff --git a/lxd/seccomp/sysinfo_64.go b/lxd/seccomp/sysinfo_64.go
+new file mode 100644
+index 00000000000..84383b1c5a8
+--- /dev/null
++++ b/lxd/seccomp/sysinfo_64.go
+@@ -0,0 +1,19 @@
++//go:build amd64 || ppc64 || ppc64le || arm64 || s390x || mips64 || mips64le || riscv64
++
++package seccomp
++
++import (
++	"golang.org/x/sys/unix"
++)
++
++// ToNative fills fields from s into native fields.
++func (s *Sysinfo) ToNative(n *unix.Sysinfo_t) {
++	n.Bufferram = s.Bufferram
++	n.Freeram = s.Freeram
++	n.Freeswap = s.Freeswap
++	n.Procs = s.Procs
++	n.Sharedram = s.Sharedram
++	n.Totalram = s.Totalram
++	n.Totalswap = s.Totalswap
++	n.Uptime = s.Uptime
++}
diff --git a/srcpkgs/lxd/template b/srcpkgs/lxd/template
index d216d7bb7f7c..7f0518321d20 100644
--- a/srcpkgs/lxd/template
+++ b/srcpkgs/lxd/template
@@ -1,12 +1,16 @@
 # Template file for 'lxd'
 pkgname=lxd
-version=4.19
+version=5.1
 revision=1
 build_style=go
 go_import_path=github.com/lxc/lxd
 go_build_tags=libsqlite3
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
 hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
 depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
@@ -16,12 +20,18 @@ license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
 changelog="https://github.com/lxc/lxd/releases"
 distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
-checksum=6e4cf6cb1549e1b56802d64ad24d812914e0c0102bfcf146bb18a8dcd1fbab57
+checksum=319f4e93506e2144edaa280b0185fb37c4374cf7d7468a5e5c8c1b678189250a
 system_groups="lxd"
 
 # whitelist dqlite LDFLAGS
 export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
+}
+
 post_install() {
 	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
 	vsv lxd

From c2e35c81baa0f961b3619083c76fde90398c49ae Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Mon, 9 May 2022 11:34:59 -0700
Subject: [PATCH 4/4] lxd-lts: upgrade to 5.0.0

---
 srcpkgs/lxd-lts/INSTALL.msg   |  2 +-
 srcpkgs/lxd-lts/files/lxd/run |  4 +++-
 srcpkgs/lxd-lts/template      | 38 ++++++++++++++++++-----------------
 3 files changed, 24 insertions(+), 20 deletions(-)

diff --git a/srcpkgs/lxd-lts/INSTALL.msg b/srcpkgs/lxd-lts/INSTALL.msg
index 966174f8132d..5958c9008817 100755
--- a/srcpkgs/lxd-lts/INSTALL.msg
+++ b/srcpkgs/lxd-lts/INSTALL.msg
@@ -1,6 +1,6 @@
 Start lxd service:
 
-	$ sudo ln -s /etc/sv/lxd /var/service
+	$ sudo ln -s /etc/sv/lxd /var/service/
 
 Run LXD initialization:
 
diff --git a/srcpkgs/lxd-lts/files/lxd/run b/srcpkgs/lxd-lts/files/lxd/run
index 147eb64e74dc..a32a24389378 100755
--- a/srcpkgs/lxd-lts/files/lxd/run
+++ b/srcpkgs/lxd-lts/files/lxd/run
@@ -6,4 +6,6 @@ fi
 if ! mountpoint -q "${_systemd_cgrp}"; then
 	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
 fi
-exec lxd --group lxd 2>&1
+
+[ -r conf ] && . ./conf
+exec lxd --group lxd ${OPTS:- --verbose}
diff --git a/srcpkgs/lxd-lts/template b/srcpkgs/lxd-lts/template
index 42e8a958093f..5f0f450e5c3a 100644
--- a/srcpkgs/lxd-lts/template
+++ b/srcpkgs/lxd-lts/template
@@ -1,36 +1,38 @@
 # Template file for 'lxd-lts'
 pkgname=lxd-lts
-version=4.0.4
+version=5.0.0
 revision=1
 wrksrc="lxd-$version"
 build_style=go
-go_import_path="github.com/lxc/lxd"
-go_build_tags="libsqlite3"
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
-hostmakedepends="pkg-config"
+go_import_path=github.com/lxc/lxd
+go_build_tags=libsqlite3
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
+hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
-depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables"
+depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
 short_desc="Next generation system container manager (long term support channel)"
 maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
-distfiles="https://linuxcontainers.org/downloads/lxd/${wrksrc}.tar.gz"
-checksum=372a666b84c7cbcb7ccbffbf4aa04a05b2fe22e5e0aafa022b700bbf211557f6
+changelog="https://github.com/lxc/lxd/releases"
+distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
+checksum=a99b7edfb52c8195b2de4988844d32d73be6426f6cff28408250517b238fdef9
 conflicts="lxd"
 provides="lxd-${version}_${revision}"
 system_groups="lxd"
 
-do_configure() {
-	# the LXD tarball packages up the required dependencies
-	ln -s "$wrksrc/_dist" "$GOPATH"
-}
+# whitelist dqlite LDFLAGS
+export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
-do_build() {
-	# don't go-get the dependencies, just install with what's there
-	cd "$GOSRCPATH"
-	go_package=${go_package:-$go_import_path}
-	go install -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package}
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
 }
 
 post_install() {

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR REVIEW] lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (9 preceding siblings ...)
  2022-05-09 20:07 ` CameronNemo
@ 2022-05-16 21:54 ` ericonr
  2022-05-16 22:49 ` [PR PATCH] [Updated] lxd CameronNemo
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: ericonr @ 2022-05-16 21:54 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 216 bytes --]

New review comment by ericonr on void-packages repository

https://github.com/void-linux/void-packages/pull/36824#discussion_r874189762

Comment:
```suggestion
# test/unit/uv and test/integration/uv fail on CI
```

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (10 preceding siblings ...)
  2022-05-16 21:54 ` [PR REVIEW] lxd ericonr
@ 2022-05-16 22:49 ` CameronNemo
  2022-05-16 22:49 ` [PR REVIEW] lxd CameronNemo
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-16 22:49 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1471 bytes --]

There is an updated pull request by CameronNemo against master on the void-packages repository

https://github.com/CameronNemo/void-packages lxd
https://github.com/void-linux/void-packages/pull/36824

lxd
- raft: update to 0.13.0
- dqlite: update to 1.10.0
- lxd: update to 5.1
- lxd-lts: update to 5.0.0

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I tested creating/launching an Ubuntu container, including a container created prior to the upgrade from LXD 4.19.

I tested on x86_64 only.

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/36824.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-lxd-36824.patch --]
[-- Type: text/x-diff, Size: 14588 bytes --]

From 1ee4144ea9acb1d1c00f2cf58e1351d17b1ba423 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:07 -0700
Subject: [PATCH 1/4] raft: update to 0.13.0

---
 common/shlibs         | 2 +-
 srcpkgs/raft/template | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 8f5670e21484..9160e0ad1ba8 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3892,7 +3892,7 @@ libigraph.so.0 igraph-0.9.4_1
 libgtk-layer-shell.so.0 gtk-layer-shell-0.1.0_1
 librdkafka.so.1 librdkafka-1.4.4_3
 librdkafka++.so.1 librdkafka-1.4.4_3
-libraft.so.0 raft-0.9.16_1
+libraft.so.2 raft-0.13.0_1
 libmdnsd.so.1 libmdnsd-0.9_1
 libosdGPU.so.3.4.3 OpenSubdiv-3.4.3_1
 libosdCPU.so.3.4.3 OpenSubdiv-3.4.3_1
diff --git a/srcpkgs/raft/template b/srcpkgs/raft/template
index 85f12e9dd445..b111bcc73758 100644
--- a/srcpkgs/raft/template
+++ b/srcpkgs/raft/template
@@ -1,6 +1,6 @@
 # Template file for 'raft'
 pkgname=raft
-version=0.11.2
+version=0.13.0
 revision=1
 build_style=gnu-configure
 configure_args="--enable-example=no"
@@ -11,7 +11,8 @@ maintainer="Julio Galvan <juliogalvan@protonmail.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/raft"
 distfiles="https://github.com/canonical/raft/archive/v${version}.tar.gz"
-checksum=c89fd6a6fa3c9e6d670b74e389b2d028dfd39d1eec2b18661fae73a9bfd6b89d
+checksum=91b2b0437f443a60498cdf8c53da8a5934a51eee983d2f6eb6f0c8e40af07a8c
+# test/unit/uv and test/integration/uv fail on CI
 make_check=ci-skip
 
 pre_configure() {

From f07ac1168581301ac70d8b763e314667ec3ce1b4 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:20 -0700
Subject: [PATCH 2/4] dqlite: update to 1.10.0

---
 srcpkgs/dqlite/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dqlite/template b/srcpkgs/dqlite/template
index 41af8cde377d..e7bccbc107aa 100644
--- a/srcpkgs/dqlite/template
+++ b/srcpkgs/dqlite/template
@@ -1,6 +1,6 @@
 # Template file for 'dqlite'
 pkgname=dqlite
-version=1.9.0
+version=1.10.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config automake libtool"
@@ -10,7 +10,7 @@ maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/dqlite"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=b3f23019bcdc030b8f1d97ef585a34b24128414d6c2e79fcf729e053578d80a7
+checksum=46f57036bd5ac4c67b76c07ef3ce58b674458eb1564131c80f11a2d5ec7db962
 
 pre_configure() {
 	autoreconf -i

From 1ada1e62358567bc5c8b2b63ba1be920dcb4218e Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:31 -0700
Subject: [PATCH 3/4] lxd: update to 5.1

---
 srcpkgs/lxd/files/lxd/run                   |   4 -
 srcpkgs/lxd/patches/fix-seccomp-32bit.patch | 170 ++++++++++++++++++++
 srcpkgs/lxd/template                        |  18 ++-
 3 files changed, 184 insertions(+), 8 deletions(-)
 create mode 100644 srcpkgs/lxd/patches/fix-seccomp-32bit.patch

diff --git a/srcpkgs/lxd/files/lxd/run b/srcpkgs/lxd/files/lxd/run
index 8b02dadb07b9..a32a24389378 100644
--- a/srcpkgs/lxd/files/lxd/run
+++ b/srcpkgs/lxd/files/lxd/run
@@ -6,10 +6,6 @@ fi
 if ! mountpoint -q "${_systemd_cgrp}"; then
 	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
 fi
-# workaround lxc bug -- next release of lxc should obsolete this
-if [ -e /sys/fs/cgroup/cpuset/cgroup.clone_children ]; then
-	echo 1 > /sys/fs/cgroup/cpuset/cgroup.clone_children 2>/dev/null || :
-fi
 
 [ -r conf ] && . ./conf
 exec lxd --group lxd ${OPTS:- --verbose}
diff --git a/srcpkgs/lxd/patches/fix-seccomp-32bit.patch b/srcpkgs/lxd/patches/fix-seccomp-32bit.patch
new file mode 100644
index 000000000000..31f5b3de4486
--- /dev/null
+++ b/srcpkgs/lxd/patches/fix-seccomp-32bit.patch
@@ -0,0 +1,170 @@
+From fd6845ddda3f80cdd24a8f94c42acce6bff0c41f Mon Sep 17 00:00:00 2001
+From: Thomas Parrott <thomas.parrott@canonical.com>
+Date: Fri, 29 Apr 2022 11:12:48 +0100
+Subject: [PATCH] lxd/secommp: Fix sysinfo syscall interception on 32 bit
+ platforms
+
+Fixes #10347
+
+Signed-off-by: Thomas Parrott <thomas.parrott@canonical.com>
+---
+ lxd/seccomp/seccomp.go    | 22 ++++++++++++++--------
+ lxd/seccomp/sysinfo.go    | 13 +++++++++++++
+ lxd/seccomp/sysinfo_32.go | 19 +++++++++++++++++++
+ lxd/seccomp/sysinfo_64.go | 19 +++++++++++++++++++
+ 4 files changed, 65 insertions(+), 8 deletions(-)
+ create mode 100644 lxd/seccomp/sysinfo.go
+ create mode 100644 lxd/seccomp/sysinfo_32.go
+ create mode 100644 lxd/seccomp/sysinfo_64.go
+
+diff --git a/lxd/seccomp/seccomp.go b/lxd/seccomp/seccomp.go
+index 03fee3c71a0..203d408a828 100644
+--- a/lxd/seccomp/seccomp.go
++++ b/lxd/seccomp/seccomp.go
+@@ -1709,6 +1709,7 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 
+ 	defer l.Debug("Handling sysinfo syscall")
+ 
++	// Pre-fill sysinfo struct with metrics from host system.
+ 	info := unix.Sysinfo_t{}
+ 	err := unix.Sysinfo(&info)
+ 	if err != nil {
+@@ -1718,6 +1719,8 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 		return 0
+ 	}
+ 
++	instMetrics := Sysinfo{} // Architecture independent place to hold instance metrics.
++
+ 	cg, err := cgroup.NewFileReadWriter(int(siov.msg.init_pid), liblxc.HasApiExtension("cgroup2"))
+ 	if err != nil {
+ 		l.Warn("Failed loading cgroup", logger.Ctx{"err": err, "pid": siov.msg.init_pid})
+@@ -1735,7 +1738,7 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 		return 0
+ 	}
+ 
+-	info.Uptime = int64(time.Now().Sub(f.ModTime()).Seconds())
++	instMetrics.Uptime = int64(time.Now().Sub(f.ModTime()).Seconds())
+ 
+ 	// Get instance process count.
+ 	pids, err := cg.GetTotalProcesses()
+@@ -1746,7 +1749,7 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 		return 0
+ 	}
+ 
+-	info.Procs = uint16(pids)
++	instMetrics.Procs = uint16(pids)
+ 
+ 	// Get instance memory stats.
+ 	memStats, err := cg.GetMemoryStats()
+@@ -1760,9 +1763,9 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 	for k, v := range memStats {
+ 		switch k {
+ 		case "shmem":
+-			info.Sharedram = v
++			instMetrics.Sharedram = v
+ 		case "cache":
+-			info.Bufferram = v
++			instMetrics.Bufferram = v
+ 		}
+ 	}
+ 
+@@ -1784,8 +1787,8 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 		return 0
+ 	}
+ 
+-	info.Totalram = uint64(memoryLimit)
+-	info.Freeram = info.Totalram - uint64(memoryUsage) - info.Bufferram
++	instMetrics.Totalram = uint64(memoryLimit)
++	instMetrics.Freeram = instMetrics.Totalram - uint64(memoryUsage) - instMetrics.Bufferram
+ 
+ 	// Get instance swap info.
+ 	if s.s.OS.CGInfo.Supports(cgroup.MemorySwapUsage, cg) {
+@@ -1805,14 +1808,17 @@ func (s *Server) HandleSysinfoSyscall(c Instance, siov *Iovec) int {
+ 			return 0
+ 		}
+ 
+-		info.Totalswap = uint64(swapLimit)
+-		info.Freeswap = info.Totalswap - uint64(swapUsage)
++		instMetrics.Totalswap = uint64(swapLimit)
++		instMetrics.Freeswap = instMetrics.Totalswap - uint64(swapUsage)
+ 	}
+ 
+ 	// Get writable pointer to buffer of sysinfo syscall result.
+ 	const sz = int(unsafe.Sizeof(info))
+ 	var b []byte = (*(*[sz]byte)(unsafe.Pointer(&info)))[:]
+ 
++	// Write instance metrics to native sysinfo struct.
++	instMetrics.ToNative(&info)
++
+ 	// Write sysinfo response into buffer.
+ 	_, err = unix.Pwrite(siov.memFd, b, int64(siov.req.data.args[0]))
+ 	if err != nil {
+diff --git a/lxd/seccomp/sysinfo.go b/lxd/seccomp/sysinfo.go
+new file mode 100644
+index 00000000000..b255894af26
+--- /dev/null
++++ b/lxd/seccomp/sysinfo.go
+@@ -0,0 +1,13 @@
++package seccomp
++
++// Sysinfo architecture independent sysinfo struct.
++type Sysinfo struct {
++	Uptime    int64
++	Totalram  uint64
++	Freeram   uint64
++	Sharedram uint64
++	Bufferram uint64
++	Totalswap uint64
++	Freeswap  uint64
++	Procs     uint16
++}
+diff --git a/lxd/seccomp/sysinfo_32.go b/lxd/seccomp/sysinfo_32.go
+new file mode 100644
+index 00000000000..e52808300dd
+--- /dev/null
++++ b/lxd/seccomp/sysinfo_32.go
+@@ -0,0 +1,19 @@
++//go:build 386 || arm || ppc || s390 || mips || mipsle
++
++package seccomp
++
++import (
++	"golang.org/x/sys/unix"
++)
++
++// ToNative fills fields from s into native fields.
++func (s *Sysinfo) ToNative(n *unix.Sysinfo_t) {
++	n.Bufferram = uint32(s.Bufferram)
++	n.Freeram = uint32(s.Freeram)
++	n.Freeswap = uint32(s.Freeswap)
++	n.Procs = s.Procs
++	n.Sharedram = uint32(s.Sharedram)
++	n.Totalram = uint32(s.Totalram)
++	n.Totalswap = uint32(s.Totalswap)
++	n.Uptime = int32(s.Uptime)
++}
+diff --git a/lxd/seccomp/sysinfo_64.go b/lxd/seccomp/sysinfo_64.go
+new file mode 100644
+index 00000000000..84383b1c5a8
+--- /dev/null
++++ b/lxd/seccomp/sysinfo_64.go
+@@ -0,0 +1,19 @@
++//go:build amd64 || ppc64 || ppc64le || arm64 || s390x || mips64 || mips64le || riscv64
++
++package seccomp
++
++import (
++	"golang.org/x/sys/unix"
++)
++
++// ToNative fills fields from s into native fields.
++func (s *Sysinfo) ToNative(n *unix.Sysinfo_t) {
++	n.Bufferram = s.Bufferram
++	n.Freeram = s.Freeram
++	n.Freeswap = s.Freeswap
++	n.Procs = s.Procs
++	n.Sharedram = s.Sharedram
++	n.Totalram = s.Totalram
++	n.Totalswap = s.Totalswap
++	n.Uptime = s.Uptime
++}
diff --git a/srcpkgs/lxd/template b/srcpkgs/lxd/template
index d216d7bb7f7c..7f0518321d20 100644
--- a/srcpkgs/lxd/template
+++ b/srcpkgs/lxd/template
@@ -1,12 +1,16 @@
 # Template file for 'lxd'
 pkgname=lxd
-version=4.19
+version=5.1
 revision=1
 build_style=go
 go_import_path=github.com/lxc/lxd
 go_build_tags=libsqlite3
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
 hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
 depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
@@ -16,12 +20,18 @@ license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
 changelog="https://github.com/lxc/lxd/releases"
 distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
-checksum=6e4cf6cb1549e1b56802d64ad24d812914e0c0102bfcf146bb18a8dcd1fbab57
+checksum=319f4e93506e2144edaa280b0185fb37c4374cf7d7468a5e5c8c1b678189250a
 system_groups="lxd"
 
 # whitelist dqlite LDFLAGS
 export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
+}
+
 post_install() {
 	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
 	vsv lxd

From 995be9cb536ab4f1cac089e57acdca3a4051cfad Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Mon, 9 May 2022 11:34:59 -0700
Subject: [PATCH 4/4] lxd-lts: upgrade to 5.0.0

---
 srcpkgs/lxd-lts/INSTALL.msg   |  2 +-
 srcpkgs/lxd-lts/files/lxd/run |  4 +++-
 srcpkgs/lxd-lts/template      | 38 ++++++++++++++++++-----------------
 3 files changed, 24 insertions(+), 20 deletions(-)

diff --git a/srcpkgs/lxd-lts/INSTALL.msg b/srcpkgs/lxd-lts/INSTALL.msg
index 966174f8132d..5958c9008817 100755
--- a/srcpkgs/lxd-lts/INSTALL.msg
+++ b/srcpkgs/lxd-lts/INSTALL.msg
@@ -1,6 +1,6 @@
 Start lxd service:
 
-	$ sudo ln -s /etc/sv/lxd /var/service
+	$ sudo ln -s /etc/sv/lxd /var/service/
 
 Run LXD initialization:
 
diff --git a/srcpkgs/lxd-lts/files/lxd/run b/srcpkgs/lxd-lts/files/lxd/run
index 147eb64e74dc..a32a24389378 100755
--- a/srcpkgs/lxd-lts/files/lxd/run
+++ b/srcpkgs/lxd-lts/files/lxd/run
@@ -6,4 +6,6 @@ fi
 if ! mountpoint -q "${_systemd_cgrp}"; then
 	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
 fi
-exec lxd --group lxd 2>&1
+
+[ -r conf ] && . ./conf
+exec lxd --group lxd ${OPTS:- --verbose}
diff --git a/srcpkgs/lxd-lts/template b/srcpkgs/lxd-lts/template
index 42e8a958093f..5f0f450e5c3a 100644
--- a/srcpkgs/lxd-lts/template
+++ b/srcpkgs/lxd-lts/template
@@ -1,36 +1,38 @@
 # Template file for 'lxd-lts'
 pkgname=lxd-lts
-version=4.0.4
+version=5.0.0
 revision=1
 wrksrc="lxd-$version"
 build_style=go
-go_import_path="github.com/lxc/lxd"
-go_build_tags="libsqlite3"
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
-hostmakedepends="pkg-config"
+go_import_path=github.com/lxc/lxd
+go_build_tags=libsqlite3
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
+hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
-depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables"
+depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
 short_desc="Next generation system container manager (long term support channel)"
 maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
-distfiles="https://linuxcontainers.org/downloads/lxd/${wrksrc}.tar.gz"
-checksum=372a666b84c7cbcb7ccbffbf4aa04a05b2fe22e5e0aafa022b700bbf211557f6
+changelog="https://github.com/lxc/lxd/releases"
+distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
+checksum=a99b7edfb52c8195b2de4988844d32d73be6426f6cff28408250517b238fdef9
 conflicts="lxd"
 provides="lxd-${version}_${revision}"
 system_groups="lxd"
 
-do_configure() {
-	# the LXD tarball packages up the required dependencies
-	ln -s "$wrksrc/_dist" "$GOPATH"
-}
+# whitelist dqlite LDFLAGS
+export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
-do_build() {
-	# don't go-get the dependencies, just install with what's there
-	cd "$GOSRCPATH"
-	go_package=${go_package:-$go_import_path}
-	go install -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package}
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
 }
 
 post_install() {

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR REVIEW] lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (11 preceding siblings ...)
  2022-05-16 22:49 ` [PR PATCH] [Updated] lxd CameronNemo
@ 2022-05-16 22:49 ` CameronNemo
  2022-05-22 17:14 ` lxd CameronNemo
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-16 22:49 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 187 bytes --]

New review comment by CameronNemo on void-packages repository

https://github.com/void-linux/void-packages/pull/36824#discussion_r874218669

Comment:
alright made that change and rebased

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (12 preceding siblings ...)
  2022-05-16 22:49 ` [PR REVIEW] lxd CameronNemo
@ 2022-05-22 17:14 ` CameronNemo
  2022-05-30  6:23 ` [PR PATCH] [Updated] lxd CameronNemo
  2022-06-01 21:38 ` [PR PATCH] [Merged]: lxd: update paper42
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-22 17:14 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 159 bytes --]

New comment by CameronNemo on void-packages repository

https://github.com/void-linux/void-packages/pull/36824#issuecomment-1133937447

Comment:
@ericonr ping

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Updated] lxd
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (13 preceding siblings ...)
  2022-05-22 17:14 ` lxd CameronNemo
@ 2022-05-30  6:23 ` CameronNemo
  2022-06-01 21:38 ` [PR PATCH] [Merged]: lxd: update paper42
  15 siblings, 0 replies; 17+ messages in thread
From: CameronNemo @ 2022-05-30  6:23 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1471 bytes --]

There is an updated pull request by CameronNemo against master on the void-packages repository

https://github.com/CameronNemo/void-packages lxd
https://github.com/void-linux/void-packages/pull/36824

lxd
- raft: update to 0.13.0
- dqlite: update to 1.10.0
- lxd: update to 5.1
- lxd-lts: update to 5.0.0

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I tested creating/launching an Ubuntu container, including a container created prior to the upgrade from LXD 4.19.

I tested on x86_64 only.

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/36824.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-lxd-36824.patch --]
[-- Type: text/x-diff, Size: 8770 bytes --]

From c207c3ab06b3aa380c7c3514a63ac2485284b196 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:07 -0700
Subject: [PATCH 1/4] raft: update to 0.13.0

---
 common/shlibs         | 2 +-
 srcpkgs/raft/template | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/common/shlibs b/common/shlibs
index 8ed7c948eed0..40aae9b36c65 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -3891,7 +3891,7 @@ libigraph.so.0 igraph-0.9.4_1
 libgtk-layer-shell.so.0 gtk-layer-shell-0.1.0_1
 librdkafka.so.1 librdkafka-1.4.4_3
 librdkafka++.so.1 librdkafka-1.4.4_3
-libraft.so.0 raft-0.9.16_1
+libraft.so.2 raft-0.13.0_1
 libmdnsd.so.1 libmdnsd-0.9_1
 libosdGPU.so.3.4.3 OpenSubdiv-3.4.3_1
 libosdCPU.so.3.4.3 OpenSubdiv-3.4.3_1
diff --git a/srcpkgs/raft/template b/srcpkgs/raft/template
index 85f12e9dd445..b111bcc73758 100644
--- a/srcpkgs/raft/template
+++ b/srcpkgs/raft/template
@@ -1,6 +1,6 @@
 # Template file for 'raft'
 pkgname=raft
-version=0.11.2
+version=0.13.0
 revision=1
 build_style=gnu-configure
 configure_args="--enable-example=no"
@@ -11,7 +11,8 @@ maintainer="Julio Galvan <juliogalvan@protonmail.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/raft"
 distfiles="https://github.com/canonical/raft/archive/v${version}.tar.gz"
-checksum=c89fd6a6fa3c9e6d670b74e389b2d028dfd39d1eec2b18661fae73a9bfd6b89d
+checksum=91b2b0437f443a60498cdf8c53da8a5934a51eee983d2f6eb6f0c8e40af07a8c
+# test/unit/uv and test/integration/uv fail on CI
 make_check=ci-skip
 
 pre_configure() {

From 2defd0e7c7c9dbbd540581045979d7daba2d8faf Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:20 -0700
Subject: [PATCH 2/4] dqlite: update to 1.10.0

---
 srcpkgs/dqlite/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/dqlite/template b/srcpkgs/dqlite/template
index 41af8cde377d..e7bccbc107aa 100644
--- a/srcpkgs/dqlite/template
+++ b/srcpkgs/dqlite/template
@@ -1,6 +1,6 @@
 # Template file for 'dqlite'
 pkgname=dqlite
-version=1.9.0
+version=1.10.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config automake libtool"
@@ -10,7 +10,7 @@ maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="custom:LGPL-3.0-only-linking-exception"
 homepage="https://github.com/canonical/dqlite"
 distfiles="${homepage}/archive/v${version}.tar.gz"
-checksum=b3f23019bcdc030b8f1d97ef585a34b24128414d6c2e79fcf729e053578d80a7
+checksum=46f57036bd5ac4c67b76c07ef3ce58b674458eb1564131c80f11a2d5ec7db962
 
 pre_configure() {
 	autoreconf -i

From 64c589a745cbcd840d982739deb370219aa67664 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Fri, 22 Apr 2022 19:43:31 -0700
Subject: [PATCH 3/4] lxd: update to 5.2

---
 srcpkgs/lxd/files/lxd/run |  4 ----
 srcpkgs/lxd/template      | 18 ++++++++++++++----
 2 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/srcpkgs/lxd/files/lxd/run b/srcpkgs/lxd/files/lxd/run
index 8b02dadb07b9..a32a24389378 100644
--- a/srcpkgs/lxd/files/lxd/run
+++ b/srcpkgs/lxd/files/lxd/run
@@ -6,10 +6,6 @@ fi
 if ! mountpoint -q "${_systemd_cgrp}"; then
 	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
 fi
-# workaround lxc bug -- next release of lxc should obsolete this
-if [ -e /sys/fs/cgroup/cpuset/cgroup.clone_children ]; then
-	echo 1 > /sys/fs/cgroup/cpuset/cgroup.clone_children 2>/dev/null || :
-fi
 
 [ -r conf ] && . ./conf
 exec lxd --group lxd ${OPTS:- --verbose}
diff --git a/srcpkgs/lxd/template b/srcpkgs/lxd/template
index d216d7bb7f7c..26f69a8b286e 100644
--- a/srcpkgs/lxd/template
+++ b/srcpkgs/lxd/template
@@ -1,12 +1,16 @@
 # Template file for 'lxd'
 pkgname=lxd
-version=4.19
+version=5.2
 revision=1
 build_style=go
 go_import_path=github.com/lxc/lxd
 go_build_tags=libsqlite3
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
 hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
 depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
@@ -16,12 +20,18 @@ license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
 changelog="https://github.com/lxc/lxd/releases"
 distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
-checksum=6e4cf6cb1549e1b56802d64ad24d812914e0c0102bfcf146bb18a8dcd1fbab57
+checksum=e22d2b34a1848d33b2080b2b1c82355afb6d36fdfe49e67f44b3749edbc02e4c
 system_groups="lxd"
 
 # whitelist dqlite LDFLAGS
 export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
+}
+
 post_install() {
 	vinstall scripts/bash/lxd-client 644 /usr/share/bash-completion/completions lxd
 	vsv lxd

From c2e4ff79414441a903b952e6817236820c61d994 Mon Sep 17 00:00:00 2001
From: Cameron Nemo <cnemo@tutanota.com>
Date: Mon, 9 May 2022 11:34:59 -0700
Subject: [PATCH 4/4] lxd-lts: upgrade to 5.0.0

---
 srcpkgs/lxd-lts/INSTALL.msg   |  2 +-
 srcpkgs/lxd-lts/files/lxd/run |  4 +++-
 srcpkgs/lxd-lts/template      | 38 ++++++++++++++++++-----------------
 3 files changed, 24 insertions(+), 20 deletions(-)

diff --git a/srcpkgs/lxd-lts/INSTALL.msg b/srcpkgs/lxd-lts/INSTALL.msg
index 966174f8132d..5958c9008817 100755
--- a/srcpkgs/lxd-lts/INSTALL.msg
+++ b/srcpkgs/lxd-lts/INSTALL.msg
@@ -1,6 +1,6 @@
 Start lxd service:
 
-	$ sudo ln -s /etc/sv/lxd /var/service
+	$ sudo ln -s /etc/sv/lxd /var/service/
 
 Run LXD initialization:
 
diff --git a/srcpkgs/lxd-lts/files/lxd/run b/srcpkgs/lxd-lts/files/lxd/run
index 147eb64e74dc..a32a24389378 100755
--- a/srcpkgs/lxd-lts/files/lxd/run
+++ b/srcpkgs/lxd-lts/files/lxd/run
@@ -6,4 +6,6 @@ fi
 if ! mountpoint -q "${_systemd_cgrp}"; then
 	mount -t cgroup -o none,name=systemd cgroup ${_systemd_cgrp}
 fi
-exec lxd --group lxd 2>&1
+
+[ -r conf ] && . ./conf
+exec lxd --group lxd ${OPTS:- --verbose}
diff --git a/srcpkgs/lxd-lts/template b/srcpkgs/lxd-lts/template
index 42e8a958093f..5f0f450e5c3a 100644
--- a/srcpkgs/lxd-lts/template
+++ b/srcpkgs/lxd-lts/template
@@ -1,36 +1,38 @@
 # Template file for 'lxd-lts'
 pkgname=lxd-lts
-version=4.0.4
+version=5.0.0
 revision=1
 wrksrc="lxd-$version"
 build_style=go
-go_import_path="github.com/lxc/lxd"
-go_build_tags="libsqlite3"
-go_package="${go_import_path}/lxd ${go_import_path}/lxc
- ${go_import_path}/lxd-p2c ${go_import_path}/fuidshift"
-hostmakedepends="pkg-config"
+go_import_path=github.com/lxc/lxd
+go_build_tags=libsqlite3
+go_package="${go_import_path}/lxd
+ ${go_import_path}/lxc
+ ${go_import_path}/lxc-to-lxd
+ ${go_import_path}/fuidshift
+ ${go_import_path}/lxd-benchmark
+ ${go_import_path}/lxd-user"
+hostmakedepends="pkg-config git"
 makedepends="lxc-devel acl-devel dqlite-devel eudev-libudev-devel"
-depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables"
+depends="lxc acl acl-progs rsync squashfs-tools xz dnsmasq iptables attr-progs"
 short_desc="Next generation system container manager (long term support channel)"
 maintainer="Cameron Nemo <cnemo@tutanota.com>"
 license="Apache-2.0"
 homepage="https://linuxcontainers.org/lxd"
-distfiles="https://linuxcontainers.org/downloads/lxd/${wrksrc}.tar.gz"
-checksum=372a666b84c7cbcb7ccbffbf4aa04a05b2fe22e5e0aafa022b700bbf211557f6
+changelog="https://github.com/lxc/lxd/releases"
+distfiles="https://linuxcontainers.org/downloads/lxd/lxd-${version}.tar.gz"
+checksum=a99b7edfb52c8195b2de4988844d32d73be6426f6cff28408250517b238fdef9
 conflicts="lxd"
 provides="lxd-${version}_${revision}"
 system_groups="lxd"
 
-do_configure() {
-	# the LXD tarball packages up the required dependencies
-	ln -s "$wrksrc/_dist" "$GOPATH"
-}
+# whitelist dqlite LDFLAGS
+export CGO_LDFLAGS_ALLOW='-Wl,-z,now'
 
-do_build() {
-	# don't go-get the dependencies, just install with what's there
-	cd "$GOSRCPATH"
-	go_package=${go_package:-$go_import_path}
-	go install -tags "${go_build_tags}" -ldflags "${go_ldflags}" ${go_package}
+post_build() {
+	# these need special tags and/or LDFLAGS
+	CGO_LDFLAGS="$CGO_LDFLAGS -static" go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "agent" -ldflags "${go_ldflags}" "${go_import_path}/lxd-agent"
+	go install -p "$XBPS_MAKEJOBS" -mod=vendor -x -tags "netgo" -ldflags "${go_ldflags}" "${go_import_path}/lxd-migrate"
 }
 
 post_install() {

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PR PATCH] [Merged]: lxd: update
  2022-04-23  2:44 [PR PATCH] lxd CameronNemo
                   ` (14 preceding siblings ...)
  2022-05-30  6:23 ` [PR PATCH] [Updated] lxd CameronNemo
@ 2022-06-01 21:38 ` paper42
  15 siblings, 0 replies; 17+ messages in thread
From: paper42 @ 2022-06-01 21:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1319 bytes --]

There's a merged pull request on the void-packages repository

lxd: update
https://github.com/void-linux/void-packages/pull/36824

Description:
- raft: update to 0.13.0
- dqlite: update to 1.10.0
- lxd: update to 5.1
- lxd-lts: update to 5.0.0

<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

I tested creating/launching an Ubuntu container, including a container created prior to the upgrade from LXD 4.19.

I tested on x86_64 only.

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!-- 
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2022-06-01 21:38 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-23  2:44 [PR PATCH] lxd CameronNemo
2022-04-23  3:01 ` [PR PATCH] [Updated] lxd CameronNemo
2022-04-23  3:41 ` lxd CameronNemo
2022-05-08 20:59 ` [PR PATCH] [Updated] lxd CameronNemo
2022-05-08 20:59 ` CameronNemo
2022-05-09  3:12 ` lxd ericonr
2022-05-09  3:24 ` lxd CameronNemo
2022-05-09  3:24 ` lxd CameronNemo
2022-05-09 10:46 ` lxd fosslinux
2022-05-09 18:37 ` [PR PATCH] [Updated] lxd CameronNemo
2022-05-09 20:07 ` CameronNemo
2022-05-16 21:54 ` [PR REVIEW] lxd ericonr
2022-05-16 22:49 ` [PR PATCH] [Updated] lxd CameronNemo
2022-05-16 22:49 ` [PR REVIEW] lxd CameronNemo
2022-05-22 17:14 ` lxd CameronNemo
2022-05-30  6:23 ` [PR PATCH] [Updated] lxd CameronNemo
2022-06-01 21:38 ` [PR PATCH] [Merged]: lxd: update paper42

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).