aboutsummaryrefslogtreecommitdiff
path: root/resources/utilities/grub-assemble/gen.txtmode.sh
blob: b6eba6b442b0f35ae6bb6474e9d2454249605790 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/bash
# Copying and distribution of this file, with or without modification,
# are permitted in any medium without royalty provided the copyright
# notice and this notice are preserved.  This file is offered as-is,
# without any warranty.

set -u -e -v

if (( $# != 1 )); then
	echo "Usage: ./gen.txtmode.sh nameofkeymap"
	exit 1
fi
if [ ! -f ./keymap/"$1".gkb ]; then
	echo "resources/utilities/grub-assemble/keymap/$1.gkb not found"
	exit 1
fi
if [ ! -f ./keymap/original/"$1" ]; then
	echo "resources/utilities/grub-assemble/keymap/original/$1 not found"
	exit 1
fi

# This is where GRUB is expected to be (outside of the grub-assemble, instead in main checkout)
grubdir="../../../grub"

source ./modules.conf

# Generate the grub.elf
$grubdir/grub-mkstandalone \
  --grub-mkimage=$grubdir/grub-mkimage \
  -O i386-coreboot \
  -o grub_txtmode.elf \
  -d $grubdir/grub-core/ \
  --fonts= --themes= --locales=  \
  --modules="$grub_modules" \
  --install-modules="$grub_install_modules" \
  /boot/grub/grub.cfg="../../../resources/grub/config/grub_memdisk.cfg" \
  /memtest="../../../memtest86+-5.01/memtest" \
  /invaders.exec="../../../grubinvaders/invaders.exec" \
  /boot/grub/layouts/"$1".gkb=keymap/"$1".gkb \