Dockerfile32 lines · 717 chars FROM gcc:15.2
# Install build tools
RUN apt-get update -y \
&& apt-get install -y --no-install-recommends \
build-essential \
ca-certificates \
&& rm -rf /var/lib/apt/lists/*
# Build from source
WORKDIR /src
COPY . /src
# Build the project
RUN make -j$(nproc)
# Install binaries into /usr/local/bin for runtime
RUN mkdir -p /usr/local/bin /usr/local/share/keyd
RUN cp bin/keyd /usr/local/bin/keyd \
&& cp bin/keyd-application-mapper /usr/local/bin/keyd-application-mapper
# Basic runtime setup
RUN mkdir -p /etc/keyd /var/run
ENV PATH="/usr/local/bin:${PATH}"
# Allow mounting config and runtime state from host
VOLUME ["/etc/keyd", "/var/run"]
# Run keyd in the foreground by default
CMD ["keyd"]