# hbbs do VinnaX Desk: rustdesk-server com a autorização de conexões da Vinnax.
# Build: docker build -t vinnax-desk-hbbs vinnax/server/hbbs
FROM rust:1.89-bookworm AS build
ARG RUSTDESK_SERVER_TAG=1.1.16
RUN apt-get update && apt-get install -y --no-install-recommends git python3 && rm -rf /var/lib/apt/lists/*
WORKDIR /src
RUN git clone --depth 1 --branch ${RUSTDESK_SERVER_TAG} --recurse-submodules --shallow-submodules \
      https://github.com/rustdesk/rustdesk-server.git rustdesk-server
COPY vinnax.rs aplicar-patch.py /src/patch/
RUN python3 /src/patch/aplicar-patch.py /src/rustdesk-server
WORKDIR /src/rustdesk-server
RUN cargo build --release --bin hbbs

FROM debian:bookworm-slim
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates && rm -rf /var/lib/apt/lists/*
COPY --from=build /src/rustdesk-server/target/release/hbbs /usr/bin/hbbs
WORKDIR /root
LABEL org.opencontainers.image.title="vinnax-desk-hbbs" \
      org.opencontainers.image.description="rustdesk-server (hbbs) com autorização de conexões do VinnaX Desk" \
      org.opencontainers.image.licenses="AGPL-3.0"
CMD ["hbbs"]
