mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00
59 lines
1.7 KiB
Docker
59 lines
1.7 KiB
Docker
ARG version=20.04
|
|
FROM ubuntu:$version
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
|
|
|
# hadolint ignore=DL3008
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends software-properties-common \
|
|
&& add-apt-repository -y ppa:git-core/ppa \
|
|
&& apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
bzip2 \
|
|
ca-certificates \
|
|
curl \
|
|
file \
|
|
fonts-dejavu-core \
|
|
g++ \
|
|
gawk \
|
|
git \
|
|
less \
|
|
libz-dev \
|
|
locales \
|
|
make \
|
|
netbase \
|
|
openssh-client \
|
|
patch \
|
|
sudo \
|
|
uuid-runtime \
|
|
tzdata \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
&& localedef -i en_US -f UTF-8 en_US.UTF-8 \
|
|
&& useradd -m -s /bin/bash linuxbrew \
|
|
&& echo 'linuxbrew ALL=(ALL) NOPASSWD:ALL' >>/etc/sudoers \
|
|
&& su - linuxbrew -c 'mkdir ~/.linuxbrew'
|
|
|
|
USER linuxbrew
|
|
COPY --chown=linuxbrew:linuxbrew . /home/linuxbrew/.linuxbrew/Homebrew
|
|
ENV PATH=/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:$PATH
|
|
WORKDIR /home/linuxbrew
|
|
|
|
RUN mkdir -p \
|
|
.linuxbrew/bin \
|
|
.linuxbrew/etc \
|
|
.linuxbrew/include \
|
|
.linuxbrew/lib \
|
|
.linuxbrew/opt \
|
|
.linuxbrew/sbin \
|
|
.linuxbrew/share \
|
|
.linuxbrew/var/homebrew/linked \
|
|
.linuxbrew/Cellar \
|
|
&& ln -s ../Homebrew/bin/brew .linuxbrew/bin/brew \
|
|
&& git -C .linuxbrew/Homebrew remote set-url origin https://github.com/Homebrew/brew \
|
|
&& git -C .linuxbrew/Homebrew fetch origin \
|
|
&& HOMEBREW_NO_ANALYTICS=1 HOMEBREW_NO_AUTO_UPDATE=1 brew tap homebrew/core \
|
|
&& brew install-bundler-gems \
|
|
&& brew cleanup \
|
|
&& { git -C .linuxbrew/Homebrew config --unset gc.auto; true; } \
|
|
&& { git -C .linuxbrew/Homebrew config --unset homebrew.devcmdrun; true; } \
|
|
&& rm -rf .cache
|