[-- Attachment #1: Type: text/plain, Size: 1427 bytes --] There is a new pull request by ahesford against master on the void-packages repository https://github.com/ahesford/void-packages containers https://github.com/void-linux/void-packages/pull/29967 Update podman, buildah, crun In addition to the update, I've moved `podman` from `runc` to `crun`. `crun` advertises better speed and lower memory footprint, and is part of the same organization responsible for `podman` and `buildah`. More importantly, with `void-runit` supporting cgroupsv2-only `CGROUP_MODE=unified` mounts (see `/etc/rc.conf`), `podman` does not work out of the box with `runc` but works just fine with `crun`. In fact, when `crun` is installed alongside `runc`, `buildah` prefers `crun`. I don't know whether `runc` can be made to work with the unified cgroupsv2 mount or whether there are any potential breakages if `runc` is replaced with `crun`. @CameronNemo @kartikynwa @lemmi #### General - [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements) #### Have the results of the proposed changes been tested? - [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me - [ ] I generally don't use the affected packages but briefly tested this PR A patch file from https://github.com/void-linux/void-packages/pull/29967.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-containers-29967.patch --] [-- Type: text/x-diff, Size: 4953 bytes --] From aa1ed1173324ced4a47b4e6d219921caf2320854 Mon Sep 17 00:00:00 2001 From: "Andrew J. Hesford" <ajh@sideband.org> Date: Sat, 3 Apr 2021 00:16:17 -0400 Subject: [PATCH 1/3] crun: update to 0.19. --- srcpkgs/crun/template | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/srcpkgs/crun/template b/srcpkgs/crun/template index e5415d3ee104..1f364f7fb58d 100644 --- a/srcpkgs/crun/template +++ b/srcpkgs/crun/template @@ -1,7 +1,7 @@ # Template file for 'crun' pkgname=crun -version=0.16 -revision=2 +version=0.19 +revision=1 build_style=gnu-configure configure_args="--disable-systemd" hostmakedepends="pkg-config libtool python3 $(vopt_if man go-md2man)" @@ -11,7 +11,7 @@ maintainer="Imran Khan <imrankhan@teknik.io>" license="GPL-2.0-or-later, LGPL-2.1-or-later" homepage="https://github.com/containers/crun" distfiles="https://github.com/containers/crun/releases/download/${version}/crun-${version}.tar.gz" -checksum=fba02fe03dbb83570d4d00e0268e6c3b8ff5e7472e24c183ed8644ea208336dc +checksum=8065b73ae37ccfb960915fa10051e2bf27850d1c2c69ffeb9eec17c6f198d1c9 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then makedepends+=" argp-standalone" From 59bb776f5e61c5c75fb5f82fef96106f8e6c06c7 Mon Sep 17 00:00:00 2001 From: "Andrew J. Hesford" <ajh@sideband.org> Date: Sat, 3 Apr 2021 00:17:17 -0400 Subject: [PATCH 2/3] buildah: update to 1.20.0. --- srcpkgs/buildah/template | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/srcpkgs/buildah/template b/srcpkgs/buildah/template index 86c7a21de131..16dcc457297c 100644 --- a/srcpkgs/buildah/template +++ b/srcpkgs/buildah/template @@ -1,6 +1,6 @@ # Template file for 'buildah' pkgname=buildah -version=1.19.6 +version=1.20.0 revision=1 build_style=go go_import_path=github.com/containers/buildah @@ -16,7 +16,7 @@ license="Apache-2.0" homepage="https://github.com/containers/buildah" changelog="https://github.com/containers/buildah/blob/master/CHANGELOG.md" distfiles="${homepage}/archive/v${version}.tar.gz" -checksum=4f2e737521691abddfff7eaf6d7a7137db019c842de61d68054ccc2a6587c2fd +checksum=6af8fd6ad6fdb515f4f806105c8fe3e4ceda63eaea6e33e3c7ac7b272fe61797 post_build() { make -C docs GOMD2MAN=go-md2man From f9cf52ccbd34190cb35d49654823cc8ae5722e4b Mon Sep 17 00:00:00 2001 From: "Andrew J. Hesford" <ajh@sideband.org> Date: Sat, 3 Apr 2021 00:26:52 -0400 Subject: [PATCH 3/3] podman: update to 3.1.0. --- srcpkgs/podman/INSTALL.msg | 14 ++++---------- srcpkgs/podman/template | 10 +++++----- 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/srcpkgs/podman/INSTALL.msg b/srcpkgs/podman/INSTALL.msg index 6d69c9281eb5..d9090de158e7 100644 --- a/srcpkgs/podman/INSTALL.msg +++ b/srcpkgs/podman/INSTALL.msg @@ -1,21 +1,15 @@ `fuse-overlayfs` has been added as a runtime dependency to podman. podman will now prefer this storage driver to the `vfs` fallback driver. +If you have existing containers that rely on the `vfs` driver, podman +will display an error and refuse any further operation. To switch to the new storage driver, podman has to be reset: # podman system reset -To keep the `vfs` driver, add this to `/etc/containers/storage.conf` -or `~/.config/containers/storage.conf`: +To instead keep using the `vfs` driver, add [storage] driver="vfs" -Otherwise podman will display an error and refuse any further operation. - -Additionally the `btrfs` storage driver has been enabled. This driver is also -available for rootless operation. Reset podman and add the following to your -`storage.conf` to switch to this driver: - - [storage] - driver="btrfs" +to `/etc/containers/storage.conf` or `~/.config/containers/storage.conf`. diff --git a/srcpkgs/podman/template b/srcpkgs/podman/template index ce8b655a444d..7917d4f3a4ab 100644 --- a/srcpkgs/podman/template +++ b/srcpkgs/podman/template @@ -1,20 +1,20 @@ # Template file for 'podman' pkgname=podman -version=3.0.1 -revision=3 +version=3.1.0 +revision=1 build_style=go -go_import_path="github.com/containers/podman/v2" +go_import_path="github.com/containers/podman/v3" go_package="${go_import_path}/cmd/podman" go_build_tags="seccomp apparmor containers_image_ostree_stub" hostmakedepends="pkg-config go-md2man" makedepends="gpgme-devel libseccomp-devel device-mapper-devel libbtrfs-devel" -depends="runc conmon cni-plugins slirp4netns containers.image fuse-overlayfs" +depends="crun conmon cni-plugins slirp4netns containers.image fuse-overlayfs" short_desc="Simple management tool for containers and images" maintainer="Cameron Nemo <cnemo@tutanota.com>" license="Apache-2.0" homepage="https://podman.io/" distfiles="https://github.com/containers/libpod/archive/v${version}.tar.gz" -checksum=259e682d6e90595573fe8880e0252cc8b08c813e19408b911c43383a6edd6852 +checksum=60031aa620cbfab641ffef9cb4e68240a0383c23ffd0276938684e98794bb5db if [ "$CROSS_BUILD" ]; then go_build_tags+=" containers_image_openpgp"
[-- Attachment #1: Type: text/plain, Size: 1432 bytes --] There is an updated pull request by ahesford against master on the void-packages repository https://github.com/ahesford/void-packages containers https://github.com/void-linux/void-packages/pull/29967 Update podman, buildah, crun In addition to the update, I've moved `podman` from `runc` to `crun`. `crun` advertises better speed and lower memory footprint, and is part of the same organization responsible for `podman` and `buildah`. More importantly, with `void-runit` supporting cgroupsv2-only `CGROUP_MODE=unified` mounts (see `/etc/rc.conf`), `podman` does not work out of the box with `runc` but works just fine with `crun`. In fact, when `crun` is installed alongside `runc`, `buildah` prefers `crun`. I don't know whether `runc` can be made to work with the unified cgroupsv2 mount or whether there are any potential breakages if `runc` is replaced with `crun`. @CameronNemo @kartikynwa @lemmi #### General - [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements) #### Have the results of the proposed changes been tested? - [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me - [ ] I generally don't use the affected packages but briefly tested this PR A patch file from https://github.com/void-linux/void-packages/pull/29967.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-containers-29967.patch --] [-- Type: text/x-diff, Size: 5326 bytes --] From aa1ed1173324ced4a47b4e6d219921caf2320854 Mon Sep 17 00:00:00 2001 From: "Andrew J. Hesford" <ajh@sideband.org> Date: Sat, 3 Apr 2021 00:16:17 -0400 Subject: [PATCH 1/3] crun: update to 0.19. --- srcpkgs/crun/template | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/srcpkgs/crun/template b/srcpkgs/crun/template index e5415d3ee104..1f364f7fb58d 100644 --- a/srcpkgs/crun/template +++ b/srcpkgs/crun/template @@ -1,7 +1,7 @@ # Template file for 'crun' pkgname=crun -version=0.16 -revision=2 +version=0.19 +revision=1 build_style=gnu-configure configure_args="--disable-systemd" hostmakedepends="pkg-config libtool python3 $(vopt_if man go-md2man)" @@ -11,7 +11,7 @@ maintainer="Imran Khan <imrankhan@teknik.io>" license="GPL-2.0-or-later, LGPL-2.1-or-later" homepage="https://github.com/containers/crun" distfiles="https://github.com/containers/crun/releases/download/${version}/crun-${version}.tar.gz" -checksum=fba02fe03dbb83570d4d00e0268e6c3b8ff5e7472e24c183ed8644ea208336dc +checksum=8065b73ae37ccfb960915fa10051e2bf27850d1c2c69ffeb9eec17c6f198d1c9 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then makedepends+=" argp-standalone" From e12376ad1556ff86ec5e62caced2825150264a73 Mon Sep 17 00:00:00 2001 From: "Andrew J. Hesford" <ajh@sideband.org> Date: Sat, 3 Apr 2021 00:17:17 -0400 Subject: [PATCH 2/3] buildah: update to 1.20.0. --- srcpkgs/buildah/template | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/srcpkgs/buildah/template b/srcpkgs/buildah/template index 86c7a21de131..608f3a65cfd0 100644 --- a/srcpkgs/buildah/template +++ b/srcpkgs/buildah/template @@ -1,6 +1,6 @@ # Template file for 'buildah' pkgname=buildah -version=1.19.6 +version=1.20.0 revision=1 build_style=go go_import_path=github.com/containers/buildah @@ -9,14 +9,14 @@ go_build_tags=containers_image_ostree_stub hostmakedepends="pkg-config go-md2man" makedepends="libostree-devel libbtrfs-devel device-mapper-devel gpgme-devel libassuan-devel libseccomp-devel" -depends="runc containers.image" +depends="crun containers.image" short_desc="Dockerfile compatible OCI image building tool" maintainer="Cameron Nemo <cnemo@tutanota.com>" license="Apache-2.0" homepage="https://github.com/containers/buildah" changelog="https://github.com/containers/buildah/blob/master/CHANGELOG.md" distfiles="${homepage}/archive/v${version}.tar.gz" -checksum=4f2e737521691abddfff7eaf6d7a7137db019c842de61d68054ccc2a6587c2fd +checksum=6af8fd6ad6fdb515f4f806105c8fe3e4ceda63eaea6e33e3c7ac7b272fe61797 post_build() { make -C docs GOMD2MAN=go-md2man From 148e13de9e8e98aad3fcb2254877a2b9a5c1cb1e Mon Sep 17 00:00:00 2001 From: "Andrew J. Hesford" <ajh@sideband.org> Date: Sat, 3 Apr 2021 00:26:52 -0400 Subject: [PATCH 3/3] podman: update to 3.1.0. --- srcpkgs/podman/INSTALL.msg | 14 ++++---------- srcpkgs/podman/template | 10 +++++----- 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/srcpkgs/podman/INSTALL.msg b/srcpkgs/podman/INSTALL.msg index 6d69c9281eb5..d9090de158e7 100644 --- a/srcpkgs/podman/INSTALL.msg +++ b/srcpkgs/podman/INSTALL.msg @@ -1,21 +1,15 @@ `fuse-overlayfs` has been added as a runtime dependency to podman. podman will now prefer this storage driver to the `vfs` fallback driver. +If you have existing containers that rely on the `vfs` driver, podman +will display an error and refuse any further operation. To switch to the new storage driver, podman has to be reset: # podman system reset -To keep the `vfs` driver, add this to `/etc/containers/storage.conf` -or `~/.config/containers/storage.conf`: +To instead keep using the `vfs` driver, add [storage] driver="vfs" -Otherwise podman will display an error and refuse any further operation. - -Additionally the `btrfs` storage driver has been enabled. This driver is also -available for rootless operation. Reset podman and add the following to your -`storage.conf` to switch to this driver: - - [storage] - driver="btrfs" +to `/etc/containers/storage.conf` or `~/.config/containers/storage.conf`. diff --git a/srcpkgs/podman/template b/srcpkgs/podman/template index ce8b655a444d..7917d4f3a4ab 100644 --- a/srcpkgs/podman/template +++ b/srcpkgs/podman/template @@ -1,20 +1,20 @@ # Template file for 'podman' pkgname=podman -version=3.0.1 -revision=3 +version=3.1.0 +revision=1 build_style=go -go_import_path="github.com/containers/podman/v2" +go_import_path="github.com/containers/podman/v3" go_package="${go_import_path}/cmd/podman" go_build_tags="seccomp apparmor containers_image_ostree_stub" hostmakedepends="pkg-config go-md2man" makedepends="gpgme-devel libseccomp-devel device-mapper-devel libbtrfs-devel" -depends="runc conmon cni-plugins slirp4netns containers.image fuse-overlayfs" +depends="crun conmon cni-plugins slirp4netns containers.image fuse-overlayfs" short_desc="Simple management tool for containers and images" maintainer="Cameron Nemo <cnemo@tutanota.com>" license="Apache-2.0" homepage="https://podman.io/" distfiles="https://github.com/containers/libpod/archive/v${version}.tar.gz" -checksum=259e682d6e90595573fe8880e0252cc8b08c813e19408b911c43383a6edd6852 +checksum=60031aa620cbfab641ffef9cb4e68240a0383c23ffd0276938684e98794bb5db if [ "$CROSS_BUILD" ]; then go_build_tags+=" containers_image_openpgp"
[-- Attachment #1: Type: text/plain, Size: 200 bytes --] New comment by kartikynwa on void-packages repository https://github.com/void-linux/void-packages/pull/29967#issuecomment-812823219 Comment: Thanks for this. I will test this PR out on this Sunday.
[-- Attachment #1: Type: text/plain, Size: 248 bytes --] New comment by lemmi on void-packages repository https://github.com/void-linux/void-packages/pull/29967#issuecomment-812859267 Comment: Ah, I was already wondering, why `CGROUP_MODE=unified` didn't work for me. I'll be giving this a spin aswell.
[-- Attachment #1: Type: text/plain, Size: 469 bytes --] New comment by CameronNemo on void-packages repository https://github.com/void-linux/void-packages/pull/29967#issuecomment-813077254 Comment: runc works fine with cgroup2, and is the more widely deployed option. For some reason the podman ecosystem tries to use crun when cgroup2 is enabled, but that can be adjusted in the config (we already modify the config to not use systemd as the cgroup manager). I am using podman and runc with cgroup2 on one of my machines.
[-- Attachment #1: Type: text/plain, Size: 267 bytes --] New comment by lemmi on void-packages repository https://github.com/void-linux/void-packages/pull/29967#issuecomment-815224244 Comment: Just tested a selection of thing I use `podman` for and notices no problems so far. Works with `unified` crgoups out of the box.
[-- Attachment #1: Type: text/plain, Size: 817 bytes --] New comment by ahesford on void-packages repository https://github.com/void-linux/void-packages/pull/29967#issuecomment-815395416 Comment: I failed to note in the original message that this issue affects rootless containers. It seems `crun` just silently abandons attempts to set cgroups limits when it can't modify them for rootless containers, while `runc` would only do this with cgroups v1; with cgroups v2, the failure is fatal for some reason. I can't find a way to get `runc` working with rootless containers using cgroups v2. However, because this is a nonstandard Void configuration, I'm leaving the `runc` dependency in place. Anybody who makes the effort to modify `rc.conf` and switch to unified cgroups v2 can also install `crun` (and, if desired, ignore and remove `runc`). Closed in c064b7027.
[-- Attachment #1: Type: text/plain, Size: 1249 bytes --] There's a closed pull request on the void-packages repository Update podman, buildah, crun https://github.com/void-linux/void-packages/pull/29967 Description: In addition to the update, I've moved `podman` and `buildah` from `runc` to `crun`. `crun` is produced by the same organization and advertises better speed and lower memory footprint. More importantly, with `void-runit` supporting cgroupsv2-only `CGROUP_MODE=unified` mounts (see `/etc/rc.conf`), `podman` does not work out of the box with `runc` but works just fine with `crun`. In fact, when `crun` is installed alongside `runc`, `buildah` prefers `crun`. I don't know whether `runc` can be made to work with the unified cgroupsv2 mount or whether there are any potential breakages if `runc` is replaced with `crun`. @CameronNemo @kartikynwa @lemmi #### General - [ ] This is a new package and it conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements) #### Have the results of the proposed changes been tested? - [x] I use the packages affected by the proposed changes on a regular basis and confirm this PR works for me - [ ] I generally don't use the affected packages but briefly tested this PR