diff --git a/Dockerfile b/Dockerfile index 2c2e9fc..1000236 100644 --- a/Dockerfile +++ b/Dockerfile @@ -104,12 +104,11 @@ FROM runtime ARG OPENCODE_VERSION ARG IMAGE_CREATED -ENV PATH=/home/opencode/.local/bin:/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:/home/opencode/.local/share/zerobrew/prefix/bin:/opt/auto-install-shims:${PATH} +ENV PATH=/opt/mise/shims:/home/opencode/.local/bin:/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:/home/opencode/.local/share/zerobrew/prefix/bin:/opt/auto-install-shims:${PATH} ENV HOMEBREW_NO_AUTO_UPDATE=1 ENV HOMEBREW_INSTALL_FROM_API=1 ENV MISE_DATA_DIR=/opt/mise ENV MISE_ALWAYS_INSTALL=1 -ENV BASH_ENV=/etc/opencode-mise.bash LABEL io.artifacthub.package.readme-url="https://raw.githubusercontent.com/sprisa/opencode-server/refs/heads/main/README.md" \ org.opencontainers.image.created="${IMAGE_CREATED}" \ @@ -145,13 +144,11 @@ COPY --from=builder /opt/opencode /usr/local/bin/opencode RUN opencode --version \ && printf 'for d in "$HOME/.local/bin" "/home/linuxbrew/.linuxbrew/bin" "/home/linuxbrew/.linuxbrew/sbin" "$HOME/.local/share/zerobrew/prefix/bin"; do case ":$PATH:" in *":$d:"*) ;; *) PATH="$d:$PATH";; esac; done\nexport PATH\n' > /etc/profile.d/brew-path.sh \ && chmod 0644 /etc/profile.d/brew-path.sh \ - && printf '\n# Mise activation for interactive shells\nsource /etc/opencode-mise.bash\neval "$(mise activate bash)"\n' >> /home/opencode/.bashrc \ + && printf '\neval "$(mise activate bash)"\n' >> /home/opencode/.bashrc \ && printf '\neval "$(mise activate zsh)"\n' >> /home/opencode/.zshrc \ && mkdir -p /home/opencode/.config/fish \ && printf '\nmise activate fish | source\n' >> /home/opencode/.config/fish/config.fish \ && printf '\neval "$(mise activate sh)"\n' >> /home/opencode/.profile \ - && printf '#!/usr/bin/env bash\n# Route unknown commands through mise (fallback for non-interactive shells)\nif [ -n "${BASH_VERSION-}" ]; then\n command_not_found_handle() {\n if /usr/local/bin/mise which "$1" &>/dev/null; then\n /usr/local/bin/mise exec "$1" -- "$@"\n return $?\n fi\n return 127\n }\nfi\n' > /etc/opencode-mise.bash \ - && chmod 0644 /etc/opencode-mise.bash \ && mkdir -p /opt/auto-install-shims \ && grep -E '^\s*"' /etc/mise/config.toml | while IFS='=' read -r key value; do \ key="$(echo "$key" | tr -d ' "')" \ @@ -168,6 +165,8 @@ RUN opencode --version \ done; \ done \ && chown -R opencode:opencode /opt/auto-install-shims \ + && mkdir -p /opt/mise/shims \ + && chown opencode:opencode /opt/mise/shims \ && mkdir -p /home/opencode/workspace \ && chown -R opencode:opencode /home/opencode