the universal sandbox runtime for agents and humans. pocketenv.io
sandbox openclaw agent claude-code vercel-sandbox deno-sandbox cloudflare-sandbox atproto sprites daytona
7
fork

Configure Feed

Select the types of activity you want to include in your feed.

at main 109 lines 3.9 kB view raw
1FROM node:lts-trixie-slim 2 3SHELL ["/bin/bash", "-c"] 4 5ARG TARGETARCH 6 7ENV LC_ALL=en_US.UTF-8 8ENV LANG=en_US.UTF-8 9ENV LANGUAGE=en_US.UTF-8 10 11RUN apt-get update && apt-get install -y --no-install-recommends \ 12 openssh-client \ 13 git \ 14 curl \ 15 ca-certificates \ 16 gnupg \ 17 unzip \ 18 python3 \ 19 build-essential \ 20 tmux \ 21 gawk \ 22 sed \ 23 procps \ 24 wget \ 25 locales-all \ 26 s3fs \ 27 fontconfig \ 28 sudo \ 29 squashfs-tools \ 30 squashfuse \ 31 fuse \ 32 fuse-overlayfs \ 33 && useradd -m -s /bin/bash modal \ 34 && echo "modal ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/modal 35 36USER root 37RUN ARCH=$(uname -m) && \ 38 if [ "$ARCH" = "x86_64" ]; then ARCH="amd64"; fi && \ 39 if [ "$ARCH" = "aarch64" ]; then ARCH="arm64"; fi && \ 40 VERSION=v1.2.1 && \ 41 curl -L "https://github.com/tigrisdata/tigrisfs/releases/download/${VERSION}/tigrisfs_${VERSION#v}_linux_${ARCH}.tar.gz" -o /tmp/tigrisfs.tar.gz && \ 42 tar -xzf /tmp/tigrisfs.tar.gz -C /usr/local/bin/ && \ 43 rm /tmp/tigrisfs.tar.gz && \ 44 chmod +x /usr/local/bin/tigrisfs 45USER modal 46 47RUN curl -fsSL https://tailscale.com/install.sh | sh 48 49RUN mkdir -p /home/modal/.npm-global && npm config set prefix "/home/modal/.npm-global" 50 51ENV PATH="/home/modal/.local/bin:/home/modal/.npm-global/bin:${PATH}" 52 53RUN npm install -g \ 54 opencode-ai \ 55 pm2 56 57USER root 58 59RUN curl -L https://github.com/tsirysndr/pty-tunnel-server/releases/download/v0.0.2/pty-server-linux-x86_64.tar.gz | tar xz -C /tmp && \ 60 mv /tmp/pty-tunnel-server /usr/bin && \ 61 chmod +x /usr/bin/pty-tunnel-server 62 63RUN mkdir -p /home/modal/.local/share/fonts && chown -R modal:modal /home/modal/.local 64USER modal 65 66WORKDIR /home/modal 67 68RUN curl -fsSL https://code-server.dev/install.sh | sh && \ 69 code-server --install-extension bastndev.lynx-theme --force && \ 70 curl -fsSL https://github.com/ryanoasis/nerd-fonts/releases/download/v3.4.0/CascadiaMono.zip -o /tmp/CascadiaMono.zip && \ 71 unzip -o /tmp/CascadiaMono.zip -d /home/modal/.local/share/fonts/CascadiaMono && \ 72 fc-cache -fv && \ 73 touch /home/modal/.vscode-setup-done 74 75RUN curl -fsSL https://github.com/ajeetdsouza/zoxide/releases/download/v0.9.9/zoxide-0.9.9-x86_64-unknown-linux-musl.tar.gz -o /tmp/zoxide.tar.gz && \ 76 mkdir -p ~/.local/bin && \ 77 tar -xzf /tmp/zoxide.tar.gz -C ~/.local/bin zoxide && \ 78 chmod +x ~/.local/bin/zoxide && \ 79 rm /tmp/zoxide.tar.gz && \ 80 echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc && \ 81 echo 'eval "$(zoxide init bash)"' >> ~/.bashrc 82 83RUN curl -fsSL https://zerobrew.rs/install | bash 84 85RUN curl -s https://ohmyposh.dev/install.sh | bash -s && \ 86 curl -s https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/refs/heads/main/themes/tokyonight_storm.omp.json | tee ~/.tokyonight_storm.omp.json >/dev/null && \ 87 echo 'eval "$(oh-my-posh init bash --config ~/.tokyonight_storm.omp.json)"' >> ~/.bashrc 88 89RUN git clone --recursive --depth 1 --shallow-submodules https://github.com/akinomyoga/ble.sh.git && \ 90 mkdir -p ~/.local && \ 91 make -C ble.sh install PREFIX=$HOME/.local && \ 92 rm -rf ble.sh && \ 93 echo 'export LANG=en_US.UTF-8' >> ~/.bashrc && \ 94 echo 'source -- ~/.local/share/blesh/ble.sh' >> ~/.bashrc 95 96RUN curl --proto '=https' --tlsv1.2 -LsSf https://setup.atuin.sh | sh && \ 97 echo 'export PATH=$PATH:$HOME/.atuin/bin' >> ~/.bashrc && \ 98 echo 'eval "$(atuin init bash)"' >> ~/.bashrc || true 99 100RUN case "${TARGETARCH}" in \ 101 amd64) EZA_ARCH="x86_64-unknown-linux-musl" ;; \ 102 arm64) EZA_ARCH="aarch64-unknown-linux-musl" ;; \ 103 *) echo "Unsupported arch: ${TARGETARCH}" && exit 1 ;; \ 104 esac && \ 105 wget -qO /tmp/eza.tar.gz "https://github.com/eza-community/eza/releases/latest/download/eza_${EZA_ARCH}.tar.gz" && \ 106 tar -xzf /tmp/eza.tar.gz -C ~/.local/bin && \ 107 chmod +x ~/.local/bin/eza && \ 108 rm /tmp/eza.tar.gz && \ 109 echo 'alias ls="eza -l"' >> ~/.bashrc