processone / processone/ejabberd
The 26.07 OCI image under this repository is built for 32-bit intel CPUs
Nobody has claimed this yet.
- Dominant language
- Erlang
- Stars
- 6.7k
- Forks
- 1.6k
- PR merge metrics
- No merged PRs in 30d
Description
Environment
- ejabberd version: 26.07
- OS: Amenity (Personal Alma Linux derivative with hardening options) 10.1
- Installed from: Container image under
ghcr.io/processone/ejabberd
Bug description
The binaries shipped in the container image under amd64 are for the wrong CPU architecture. While AMD64 is compatible with IA32, it poses a problem for setups where for security reasons 32-bit compatibility is enabled.
Verification / Reproduction steps
- Pull
ejabberd:26.07@sha256:25c94886b2d0083ec7c4b3372f639c1d0f43cd68b3601a706675c11c604fb0a7, which is listed at https://github.com/processone/ejabberd/pkgs/container/ejabberd/1082859162?tag=26.07 as alinux/amd64image. podman unshare->podman image mount $IMAGE_FROM_PREVIOUS_STEP, or mount using alternative mechanisms for inspection.- From the root of the image run
file sbin/tini, or any other binary on the system.
Expected
The output goes something like this, as taken from the previous version of the ejabberd image (26.04)
sbin/tini: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-musl-x86_64.so.1, BuildID[sha1]=a5f43fd7973646f055d7152b1d8cafe9b660d17e, stripped
Actual behaviour
The output is the following: sbin/tini: ELF 32-bit LSB pie executable, Intel i386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-musl-i386.so.1, BuildID[sha1]=b84233c312273779a709ee660023695c4674d375, stripped, meaning that the OS image is NOT natively amd64.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the OCI image build and CI entry points for the 26.07 ejabberd image, then compare them with the 26.04 image that produced 64-bit binaries. Rebuild or inspect the resulting image with file sbin/tini and verify that the linux/amd64 image reports an ELF 64-bit x86-64 binary rather than Intel i386.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker
- Domain
- build-system, devops
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100