oh! here’s the guix build script for gnu boot
I have packaging efforts in progress but this works. I used it
incrementally so it may need tweaks to resolve bugs for being used all
in one go. note at the bottom it’s hardcoded to build a t60 bios, can
change it but some things may have more dependencies

this is simply very useful (imo, likely a rare one)

https://bpa.st/FS7A from guix irc logs, looks like indentation was lost below :s

#!/usr/bin/env bash

if ! [ -d gnuboot/resources/coreboot ] && ! [ -d resources/coreboot ]
then
git clone https://git.savannah.gnu.org/git/gnuboot.git
pushd gnuboot
git reset --hard 39c70840617d2fd849284919232b0cc09384a96c # this was
just the latest tip when I did this
patch -p1 <<"PATCH_TO_FIND_UNIFONT"
diff --git a/resources/packages/grub/module b/resources/packages/grub/module
index 059035d..76cd8dc 100755
--- a/resources/packages/grub/module
+++ b/resources/packages/grub/module
@@ -43,6 +43,6 @@ cd grub/

 # build
 ./autogen.sh
-./configure --with-platform=coreboot
+./configure --with-platform=coreboot
--with-unifont=$GUIX_ENVIRONMENT/share/fonts/opentype/unifont.otf
 make -j$(nproc)
 )
PATCH_TO_FIND_UNIFONT
# empty-line, i was thinking of removing the ada dependency tree-wide
bvt wasn't certain how yet
fi

# vboot includes a hostside chromebook firmware tool that uses 64-bit
array indices
# propagating these 3 flags lets the build continue on my 32-bit system
# patching vboot would be nicer. it seemed to be in the tree in multiple places.
export CC='gcc --warn-no-stringop-overflow --warn-no-array-bounds
--warn-no-restrict'
export HOSTCC=$CC

export PYTHON=python3 V=1 VERBOSE=1

if [ "$*" == "" ]
then
#bash "$0" make -C gnuboot \
# CC="$CC" \
# HOSTCC="$HOSTCC" \
  # PYTHON='python3' \
# V=1 \
# VERBOSE=1
SELF=$(realpath "$0")
cd gnuboot
bash "$SELF" ./build boot roms t60_intelgpu
else
guix shell \
--preserve=CC --preserve=HOSTCC --preserve=PYTHON --preserve=V
--preserve=VERBOSE \
-D hello autoconf automake bison ccache clisp curl flex
font-gnu-unifont freetype \
git gettext graphicsmagick gtk-doc guix intltool libtool lua nss-certs perl \
pkg-config python python-2 ruby texinfo zlib -- "$@"
fi
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks
  • ... Undescribed Horrific Abuse, One Victim & Survivor of Many via cypherpunks

Reply via email to