FROM debian:bookworm-slim AS build

ARG MONERO_VERSION
ARG TARGETARCH

RUN apt-get update \
    && apt-get install -y --no-install-recommends bzip2 ca-certificates curl tar \
    && case "$TARGETARCH" in \
        amd64) monero_arch=x64 ;; \
        arm64) monero_arch=armv8 ;; \
        *) echo "Unsupported TARGETARCH: ${TARGETARCH}" >&2; exit 1 ;; \
    esac \
    && curl -fsSL "https://downloads.getmonero.org/cli/monero-linux-${monero_arch}-v${MONERO_VERSION}.tar.bz2" \
    | tar -xj -C /tmp \
    && install -m 755 "$(find /tmp -type f -name monero-wallet-rpc | head -n 1)" /monero-wallet-rpc \
    && rm -rf /var/lib/apt/lists/*

FROM debian:bookworm-slim

RUN apt-get update \
    && apt-get install -y --no-install-recommends curl \
    && rm -rf /var/lib/apt/lists/*

COPY --from=build /monero-wallet-rpc /usr/local/bin/monero-wallet-rpc

CMD ["/bin/sh", "-ec", "\
  exec monero-wallet-rpc \
    \"--${MONERO_NETWORK}\" \
    --daemon-address=\"${MONERO_DAEMON_ADDRESS}\" \
    --trusted-daemon \
    --no-initial-sync \
    --rpc-bind-ip=0.0.0.0 \
    --rpc-bind-port=${MONERO_WALLET_RPC_PORT} \
    --confirm-external-bind \
    --rpc-login=\"${MONERO_WALLET_RPC_USERNAME}:${MONERO_WALLET_RPC_PASSWORD}\" \
    --wallet-file=\"/monero/wallet/${MONERO_WALLET_NAME}\" \
    --password=\"${MONERO_WALLET_PASSWORD}\" \
"]
