Software /
code /
prosody
File
tools/build-env/Containerfile @ 13575:750ff9f579e2
mod_c2s, mod_s2s: Support for queuing callbacks to run in session thread
This allows certain session-specific code that needs to run in the async
context, but is itself triggered outside of that context (e.g. timers), to
be queued.
An example of this is the session destruction code of mod_smacks, when the
hibernation timeout is reached.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 21 Nov 2024 17:02:07 +0000 |
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!