Christoph Urlacher christoph
  • Dortmund, Germany
  • CS student at TU-Dortmund

  • Joined on 2023-11-08

fail-demo (sha256:302ba032cf286d4760a372bfb034247152c131152f468d3afc5ec47db29fa6bf)

Published 2026-02-09 13:12:53 +01:00 by christoph in christoph/fail

Installation

docker pull gitea.vps.chriphost.de/christoph/fail-demo@sha256:302ba032cf286d4760a372bfb034247152c131152f468d3afc5ec47db29fa6bf
sha256:302ba032cf286d4760a372bfb034247152c131152f468d3afc5ec47db29fa6bf

Image Layers

ARG RELEASE
ARG LAUNCHPAD_BUILD_ARCH
LABEL org.opencontainers.image.ref.name=ubuntu
LABEL org.opencontainers.image.version=22.04
ADD file:b499000226bd9a7c562ffa8eeb86e2d170f2a563310db6c2d79562ab53e5cb6e in /
CMD ["/bin/bash"]
LABEL org.opencontainers.image.authors=Christian Dietrich <stettberger@dokucode.de>
RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive TZ=Europe/Berlin apt-get install -y --no-install-recommends build-essential ca-certificates cmake cmake-curses-gui wget git doxygen screen openssh-server neovim ranger # buildkit
RUN /bin/sh -c git clone https://github.com/llvm/llvm-project.git && cd llvm-project && git checkout llvmorg-6.0.0 && mkdir build && cd build && cmake -G "Unix Makefiles" ../llvm -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_TERMINFO=OFF -DLLVM_ENABLE_CURSES=OFF -DLLVM_ENABLE_PROJECTS="clang;lld" && make -j$(nproc) && make install && cd / && rm -rf ./llvm-project # buildkit
RUN /bin/sh -c DEBIAN_FRONTEND=noninteractive TZ=Europe/Berlin apt-get install -y --no-install-recommends libmysqlclient-dev libprotobuf-dev libtinfo-dev libpcl1-dev libdwarf-dev libelf-dev libiberty-dev libboost-thread-dev libboost-system-dev libboost-regex-dev libboost-coroutine-dev libboost-context-dev libfontconfig1-dev zlib1g-dev libz3-dev libsdl1.2-dev libgtk2.0-dev libwxgtk3.0-gtk3-dev libncurses-dev libx11-dev xorg-dev libasound2-dev # buildkit
RUN /bin/sh -c DEBIAN_FRONTEND=noninteractive TZ=Europe/Berlin apt-get install -y --no-install-recommends protobuf-compiler libtinfo6 libmariadb3 libprotobuf23 libncurses6 && apt-get clean # buildkit
RUN /bin/sh -c useradd fail && mkdir /home/fail && chown fail /home/fail && echo 'fail:fail' | chpasswd && chsh fail --shell /bin/bash && adduser fail sudo # buildkit
RUN /bin/sh -c mkdir /var/run/sshd && sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd # buildkit
ENV NOTVISIBLE=in users profile
RUN /bin/sh -c echo "export VISIBLE=now" >> /etc/profile # buildkit
USER fail
ENV HOME=/home/fail
WORKDIR /home/fail
ARG acversion=2.5
RUN |1 acversion=2.5 /bin/sh -c wget http://www.aspectc.org/releases/"$acversion"/ac-bin-linux-x86-64bit-"$acversion".tar.gz && tar xvzf ac-bin-linux-x86-64bit-"$acversion".tar.gz && mkdir bin && mv aspectc++/ac++ aspectc++/ag++ bin/ && rm -rf aspectc++ && rm -rf ac-bin-linux-x86-64bit-"$acversion".tar.gz # buildkit
ENV PATH=/home/fail/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ARG CACHE_DATE=Mo 9. Feb 13:04:24 CET 2026
RUN |2 acversion=2.5 CACHE_DATE=Mo 9. Feb 13:04:24 CET 2026 /bin/sh -c git clone https://gitea.vps.chriphost.de/christoph/fail # buildkit
WORKDIR /home/fail/fail
USER root
EXPOSE [22/tcp]
CMD ["/usr/sbin/sshd" "-D"]
LABEL org.opencontainers.image.authors=Christian Dietrich <stettberger@dokucode.de>
USER fail
ENV PATH=/home/fail/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
WORKDIR /home/fail/fail
RUN /bin/sh -c mkdir build-tracer && cd build-tracer # buildkit
WORKDIR /home/fail/fail/build-tracer
RUN /bin/sh -c cmake -DAGXX=/home/fail/bin/ag++ -DBOOST_THREAD_LIBRARY=/usr/lib/x86_64-linux-gnu/libpthread.so -DBUILD_ARM=OFF -DBUILD_BOCHS=ON -DBUILD_CAPSTONE_DISASSEMBLER=OFF -DBUILD_COMPUTE_HOPS=OFF -DBUILD_CONVERT_TRACE=OFF -DBUILD_DATA_AGGREGATOR=OFF -DBUILD_DUMP_HOPS=OFF -DBUILD_DUMP_TRACE=ON -DBUILD_FAULTSPACEPLOT=OFF -DBUILD_GEM5=OFF -DBUILD_IMPORT_TRACE=ON -DBUILD_LLVM_DISASSEMBLER=ON -DBUILD_PANDA=OFF -DBUILD_PRUNE_TRACE=ON -DBUILD_QEMU=OFF -DBUILD_T32=OFF -DBUILD_X86=ON -DCLIENT_JOB_INITIAL=1 -DCLIENT_JOB_LIMIT=1000 -DCLIENT_JOB_REQUEST_SEC=30 -DCLIENT_RAND_BACKOFF_TEND=8 -DCLIENT_RAND_BACKOFF_TSTART=3 -DCLIENT_RETRY_COUNT=3 -DCMAKE_AGPP_FLAGS="-D__NO_MATH_INLINES" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DCONFIG_BOCHS_COMPRESS_STATE=ON -DCONFIG_BOCHS_NON_VERBOSE=OFF -DCONFIG_BOCHS_NO_ABORT=ON -DCONFIG_DISABLE_KEYB_INTERRUPTS=OFF -DCONFIG_EVENT_BREAKPOINTS=ON -DCONFIG_EVENT_BREAKPOINTS_RANGE=ON -DCONFIG_EVENT_GUESTSYS=ON -DCONFIG_EVENT_INTERRUPT=ON -DCONFIG_EVENT_IOPORT=ON -DCONFIG_EVENT_JUMP=OFF -DCONFIG_EVENT_MEMREAD=ON -DCONFIG_EVENT_MEMWRITE=ON -DCONFIG_EVENT_TRAP=ON -DCONFIG_FAST_BREAKPOINTS=ON -DCONFIG_FAST_WATCHPOINTS=ON -DCONFIG_FIRE_INTERRUPTS=ON -DCONFIG_INJECTIONPOINT_HOPS=OFF -DCONFIG_SR_REBOOT=ON -DCONFIG_SR_RESTORE=ON -DCONFIG_SR_SAVE=ON -DCONFIG_SUPPRESS_INTERRUPTS=ON -DENABLE_DATABASE_TESTS=OFF -DEXPERIMENTS_ACTIVATED="generic-tracing" -DLibIberty_INCLUDE_DIRS=/usr/include/libiberty -DLibIberty_LIBRARIES=/usr/lib/x86_64-linux-gnu/libiberty.a -DMYSQL_CONFIG=/usr/bin/mysql_config -DMYSQL_CONFIG_PREFER_PATH=/bin -DPLUGINS_ACTIVATED="tracing;serialoutput" -DSERVER_COMM_HOSTNAME=localhost -DSERVER_COMM_TCP_PORT=1111 -DSERVER_OUT_QUEUE_SIZE=0 -DSERVER_PERFORMANCE_MEASURE=OFF -DSERVER_PERF_LOG_PATH=perf.log -DSERVER_PERF_STEPPING_SEC=1 -DTEST_MYSQL_DATABASE=fail_test -DTEST_MYSQL_HOST=localhost -DTEST_MYSQL_PASSWORD=fail_test -DTEST_MYSQL_PORT=3306 -DTEST_MYSQL_USER=fail_test -DVERBOSE_MAKE=OFF -D_filename=/usr/include/wx-3.0/wx/version.h -Dbochs_configure_params="--enable-a20-pin;--enable-x86-64;--enable-cpu-level=6;--enable-ne2000;--enable-acpi;--enable-pci;--enable-usb;--enable-trace-cache;--enable-fast-function-calls;--enable-host-specific-asms;--enable-disasm;--enable-readline;--enable-clgd54xx;--enable-fpu;--enable-vmx=2;--enable-monitor-mwait;--enable-cdrom;--enable-sb16=linux;--enable-gdb-stub;--disable-docbook;--with-nogui;--with-x11;--with-wx;--with-sdl" -Dbochs_install_prefix=/home/fail/fail/simulators/bochs/install .. # buildkit
RUN /bin/sh -c cmake --build . --target libfailbochs_external-configure -- -j$(nproc) && cmake --build . -- -j$(nproc) # buildkit
RUN /bin/sh -c ln -s /home/fail/fail/build-tracer/bin/fail-client /home/fail/bin/generic-tracing-client && ln -s /home/fail/fail/build-tracer/bin/import-trace /home/fail/bin/ && ln -s /home/fail/fail/build-tracer/bin/prune-trace /home/fail/bin/ && ln -s /home/fail/fail/build-tracer/bin/dump-trace /home/fail/bin/ && ln -s /home/fail/fail/build-tracer/bin/convert-trace /home/fail/bin/ && ln -s /home/fail/fail/tools/bochs-experiment-runner/bochs-experiment-runner.py /home/fail/bin/ && chmod a+x /home/fail/bin/bochs-experiment-runner.py # buildkit
USER root
LABEL org.opencontainers.image.authors=Christian Dietrich <stettberger@dokucode.de>
ADD my.cnf /home/fail/.my.cnf # buildkit
RUN /bin/sh -c chown fail /home/fail/.my.cnf # buildkit
USER fail
WORKDIR /home/fail
RUN /bin/sh -c echo 'export PATH=$HOME/bin:$PATH' >> ~/.profile && echo 'cd $HOME/fail-wasm/examples' >> ~/.profile # buildkit
WORKDIR /home/fail/fail
RUN /bin/sh -c mkdir build; cd build # buildkit
WORKDIR /home/fail/fail/build
RUN /bin/sh -c cmake -DAGXX=/home/fail/bin/ag++ -DBOOST_THREAD_LIBRARY=/usr/lib/x86_64-linux-gnu/libpthread.so -DBUILD_ARM=OFF -DBUILD_BOCHS=ON -DBUILD_CAPSTONE_DISASSEMBLER=OFF -DBUILD_COMPUTE_HOPS=OFF -DBUILD_CONVERT_TRACE=OFF -DBUILD_DATA_AGGREGATOR=OFF -DBUILD_DUMP_HOPS=OFF -DBUILD_DUMP_TRACE=OFF -DBUILD_FAULTSPACEPLOT=OFF -DBUILD_GEM5=OFF -DBUILD_IMPORT_TRACE=OFF -DBUILD_LLVM_DISASSEMBLER=ON -DBUILD_PANDA=OFF -DBUILD_PRUNE_TRACE=OFF -DBUILD_QEMU=OFF -DBUILD_T32=OFF -DBUILD_X86=ON -DCLIENT_JOB_INITIAL=1 -DCLIENT_JOB_LIMIT=1000 -DCLIENT_JOB_REQUEST_SEC=30 -DCLIENT_RAND_BACKOFF_TEND=8 -DCLIENT_RAND_BACKOFF_TSTART=3 -DCLIENT_RETRY_COUNT=3 -DCMAKE_AGPP_FLAGS="-D__NO_MATH_INLINES" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DCONFIG_BOCHS_COMPRESS_STATE=ON -DCONFIG_BOCHS_NON_VERBOSE=OFF -DCONFIG_BOCHS_NO_ABORT=ON -DCONFIG_DISABLE_KEYB_INTERRUPTS=OFF -DCONFIG_EVENT_BREAKPOINTS=ON -DCONFIG_EVENT_BREAKPOINTS_RANGE=ON -DCONFIG_EVENT_GUESTSYS=ON -DCONFIG_EVENT_INTERRUPT=ON -DCONFIG_EVENT_IOPORT=ON -DCONFIG_EVENT_JUMP=OFF -DCONFIG_EVENT_MEMREAD=ON -DCONFIG_EVENT_MEMWRITE=ON -DCONFIG_EVENT_TRAP=ON -DCONFIG_FAST_BREAKPOINTS=ON -DCONFIG_FAST_WATCHPOINTS=ON -DCONFIG_FIRE_INTERRUPTS=ON -DCONFIG_INJECTIONPOINT_HOPS=OFF -DCONFIG_SR_REBOOT=ON -DCONFIG_SR_RESTORE=ON -DCONFIG_SR_SAVE=ON -DCONFIG_SUPPRESS_INTERRUPTS=ON -DENABLE_DATABASE_TESTS=OFF -DEXPERIMENTS_ACTIVATED="generic-experiment" -DLibIberty_INCLUDE_DIRS=/usr/include/libiberty -DLibIberty_LIBRARIES=/usr/lib/x86_64-linux-gnu/libiberty.a -DMYSQL_CONFIG=/usr/bin/mysql_config -DMYSQL_CONFIG_PREFER_PATH=/bin -DPLUGINS_ACTIVATED="serialoutput" -DSERVER_COMM_HOSTNAME=localhost -DSERVER_COMM_TCP_PORT=1111 -DSERVER_OUT_QUEUE_SIZE=0 -DSERVER_PERFORMANCE_MEASURE=OFF -DSERVER_PERF_LOG_PATH=perf.log -DSERVER_PERF_STEPPING_SEC=1 -DTEST_MYSQL_DATABASE=fail_test -DTEST_MYSQL_HOST=localhost -DTEST_MYSQL_PASSWORD=fail_test -DTEST_MYSQL_PORT=3306 -DTEST_MYSQL_USER=fail_test -DVERBOSE_MAKE=OFF -D_filename=/usr/include/wx-3.0/wx/version.h -Dbochs_configure_params="--enable-a20-pin;--enable-x86-64;--enable-cpu-level=6;--enable-ne2000;--enable-acpi;--enable-pci;--enable-usb;--enable-trace-cache;--enable-fast-function-calls;--enable-host-specific-asms;--enable-disasm;--enable-readline;--enable-clgd54xx;--enable-fpu;--enable-vmx=2;--enable-monitor-mwait;--enable-cdrom;--enable-sb16=linux;--enable-gdb-stub;--disable-docbook;--with-nogui;--with-x11;--with-wx;--with-sdl" -Dbochs_install_prefix=/home/fail/fail/simulators/bochs/install .. # buildkit
RUN /bin/sh -c cmake --build . --target libfailbochs_external-configure -- -j$(nproc) && cmake --build . -- -j$(nproc) # buildkit
RUN /bin/sh -c ln -s /home/fail/fail/build/bin/fail-client /home/fail/bin/generic-experiment-client && ln -s /home/fail/fail/build/bin/generic-experiment-server /home/fail/bin/ && ln -s /home/fail/fail/tools/analysis/resultbrowser/run.py /home/fail/bin/resultbrowser.py # buildkit
USER root
RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive TZ=Europe/Berlin apt-get install -y --no-install-recommends grub-common xorriso grub-pc-bin mysql-client python2-minimal python2-dev unzip bochs && apt-get clean # buildkit
RUN /bin/sh -c ln -sf /usr/bin/python2 /usr/bin/python # buildkit
RUN /bin/sh -c wget https://bootstrap.pypa.io/pip/2.7/get-pip.py && python2 get-pip.py && wget https://raw.githubusercontent.com/paulfitz/mysql-connector-c/master/include/my_config.h -O /usr/include/mysql/my_config.h && pip2 install flask pyyaml MySQL-python # buildkit
USER fail
ARG CACHE_DATE=Mo 9. Feb 13:04:24 CET 2026
WORKDIR /home/fail
RUN |1 CACHE_DATE=Mo 9. Feb 13:04:24 CET 2026 /bin/sh -c git clone https://gitea.vps.chriphost.de/christoph/fail-targets # buildkit
RUN |1 CACHE_DATE=Mo 9. Feb 13:04:24 CET 2026 /bin/sh -c git clone https://gitea.vps.chriphost.de/christoph/fail-wasm # buildkit
USER root
EXPOSE [5000/tcp]

Labels

Key Value
org.opencontainers.image.authors Christian Dietrich <stettberger@dokucode.de>
org.opencontainers.image.ref.name ubuntu
org.opencontainers.image.version 22.04
Details
Container
2026-02-09 13:12:53 +01:00
0
OCI / Docker
linux/amd64
Christian Dietrich <stettberger@dokucode.de>
1.3 GiB
Versions (1) View all
latest 2026-02-09