From 45bdbb1d08e5678e5c4709d6c886f9d941650e32 Mon Sep 17 00:00:00 2001 From: Jackeagle <116548-Jackeagle@users.noreply.gitlab.e.foundation> Date: Tue, 30 Sep 2025 14:41:18 +0530 Subject: [PATCH] Dockerfile: Replace Python 2.7 source compilation with pre-built packages - Python 2.7 source build increases docker image build time by approx 35 to 40min. - Replace it with pre-built .deb packages from Ubuntu 22.04 repository. - Significantly reduces Docker build time while maintaining Python 2.7 support for legacy device builds. --- Dockerfile | 19 +++++++------------ Dockerfile.community | 19 +++++++------------ 2 files changed, 14 insertions(+), 24 deletions(-) diff --git a/Dockerfile b/Dockerfile index 49c8f88..71872ab 100644 --- a/Dockerfile +++ b/Dockerfile @@ -203,18 +203,13 @@ RUN apt-get install -y android-sdk-libsparse-utils bc bison bsdmainutils build-e zip zlib1g-dev # Install Python 2.7 for legacy device support -RUN apt-get install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev \ - libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev libbz2-dev - -RUN cd /tmp && \ - wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tgz && \ - tar xzf Python-2.7.18.tgz && \ - cd Python-2.7.18 && \ - ./configure --prefix=/usr/local --enable-shared --enable-optimizations && \ - make -j$(nproc) && \ - make altinstall && \ - ln -sf /usr/local/bin/python2.7 /usr/bin/python2 && \ - cd / && rm -rf /tmp/Python-2.7.18* +RUN wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python2.7/python2.7_2.7.18-13ubuntu1_amd64.deb && \ + wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python2.7/libpython2.7-stdlib_2.7.18-13ubuntu1_amd64.deb && \ + wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python2.7/python2.7-minimal_2.7.18-13ubuntu1_amd64.deb && \ + wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python2.7/libpython2.7-minimal_2.7.18-13ubuntu1_amd64.deb && \ + dpkg -i *.deb || apt-get install -f -y && \ + rm -f *.deb && \ + ln -sf /usr/bin/python2.7 /usr/bin/python2 RUN curl https://storage.googleapis.com/git-repo-downloads/repo > /usr/local/bin/repo RUN chmod a+x /usr/local/bin/repo diff --git a/Dockerfile.community b/Dockerfile.community index 6cb78fd..d7b0d82 100644 --- a/Dockerfile.community +++ b/Dockerfile.community @@ -186,18 +186,13 @@ RUN apt-get install -y android-sdk-libsparse-utils bc bison bsdmainutils build-e zip zlib1g-dev # Install Python 2.7 for legacy device support -RUN apt-get install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev \ - libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev libbz2-dev - -RUN cd /tmp && \ - wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tgz && \ - tar xzf Python-2.7.18.tgz && \ - cd Python-2.7.18 && \ - ./configure --prefix=/usr/local --enable-shared --enable-optimizations && \ - make -j$(nproc) && \ - make altinstall && \ - ln -sf /usr/local/bin/python2.7 /usr/bin/python2 && \ - cd / && rm -rf /tmp/Python-2.7.18* +RUN wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python2.7/python2.7_2.7.18-13ubuntu1_amd64.deb && \ + wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python2.7/libpython2.7-stdlib_2.7.18-13ubuntu1_amd64.deb && \ + wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python2.7/python2.7-minimal_2.7.18-13ubuntu1_amd64.deb && \ + wget http://archive.ubuntu.com/ubuntu/pool/universe/p/python2.7/libpython2.7-minimal_2.7.18-13ubuntu1_amd64.deb && \ + dpkg -i *.deb || apt-get install -f -y && \ + rm -f *.deb && \ + ln -sf /usr/bin/python2.7 /usr/bin/python2 RUN curl https://storage.googleapis.com/git-repo-downloads/repo > /usr/local/bin/repo RUN chmod a+x /usr/local/bin/repo -- GitLab