registry
  • Joined on 2026-02-10

coder-workspace-qt6webassembly (ba6ac16)

Published 2026-02-10 15:19:58 +00:00 by registry

Installation

docker pull gitea.kloske.eu/registry/coder-workspace-qt6webassembly:ba6ac16
sha256:a351ee05830f7ce8646e85bcef569081e1f988e4779b1e7a0d5df3603bdf5695

About this package

Qt6 WebAssembly C++ Development Environment with QML, CMake, Ninja, Doxygen, and Pandoc

Image Layers

ARG RELEASE
ARG LAUNCHPAD_BUILD_ARCH
LABEL org.opencontainers.image.ref.name=ubuntu
LABEL org.opencontainers.image.version=24.04
ADD file:3077ee44db3cc7d38740d60a05c81418dd3825a007db473658464f52689e867b in /
CMD ["/bin/bash"]
RUN /bin/sh -c sed -i 's|http://archive.ubuntu.com/ubuntu/|http://synology.fritz.box:8080/mirror/archive.ubuntu.com/ubuntu/|g' /etc/apt/sources.list.d/ubuntu.sources && sed -i 's|http://security.ubuntu.com/ubuntu/|http://synology.fritz.box:8080/mirror/archive.ubuntu.com/ubuntu/|g' /etc/apt/sources.list.d/ubuntu.sources # buildkit
ARG VERSION=0.0.1
ARG BUILD_DATE=2026-02-10T14:58:57Z
ARG GIT_COMMIT=ba6ac16
ARG QT_VERSION=6.6.1
ARG EMSDK_VERSION=3.1.50
LABEL org.opencontainers.image.title=Coder Workspace - Qt6 WebAssembly
LABEL org.opencontainers.image.description=Qt6 WebAssembly C++ Development Environment with QML, CMake, Ninja, Doxygen, and Pandoc
LABEL org.opencontainers.image.version=0.0.1
LABEL org.opencontainers.image.created=2026-02-10T14:58:57Z
LABEL org.opencontainers.image.revision=ba6ac16
LABEL org.opencontainers.image.authors=Markus
LABEL workspace.type=qt6-webassembly
LABEL workspace.qt.version=6.6.1
LABEL workspace.emscripten.version=3.1.50
ENV DEBIAN_FRONTEND=noninteractive
ENV QT_VERSION=6.6.1
ENV EMSDK_VERSION=3.1.50
ENV EMSDK=/opt/emsdk
ENV PATH=/opt/emsdk:/opt/emsdk/upstream/emscripten:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ENV QT_HOST_PATH=/opt/qt6
ENV Qt6_DIR=/opt/qt6-wasm
ENV CMAKE_PREFIX_PATH=/opt/qt6-wasm
ENV WORKSPACE_VERSION=0.0.1
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c apt-get update && apt-get install -y sudo && rm -rf /var/lib/apt/lists/* && (getent group 1000 && groupmod -n coder $(getent group 1000 | cut -d: -f1) || groupadd --gid 1000 coder) && (getent passwd 1000 && usermod -l coder -d /home/coder -m $(getent passwd 1000 | cut -d: -f1) && usermod -g coder coder || useradd --uid 1000 --gid 1000 -m -s /bin/bash coder) && mkdir -p /etc/sudoers.d && echo "coder ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/coder && chmod 0440 /etc/sudoers.d/coder # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c apt-get update && apt-get install -y build-essential gcc g++ gdb make cmake ninja-build git git-lfs python3 python3-pip python3-venv python3-dev doxygen doxygen-gui graphviz pandoc texlive-latex-base texlive-latex-extra texlive-fonts-recommended libgl1-mesa-dev libglu1-mesa-dev libxkbcommon-dev libxkbcommon-x11-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-render-util0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev libxcb-cursor-dev libfontconfig1-dev libfreetype6-dev libx11-dev libx11-xcb-dev libxext-dev libxfixes-dev libxi-dev libxrender-dev libxcb1-dev libxcb-glx0-dev libxcb-util0-dev wget curl unzip zip file pkg-config ca-certificates nodejs npm vim nano htop && apt-get clean && rm -rf /var/lib/apt/lists/* && rm -rf /tmp/* /var/tmp/* # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c git clone https://github.com/emscripten-core/emsdk.git ${EMSDK} && cd ${EMSDK} && ./emsdk install ${EMSDK_VERSION} && ./emsdk activate ${EMSDK_VERSION} && chmod +x ${EMSDK}/emsdk_env.sh && chown -R coder:coder ${EMSDK} # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c echo "source ${EMSDK}/emsdk_env.sh" >> /etc/bash.bashrc # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c mkdir -p /opt/qt6 /opt/qt6-wasm /opt/qt-src && chown -R coder:coder /opt/qt6 /opt/qt6-wasm /opt/qt-src # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c pip3 install --no-cache-dir --break-system-packages aqtinstall && su - coder -c "aqt install-qt linux desktop ${QT_VERSION} gcc_64 -m qtcharts qtdatavis3d qtlottie qtnetworkauth qtpositioning qtquick3d qtquicktimeline qtscxml qtvirtualkeyboard qtwebsockets -O /opt/qt6" && su - coder -c "aqt install-qt linux desktop ${QT_VERSION} wasm_multithread -m qtcharts qtdatavis3d qtlottie qtquick3d qtquicktimeline qtscxml qtvirtualkeyboard qtwebsockets -O /opt/qt6-wasm" # buildkit
ENV PATH=/opt/qt6/6.6.1/gcc_64/bin:/opt/qt6-wasm/6.6.1/wasm_multithread/bin:/opt/emsdk:/opt/emsdk/upstream/emscripten:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ENV LD_LIBRARY_PATH=/opt/qt6/6.6.1/gcc_64/lib:/opt/qt6-wasm/6.6.1/wasm_multithread/lib:
ENV QT_PLUGIN_PATH=/opt/qt6/6.6.1/gcc_64/plugins:/opt/qt6-wasm/6.6.1/wasm_multithread/plugins
ENV QML_IMPORT_PATH=/opt/qt6/6.6.1/gcc_64/qml:/opt/qt6-wasm/6.6.1/wasm_multithread/qml
ENV QML2_IMPORT_PATH=/opt/qt6/6.6.1/gcc_64/qml:/opt/qt6-wasm/6.6.1/wasm_multithread/qml
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c . ${EMSDK}/emsdk_env.sh && emcc --version # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c pip3 install --no-cache-dir --break-system-packages conan gcovr cppcheck pylint black # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c echo 'alias qt-config="qmake -query"' >> /etc/bash.bashrc && echo 'alias cmake-qt-wasm="cmake -DCMAKE_TOOLCHAIN_FILE=${EMSDK}/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake"' >> /etc/bash.bashrc && echo 'alias ls="ls --color=auto"' >> /etc/bash.bashrc && echo 'alias ll="ls -lah"' >> /etc/bash.bashrc # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c cat > /usr/local/bin/build-qt-wasm.sh << 'EOF' #!/bin/bash # Qt6 WebAssembly build helper script set -e echo "=== Qt6 WebAssembly Build Environment ===" echo "Qt Version: ${QT_VERSION}" echo "Emscripten Version: ${EMSDK_VERSION}" echo "CMake Version: $(cmake --version | head -n1)" echo "Ninja Version: $(ninja --version)" echo "" if [ -z "$1" ]; then echo "Usage: build-qt-wasm.sh <project-directory>" echo "" echo "This script will:" echo " 1. Create a build directory" echo " 2. Configure with CMake using Emscripten toolchain" echo " 3. Build the project with Ninja" exit 1 fi PROJECT_DIR="$1" BUILD_DIR="${PROJECT_DIR}/build-wasm" echo "Project: ${PROJECT_DIR}" echo "Build directory: ${BUILD_DIR}" echo "" # Source Emscripten environment source ${EMSDK}/emsdk_env.sh # Create and enter build directory mkdir -p "${BUILD_DIR}" cd "${BUILD_DIR}" # Configure with CMake echo "=== Configuring with CMake ===" cmake "${PROJECT_DIR}" \ -GNinja \ -DCMAKE_TOOLCHAIN_FILE=${EMSDK}/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake \ -DCMAKE_BUILD_TYPE=Release \ -DQt6_DIR=/opt/qt6-wasm/${QT_VERSION}/wasm_multithread/lib/cmake/Qt6 \ -DCMAKE_PREFIX_PATH=/opt/qt6-wasm/${QT_VERSION}/wasm_multithread # Build echo "=== Building with Ninja ===" ninja echo "" echo "=== Build completed successfully! ===" echo "Output files are in: ${BUILD_DIR}" EOF # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c chmod +x /usr/local/bin/build-qt-wasm.sh # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c cat > /usr/local/bin/show-versions.sh << 'EOF' #!/bin/bash echo "╔════════════════════════════════════════════════════════════╗" echo "║ Qt6 WebAssembly Development Environment ║" echo "╚════════════════════════════════════════════════════════════╝" echo "" echo "Development Tools:" echo " • GCC: $(gcc --version | head -n1)" echo " • G++: $(g++ --version | head -n1)" echo " • CMake: $(cmake --version | head -n1)" echo " • Ninja: $(ninja --version)" echo " • Git: $(git --version)" echo " • Python: $(python3 --version)" echo " • Doxygen: $(doxygen --version)" echo " • Pandoc: $(pandoc --version | head -n1)" echo "" echo "WebAssembly:" source ${EMSDK}/emsdk_env.sh > /dev/null 2>&1 echo " • Emscripten: $(emcc --version | head -n1)" echo "" echo "Qt6:" echo " • Qt Version: ${QT_VERSION}" echo " • Qt Host: /opt/qt6/${QT_VERSION}/gcc_64" echo " • Qt WASM: /opt/qt6-wasm/${QT_VERSION}/wasm_multithread" echo "" echo "Usage:" echo " build-qt-wasm.sh <project-directory> - Build Qt WebAssembly project" echo " qmake -query - Show Qt configuration" echo "" echo "Ready to develop! 🚀" echo "" EOF # buildkit
RUN |5 VERSION=0.0.1 BUILD_DATE=2026-02-10T14:58:57Z GIT_COMMIT=ba6ac16 QT_VERSION=6.6.1 EMSDK_VERSION=3.1.50 /bin/sh -c chmod +x /usr/local/bin/show-versions.sh # buildkit
ENV http_proxy=http://tinyproxy:8888
ENV https_proxy=http://tinyproxy:8888
ENV HTTP_PROXY=http://tinyproxy:8888
ENV HTTPS_PROXY=http://tinyproxy:8888
ENV no_proxy=localhost,127.0.0.1,.local,.fritz.box
ENV NO_PROXY=localhost,127.0.0.1,.local,.fritz.box
WORKDIR /home/coder
USER coder
HEALTHCHECK &{["CMD-SHELL" "emcc --version && cmake --version && ninja --version || exit 1"] "30s" "3s" "5s" "0s" '\x03'}
EXPOSE map[3000/tcp:{} 8000/tcp:{} 8080/tcp:{}]
CMD ["/bin/bash"]

Labels

Key Value
org.opencontainers.image.authors Markus
org.opencontainers.image.created 2026-02-10T14:58:57Z
org.opencontainers.image.description Qt6 WebAssembly C++ Development Environment with QML, CMake, Ninja, Doxygen, and Pandoc
org.opencontainers.image.ref.name ubuntu
org.opencontainers.image.revision ba6ac16
org.opencontainers.image.title Coder Workspace - Qt6 WebAssembly
org.opencontainers.image.version 0.0.1
workspace.emscripten.version 3.1.50
workspace.qt.version 6.6.1
workspace.type qt6-webassembly
Details
Container
2026-02-10 15:19:58 +00:00
0
OCI / Docker
linux/amd64
Markus
1.7 GiB
Versions (3) View all
ba6ac16 2026-02-10
latest 2026-02-10
0.0.1 2026-02-10