Skip to content

Commit

Permalink
UEFI Shell 23H2
Browse files Browse the repository at this point in the history
* From edk2-stable202311
  • Loading branch information
pbatard committed Nov 25, 2023
1 parent c891fdc commit b32dc14
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 23 deletions.
38 changes: 18 additions & 20 deletions .github/workflows/linux_gcc_edk2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ env:
EDK2_SHELL_VERSION_HEADER: edk2/MdePkg/Include/Protocol/Shell.h
# Was edk2/ShellPkg/Include/Protocol/EfiShell.h prior to 2016.10.18
# enum ShellVersion added on 2009.05.11
NASM_VERSION: 2.15.05

jobs:
build:
Expand All @@ -30,29 +29,20 @@ jobs:
- name: Install toolchains
run: |
sudo apt-get update
sudo apt-get install gcc-11-multilib gcc-11-aarch64-linux-gnu gcc-11-arm-linux-gnueabi gcc-11-riscv64-linux-gnu genisoimage
sudo ln -s /usr/bin/aarch64-linux-gnu-gcc-11 /usr/bin/aarch64-linux-gnu-gcc
sudo ln -s /usr/bin/aarch64-linux-gnu-gcc-ar-11 /usr/bin/aarch64-linux-gnu-gcc-ar
sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-11 /usr/bin/arm-linux-gnueabi-gcc
sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-ar-11 /usr/bin/arm-linux-gnueabi-gcc-ar
sudo ln -s /usr/bin/riscv64-linux-gnu-gcc-11 /usr/bin/riscv64-linux-gnu-gcc
sudo ln -s /usr/bin/riscv64-linux-gnu-gcc-ar-11 /usr/bin/riscv64-linux-gnu-gcc-ar
sudo ln -s /usr/riscv64-linux-gnu/include/gnu/stubs-lp64d.h /usr/riscv64-linux-gnu/include/gnu/stubs-lp64.h
- name: Install nasm ${{ env.NASM_VERSION }}
# https://edk2.groups.io/g/devel/topic/89637409#87359
run: |
curl -O https://www.nasm.us/pub/nasm/releasebuilds/${{ env.NASM_VERSION }}/nasm-${{ env.NASM_VERSION }}.tar.bz2
tar -xjf nasm-${{ env.NASM_VERSION }}.tar.bz2
cd nasm-${{ env.NASM_VERSION }}
./autogen.sh
./configure --prefix=/usr/local/
make
sudo make install
sudo apt-get -y --no-install-recommends install gcc-12-multilib gcc-12-aarch64-linux-gnu gcc-12-arm-linux-gnueabi gcc-12-riscv64-linux-gnu nasm genisoimage
sudo ln -s /usr/bin/aarch64-linux-gnu-gcc-12 /usr/bin/aarch64-linux-gnu-gcc
sudo ln -s /usr/bin/aarch64-linux-gnu-gcc-ar-12 /usr/bin/aarch64-linux-gnu-gcc-ar
sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-12 /usr/bin/arm-linux-gnueabi-gcc
sudo ln -s /usr/bin/arm-linux-gnueabi-gcc-ar-12 /usr/bin/arm-linux-gnueabi-gcc-ar
sudo ln -s /usr/bin/riscv64-linux-gnu-gcc-12 /usr/bin/riscv64-linux-gnu-gcc
sudo ln -s /usr/bin/riscv64-linux-gnu-gcc-ar-12 /usr/bin/riscv64-linux-gnu-gcc-ar
- name: Checkout repository and submodules
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive

- name: Set version
id: set_version
run: |
Expand All @@ -63,8 +53,10 @@ jobs:
echo "shell_release=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_OUTPUT
echo "edk2_tag=$(git --git-dir edk2/.git describe --tags)" >> $GITHUB_OUTPUT
echo "build_date=$(date '+%Y.%m.%d')" >> $GITHUB_OUTPUT
- name: Set up EDK2
run: make -C edk2/BaseTools

- name: Build UEFI binaries
run: |
cd edk2
Expand All @@ -74,6 +66,7 @@ jobs:
build -a $ARCH -b $BUILD_TYPE -t ${{ env.COMPILER }} -p ShellPkg/ShellPkg.dsc --pcd gEfiShellPkgTokenSpaceGuid.PcdShellScreenLogCount=8 --pcd gEfiShellPkgTokenSpaceGuid.PcdShellSupplier=L"${{ steps.set_version.outputs.edk2_tag }} (https://github.com/pbatard/UEFI-Shell)"
done
done
- name: Create ISO filesystem structure
run: |
for BUILD_TYPE in ${{ env.BUILD_TYPES }}; do
Expand Down Expand Up @@ -111,29 +104,34 @@ jobs:
printf " </supported_archs>\n" >> Version.xml
printf "</release>\n" >> Version.xml
done
- name: Generate ISO images
run: |
for BUILD_TYPE in ${{ env.BUILD_TYPES }}; do
genisoimage -v -V "UEFI SHELL ${{ steps.set_version.outputs.shell_version }} ${{ steps.set_version.outputs.shell_release }} ($BUILD_TYPE)" -JR -o "UEFI-Shell-${{ steps.set_version.outputs.shell_version }}-${{ steps.set_version.outputs.shell_release }}-$BUILD_TYPE.iso" $BUILD_TYPE
done
- name: Display SHA-256
run: |
for BUILD_TYPE in ${{ env.BUILD_TYPES }}; do
sha256sum $BUILD_TYPE/efi/boot/*.efi
done
sha256sum *.iso
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: ISOs
path: ./*.iso

- name: Create release blurb
run: |
printf "**UEFI Shell v%s, release %s**\n\n" ${{ steps.set_version.outputs.shell_version }} ${{ steps.set_version.outputs.shell_release }} > body.txt
printf "Built from [%s](https://github.com/tianocore/edk2/releases/tag/%s) and supporting:\n" ${{ steps.set_version.outputs.edk2_tag }} ${{ steps.set_version.outputs.edk2_tag }} >> body.txt
for ARCH in ${{ env.ARCHS }}; do
printf "* \`%s\`\n" $ARCH >> body.txt
done
- name: Create release
uses: softprops/action-gh-release@v1
with:
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ UEFI-Shell

[![Build status](https://img.shields.io/github/actions/workflow/status/pbatard/UEFI-Shell/linux_gcc_edk2.yml?label=Build%20Status&style=flat-square)](https://github.com/pbatard/UEFI-Shell/actions/workflows/linux_gcc_edk2.yml)
[![Github stats](https://img.shields.io/github/downloads/pbatard/UEFI-Shell/total.svg?label=Downloads&style=flat-square)](https://github.com/pbatard/UEFI-Shell/releases)
[![Release](https://img.shields.io/badge/Latest%20Release-23H1%20(edk2--stable202305)-blue.svg?style=flat-square)](https://github.com/pbatard/UEFI-Shell/releases)
[![Release](https://img.shields.io/badge/Latest%20Release-23H2%20(edk2--stable202311)-blue.svg?style=flat-square)](https://github.com/pbatard/UEFI-Shell/releases)
[![License](https://img.shields.io/badge/License-BSD%202--Clause-orange.svg)](https://opensource.org/licenses/BSD-2-Clause)

This repository contains pre-built UEFI Shell binary images, generated from
Expand Down Expand Up @@ -31,7 +31,7 @@ Microsoft does not allow an external UEFI Shell to be signed for Secure Boot.
These binaries are built in a fully transparent manner, in order to provide
you with complete assurance that they do not contain anything malicious.

To validate that this claim, you can perform the following:
To validate this claim, you can perform the following:

1. Locate the build action for the ISO you downloaded under
https://github.com/pbatard/UEFI-Shell/actions. For instance, for the 21H1
Expand Down
2 changes: 1 addition & 1 deletion edk2
Submodule edk2 updated 909 files

0 comments on commit b32dc14

Please sign in to comment.