diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index be158ccf..eafec57b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -56,6 +56,8 @@ jobs: - run: powershell .\disk_cleanup.bat if: ${{ contains('windows', matrix.os) }} + - run: sudo scripts/apt_install.sh + if: ${{ contains('android linux', matrix.os) }} - run: pip install setuptools if: ${{ contains('ios macos', matrix.os) }} diff --git a/disk_cleanup.sh b/disk_cleanup.sh index be083504..ddd2cf11 100755 --- a/disk_cleanup.sh +++ b/disk_cleanup.sh @@ -6,6 +6,12 @@ df -h docker rmi $(docker images -q -a) sudo docker image prune --all --force +# ghcup の削除 +sudo rm -rf /usr/local/.ghcup + +# Swift の削除 +sudo rm -rf /usr/share/swift + # Boost の削除 sudo rm -rf /usr/local/share/boost @@ -16,8 +22,12 @@ sudo rm -rf /usr/share/dotnet sudo rm -rf /opt/ghc # Removing large packages -sudo apt-get remove -y 'php.*' '^mongodb-.*' '^aspnetcore-.*' '^dotnet-.*' firefox gcc libmysqlclient* '^mysql-.*' azure-cli google-chrome-stable firefox powershell mono-devel libgl1-mesa-dri google-cloud-sdk google-cloud-cli -sudo apt-get autoremove -y +sudo apt-get remove -y \ + 'php.*' '^mongodb-.*' '^aspnetcore-.*' '^dotnet-.*' \ + firefox gcc libmysqlclient* '^mysql-.*' azure-cli \ + google-chrome-stable firefox powershell mono-devel \ + libgl1-mesa-dri google-cloud-sdk google-cloud-cli +sudo apt-get autoremove -y --purge sudo apt-get clean # Android SDK の削除 diff --git a/docker/android/Dockerfile b/docker/android/Dockerfile index 8b6eb76e..2ca42e4e 100644 --- a/docker/android/Dockerfile +++ b/docker/android/Dockerfile @@ -1,32 +1,15 @@ -FROM ubuntu:20.04 - -ENV DEBIAN_FRONTEND=noninteractive +# syntax = docker/dockerfile:experimental +FROM ubuntu:22.04 RUN rm -f /etc/apt/apt.conf.d/docker-clean \ && echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' \ > /etc/apt/apt.conf.d/keep-cache -RUN apt update \ - && apt upgrade -y \ - && apt install -y build-essential \ - cmake \ - curl \ - git \ - libncurses5 \ - lsb-release \ - openjdk-11-jdk-headless \ - python \ - pkg-config \ - rsync \ - sudo \ - time \ - unzip - -RUN update-java-alternatives -s java-1.11.0-openjdk-amd64 +COPY scripts/ /root/scripts/ +RUN /root/scripts/apt_install.sh COPY build/ /root/build/ COPY Makefile VERSION /root/ -COPY scripts/ /root/scripts/ RUN cd /root/ \ && make USE_CCACHE=0 -C build android.fetch diff --git a/docker/linux-arm64/Dockerfile b/docker/linux-arm64/Dockerfile index 3d0fb873..c8cb9ad2 100644 --- a/docker/linux-arm64/Dockerfile +++ b/docker/linux-arm64/Dockerfile @@ -1,26 +1,15 @@ -FROM ubuntu:20.04 - -ENV DEBIAN_FRONTEND=noninteractive +# syntax = docker/dockerfile:experimental +FROM ubuntu:22.04 RUN rm -f /etc/apt/apt.conf.d/docker-clean \ && echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' \ > /etc/apt/apt.conf.d/keep-cache -RUN apt update \ - && apt upgrade -y \ - && apt install -y build-essential \ - cmake \ - curl \ - git \ - libncurses5 \ - lsb-release \ - python \ - pkg-config \ - rsync +COPY scripts/ /root/scripts/ +RUN /root/scripts/apt_install.sh COPY build/ /root/build/ COPY Makefile VERSION /root/ -COPY scripts/ /root/scripts/ RUN cd /root/ \ && make USE_CCACHE=0 -C build linux-arm64.fetch diff --git a/docker/linux-x64/Dockerfile b/docker/linux-x64/Dockerfile index 162b4a26..560623a9 100644 --- a/docker/linux-x64/Dockerfile +++ b/docker/linux-x64/Dockerfile @@ -1,26 +1,15 @@ -FROM ubuntu:20.04 - -ENV DEBIAN_FRONTEND=noninteractive +# syntax = docker/dockerfile:experimental +FROM ubuntu:22.04 RUN rm -f /etc/apt/apt.conf.d/docker-clean \ && echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' \ > /etc/apt/apt.conf.d/keep-cache -RUN apt update \ - && apt upgrade -y \ - && apt install -y build-essential \ - cmake \ - curl \ - git \ - libncurses5 \ - lsb-release \ - python \ - pkg-config \ - rsync +COPY scripts/ /root/scripts/ +RUN /root/scripts/apt_install.sh COPY build/ /root/build/ COPY Makefile VERSION /root/ -COPY scripts/ /root/scripts/ RUN cd /root/ \ && make USE_CCACHE=0 -C build linux-x64.fetch diff --git a/patch/linux_clang_optional.patch b/patch/linux_clang_optional.patch index 04ae332e..96d3958f 100644 --- a/patch/linux_clang_optional.patch +++ b/patch/linux_clang_optional.patch @@ -1,8 +1,9 @@ diff --git a/src/modules/congestion_controller/goog_cc/loss_based_bwe_v2.h b/src/modules/congestion_controller/goog_cc/loss_based_bwe_v2.h -index 34c96c6..965a26b 100644 +index 425ca2a0c8..b45c6dd777 100644 --- a/src/modules/congestion_controller/goog_cc/loss_based_bwe_v2.h +++ b/src/modules/congestion_controller/goog_cc/loss_based_bwe_v2.h -@@ -126,6 +126,7 @@ class LossBasedBweV2 { +@@ -124,7 +124,8 @@ class LossBasedBweV2 { + bool use_byte_loss_rate = false; TimeDelta padding_duration = TimeDelta::Zero(); bool bound_best_candidate = false; bool pace_at_loss_based_estimate = false; diff --git a/scripts/apt_install.sh b/scripts/apt_install.sh new file mode 100755 index 00000000..2eed2ac0 --- /dev/null +++ b/scripts/apt_install.sh @@ -0,0 +1,26 @@ +#!/bin/sh + +set -ex + +export DEBIAN_FRONTEND=noninteractive + +apt-get update --fix-missing +apt-get upgrade -y + +apt-get install -y --no-install-recommends \ + binutils \ + ca-certificates \ + clang \ + cmake \ + curl \ + git \ + lsb-release \ + make \ + ninja-build \ + patch \ + pkg-config \ + python3 \ + rsync \ + sudo \ + unzip \ + xz-utils