File

tools/build-env/Containerfile @ 13671:0c8c1a8338d1 13.0

core.configmanager: Delay reporting warnings about Credential until use Too much noise to use Credential if you get a pile of warnings every time you touch prosodyctl for anything. This way warnings should be printed only if e.g used by prosodyctl check config or a module command.
author Kim Alvefur <zash@zash.se>
date Wed, 12 Feb 2025 22:35:39 +0100
parent 13323:7bfd6db52528
line wrap: on
line source

ARG os
ARG dist
FROM ${os:-debian}:${dist:-sid}
ENV DEBIAN_FRONTEND noninteractive
RUN set -ex; \
	apt-get update; \
	apt-get install -y --no-install-recommends \
	ccache dh-lua libicu-dev libidn11-dev libssl-dev \
	lua-bitop lua-dbi-mysql lua-dbi-postgresql lua-dbi-sqlite3 \
	lua-event lua-expat lua-filesystem lua-ldap lua-sec lua-socket \
	luarocks shellcheck mercurial; \
	apt-get install -y ca-certificates dns-root-data; \
	apt-get install -y lua-bit32 || true; \
	apt-get install -y lua-busted || true; \
	apt-get install -y lua-check || true; \
	apt-get install -y lua-readline || true; \
	apt-get install -y lua-unbound || true; \
	update-alternatives --set lua-interpreter /usr/bin/lua5.4 || true \
	apt-get clean

# Place this file in an empty directory and build the image with
# podman build . -t prosody.im/build-env
#
# Substituting podman for docker should work, where that is what's available.
#
# Then in a source directory, run:
# podman run -it --rm -v "$PWD:$PWD" -w "$PWD" --entrypoint /bin/bash \
#            --userns=keep-id --network host prosody.im/build-env
#
# In the resulting environment everything required to compile and run prosody
# is available, so e.g. `./configure; make; ./prosody` should Just Work!