From 0bc7964d5e79120f15b559cd1da4095b32f4341a Mon Sep 17 00:00:00 2001 From: Oliver Steffen <95756456+osteffenrh@users.noreply.github.com> Date: Fri, 8 Dec 2023 11:02:37 +0100 Subject: [PATCH] Fedora 39 fixups (#87) * Fedora 39: Use Qemu from package repo Fedora 39 ships Qemu 8. We can use that instead of building it from source. Also add Qemu for RiscV. Signed-off-by: Oliver Steffen * Allow using dev image as root Don't abort the entrypoint script if the user-id already exists. This allows using the dev images as root or when using Podman, which does some user mapping already. See issue #76 and PR #77. Signed-off-by: Oliver Steffen * Readme: Add Fedora 39 image to table Add links and badges for the Fedora 39 images to the table. Signed-off-by: Oliver Steffen --------- Signed-off-by: Oliver Steffen --- Fedora-39/Dockerfile | 30 ++++++---------------------- Fedora-39/fedora39_dev_entrypoint.sh | 2 +- README.md | 3 +++ 3 files changed, 10 insertions(+), 25 deletions(-) diff --git a/Fedora-39/Dockerfile b/Fedora-39/Dockerfile index 38d02ec..fe927d2 100644 --- a/Fedora-39/Dockerfile +++ b/Fedora-39/Dockerfile @@ -75,36 +75,18 @@ RUN npm install -g npm \ # firmware images. It is based on the build image and adds Qemu for the # architectures under test. -#Building qemu from source: FROM build AS test -ARG QEMU_URL="https://gitlab.com/qemu-project/qemu.git" -ARG QEMU_BRANCH="v8.1.3" RUN dnf \ --assumeyes \ --nodocs \ --setopt=install_weak_deps=0 \ install \ - bzip2 \ - findutils \ - git \ - glib2-devel \ - gtk3-devel \ - libfdt-devel \ - ninja-build \ - pixman-devel \ - python3 \ - tar \ - zlib-devel && \ - git clone "${QEMU_URL}" --branch "${QEMU_BRANCH}" --depth 1 qemu && \ - cd qemu && \ - ./configure --target-list=x86_64-softmmu,arm-softmmu,aarch64-softmmu,loongarch64-softmmu --enable-gtk && \ - make install -j $(nproc) && \ - cd .. && \ - rm -rf qemu && \ - dnf \ - --assumeyes \ - remove \ - ninja-build + qemu-system-arm \ + qemu-system-aarch64 \ + qemu-system-loongarch64 \ + qemu-system-x86 \ + qemu-system-riscv \ + qemu-ui-gtk # Dev Image # This image is intended for local use. This builds on the test image but adds diff --git a/Fedora-39/fedora39_dev_entrypoint.sh b/Fedora-39/fedora39_dev_entrypoint.sh index 480f548..d670211 100755 --- a/Fedora-39/fedora39_dev_entrypoint.sh +++ b/Fedora-39/fedora39_dev_entrypoint.sh @@ -39,7 +39,7 @@ user_gid=$(stat -c "%g" "${EDK2_DOCKER_USER_HOME}") groupadd "${EDK2_DOCKER_USER}" -f -o -g "${user_gid}" # # - Add the user. -useradd "${EDK2_DOCKER_USER}" -u "${user_uid}" -g "${user_gid}" \ +useradd "${EDK2_DOCKER_USER}" -o -u "${user_uid}" -g "${user_gid}" \ -G wheel -d "${EDK2_DOCKER_USER_HOME}" -M -s /bin/bash echo "${EDK2_DOCKER_USER}":tianocore | chpasswd diff --git a/README.md b/README.md index 10587da..83134eb 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,9 @@ be found in [current status](#Current-Status). | Image Name | OS SKU | Type | Build Status | Documentation | | :--------- | :----- | :--- | :----------- | :---- | +| [fedora-39-build](https://github.com/tianocore/containers/pkgs/container/containers%2Ffedora-39-build) | Fedora 39 | Build | [![Fedora 39 Images](https://github.com/tianocore/containers/actions/workflows/Fedora-39.yaml/badge.svg)](https://github.com/tianocore/containers/actions/workflows/Fedora-39.yaml) | [Doc](Fedora-39/Readme.md) | +| [fedora-39-test](https://github.com/tianocore/containers/pkgs/container/containers%2Ffedora-39-test) | Fedora 39 | Test | [![Fedora 39 Images](https://github.com/tianocore/containers/actions/workflows/Fedora-39.yaml/badge.svg)](https://github.com/tianocore/containers/actions/workflows/Fedora-39.yaml) | [Doc](Fedora-39/Readme.md) | +| [fedora-39-dev](https://github.com/tianocore/containers/pkgs/container/containers%2Ffedora-39-dev) | Fedora 39 | Dev | [![Fedora 39 Images](https://github.com/tianocore/containers/actions/workflows/Fedora-39.yaml/badge.svg)](https://github.com/tianocore/containers/actions/workflows/Fedora-39.yaml) | [Doc](Fedora-39/Readme.md) | | [fedora-37-build](https://github.com/tianocore/containers/pkgs/container/containers%2Ffedora-37-build) | Fedora 37 | Build | [![Fedora 37 Images](https://github.com/tianocore/containers/actions/workflows/Fedora-37.yaml/badge.svg)](https://github.com/tianocore/containers/actions/workflows/Fedora-37.yaml) | [Doc](Fedora-37/Readme.md) | | [fedora-37-test](https://github.com/tianocore/containers/pkgs/container/containers%2Ffedora-37-test) | Fedora 37 | Test | [![Fedora 37 Images](https://github.com/tianocore/containers/actions/workflows/Fedora-37.yaml/badge.svg)](https://github.com/tianocore/containers/actions/workflows/Fedora-37.yaml) | [Doc](Fedora-37/Readme.md) | | [fedora-37-dev](https://github.com/tianocore/containers/pkgs/container/containers%2Ffedora-37-dev) | Fedora 37 | Dev | [![Fedora 37 Images](https://github.com/tianocore/containers/actions/workflows/Fedora-37.yaml/badge.svg)](https://github.com/tianocore/containers/actions/workflows/Fedora-37.yaml) | [Doc](Fedora-37/Readme.md) |