38 lines
912 B
Docker
38 lines
912 B
Docker
FROM ubuntu:22.04 AS base
|
|
|
|
LABEL maintainer="OpenWrt Builder"
|
|
|
|
# Install required dependencies
|
|
COPY devenv/dependencies.sh /install_dependencies
|
|
RUN chmod +x /install_dependencies && \
|
|
/install_dependencies && \
|
|
rm -rf /install_dependencies
|
|
|
|
# Create a non-root user with sudo access (no password required)
|
|
RUN useradd -m -u 1000 -G sudo builder && \
|
|
echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
|
|
|
|
USER builder
|
|
WORKDIR /home/builder
|
|
|
|
FROM base AS openwrt
|
|
|
|
ENV BRANCH=main
|
|
|
|
# Clone OpenWrt repository
|
|
RUN git clone --depth=1 -b ${BRANCH} https://git.openwrt.org/openwrt/openwrt.git openwrt
|
|
|
|
# Apply patch inside openwrt directory
|
|
COPY enable_wcn36xx_mac80211.patch .
|
|
RUN git apply enable_wcn36xx_mac80211.patch
|
|
|
|
# Update and install feeds
|
|
RUN cd openwrt && \
|
|
./scripts/feeds update -a && \
|
|
./scripts/feeds install -a && \
|
|
rm -rf tmp
|
|
|
|
WORKDIR /home/builder/openwrt
|
|
|
|
CMD ["/bin/bash"]
|