reworked base images

This commit is contained in:
STAM 2024-02-10 00:23:00 +03:00
parent 199f30c05f
commit 57a2322b6b
No known key found for this signature in database
GPG Key ID: 711526C6938897F1
120 changed files with 1441 additions and 550 deletions

0
.github/workflows/Untitled-1 vendored Normal file
View File

View File

@ -0,0 +1,29 @@
##################################################################
# perforce client binary
##################################################################
P4_VERSION=r23.2
P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
##################################################################
# 7z official binary
##################################################################
SZ_VERSION=7z2400
SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
##################################################################
# LazyGit official binary
##################################################################
LZGIT_VERSION=0.40.2
LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
##################################################################
# dumb init
##################################################################
DUMB_INIT_VERSION=1.2.5
DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
##################################################################
# gosu
##################################################################
GOSU_VER=1.17
GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64

View File

@ -21,6 +21,7 @@ LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4w
# prepare system # prepare system
################################################################## ##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
################################################################## ##################################################################
# sources list # sources list
@ -28,8 +29,10 @@ RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN rm -rfv /etc/apt/sources.list RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen COPY etc/locale.gen /etc/locale.gen
@ -37,12 +40,6 @@ RUN apt-get update && \
apt-get upgrade -y && \ apt-get upgrade -y && \
apt-get dist-upgrade -y apt-get dist-upgrade -y
##################################################################
# Version
##################################################################
RUN python --version
RUN pip --version
################################################################## ##################################################################
# installing utils # installing utils
################################################################## ##################################################################
@ -68,22 +65,20 @@ RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | x
RUN update-ca-certificates RUN update-ca-certificates
################################################################## ##################################################################
# perforce client binary # ARGuments
################################################################## ##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
################################################################## #configured by dockerfile / .ENV
# 7z official binary ARG P4_VERSION
################################################################## ARG P4_DOWNLOAD_URL
ARG SZ_VERSION=7z2400 ARG SZ_VERSION
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz ARG SZ_DOWNLOAD_URL
ARG LZGIT_VERSION
################################################################## ARG LZGIT_DOWNLOAD_URL
# LazyGit official binary ARG DUMB_INIT_VERSION
################################################################## ARG DUMB_INIT_DOWNLOAD_URL
ARG LZGIT_VERSION=0.40.2 ARG GOSU_VER
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz ARG GOSU_DOWNLOAD_URL
################################################################## ##################################################################
# update lists # update lists
@ -217,41 +212,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -266,9 +270,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -277,21 +284,46 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version
RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
chmod +x /usr/bin/dumb-init
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
chmod +x /usr/local/bin/gosu
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
################################################################## ##################################################################
# Version # Version
################################################################## ##################################################################
RUN python --version RUN echo "=============================================" && \
RUN pip --version echo python3 $(python3 --version) && \
echo pip3 $(pip3 --version) && \
echo python $(python --version) && \
echo pip $(pip --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key
################################################################## ##################################################################
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
################################################################## ##################################################################
# update locales # update locales

View File

@ -4,3 +4,14 @@ services:
image: "epicmorg/python:2.7" image: "epicmorg/python:2.7"
build: build:
context: . context: .
args:
P4_VERSION: ${P4_VERSION}
P4_DOWNLOAD_URL: ${P4_DOWNLOAD_URL}
SZ_VERSION: ${SZ_VERSION}
SZ_DOWNLOAD_URL: ${SZ_DOWNLOAD_URL}
LZGIT_VERSION: ${LZGIT_VERSION}
LZGIT_DOWNLOAD_URL: ${LZGIT_DOWNLOAD_URL}
DUMB_INIT_VERSION: ${DUMB_INIT_VERSION}
DUMB_INIT_DOWNLOAD_URL: ${DUMB_INIT_DOWNLOAD_URL}
GOSU_VER: ${GOSU_VER}
GOSU_DOWNLOAD_URL: ${GOSU_DOWNLOAD_URL}

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ buster main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ buster main
deb-src https://packagecloud.io/github/git-lfs/debian/ buster main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ buster main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu cosmic main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu cosmic main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu cosmic main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu cosmic main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu cosmic main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu cosmic main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu cosmic main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu cosmic main

View File

@ -0,0 +1,29 @@
##################################################################
# perforce client binary
##################################################################
P4_VERSION=r23.2
P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
##################################################################
# 7z official binary
##################################################################
SZ_VERSION=7z2400
SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
##################################################################
# LazyGit official binary
##################################################################
LZGIT_VERSION=0.40.2
LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
##################################################################
# dumb init
##################################################################
DUMB_INIT_VERSION=1.2.5
DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
##################################################################
# gosu
##################################################################
GOSU_VER=1.17
GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64

View File

@ -21,6 +21,7 @@ LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4w
# prepare system # prepare system
################################################################## ##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
################################################################## ##################################################################
# sources list # sources list
@ -28,8 +29,10 @@ RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN rm -rfv /etc/apt/sources.list RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen COPY etc/locale.gen /etc/locale.gen
@ -37,15 +40,6 @@ RUN apt-get update && \
apt-get upgrade -y && \ apt-get upgrade -y && \
apt-get dist-upgrade -y apt-get dist-upgrade -y
##################################################################
# Version
##################################################################
RUN python3 --version
RUN pip3 --version
RUN python --version
RUN pip --version
################################################################## ##################################################################
# installing utils # installing utils
################################################################## ##################################################################
@ -71,22 +65,20 @@ RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | x
RUN update-ca-certificates RUN update-ca-certificates
################################################################## ##################################################################
# perforce client binary # ARGuments
################################################################## ##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
################################################################## #configured by dockerfile / .ENV
# 7z official binary ARG P4_VERSION
################################################################## ARG P4_DOWNLOAD_URL
ARG SZ_VERSION=7z2400 ARG SZ_VERSION
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz ARG SZ_DOWNLOAD_URL
ARG LZGIT_VERSION
################################################################## ARG LZGIT_DOWNLOAD_URL
# LazyGit official binary ARG DUMB_INIT_VERSION
################################################################## ARG DUMB_INIT_DOWNLOAD_URL
ARG LZGIT_VERSION=0.40.2 ARG GOSU_VER
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz ARG GOSU_DOWNLOAD_URL
################################################################## ##################################################################
# update lists # update lists
@ -219,41 +211,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -268,9 +269,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -279,22 +283,46 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
chmod +x /usr/bin/dumb-init
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
chmod +x /usr/local/bin/gosu
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
################################################################## ##################################################################
# Version # Version
################################################################## ##################################################################
RUN python3 --version RUN echo "=============================================" && \
RUN pip3 --version echo python3 $(python3 --version) && \
RUN python --version echo pip3 $(pip3 --version) && \
RUN pip --version echo python $(python --version) && \
echo pip $(pip --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key
################################################################## ##################################################################
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
################################################################## ##################################################################
# update locales # update locales

View File

@ -4,3 +4,14 @@ services:
image: "epicmorg/python:3.10" image: "epicmorg/python:3.10"
build: build:
context: . context: .
args:
P4_VERSION: ${P4_VERSION}
P4_DOWNLOAD_URL: ${P4_DOWNLOAD_URL}
SZ_VERSION: ${SZ_VERSION}
SZ_DOWNLOAD_URL: ${SZ_DOWNLOAD_URL}
LZGIT_VERSION: ${LZGIT_VERSION}
LZGIT_DOWNLOAD_URL: ${LZGIT_DOWNLOAD_URL}
DUMB_INIT_VERSION: ${DUMB_INIT_VERSION}
DUMB_INIT_DOWNLOAD_URL: ${DUMB_INIT_DOWNLOAD_URL}
GOSU_VER: ${GOSU_VER}
GOSU_DOWNLOAD_URL: ${GOSU_DOWNLOAD_URL}

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ bullseye main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main
deb-src https://packagecloud.io/github/git-lfs/debian/ bullseye main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main

View File

@ -0,0 +1,29 @@
##################################################################
# perforce client binary
##################################################################
P4_VERSION=r23.2
P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
##################################################################
# 7z official binary
##################################################################
SZ_VERSION=7z2400
SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
##################################################################
# LazyGit official binary
##################################################################
LZGIT_VERSION=0.40.2
LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
##################################################################
# dumb init
##################################################################
DUMB_INIT_VERSION=1.2.5
DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
##################################################################
# gosu
##################################################################
GOSU_VER=1.17
GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64

View File

@ -21,6 +21,7 @@ LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4w
# prepare system # prepare system
################################################################## ##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
################################################################## ##################################################################
# sources list # sources list
@ -28,15 +29,13 @@ RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN rm -rfv /etc/apt/sources.list RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen COPY etc/locale.gen /etc/locale.gen
RUN apt-key adv --keyserver keyserver.ubuntu.com --refresh-keys
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 54404762BBB6E853
RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
RUN apt-get update && \ RUN apt-get update && \
apt-get upgrade -y && \ apt-get upgrade -y && \
apt-get dist-upgrade -y apt-get dist-upgrade -y
@ -60,25 +59,26 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
software-properties-common \ software-properties-common \
sudo sudo
RUN apt-key adv --keyserver keyserver.ubuntu.com --refresh-keys
RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
RUN update-ca-certificates RUN update-ca-certificates
################################################################## ##################################################################
# perforce client binary # ARGuments
################################################################## ##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
################################################################## #configured by dockerfile / .ENV
# 7z official binary ARG P4_VERSION
################################################################## ARG P4_DOWNLOAD_URL
ARG SZ_VERSION=7z2400 ARG SZ_VERSION
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz ARG SZ_DOWNLOAD_URL
ARG LZGIT_VERSION
################################################################## ARG LZGIT_DOWNLOAD_URL
# LazyGit official binary ARG DUMB_INIT_VERSION
################################################################## ARG DUMB_INIT_DOWNLOAD_URL
ARG LZGIT_VERSION=0.40.2 ARG GOSU_VER
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz ARG GOSU_DOWNLOAD_URL
################################################################## ##################################################################
# update lists # update lists
@ -211,41 +211,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -260,9 +269,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -271,14 +283,46 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
chmod +x /usr/bin/dumb-init
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
chmod +x /usr/local/bin/gosu
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
##################################################################
# Version
##################################################################
RUN echo "=============================================" && \
echo python3 $(python3 --version) && \
echo pip3 $(pip3 --version) && \
echo python $(python --version) && \
echo pip $(pip --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key
################################################################## ##################################################################
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
################################################################## ##################################################################
# update locales # update locales

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ bullseye main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main
deb-src https://packagecloud.io/github/git-lfs/debian/ bullseye main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main

View File

@ -0,0 +1,29 @@
##################################################################
# perforce client binary
##################################################################
P4_VERSION=r23.2
P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
##################################################################
# 7z official binary
##################################################################
SZ_VERSION=7z2400
SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
##################################################################
# LazyGit official binary
##################################################################
LZGIT_VERSION=0.40.2
LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
##################################################################
# dumb init
##################################################################
DUMB_INIT_VERSION=1.2.5
DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
##################################################################
# gosu
##################################################################
GOSU_VER=1.17
GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64

View File

@ -21,6 +21,7 @@ LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4w
# prepare system # prepare system
################################################################## ##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
################################################################## ##################################################################
# sources list # sources list
@ -28,15 +29,13 @@ RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN rm -rfv /etc/apt/sources.list RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen COPY etc/locale.gen /etc/locale.gen
RUN apt-key adv --keyserver keyserver.ubuntu.com --refresh-keys
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6ED0E7B82643E131
RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
RUN apt-get update && \ RUN apt-get update && \
apt-get upgrade -y && \ apt-get upgrade -y && \
apt-get dist-upgrade -y apt-get dist-upgrade -y
@ -60,25 +59,26 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
software-properties-common \ software-properties-common \
sudo sudo
RUN apt-key adv --keyserver keyserver.ubuntu.com --refresh-keys
RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
RUN update-ca-certificates RUN update-ca-certificates
################################################################## ##################################################################
# perforce client binary # ARGuments
################################################################## ##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
################################################################## #configured by dockerfile / .ENV
# 7z official binary ARG P4_VERSION
################################################################## ARG P4_DOWNLOAD_URL
ARG SZ_VERSION=7z2400 ARG SZ_VERSION
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz ARG SZ_DOWNLOAD_URL
ARG LZGIT_VERSION
################################################################## ARG LZGIT_DOWNLOAD_URL
# LazyGit official binary ARG DUMB_INIT_VERSION
################################################################## ARG DUMB_INIT_DOWNLOAD_URL
ARG LZGIT_VERSION=0.40.2 ARG GOSU_VER
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz ARG GOSU_DOWNLOAD_URL
################################################################## ##################################################################
# update lists # update lists
@ -182,7 +182,6 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
xz-utils \ xz-utils \
zip zip
################################################################## ##################################################################
# installing fs-tools # installing fs-tools
################################################################## ##################################################################
@ -211,41 +210,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -260,9 +268,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -271,14 +282,46 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
chmod +x /usr/bin/dumb-init
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
chmod +x /usr/local/bin/gosu
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
##################################################################
# Version
##################################################################
RUN echo "=============================================" && \
echo python3 $(python3 --version) && \
echo pip3 $(pip3 --version) && \
echo python $(python --version) && \
echo pip $(pip --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key
################################################################## ##################################################################
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
################################################################## ##################################################################
# update locales # update locales

View File

@ -4,3 +4,14 @@ services:
image: "epicmorg/python:3.12" image: "epicmorg/python:3.12"
build: build:
context: . context: .
args:
P4_VERSION: ${P4_VERSION}
P4_DOWNLOAD_URL: ${P4_DOWNLOAD_URL}
SZ_VERSION: ${SZ_VERSION}
SZ_DOWNLOAD_URL: ${SZ_DOWNLOAD_URL}
LZGIT_VERSION: ${LZGIT_VERSION}
LZGIT_DOWNLOAD_URL: ${LZGIT_DOWNLOAD_URL}
DUMB_INIT_VERSION: ${DUMB_INIT_VERSION}
DUMB_INIT_DOWNLOAD_URL: ${DUMB_INIT_DOWNLOAD_URL}
GOSU_VER: ${GOSU_VER}
GOSU_DOWNLOAD_URL: ${GOSU_DOWNLOAD_URL}

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ bullseye main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main
deb-src https://packagecloud.io/github/git-lfs/debian/ bullseye main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main

View File

@ -0,0 +1,29 @@
##################################################################
# perforce client binary
##################################################################
P4_VERSION=r23.2
P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
##################################################################
# 7z official binary
##################################################################
SZ_VERSION=7z2400
SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
##################################################################
# LazyGit official binary
##################################################################
LZGIT_VERSION=0.40.2
LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
##################################################################
# dumb init
##################################################################
DUMB_INIT_VERSION=1.2.5
DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
##################################################################
# gosu
##################################################################
GOSU_VER=1.17
GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64

View File

@ -21,6 +21,7 @@ LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4w
# prepare system # prepare system
################################################################## ##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
################################################################## ##################################################################
# sources list # sources list
@ -28,15 +29,13 @@ RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN rm -rfv /etc/apt/sources.list RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen COPY etc/locale.gen /etc/locale.gen
RUN apt-key adv --keyserver keyserver.ubuntu.com --refresh-keys
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6ED0E7B82643E131
RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
RUN apt-get update && \ RUN apt-get update && \
apt-get upgrade -y && \ apt-get upgrade -y && \
apt-get dist-upgrade -y apt-get dist-upgrade -y
@ -60,25 +59,26 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
software-properties-common \ software-properties-common \
sudo sudo
RUN apt-key adv --keyserver keyserver.ubuntu.com --refresh-keys
RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
RUN update-ca-certificates RUN update-ca-certificates
################################################################## ##################################################################
# perforce client binary # ARGuments
################################################################## ##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
################################################################## #configured by dockerfile / .ENV
# 7z official binary ARG P4_VERSION
################################################################## ARG P4_DOWNLOAD_URL
ARG SZ_VERSION=7z2400 ARG SZ_VERSION
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz ARG SZ_DOWNLOAD_URL
ARG LZGIT_VERSION
################################################################## ARG LZGIT_DOWNLOAD_URL
# LazyGit official binary ARG DUMB_INIT_VERSION
################################################################## ARG DUMB_INIT_DOWNLOAD_URL
ARG LZGIT_VERSION=0.40.2 ARG GOSU_VER
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz ARG GOSU_DOWNLOAD_URL
################################################################## ##################################################################
# update lists # update lists
@ -210,41 +210,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -259,9 +268,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -270,14 +282,46 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
chmod +x /usr/bin/dumb-init
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
chmod +x /usr/local/bin/gosu
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
##################################################################
# Version
##################################################################
RUN echo "=============================================" && \
echo python3 $(python3 --version) && \
echo pip3 $(pip3 --version) && \
echo python $(python --version) && \
echo pip $(pip --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key
################################################################## ##################################################################
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
################################################################## ##################################################################
# update locales # update locales

View File

@ -4,3 +4,14 @@ services:
image: "epicmorg/python:3.13" image: "epicmorg/python:3.13"
build: build:
context: . context: .
args:
P4_VERSION: ${P4_VERSION}
P4_DOWNLOAD_URL: ${P4_DOWNLOAD_URL}
SZ_VERSION: ${SZ_VERSION}
SZ_DOWNLOAD_URL: ${SZ_DOWNLOAD_URL}
LZGIT_VERSION: ${LZGIT_VERSION}
LZGIT_DOWNLOAD_URL: ${LZGIT_DOWNLOAD_URL}
DUMB_INIT_VERSION: ${DUMB_INIT_VERSION}
DUMB_INIT_DOWNLOAD_URL: ${DUMB_INIT_DOWNLOAD_URL}
GOSU_VER: ${GOSU_VER}
GOSU_DOWNLOAD_URL: ${GOSU_DOWNLOAD_URL}

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ bullseye main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main
deb-src https://packagecloud.io/github/git-lfs/debian/ bullseye main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main

View File

@ -0,0 +1,29 @@
##################################################################
# perforce client binary
##################################################################
P4_VERSION=r23.2
P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
##################################################################
# 7z official binary
##################################################################
SZ_VERSION=7z2400
SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
##################################################################
# LazyGit official binary
##################################################################
LZGIT_VERSION=0.40.2
LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
##################################################################
# dumb init
##################################################################
DUMB_INIT_VERSION=1.2.5
DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
##################################################################
# gosu
##################################################################
GOSU_VER=1.17
GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64

View File

@ -21,6 +21,7 @@ LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4w
# prepare system # prepare system
################################################################## ##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
################################################################## ##################################################################
# sources list # sources list
@ -28,8 +29,10 @@ RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN rm -rfv /etc/apt/sources.list RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen COPY etc/locale.gen /etc/locale.gen
@ -62,22 +65,20 @@ RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | x
RUN update-ca-certificates RUN update-ca-certificates
################################################################## ##################################################################
# perforce client binary # ARGuments
################################################################## ##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
################################################################## #configured by dockerfile / .ENV
# 7z official binary ARG P4_VERSION
################################################################## ARG P4_DOWNLOAD_URL
ARG SZ_VERSION=7z2400 ARG SZ_VERSION
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz ARG SZ_DOWNLOAD_URL
ARG LZGIT_VERSION
################################################################## ARG LZGIT_DOWNLOAD_URL
# LazyGit official binary ARG DUMB_INIT_VERSION
################################################################## ARG DUMB_INIT_DOWNLOAD_URL
ARG LZGIT_VERSION=0.40.2 ARG GOSU_VER
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz ARG GOSU_DOWNLOAD_URL
################################################################## ##################################################################
# update lists # update lists
@ -208,41 +209,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -257,9 +267,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -268,14 +281,46 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
chmod +x /usr/bin/dumb-init
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
chmod +x /usr/local/bin/gosu
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
##################################################################
# Version
##################################################################
RUN echo "=============================================" && \
echo python3 $(python3 --version) && \
echo pip3 $(pip3 --version) && \
echo python $(python --version) && \
echo pip $(pip --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key
################################################################## ##################################################################
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
################################################################## ##################################################################
# update locales # update locales

View File

@ -4,3 +4,14 @@ services:
image: "epicmorg/python:3.6" image: "epicmorg/python:3.6"
build: build:
context: . context: .
args:
P4_VERSION: ${P4_VERSION}
P4_DOWNLOAD_URL: ${P4_DOWNLOAD_URL}
SZ_VERSION: ${SZ_VERSION}
SZ_DOWNLOAD_URL: ${SZ_DOWNLOAD_URL}
LZGIT_VERSION: ${LZGIT_VERSION}
LZGIT_DOWNLOAD_URL: ${LZGIT_DOWNLOAD_URL}
DUMB_INIT_VERSION: ${DUMB_INIT_VERSION}
DUMB_INIT_DOWNLOAD_URL: ${DUMB_INIT_DOWNLOAD_URL}
GOSU_VER: ${GOSU_VER}
GOSU_DOWNLOAD_URL: ${GOSU_DOWNLOAD_URL}

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ bullseye main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main
deb-src https://packagecloud.io/github/git-lfs/debian/ bullseye main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main

View File

@ -0,0 +1,29 @@
##################################################################
# perforce client binary
##################################################################
P4_VERSION=r23.2
P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
##################################################################
# 7z official binary
##################################################################
SZ_VERSION=7z2400
SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
##################################################################
# LazyGit official binary
##################################################################
LZGIT_VERSION=0.40.2
LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
##################################################################
# dumb init
##################################################################
DUMB_INIT_VERSION=1.2.5
DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
##################################################################
# gosu
##################################################################
GOSU_VER=1.17
GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64

View File

@ -21,6 +21,7 @@ LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4w
# prepare system # prepare system
################################################################## ##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
################################################################## ##################################################################
# sources list # sources list
@ -28,8 +29,10 @@ RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN rm -rfv /etc/apt/sources.list RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen COPY etc/locale.gen /etc/locale.gen
@ -62,22 +65,20 @@ RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | x
RUN update-ca-certificates RUN update-ca-certificates
################################################################## ##################################################################
# perforce client binary # ARGuments
################################################################## ##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
################################################################## #configured by dockerfile / .ENV
# 7z official binary ARG P4_VERSION
################################################################## ARG P4_DOWNLOAD_URL
ARG SZ_VERSION=7z2400 ARG SZ_VERSION
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz ARG SZ_DOWNLOAD_URL
ARG LZGIT_VERSION
################################################################## ARG LZGIT_DOWNLOAD_URL
# LazyGit official binary ARG DUMB_INIT_VERSION
################################################################## ARG DUMB_INIT_DOWNLOAD_URL
ARG LZGIT_VERSION=0.40.2 ARG GOSU_VER
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz ARG GOSU_DOWNLOAD_URL
################################################################## ##################################################################
# update lists # update lists
@ -209,41 +210,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -258,9 +268,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -269,14 +282,46 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
chmod +x /usr/bin/dumb-init
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
chmod +x /usr/local/bin/gosu
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
##################################################################
# Version
##################################################################
RUN echo "=============================================" && \
echo python3 $(python3 --version) && \
echo pip3 $(pip3 --version) && \
echo python $(python --version) && \
echo pip $(pip --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key
################################################################## ##################################################################
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
################################################################## ##################################################################
# update locales # update locales

View File

@ -4,3 +4,14 @@ services:
image: "epicmorg/python:3.7" image: "epicmorg/python:3.7"
build: build:
context: . context: .
args:
P4_VERSION: ${P4_VERSION}
P4_DOWNLOAD_URL: ${P4_DOWNLOAD_URL}
SZ_VERSION: ${SZ_VERSION}
SZ_DOWNLOAD_URL: ${SZ_DOWNLOAD_URL}
LZGIT_VERSION: ${LZGIT_VERSION}
LZGIT_DOWNLOAD_URL: ${LZGIT_DOWNLOAD_URL}
DUMB_INIT_VERSION: ${DUMB_INIT_VERSION}
DUMB_INIT_DOWNLOAD_URL: ${DUMB_INIT_DOWNLOAD_URL}
GOSU_VER: ${GOSU_VER}
GOSU_DOWNLOAD_URL: ${GOSU_DOWNLOAD_URL}

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ bullseye main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main
deb-src https://packagecloud.io/github/git-lfs/debian/ bullseye main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main

View File

@ -0,0 +1,29 @@
##################################################################
# perforce client binary
##################################################################
P4_VERSION=r23.2
P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
##################################################################
# 7z official binary
##################################################################
SZ_VERSION=7z2400
SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
##################################################################
# LazyGit official binary
##################################################################
LZGIT_VERSION=0.40.2
LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
##################################################################
# dumb init
##################################################################
DUMB_INIT_VERSION=1.2.5
DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
##################################################################
# gosu
##################################################################
GOSU_VER=1.17
GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64

View File

@ -209,41 +209,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -258,9 +267,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -269,14 +281,46 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
chmod +x /usr/bin/dumb-init
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
chmod +x /usr/local/bin/gosu
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
##################################################################
# Version
##################################################################
RUN echo "=============================================" && \
echo python3 $(python3 --version) && \
echo pip3 $(pip3 --version) && \
echo python $(python --version) && \
echo pip $(pip --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key
################################################################## ##################################################################
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
################################################################## ##################################################################
# update locales # update locales

View File

@ -4,3 +4,14 @@ services:
image: "epicmorg/python:3.8" image: "epicmorg/python:3.8"
build: build:
context: . context: .
args:
P4_VERSION: ${P4_VERSION}
P4_DOWNLOAD_URL: ${P4_DOWNLOAD_URL}
SZ_VERSION: ${SZ_VERSION}
SZ_DOWNLOAD_URL: ${SZ_DOWNLOAD_URL}
LZGIT_VERSION: ${LZGIT_VERSION}
LZGIT_DOWNLOAD_URL: ${LZGIT_DOWNLOAD_URL}
DUMB_INIT_VERSION: ${DUMB_INIT_VERSION}
DUMB_INIT_DOWNLOAD_URL: ${DUMB_INIT_DOWNLOAD_URL}
GOSU_VER: ${GOSU_VER}
GOSU_DOWNLOAD_URL: ${GOSU_DOWNLOAD_URL}

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ bullseye main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main
deb-src https://packagecloud.io/github/git-lfs/debian/ bullseye main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main

View File

@ -0,0 +1,29 @@
##################################################################
# perforce client binary
##################################################################
P4_VERSION=r23.2
P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
##################################################################
# 7z official binary
##################################################################
SZ_VERSION=7z2400
SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
##################################################################
# LazyGit official binary
##################################################################
LZGIT_VERSION=0.40.2
LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
##################################################################
# dumb init
##################################################################
DUMB_INIT_VERSION=1.2.5
DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
##################################################################
# gosu
##################################################################
GOSU_VER=1.17
GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64

View File

@ -21,6 +21,7 @@ LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4w
# prepare system # prepare system
################################################################## ##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
################################################################## ##################################################################
# sources list # sources list
@ -28,8 +29,10 @@ RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN rm -rfv /etc/apt/sources.list RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen COPY etc/locale.gen /etc/locale.gen
@ -62,22 +65,21 @@ RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | x
RUN update-ca-certificates RUN update-ca-certificates
################################################################## ##################################################################
# perforce client binary # ARGuments
################################################################## ##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
################################################################## #configured by dockerfile / .ENV
# 7z official binary ARG P4_VERSION
################################################################## ARG P4_DOWNLOAD_URL
ARG SZ_VERSION=7z2400 ARG SZ_VERSION
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz ARG SZ_DOWNLOAD_URL
ARG LZGIT_VERSION
ARG LZGIT_DOWNLOAD_URL
ARG DUMB_INIT_VERSION
ARG DUMB_INIT_DOWNLOAD_URL
ARG GOSU_VER
ARG GOSU_DOWNLOAD_URL
##################################################################
# LazyGit official binary
##################################################################
ARG LZGIT_VERSION=0.40.2
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
################################################################## ##################################################################
# update lists # update lists
@ -181,7 +183,6 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
xz-utils \ xz-utils \
zip zip
################################################################## ##################################################################
# installing fs-tools # installing fs-tools
################################################################## ##################################################################
@ -210,41 +211,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -259,9 +269,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -270,14 +283,46 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
chmod +x /usr/bin/dumb-init
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
chmod +x /usr/local/bin/gosu
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
##################################################################
# Version
##################################################################
RUN echo "=============================================" && \
echo python3 $(python3 --version) && \
echo pip3 $(pip3 --version) && \
echo python $(python --version) && \
echo pip $(pip --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key
################################################################## ##################################################################
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
################################################################## ##################################################################
# update locales # update locales

View File

@ -4,3 +4,14 @@ services:
image: "epicmorg/python:3.9" image: "epicmorg/python:3.9"
build: build:
context: . context: .
args:
P4_VERSION: ${P4_VERSION}
P4_DOWNLOAD_URL: ${P4_DOWNLOAD_URL}
SZ_VERSION: ${SZ_VERSION}
SZ_DOWNLOAD_URL: ${SZ_DOWNLOAD_URL}
LZGIT_VERSION: ${LZGIT_VERSION}
LZGIT_DOWNLOAD_URL: ${LZGIT_DOWNLOAD_URL}
DUMB_INIT_VERSION: ${DUMB_INIT_VERSION}
DUMB_INIT_DOWNLOAD_URL: ${DUMB_INIT_DOWNLOAD_URL}
GOSU_VER: ${GOSU_VER}
GOSU_DOWNLOAD_URL: ${GOSU_DOWNLOAD_URL}

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ bullseye main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main
deb-src https://packagecloud.io/github/git-lfs/debian/ bullseye main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ bullseye main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main

View File

@ -3,22 +3,20 @@ LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive ARG DEBIAN_FRONTEND=noninteractive
################################################################## ##################################################################
# perforce client binary # ARGuments
################################################################## ##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
################################################################## #configured by dockerfile / .ENV
# 7z official binary ARG P4_VERSION
################################################################## ARG P4_DOWNLOAD_URL
ARG SZ_VERSION=7z2400 ARG SZ_VERSION
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz ARG SZ_DOWNLOAD_URL
ARG LZGIT_VERSION
################################################################## ARG LZGIT_DOWNLOAD_URL
# LazyGit official binary ARG DUMB_INIT_VERSION
################################################################## ARG DUMB_INIT_DOWNLOAD_URL
ARG LZGIT_VERSION=0.40.2 ARG GOSU_VER
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz ARG GOSU_DOWNLOAD_URL
################################################################## ##################################################################
# update lists # update lists
@ -142,41 +140,50 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
################################################################## ##################################################################
# git fresh binary # git fresh binary
################################################################## ##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \ RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \ rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git && \ git
git --version
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
################################################################## ##################################################################
# git-lfs official binary # git-lfs official binary
################################################################## ##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
git \ git \
git-lfs && \ git-lfs && \
git --version && \ git-lfs install --skip-repo
git-lfs install --skip-repo && \
git-lfs --version RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
################################################################## ##################################################################
# gh official binary # gh official binary
################################################################## ##################################################################
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \ chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \ apt-get update && \
apt-get install -y --allow-unauthenticated \ apt-get install -y --allow-unauthenticated \
gh && \ gh
gh --version
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
################################################################## ##################################################################
# Install p4client # Install p4client
@ -191,9 +198,12 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/7z && \ mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \ chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \ mv -fv /tmp/7z/7zz /usr/bin/
7zz | head -4 && \
7z | head -4 RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
################################################################## ##################################################################
# Install LazyGit official binary # Install LazyGit official binary
@ -202,26 +212,31 @@ RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue
mkdir -p /tmp/lazygit && \ mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \ chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ mv -fv /tmp/lazygit/lazygit /usr/bin/
echo "lazygit version:" && \
lazygit --version
RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
################################################################## ##################################################################
# dumb init # dumb init
################################################################## ##################################################################
ARG DUMB_INIT_VERSION=1.2.5 RUN wget -q --no-check-certificate -c ${DUMB_INIT_DOWNLOAD_URL} --random-wait -O /usr/bin/dumb-init && \
RUN wget -q --no-check-certificate -c https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64 --random-wait -O /usr/bin/dumb-init && \ chmod +x /usr/bin/dumb-init
chmod +x /usr/bin/dumb-init && \
dumb-init --version RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
################################################################## ##################################################################
# grab gosu for easy step-down from root # gosu for easy step-down from root
################################################################## ##################################################################
ARG GOSU_VER=1.17 RUN wget -q --no-check-certificate -c ${GOSU_DOWNLOAD_URL} --random-wait -O /usr/local/bin/gosu && \
RUN wget -q --no-check-certificate -c https://github.com/tianon/gosu/releases/download/${GOSU_VER}/gosu-amd64 --random-wait -O /usr/local/bin/gosu && \ chmod +x /usr/local/bin/gosu
chmod +x /usr/local/bin/gosu && \
gosu --version RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
################################################################## ##################################################################
# Generate ssl key # Generate ssl key

View File

@ -4,3 +4,14 @@ services:
image: "epicmorg/debian:buster" image: "epicmorg/debian:buster"
build: build:
context: . context: .
args:
P4_VERSION: ${P4_VERSION}
P4_DOWNLOAD_URL: ${P4_DOWNLOAD_URL}
SZ_VERSION: ${SZ_VERSION}
SZ_DOWNLOAD_URL: ${SZ_DOWNLOAD_URL}
LZGIT_VERSION: ${LZGIT_VERSION}
LZGIT_DOWNLOAD_URL: ${LZGIT_DOWNLOAD_URL}
DUMB_INIT_VERSION: ${DUMB_INIT_VERSION}
DUMB_INIT_DOWNLOAD_URL: ${DUMB_INIT_DOWNLOAD_URL}
GOSU_VER: ${GOSU_VER}
GOSU_DOWNLOAD_URL: ${GOSU_DOWNLOAD_URL}

View File

@ -1,2 +1,2 @@
deb https://packagecloud.io/github/git-lfs/debian/ buster main deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ buster main
deb-src https://packagecloud.io/github/git-lfs/debian/ buster main deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/debian/ buster main

View File

@ -1,3 +1,3 @@
# mainline # mainline
deb https://ppa.launchpadcontent.net/git-core/candidate/ubuntu disco main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu disco main
deb-src https://ppa.launchpadcontent.net/git-core/candidate/ubuntu disco main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu disco main

View File

@ -1,3 +1,3 @@
# stable # stable
deb https://ppa.launchpadcontent.net/git-core/ppa/ubuntu disco main deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu disco main
deb-src https://ppa.launchpadcontent.net/git-core/ppa/ubuntu disco main deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu disco main

View File

@ -20,6 +20,7 @@ ARG DEBIAN_FRONTEND=noninteractive
# prepare system # prepare system
################################################################## ##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
################################################################## ##################################################################
# sources list # sources list
@ -27,7 +28,7 @@ RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN rm -rfv /etc/apt/sources.list RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg COPY etc/apt/keyrings/deb-multimedia-keyring.gpg /etc/apt/keyrings/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
@ -35,7 +36,6 @@ COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen COPY etc/locale.gen /etc/locale.gen
RUN mkdir -p /etc/apt/keyrings
RUN apt-get update && \ RUN apt-get update && \
apt-get upgrade -y && \ apt-get upgrade -y && \
apt-get dist-upgrade -y apt-get dist-upgrade -y

View File

@ -1,5 +1,5 @@
##multimedia ##multimedia
#deb http://httpredir.debian.org/debian-multimedia/ buster main non-free #deb [signed-by=/etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg] http://httpredir.debian.org/debian-multimedia/ buster main non-free
#deb-src http://httpredir.debian.org/debian-multimedia/ buster main non-free #deb-src [signed-by=/etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg] http://httpredir.debian.org/debian-multimedia/ buster main non-free
#deb http://httpredir.debian.org/debian-multimedia/ buster-backports main #deb [signed-by=/etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg] http://httpredir.debian.org/debian-multimedia/ buster-backports main
#deb-src http://httpredir.debian.org/debian-multimedia/ buster-backports main #deb-src [signed-by=/etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg] http://httpredir.debian.org/debian-multimedia/ buster-backports main

Some files were not shown because too many files have changed in this diff Show More