lxc: set RUNTIME_PATH define to the /var/run path
authorRafał Miłecki <redacted>
Sat, 8 Apr 2023 16:18:55 +0000 (18:18 +0200)
committerRosen Penev <redacted>
Thu, 11 May 2023 15:23:23 +0000 (18:23 +0300)
The default runtime directory used by LXC is /run which doesn't exist
in OpenWrt. It causes errors like:

Failed to create lock for foo
lxc-create: foo: tools/lxc_create.c: main: 260 Failed to create lxc container

There has been workaround for that in the lxc-auto.init but it requires
installing "lxc-auto" package. Replacing that "ln -s" workaround with
Makefile specifying RUNTIME_PATH define allows using pure "lxc" in
OpenWrt (without the "lxc-auto").

Signed-off-by: Rafał Miłecki <redacted>
utils/lxc/Makefile
utils/lxc/files/lxc-auto.init

index 15ebd3001a27bfb585623a00de5133637b9db0ef..dcb2a79e16100c5031e3cda29c2ccf67224d558c 100644 (file)
@@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=lxc
 PKG_VERSION:=5.0.2
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://linuxcontainers.org/downloads/lxc/
@@ -33,7 +33,8 @@ MESON_ARGS += \
        -Dselinux=false \
        -Dseccomp=$(if $(CONFIG_LXC_SECCOMP),true,false) \
        -Dexamples=false \
-       -Db_pie=true
+       -Db_pie=true \
+       -Druntime-path=/var/run
 
 LXC_APPLETS_BIN += \
        attach autostart cgroup copy config console create destroy device \
index 4983c5919663febf59ff065ee7d2dbb195ef8a85..14fe2c509b87bb2918f347208c01f1289457d0cb 100755 (executable)
@@ -69,9 +69,5 @@ boot() {
                mount -t cgroup -o rw,nosuid,nodev,noexec,relatime,none,name=systemd cgroup /sys/fs/cgroup/systemd
        fi
 
-       if [ ! -d /run ]; then
-               ln -s /var/run /run
-       fi
-
        start
 }
git clone https://git.99rst.org/PROJECT