From 68ab2f17f08fb44674f7791248277f995e2ee2f3 Mon Sep 17 00:00:00 2001 From: Vitor Bandeira Date: Thu, 15 Oct 2026 08:10:02 -0300 Subject: [PATCH 1/2] ci: prepare shared jobs for the Ubuntu 26 pool Move hosted and private labels together and replace host-wide installer cleanup with run-owned Docker objects. Publish images only from master and keep the existing container OS cases. Poll the streaming test output instead of relying on interpreter startup timing. Run utility tests without changing host packages. Signed-off-by: Vitor Bandeira --- .github/workflows/black.yaml | 2 +- .github/workflows/codeql.yml | 2 +- ...b-actions-cron-sync-fork-from-upstream.yml | 2 +- .../github-actions-cron-test-installer.yml | 25 +++++++++---------- .../github-actions-cron-update-OR.yml | 2 +- .../github-actions-cron-update-yosys.yml | 2 +- .../github-actions-cron-util-test.yml | 8 ++---- .github/workflows/github-actions-lint-tcl.yml | 2 +- .../github-actions-manual-update-rules.yml | 2 +- .../github-actions-on-delete-cleanup.yml | 2 +- .../github-actions-on-label-create.yml | 2 +- .github/workflows/github-actions-on-push.yml | 2 +- .../github-actions-publish-docker-images.yml | 22 +++++----------- .../github-actions-quarterly-tag.yml | 2 +- .github/workflows/github-actions-stale.yml | 2 +- .../workflows/github-actions-update-rules.yml | 2 +- .../workflows/github-actions-yaml-test.yml | 2 +- flow/test/test_run_command.py | 16 +++++++++--- 18 files changed, 46 insertions(+), 53 deletions(-) diff --git a/.github/workflows/black.yaml b/.github/workflows/black.yaml index a9d4fc747d..a3d82d0e4e 100644 --- a/.github/workflows/black.yaml +++ b/.github/workflows/black.yaml @@ -7,7 +7,7 @@ permissions: jobs: lint: - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - uses: psf/black@87928e6d6761a4a6d22250e1fee5601b3998086e # 26.5.1 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index fa7600ace2..b7197cf5f4 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -17,7 +17,7 @@ jobs: analyze: name: Analyze ${{ matrix.language }} if: github.repository_owner != 'The-OpenROAD-Project-private' - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 permissions: actions: read contents: read diff --git a/.github/workflows/github-actions-cron-sync-fork-from-upstream.yml b/.github/workflows/github-actions-cron-sync-fork-from-upstream.yml index 4ab4c33f5a..b2bc6f4375 100644 --- a/.github/workflows/github-actions-cron-sync-fork-from-upstream.yml +++ b/.github/workflows/github-actions-cron-sync-fork-from-upstream.yml @@ -14,7 +14,7 @@ on: jobs: Sync-Branch-From-Upstream: name: Automatic sync 'master' from The-OpenROAD-Project/OpenROAD-flow-scripts - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} # Only allow one action to run at a time. concurrency: sync-branch-from-upstream diff --git a/.github/workflows/github-actions-cron-test-installer.yml b/.github/workflows/github-actions-cron-test-installer.yml index 54b7488de2..3835e12536 100644 --- a/.github/workflows/github-actions-cron-test-installer.yml +++ b/.github/workflows/github-actions-cron-test-installer.yml @@ -30,29 +30,28 @@ jobs: fail-fast: false matrix: os: ["ubuntu20.04", "ubuntu22.04"] - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} + env: + INSTALLER_TAG: installer-${{ github.run_id }}-${{ github.run_attempt }} + INSTALLER_CONTAINER: installer-${{ github.run_id }}-${{ github.run_attempt }}-${{ matrix.os }} steps: - name: Check out repository code uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 1 submodules: recursive - - name: Network Setup - run: | - sudo apt-get update - sudo apt-get install -y bridge-utils - sudo pkill docker - sudo iptables -t nat -F - sudo ifconfig docker0 down - sudo brctl delbr docker0 - sudo service docker restart - name: Run installer run: | - ./etc/DockerHelper.sh create -target=dev -os=${{ matrix.os }} -tag=latest + ./etc/DockerHelper.sh create -target=dev -os=${{ matrix.os }} -tag="$INSTALLER_TAG" - name: Build project run: | - ./etc/DockerHelper.sh create -target=builder -os=${{ matrix.os }} -tag=latest + ./etc/DockerHelper.sh create -target=builder -os=${{ matrix.os }} -tag="$INSTALLER_TAG" - name: Test build run: | cmd="source ./env.sh ; yosys -help ; openroad -help ; make -C flow ;" - docker run openroad/flow-${{ matrix.os }}-builder /bin/bash -c "${cmd}" + docker run --rm --name "$INSTALLER_CONTAINER" "openroad/flow-${{ matrix.os }}-builder:$INSTALLER_TAG" /bin/bash -c "${cmd}" + - name: Clean up this installer run + if: always() + run: | + docker rm -f "$INSTALLER_CONTAINER" || true + docker image rm "openroad/flow-${{ matrix.os }}-builder:$INSTALLER_TAG" "openroad/flow-${{ matrix.os }}-dev:$INSTALLER_TAG" || true diff --git a/.github/workflows/github-actions-cron-update-OR.yml b/.github/workflows/github-actions-cron-update-OR.yml index c1fa3b0834..bab2383e94 100644 --- a/.github/workflows/github-actions-cron-update-OR.yml +++ b/.github/workflows/github-actions-cron-update-OR.yml @@ -12,7 +12,7 @@ permissions: jobs: update: - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Check out repository code recursively uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 diff --git a/.github/workflows/github-actions-cron-update-yosys.yml b/.github/workflows/github-actions-cron-update-yosys.yml index 765a570327..32117bd237 100644 --- a/.github/workflows/github-actions-cron-update-yosys.yml +++ b/.github/workflows/github-actions-cron-update-yosys.yml @@ -12,7 +12,7 @@ permissions: jobs: update: - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Check out repository code recursively uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 diff --git a/.github/workflows/github-actions-cron-util-test.yml b/.github/workflows/github-actions-cron-util-test.yml index 8582f8484c..9c287dad9b 100644 --- a/.github/workflows/github-actions-cron-util-test.yml +++ b/.github/workflows/github-actions-cron-util-test.yml @@ -20,20 +20,16 @@ jobs: testUtilScripts: strategy: fail-fast: false - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Check out repository code uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 1 submodules: recursive - - name: Install Dependencies - run: | - sudo apt update - sudo apt install -y python3-pip - name: Run Tests run: | cd flow/test for file in *.py; do - python "$file" + python3 "$file" done diff --git a/.github/workflows/github-actions-lint-tcl.yml b/.github/workflows/github-actions-lint-tcl.yml index b0cefe2bf7..c9115f3316 100644 --- a/.github/workflows/github-actions-lint-tcl.yml +++ b/.github/workflows/github-actions-lint-tcl.yml @@ -13,7 +13,7 @@ permissions: jobs: Tclint: - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Checkout repository uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 diff --git a/.github/workflows/github-actions-manual-update-rules.yml b/.github/workflows/github-actions-manual-update-rules.yml index f0f215c774..b5055122ea 100644 --- a/.github/workflows/github-actions-manual-update-rules.yml +++ b/.github/workflows/github-actions-manual-update-rules.yml @@ -12,7 +12,7 @@ permissions: jobs: update: - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} strategy: fail-fast: false steps: diff --git a/.github/workflows/github-actions-on-delete-cleanup.yml b/.github/workflows/github-actions-on-delete-cleanup.yml index 76bd819af9..fdbb227496 100644 --- a/.github/workflows/github-actions-on-delete-cleanup.yml +++ b/.github/workflows/github-actions-on-delete-cleanup.yml @@ -12,7 +12,7 @@ jobs: Delete-From-Staging: name: Delete branch from staging - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} permissions: # Read-only access so we don't accidentally try to push to *this* repository. diff --git a/.github/workflows/github-actions-on-label-create.yml b/.github/workflows/github-actions-on-label-create.yml index 72818f553f..3ee0140230 100644 --- a/.github/workflows/github-actions-on-label-create.yml +++ b/.github/workflows/github-actions-on-label-create.yml @@ -12,7 +12,7 @@ env: jobs: Push-To-Staging: name: Push to staging - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} permissions: # Read-only access so we don't accidentally try to push to *this* repository. diff --git a/.github/workflows/github-actions-on-push.yml b/.github/workflows/github-actions-on-push.yml index eb12fa5240..e6fb8b219c 100644 --- a/.github/workflows/github-actions-on-push.yml +++ b/.github/workflows/github-actions-on-push.yml @@ -11,7 +11,7 @@ permissions: jobs: scan: - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Check out repository code uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 diff --git a/.github/workflows/github-actions-publish-docker-images.yml b/.github/workflows/github-actions-publish-docker-images.yml index ebddadd103..450ec1ec08 100644 --- a/.github/workflows/github-actions-publish-docker-images.yml +++ b/.github/workflows/github-actions-publish-docker-images.yml @@ -1,6 +1,8 @@ name: Build and publish ORFS images on: push: + branches: + - master paths: - etc/DependencyInstaller.sh - etc/DockerHelper.sh @@ -12,26 +14,13 @@ on: - docker/Dockerfile.builder - tools/codespace/scripts/** - tools/codespace/Dockerfile-lxqt - pull_request: - paths: - - etc/DependencyInstaller.sh - - etc/DockerHelper.sh - - .github/workflows/github-actions-publish-docker-images.yml - - build_openroad.sh - - env.sh - - flow/Makefile - - docker/Dockerfile.dev - - docker/Dockerfile.builder - - tools/codespace/scripts/** - - tools/codespace/Dockerfile-lxqt - permissions: contents: read packages: write jobs: buildCodespaceImage: - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} timeout-minutes: 600 steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 @@ -65,7 +54,7 @@ jobs: fail-fast: false matrix: os: [["ubuntu20.04", "ubuntu:20.04"], ["ubuntu22.04", "ubuntu:22.04"]] - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Check out repository code uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 @@ -109,9 +98,10 @@ jobs: fail-fast: false matrix: os: ["ubuntu20.04", "ubuntu22.04"] - runs-on: ubuntu-24.04 + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Free Disk Space + if: runner.environment == 'github-hosted' uses: jlumbroso/free-disk-space@ceedf095f4ec1a097402bc6bd80831f2e1a6fde6 # v2.0.0 with: tool-cache: false diff --git a/.github/workflows/github-actions-quarterly-tag.yml b/.github/workflows/github-actions-quarterly-tag.yml index 5aefb6e26b..53896a560d 100644 --- a/.github/workflows/github-actions-quarterly-tag.yml +++ b/.github/workflows/github-actions-quarterly-tag.yml @@ -13,7 +13,7 @@ concurrency: jobs: create-tag: name: Create quarterly tag - runs-on: ubuntu-24.04 + runs-on: ubuntu-26.04 if: github.repository == 'The-OpenROAD-Project/OpenROAD-flow-scripts' permissions: contents: write diff --git a/.github/workflows/github-actions-stale.yml b/.github/workflows/github-actions-stale.yml index c87cbb2310..02f0a2fd3e 100644 --- a/.github/workflows/github-actions-stale.yml +++ b/.github/workflows/github-actions-stale.yml @@ -7,7 +7,7 @@ on: jobs: Stale: - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} permissions: # Required to label and close stale issues. diff --git a/.github/workflows/github-actions-update-rules.yml b/.github/workflows/github-actions-update-rules.yml index 41e4174c5c..4ccd074581 100644 --- a/.github/workflows/github-actions-update-rules.yml +++ b/.github/workflows/github-actions-update-rules.yml @@ -10,7 +10,7 @@ permissions: jobs: update: - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} strategy: fail-fast: false steps: diff --git a/.github/workflows/github-actions-yaml-test.yml b/.github/workflows/github-actions-yaml-test.yml index 1113626809..5c4e30aa00 100644 --- a/.github/workflows/github-actions-yaml-test.yml +++ b/.github/workflows/github-actions-yaml-test.yml @@ -10,7 +10,7 @@ jobs: docs-test-job: name: 'Tests for variables.yaml' if: github.event_name == 'pull_request' || github.event_name == 'push' - runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-24.04' }} + runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Checkout repository uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 diff --git a/flow/test/test_run_command.py b/flow/test/test_run_command.py index b4a4588ed5..77b88aa06a 100644 --- a/flow/test/test_run_command.py +++ b/flow/test/test_run_command.py @@ -196,10 +196,18 @@ def test_streaming_flush(self): stdout=subprocess.PIPE, stderr=subprocess.PIPE, ) - # Wait a bit for first line to be flushed - time.sleep(0.3) - with open(self.log_path) as f: - content = f.read() + # Poll until the first line is flushed. Interpreter start-up time + # varies, so a fixed sleep is racy. The child sleeps 1.5s in total, + # so line1 must show up before the deadline while it still runs. + content = "" + deadline = time.monotonic() + 1.0 + while time.monotonic() < deadline: + if os.path.exists(self.log_path): + with open(self.log_path) as f: + content = f.read() + if "line1" in content: + break + time.sleep(0.05) self.assertIn( "line1", content, "line1 should appear before subprocess finishes" ) From 7354ca87952b9ea741edee708067f456b8c432e2 Mon Sep 17 00:00:00 2001 From: Vitor Bandeira Date: Thu, 15 Oct 2026 10:33:26 -0300 Subject: [PATCH 2/2] build!: drop Ubuntu 20.04 support BREAKING CHANGE: Ubuntu 20.04 is no longer a supported installer or Docker build target. Use Ubuntu 22.04. Signed-off-by: Vitor Bandeira --- .github/workflows/github-actions-cron-test-installer.yml | 2 +- .github/workflows/github-actions-publish-docker-images.yml | 4 ++-- build_openroad.sh | 2 +- docs/user/BuildLocally.md | 2 +- docs/user/BuildWithPrebuilt.md | 6 +++--- docs/user/BuildWithWSL.md | 2 +- etc/DependencyInstaller.sh | 6 ++---- etc/DockerHelper.sh | 5 +---- 8 files changed, 12 insertions(+), 17 deletions(-) diff --git a/.github/workflows/github-actions-cron-test-installer.yml b/.github/workflows/github-actions-cron-test-installer.yml index 3835e12536..d63c0f7d86 100644 --- a/.github/workflows/github-actions-cron-test-installer.yml +++ b/.github/workflows/github-actions-cron-test-installer.yml @@ -29,7 +29,7 @@ jobs: strategy: fail-fast: false matrix: - os: ["ubuntu20.04", "ubuntu22.04"] + os: ["ubuntu22.04"] runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} env: INSTALLER_TAG: installer-${{ github.run_id }}-${{ github.run_attempt }} diff --git a/.github/workflows/github-actions-publish-docker-images.yml b/.github/workflows/github-actions-publish-docker-images.yml index 450ec1ec08..5e65289756 100644 --- a/.github/workflows/github-actions-publish-docker-images.yml +++ b/.github/workflows/github-actions-publish-docker-images.yml @@ -53,7 +53,7 @@ jobs: strategy: fail-fast: false matrix: - os: [["ubuntu20.04", "ubuntu:20.04"], ["ubuntu22.04", "ubuntu:22.04"]] + os: [["ubuntu22.04", "ubuntu:22.04"]] runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Check out repository code @@ -97,7 +97,7 @@ jobs: strategy: fail-fast: false matrix: - os: ["ubuntu20.04", "ubuntu22.04"] + os: ["ubuntu22.04"] runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted-ubuntu-26.04' || 'ubuntu-26.04' }} steps: - name: Free Disk Space diff --git a/build_openroad.sh b/build_openroad.sh index 0dbd16c2b5..07a4c097c2 100755 --- a/build_openroad.sh +++ b/build_openroad.sh @@ -101,7 +101,7 @@ Options: Options valid only for Docker builds: -c, --copy-platforms Copy platforms to inside docker image. - --os=DOCKER_OS_NAME Choose between ubuntu22.04 (default), ubuntu20.04. + --os=DOCKER_OS_NAME Use ubuntu22.04 (default). This script builds the OpenROAD tools: openroad, yosys and yosys plugins. By default, the tools will be built from the linked submodule hashes. diff --git a/docs/user/BuildLocally.md b/docs/user/BuildLocally.md index 120b4f943e..338424ac27 100644 --- a/docs/user/BuildLocally.md +++ b/docs/user/BuildLocally.md @@ -4,7 +4,7 @@ The `setup.sh` script installs all of the dependencies, including OpenROAD dependencies, if they are not already installed. -Supported configurations are: Ubuntu 20.04, Ubuntu 22.04, Ubuntu 22.04(aarch64), RHEL 8, RockyLinux 9 and Debian 11. +Supported configurations are: Ubuntu 22.04, Ubuntu 22.04(aarch64), RHEL 8, RockyLinux 9 and Debian 11. ``` shell git clone --recursive https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts diff --git a/docs/user/BuildWithPrebuilt.md b/docs/user/BuildWithPrebuilt.md index 10b7dc7b2f..8f1c95a6fa 100644 --- a/docs/user/BuildWithPrebuilt.md +++ b/docs/user/BuildWithPrebuilt.md @@ -18,7 +18,7 @@ included from the Precision Innovations' GitHub releases Thanks to [Precision Innovations](https://precisioninno.com/) for hosting and maintaining these binaries. The following platforms are supported currently: -- Ubuntu 20.04/22.04 +- Ubuntu 22.04 - Debian 11 Use the following steps to download: @@ -28,10 +28,10 @@ Step 1: Click on the [Precision Innovations Github releases link](https://github Step 2: Download the artifacts for your distribution. Step 3: Run the install command based on platform use package installer. - For example Ubuntu 20.04 use: + For example Ubuntu 22.04 use: ```shell -sudo apt install ./openroad_2.0_amd64-ubuntu20.04.deb +sudo apt install ./openroad_2.0_amd64-ubuntu22.04.deb ``` ## Verify Installation diff --git a/docs/user/BuildWithWSL.md b/docs/user/BuildWithWSL.md index 230ab7beba..94ab25dc68 100644 --- a/docs/user/BuildWithWSL.md +++ b/docs/user/BuildWithWSL.md @@ -2,7 +2,7 @@ Windows Subsystem for Linux, or WSL for short is a way for you to mount a Linux-based OS onto your Windows machine, allowing you to build OpenROAD-flow-scripts both locally and via Docker. ## Install WSL -Instructions to install WSL can be found [here](https://learn.microsoft.com/en-us/windows/wsl/install). You may use any kernel supported, such as: Ubuntu 20.04, Ubuntu 22.04, RHEL 8, RockyLinux 9, Debian 11. +Instructions to install WSL can be found [here](https://learn.microsoft.com/en-us/windows/wsl/install). You may use any kernel supported, such as: Ubuntu 22.04, RHEL 8, RockyLinux 9, Debian 11. We recommend that users follow the Docker build by continuing onto the guide below. However, if you wish to install locally, you may follow the build locally instructions [here](./BuildLocally.md). diff --git a/etc/DependencyInstaller.sh b/etc/DependencyInstaller.sh index e48baab34d..1303b663b5 100755 --- a/etc/DependencyInstaller.sh +++ b/etc/DependencyInstaller.sh @@ -261,14 +261,12 @@ _installUbuntuPackages() { echo "Klayout is already installed" fi else - if [[ $1 == 20.04 ]]; then - klayoutChecksum=146f51de7fcc760e51c7438998934d9d - elif [[ $1 == 22.04 ]]; then + if [[ $1 == 22.04 ]]; then klayoutChecksum=6dfffa50f385881768dee30bdc759608 elif [[ $1 == 24.04 ]]; then klayoutChecksum=0181713e60891e461d6d1664c1b8e213 else - echo "Unsupported Ubuntu version $1. Supported versions: 20.04, 22.04, 24.04. Please upgrade to a supported LTS release or install KLayout ${klayoutVersion} manually from https://www.klayout.org/build.html" + echo "Unsupported Ubuntu version $1. Supported versions: 22.04, 24.04. Please upgrade to a supported LTS release or install KLayout ${klayoutVersion} manually from https://www.klayout.org/build.html" exit 1 fi wget https://www.klayout.org/downloads/Ubuntu-${1%.*}/klayout_${klayoutVersion}-1_amd64.deb diff --git a/etc/DockerHelper.sh b/etc/DockerHelper.sh index 17eea630f7..69da539cc1 100755 --- a/etc/DockerHelper.sh +++ b/etc/DockerHelper.sh @@ -21,7 +21,7 @@ usage: $0 [CMD] [OPTIONS] push Push the docker image to Docker Hub OPTIONS: - -os=OS_NAME Choose between ubuntu20.04 and ubuntu22.04 (default). + -os=OS_NAME Use ubuntu22.04 (default). -target=TARGET Choose target for the Docker image: 'dev': os + packages to compile app 'builder': os + packages to compile app + @@ -45,9 +45,6 @@ EOF _setup() { case "${os}" in - "ubuntu20.04") - osBaseImage="ubuntu:20.04" - ;; "ubuntu22.04") osBaseImage="ubuntu:22.04" ;;