diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 7db6ec5c4037..90297c45ac73 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -24,7 +24,7 @@ concurrency: jobs: build_catatclysm: name: Build - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 if: github.event.pull_request.draft == false steps: diff --git a/.github/workflows/autofix.yml b/.github/workflows/autofix.yml index ac889948c988..634a2112bc6b 100644 --- a/.github/workflows/autofix.yml +++ b/.github/workflows/autofix.yml @@ -12,7 +12,7 @@ env: jobs: autofix: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 permissions: contents: write diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 30ee49e18b2c..cb67e936a0ca 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -18,7 +18,7 @@ permissions: jobs: build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 environment: github-pages steps: - name: Checkout your repository using git @@ -35,7 +35,7 @@ jobs: deploy: needs: build - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} diff --git a/.github/workflows/i18n-extraction.yml b/.github/workflows/i18n-extraction.yml index e82c15e6969a..63f33e274c9b 100644 --- a/.github/workflows/i18n-extraction.yml +++ b/.github/workflows/i18n-extraction.yml @@ -13,7 +13,7 @@ concurrency: jobs: check-extraction: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Install dependencies run: | diff --git a/.github/workflows/i18n-printf-format.yml b/.github/workflows/i18n-printf-format.yml index de229f35d582..4518ea198f7a 100644 --- a/.github/workflows/i18n-printf-format.yml +++ b/.github/workflows/i18n-printf-format.yml @@ -8,7 +8,7 @@ on: jobs: check-po-printf: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: "Install dependencies" run: | diff --git a/.github/workflows/label.yml b/.github/workflows/label.yml index eab7bb4be63c..3905b1fa9a6a 100644 --- a/.github/workflows/label.yml +++ b/.github/workflows/label.yml @@ -4,7 +4,7 @@ on: pull_request_target jobs: triage: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 permissions: contents: read diff --git a/.github/workflows/manual-release.yml b/.github/workflows/manual-release.yml index 0bee38779114..36ec6b6475e0 100644 --- a/.github/workflows/manual-release.yml +++ b/.github/workflows/manual-release.yml @@ -15,7 +15,7 @@ env: jobs: release: name: Create Release - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: upload_url: ${{ steps.create_release.outputs.upload_url }} release_already_exists: ${{ steps.tag_check.outputs.exists }} @@ -89,18 +89,18 @@ jobs: mxe: x86_64 mxe_apt: x86-64 artifact: windows-tiles-x64 - os: ubuntu-22.04 + os: ubuntu-24.04 ext: zip content: application/zip - name: Windows Tiles x32 mxe: i686 mxe_apt: i686 artifact: windows-tiles-x32 - os: ubuntu-22.04 + os: ubuntu-24.04 ext: zip content: application/zip - name: Linux Tiles x64 - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: none tiles: 1 @@ -108,7 +108,7 @@ jobs: ext: tar.gz content: application/gzip - name: linux-curses-x64 - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: none tiles: 0 @@ -144,21 +144,21 @@ jobs: ext: dmg content: application/x-apple-diskimage - name: Android x64 - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: arm64 artifact: android-x64 ext: apk content: application/apk - name: Android x32 - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: arm32 artifact: android-x32 ext: apk content: application/apk - name: Android Bundle - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: bundle artifact: android-bundle diff --git a/.github/workflows/matrix.yml b/.github/workflows/matrix.yml index 6d3dbb8335e3..54a57061b0a4 100644 --- a/.github/workflows/matrix.yml +++ b/.github/workflows/matrix.yml @@ -19,7 +19,7 @@ concurrency: jobs: skip-duplicates: continue-on-error: true - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: should_skip_code: ${{ steps.skip_code_check.outputs.should_skip }} should_skip_data: ${{ steps.skip_data_check.outputs.should_skip }} @@ -42,7 +42,7 @@ jobs: include: - title: GCC 12, Ubuntu, Curses compiler: g++-12 - os: ubuntu-22.04 + os: ubuntu-24.04 cmake: 0 tiles: 0 sound: 0 @@ -56,7 +56,7 @@ jobs: - title: GCC 12, Ubuntu, Tiles, Sound, Lua, CMake, Languages compiler: g++-12 - os: ubuntu-22.04 + os: ubuntu-24.04 cmake: 1 tiles: 1 sound: 1 @@ -69,7 +69,7 @@ jobs: - title: GCC 12, Ubuntu, Tiles, Sound, Lua compiler: g++-12 - os: ubuntu-22.04 + os: ubuntu-24.04 cmake: 1 tiles: 1 sound: 1 @@ -83,7 +83,7 @@ jobs: # === Temporarily disabled because of #3664 === # - title: GCC 12, Ubuntu, Tiles, NoSound, ASan # compiler: g++-12 - # os: ubuntu-22.04 + # os: ubuntu-24.04 # cmake: 0 # tiles: 1 # sound: 0 @@ -96,7 +96,7 @@ jobs: # === Temporarily disabled because of #3664 === # - title: Clang 14, Ubuntu, Tiles, NoSound, ASan, UBSan # compiler: clang++-14 - # os: ubuntu-22.04 + # os: ubuntu-24.04 # cmake: 0 # tiles: 1 # sound: 0 diff --git a/.github/workflows/push-translation-template.yml b/.github/workflows/push-translation-template.yml index c2840c628eb1..bd59d64b44aa 100644 --- a/.github/workflows/push-translation-template.yml +++ b/.github/workflows/push-translation-template.yml @@ -10,7 +10,7 @@ on: jobs: push-template: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 if: > ${{ github.event.workflow_run.event == 'push' && github.event.workflow_run.conclusion == 'success' && diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 114bc95c7ece..2fdc1557a1dd 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -38,7 +38,7 @@ jobs: release: needs: metadata name: Create Release - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 if: github.event_name == 'workflow_dispatch' || fromJson(needs.metadata.outputs.count) > 0 outputs: @@ -114,18 +114,18 @@ jobs: mxe: x86_64 mxe_apt: x86-64 artifact: windows-tiles-x64 - os: ubuntu-22.04 + os: ubuntu-24.04 ext: zip content: application/zip - name: Windows Tiles x32 mxe: i686 mxe_apt: i686 artifact: windows-tiles-x32 - os: ubuntu-22.04 + os: ubuntu-24.04 ext: zip content: application/zip - name: Linux Tiles x64 - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: none tiles: 1 @@ -133,7 +133,7 @@ jobs: ext: tar.gz content: application/gzip - name: linux-curses-x64 - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: none tiles: 0 @@ -169,21 +169,21 @@ jobs: ext: dmg content: application/x-apple-diskimage - name: Android x64 - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: arm64 artifact: android-x64 ext: apk content: application/apk - name: Android x32 - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: arm32 artifact: android-x32 ext: apk content: application/apk - name: Android Bundle - os: ubuntu-22.04 + os: ubuntu-24.04 mxe: none android: bundle artifact: android-bundle diff --git a/build-scripts/requirements.sh b/build-scripts/requirements.sh index c5818680b0af..8d9c5910217d 100644 --- a/build-scripts/requirements.sh +++ b/build-scripts/requirements.sh @@ -14,13 +14,19 @@ if [[ "$LIBBACKTRACE" == "1" ]]; then ) fi +# needed for newer ubuntu versions +# https://stackoverflow.com/questions/75608323/how-do-i-solve-error-externally-managed-environment-every-time-i-use-pip-3 +if [[ $(bc <<< "$(lsb_release -rs) > 22.04") -eq 1 ]]; then + PIP_FLAGS="--break-system-packages" +fi + if [ -n "$CATA_CLANG_TIDY" ]; then - pip install --user wheel --upgrade - pip install --user 'lit==0.11.1' 'click==7.1.2' + pip install --user wheel --upgrade $PIP_FLAGS + pip install --user 'lit==0.11.1' 'click==7.1.2' $PIP_FLAGS fi if [ -n "$LANGUAGES" ]; then - pip install --user polib luaparser + pip install --user polib luaparser $PIP_FLAGS fi # Influenced by https://github.com/zer0main/battleship/blob/master/build/windows/requirements.sh