FROM debian:bookworm-slim

# Set environment variables
ENV DEBIAN_FRONTEND=noninteractive

# Install system dependencies
RUN apt-get update -y && \
    apt-get install -y --no-install-recommends \
    wget \
    curl \
    aria2 \
    tar \
    gzip \
    gawk \
    bash \
    grep \
    procps \
    ca-certificates \
    libstdc++6 \
    libgomp1 \
    libatomic1 \
    zlib1g \
    libbz2-1.0 \
    && rm -rf /var/lib/apt/lists/*

# Create working directory
WORKDIR /workspace

# Download and install Foldseek binary
RUN wget -q https://mmseqs.com/foldseek/foldseek-linux-avx2.tar.gz && \
    tar xzf foldseek-linux-avx2.tar.gz && \
    cp foldseek/bin/foldseek /usr/local/bin/foldseek && \
    chmod +x /usr/local/bin/foldseek && \
    rm -rf foldseek foldseek-linux-avx2.tar.gz

# Create necessary directories
RUN mkdir -p /workspace/input && \
    mkdir -p /workspace/output && \
    mkdir -p /workspace/databases && \
    mkdir -p /workspace/tmp

# Set environment variables
ENV PATH="/usr/local/bin:${PATH}"
ENV TMPDIR="/workspace/tmp"

# Create wrapper script
RUN echo '#!/bin/bash\n\
cd /workspace && foldseek "$@"' > /usr/local/bin/run_foldseek && \
    chmod +x /usr/local/bin/run_foldseek
