From b8170ea851ddf63271195fc19589629593c0962d Mon Sep 17 00:00:00 2001 From: "Darryl L. Miles" Date: Tue, 5 Aug 2025 18:59:59 +0100 Subject: [PATCH] appimage: README.md update (add example on how to run inside docker) While AppImage attempts to be a more portable way of running applications across linux installations, sometime is maybe necessary to run inside docker. So examples are provided, which also provides testing regime to validate how the AppImage can be quickly tested. --- appimage/10/README.md | 21 ++++++++++++++++++++- appimage/7/README.md | 28 ++++++++++++++++++++++++++++ appimage/8/README.md | 20 ++++++++++++++++++++ appimage/9/README.md | 19 +++++++++++++++++++ 4 files changed, 87 insertions(+), 1 deletion(-) diff --git a/appimage/10/README.md b/appimage/10/README.md index 1b27c773..26b35a29 100644 --- a/appimage/10/README.md +++ b/appimage/10/README.md @@ -2,7 +2,7 @@ This is an AppImage that runs on all GNU/Linux platforms with: * FUSE * This excludes non-privileged Docker containers unfortunately, unless pre-extracted. -* GLIBC 2.39+ +* GLIBC 2.38+ * Cairo 1.18+ * May require runtime CPU matching Linux ABI x86-64-v3 and newer (CPUs with SSE4.2/AVX2/BMI2/FMA via `lscpu`). @@ -39,6 +39,25 @@ Example startup with command line options: ./Magic-x86_64.AppImage -d XR -T scmos ``` +# FAQ: How to use (inside docker / podman) + +``` +chmod +x Magic-x86_64.AppImage + +### Podman or Docker, use :Z when rootless with selinux enabled +podman run --rm --device /dev/fuse --privileged \ + -v "$(pwd):/tmp/work:Z" -v "/tmp/.X11-unix/X0:/tmp/.X11-unix/X0:Z" \ + -e DISPLAY -ti almalinux:10 + +### Inside Docker: +dnf update -y + +dnf install -y fuse libX11 cairo libGL libGLU + +cd /tmp/work + +./Magic-x86_64.AppImage -d XR -T scmos +``` # Building Requirements diff --git a/appimage/7/README.md b/appimage/7/README.md index b7d1e9bd..1bc05729 100644 --- a/appimage/7/README.md +++ b/appimage/7/README.md @@ -39,6 +39,34 @@ Example startup with command line options: ./Magic-x86_64.AppImage -d XR -T scmos ``` +# FAQ: How to use (inside docker / podman) + +``` +chmod +x Magic-x86_64.AppImage + +### Podman or Docker, use :Z when rootless with selinux enabled +podman run --rm --device /dev/fuse --privileged \ + -v "$(pwd):/tmp/work:Z" -v "/tmp/.X11-unix/X0:/tmp/.X11-unix/X0:Z" \ + -e DISPLAY -ti centos:7 + +### Inside Docker: +echo "FIXUP yum from vault and update" \ + && ls -l /etc/yum.repos.d/ \ + && cp /etc/yum.repos.d/CentOS-Base.repo /tmp/CentOS-Base.repo.old \ + && sed -e 's/mirror.centos.org/vault.centos.org/g' -i /etc/yum.repos.d/*.repo \ + && sed -e 's/^#.*baseurl=http/baseurl=http/g' -i /etc/yum.repos.d/*.repo \ + && sed -e 's/^mirrorlist=http/#mirrorlist=http/g' -i /etc/yum.repos.d/*.repo \ + && diff -u /tmp/CentOS-Base.repo.old /etc/yum.repos.d/CentOS-Base.repo; \ + yum clean all \ + && yum -y update \ + && rm -f /tmp/CentOS-Base.repo.old + +yum install -y fuse libX11 cairo + +cd /tmp/work + +./Magic-x86_64.AppImage -d XR -T scmos +``` # Building Requirements diff --git a/appimage/8/README.md b/appimage/8/README.md index d8a2b7c6..97dad988 100644 --- a/appimage/8/README.md +++ b/appimage/8/README.md @@ -4,6 +4,7 @@ This is an AppImage that runs on all GNU/Linux platforms with: * This excludes non-privileged Docker containers unfortunately, unless pre-extracted. * GLIBC 2.28+ * Cairo 1.15+ +* Supports all Linux x86_64 CPUs This AppImage build is based on EL8 (via AlmaLinux 8) @@ -38,6 +39,25 @@ Example startup with command line options: ./Magic-x86_64.AppImage -d XR -T scmos ``` +# FAQ: How to use (inside docker / podman) + +``` +chmod +x Magic-x86_64.AppImage + +### Podman or Docker, use :Z when rootless with selinux enabled +podman run --rm --device /dev/fuse --privileged \ + -v "$(pwd):/tmp/work:Z" -v "/tmp/.X11-unix/X0:/tmp/.X11-unix/X0:Z" \ + -e DISPLAY -ti almalinux:8 + +### Inside Docker: +dnf update -y + +dnf install -y fuse libX11 cairo libGL libGLU + +cd /tmp/work + +./Magic-x86_64.AppImage -d XR -T scmos +``` # Building Requirements diff --git a/appimage/9/README.md b/appimage/9/README.md index ae8de115..30acbe46 100644 --- a/appimage/9/README.md +++ b/appimage/9/README.md @@ -41,6 +41,25 @@ Example startup with command line options: ./Magic-x86_64.AppImage -d XR -T scmos ``` +# FAQ: How to use (inside docker / podman) + +``` +chmod +x Magic-x86_64.AppImage + +### Podman or Docker, use :Z when rootless with selinux enabled +podman run --rm --device /dev/fuse --privileged \ + -v "$(pwd):/tmp/work:Z" -v "/tmp/.X11-unix/X0:/tmp/.X11-unix/X0:Z" \ + -e DISPLAY -ti almalinux:9 + +### Inside Docker: +dnf update -y + +dnf install -y fuse libX11 cairo libGL libGLU + +cd /tmp/work + +./Magic-x86_64.AppImage -d XR -T scmos +``` # Building Requirements