FROM freeradius/freeradius-server:latest

# Build dependencies
RUN apt-get update && \
    apt-get install -y \
    git \
    build-essential \
    libpq-dev \
    pkg-config \
    autoconf \
    automake \
    libtool && \
    rm -rf /var/lib/apt/lists/*

# Build PostgreSQL module
RUN cd /tmp && \
    git clone --depth 1 https://github.com/FreeRADIUS/freeradius-server.git && \
    cd freeradius-server && \
    ./configure --with-rlm-sql-postgresql && \
    make && \
    make install

# Runtime: point FreeRADIUS to the compiled module directory
RUN ln -s /usr/local/lib/freeradius /usr/lib/freeradius

# Runtime: use the compiled config directory
RUN rm -rf /etc/freeradius && ln -s /usr/local/etc/raddb /etc/freeradius
