core,echoes,tasks
This commit is contained in:
parent
1250f70e55
commit
70913bcd02
2 changed files with 108 additions and 21 deletions
118
build.sh
118
build.sh
|
@ -61,14 +61,15 @@ source "${NAME%.*}.mod"
|
||||||
MEMDISK_ROOT='boot'
|
MEMDISK_ROOT='boot'
|
||||||
MEMDISK_DIRECTORY="${MEMDISK_ROOT}/grub"
|
MEMDISK_DIRECTORY="${MEMDISK_ROOT}/grub"
|
||||||
MEMDISK_FILE="${MEMDISK_DIRECTORY}/grub.cfg"
|
MEMDISK_FILE="${MEMDISK_DIRECTORY}/grub.cfg"
|
||||||
MEMDISK_PUB="${MEMDISK_DIRECTORY}/grub.pgp"
|
|
||||||
MEMDISK_ARCHIVE="${MEMDISK_ROOT}.tar"
|
MEMDISK_ARCHIVE="${MEMDISK_ROOT}.tar"
|
||||||
UEFI_ROOT="${ROOT}/efi"
|
UEFI_ROOT="${ROOT}/efi"
|
||||||
UEFI_DIRECTORY="${UEFI_ROOT}/boot"
|
UEFI_DIRECTORY="${UEFI_ROOT}/boot"
|
||||||
|
UEFI_CORE="${UEFI_DIRECTORY}/core.efi"
|
||||||
UEFI_FILE="${UEFI_DIRECTORY}/bootx64.efi"
|
UEFI_FILE="${UEFI_DIRECTORY}/bootx64.efi"
|
||||||
UEFI_GRUB="${UEFI_DIRECTORY}/grubx64.efi"
|
UEFI_GRUB="${UEFI_DIRECTORY}/grubx64.efi"
|
||||||
SIGNED_GRUB='/usr/lib/grub/x86_64-efi-signed/grubx64.efi.signed'
|
SIGNED_GRUB='/usr/lib/grub/x86_64-efi-signed/grubx64.efi.signed'
|
||||||
SIGNED_SHIM='/usr/lib/shim/shimx64.efi.signed'
|
SIGNED_SHIM='/usr/lib/shim/shimx64.efi.signed'
|
||||||
|
BIOS_BOOT='/usr/lib/grub/i386-pc/boot.img'
|
||||||
BIOS_DIRECTORY="${ROOT}/bios"
|
BIOS_DIRECTORY="${ROOT}/bios"
|
||||||
BIOS_FILE="${BIOS_DIRECTORY}/core.img"
|
BIOS_FILE="${BIOS_DIRECTORY}/core.img"
|
||||||
BIOS_SETUP="${BIOS_DIRECTORY}/setup.sh"
|
BIOS_SETUP="${BIOS_DIRECTORY}/setup.sh"
|
||||||
|
@ -76,69 +77,127 @@ COMPRESSION='xz'
|
||||||
BOOT_ROOT="${ROOT}/boot"
|
BOOT_ROOT="${ROOT}/boot"
|
||||||
GRUB_ROOT="${BOOT_ROOT}/grub"
|
GRUB_ROOT="${BOOT_ROOT}/grub"
|
||||||
GRUB_CFG="${GRUB_ROOT}/grub.cfg"
|
GRUB_CFG="${GRUB_ROOT}/grub.cfg"
|
||||||
|
GRUB_CFG_SH="${DIRECTORY}/grub.cfg.sh"
|
||||||
GRUBENV="${GRUB_ROOT}/grubenv"
|
GRUBENV="${GRUB_ROOT}/grubenv"
|
||||||
GRUB_ENV="${ROOT}/grub.env"
|
GRUB_ENV="${ROOT}/grub.env"
|
||||||
|
GRUB_FONTS="${GRUB_ROOT}/fonts"
|
||||||
GRUB_HEAD='# GRUB Environment Block'
|
GRUB_HEAD='# GRUB Environment Block'
|
||||||
|
GRUB_LOCALES="${GRUB_ROOT}/locale"
|
||||||
GRUB_PUB="${GRUB_ROOT}/grub.pgp"
|
GRUB_PUB="${GRUB_ROOT}/grub.pgp"
|
||||||
GRUB_SHIGNED="${DIRECTORY}/grubx64.efi.signed.sh"
|
GRUB_SHIGNED="${DIRECTORY}/grubx64.efi.signed.sh"
|
||||||
|
GRUB_THEMES="${GRUB_ROOT}/themes"
|
||||||
|
|
||||||
# wipe ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# wipe ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
→ ${MEMDISK_ROOT}
|
||||||
|
→ ${UEFI_ROOT}
|
||||||
|
→ ${BIOS_DIRECTORY}
|
||||||
|
"
|
||||||
rm --force --recursive \
|
rm --force --recursive \
|
||||||
"${MEMDISK_ROOT}" "${UEFI_ROOT}" "${BIOS_DIRECTORY}"
|
"${MEMDISK_ROOT}" "${UEFI_ROOT}" "${BIOS_DIRECTORY}"
|
||||||
|
|
||||||
# memdisk ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# memdisk ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
→ ${MEMDISK_DIRECTORY}
|
||||||
|
"
|
||||||
mkdir --parents "${MEMDISK_DIRECTORY}"
|
mkdir --parents "${MEMDISK_DIRECTORY}"
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
→ ${MEMDISK_FILE}
|
||||||
|
"
|
||||||
echo -n "\
|
echo -n "\
|
||||||
# header
|
# header
|
||||||
" > "${MEMDISK_FILE}"
|
" > "${MEMDISK_FILE}"
|
||||||
|
echo -n "
|
||||||
|
↙ ${GRUB_SHIGNED}
|
||||||
|
↘ ${MEMDISK_FILE}
|
||||||
|
"
|
||||||
cat "${GRUB_SHIGNED}" >> "${MEMDISK_FILE}"
|
cat "${GRUB_SHIGNED}" >> "${MEMDISK_FILE}"
|
||||||
|
echo -n "
|
||||||
|
→ ${MEMDISK_FILE}
|
||||||
|
"
|
||||||
echo -n "\
|
echo -n "\
|
||||||
# footer
|
# footer
|
||||||
" >> "${MEMDISK_FILE}"
|
" >> "${MEMDISK_FILE}"
|
||||||
|
|
||||||
gpg --export "${PGP_PUB}" > "${MEMDISK_PUB}"
|
echo -n "
|
||||||
# gpg --detach-sign "${MEMDISK_PUB}"
|
↙ ${MEMDISK_ROOT}
|
||||||
|
↘ ${MEMDISK_ARCHIVE}
|
||||||
|
"
|
||||||
tar --create --auto-compress \
|
tar --create --auto-compress \
|
||||||
--file "${MEMDISK_ARCHIVE}" "${MEMDISK_ROOT}"
|
--file "${MEMDISK_ARCHIVE}" "${MEMDISK_ROOT}"
|
||||||
|
|
||||||
# uefi ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# uefi ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
→ ${UEFI_DIRECTORY}
|
||||||
|
"
|
||||||
mkdir --parents "${UEFI_DIRECTORY}"
|
mkdir --parents "${UEFI_DIRECTORY}"
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
↙ ${MEMDISK_ARCHIVE}
|
||||||
|
↘ ${UEFI_FILE}
|
||||||
|
"
|
||||||
grub-mkimage \
|
grub-mkimage \
|
||||||
--compress "${COMPRESSION}" \
|
--compress "${COMPRESSION}" \
|
||||||
--memdisk "${MEMDISK_ARCHIVE}" \
|
--memdisk "${MEMDISK_ARCHIVE}" \
|
||||||
--format 'x86_64-efi' \
|
--format 'x86_64-efi' \
|
||||||
--output "${UEFI_FILE}" \
|
--output "${UEFI_FILE}" \
|
||||||
--pubkey "${MEMDISK_PUB}" \
|
|
||||||
"${MODULES[@]}"
|
"${MODULES[@]}"
|
||||||
# gpg --detach-sign "${UEFI_FILE}"
|
|
||||||
if [ -f "${SIGNED_SHIM}" ] ; then
|
if [ -f "${SIGNED_SHIM}" ] ; then
|
||||||
|
echo -n "
|
||||||
|
↙ ${UEFI_FILE}
|
||||||
|
↘ ${UEFI_GRUB}
|
||||||
|
"
|
||||||
mv "${UEFI_FILE}" "${UEFI_GRUB}"
|
mv "${UEFI_FILE}" "${UEFI_GRUB}"
|
||||||
|
echo -n "
|
||||||
|
↙ ${SIGNED_SHIM}
|
||||||
|
↘ ${UEFI_FILE}
|
||||||
|
"
|
||||||
cp "${SIGNED_SHIM}" "${UEFI_FILE}"
|
cp "${SIGNED_SHIM}" "${UEFI_FILE}"
|
||||||
fi
|
fi
|
||||||
if [ -f "${SIGNED_GRUB}" ] ; then
|
if [ -f "${SIGNED_GRUB}" ] ; then
|
||||||
|
echo -n "
|
||||||
|
↙ ${UEFI_GRUB}
|
||||||
|
↘ ${UEFI_CORE}
|
||||||
|
"
|
||||||
|
mv "${UEFI_GRUB}" "${UEFI_CORE}"
|
||||||
|
echo -n "
|
||||||
|
↙ ${SIGNED_GRUB}
|
||||||
|
↘ ${UEFI_GRUB}
|
||||||
|
"
|
||||||
cp "${SIGNED_GRUB}" "${UEFI_GRUB}"
|
cp "${SIGNED_GRUB}" "${UEFI_GRUB}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# bios ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# bios ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
→ ${BIOS_DIRECTORY}
|
||||||
|
"
|
||||||
mkdir "${BIOS_DIRECTORY}"
|
mkdir "${BIOS_DIRECTORY}"
|
||||||
|
|
||||||
cp '/usr/lib/grub/i386-pc/boot.img' "${BIOS_DIRECTORY}"
|
echo -n "
|
||||||
|
↙ ${BIOS_BOOT}
|
||||||
|
↘ ${BIOS_DIRECTORY}
|
||||||
|
"
|
||||||
|
cp "${BIOS_BOOT}" "${BIOS_DIRECTORY}"
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
↙ ${MEMDISK_ARCHIVE}
|
||||||
|
↘ ${BIOS_FILE}
|
||||||
|
"
|
||||||
grub-mkimage \
|
grub-mkimage \
|
||||||
--compress "${COMPRESSION}" \
|
--compress "${COMPRESSION}" \
|
||||||
--memdisk "${MEMDISK_ARCHIVE}" \
|
--memdisk "${MEMDISK_ARCHIVE}" \
|
||||||
--format 'i386-pc' \
|
--format 'i386-pc' \
|
||||||
--output "${BIOS_FILE}" \
|
--output "${BIOS_FILE}" \
|
||||||
--pubkey "${MEMDISK_PUB}" \
|
|
||||||
"${MODULES[@]}" "${MODULES_BIOS[@]}"
|
"${MODULES[@]}" "${MODULES_BIOS[@]}"
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
→ ${BIOS_SETUP}
|
||||||
|
"
|
||||||
echo -n '#! /usr/bin/env bash
|
echo -n '#! /usr/bin/env bash
|
||||||
FILE="$(realpath "${BASH_SOURCE[0]}")"
|
FILE="$(realpath "${BASH_SOURCE[0]}")"
|
||||||
DIRECTORY="$(dirname "${FILE}")"
|
DIRECTORY="$(dirname "${FILE}")"
|
||||||
|
@ -150,12 +209,19 @@ DIRECTORY="$(dirname "${FILE}")"
|
||||||
|
|
||||||
# grub ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# grub ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
→ ${GRUB_ROOT}
|
||||||
|
"
|
||||||
rm --force --recursive "${GRUB_ROOT}"
|
rm --force --recursive "${GRUB_ROOT}"
|
||||||
mkdir --parents "${GRUB_ROOT}"
|
mkdir --parents "${GRUB_ROOT}"
|
||||||
|
|
||||||
# grub / cfg ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# grub / cfg ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
cp "${DIRECTORY}/grub.cfg.sh" "${GRUB_CFG}"
|
echo -n "
|
||||||
|
↙ ${GRUB_CFG_SH}
|
||||||
|
↘ ${GRUB_CFG}
|
||||||
|
"
|
||||||
|
cp "${GRUB_CFG_SH}" "${GRUB_CFG}"
|
||||||
|
|
||||||
# grub / env ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# grub / env ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
|
@ -170,6 +236,11 @@ ${kv}"
|
||||||
echo -n "${text}" > "${file}"
|
echo -n "${text}" > "${file}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
→ ${GRUBENV}
|
||||||
|
→ ${GRUB_ENV}
|
||||||
|
"
|
||||||
|
|
||||||
write_env "${GRUBENV}" "\
|
write_env "${GRUBENV}" "\
|
||||||
live_name=${PROJECT}
|
live_name=${PROJECT}
|
||||||
data_uuid=${DATA}
|
data_uuid=${DATA}
|
||||||
|
@ -181,18 +252,24 @@ grub_sleep=999
|
||||||
|
|
||||||
# grub / fonts ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# grub / fonts ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
mkdir --parents "${GRUB_ROOT}/fonts"
|
echo -n "
|
||||||
|
→ ${GRUB_FONTS}
|
||||||
|
"
|
||||||
|
mkdir --parents "${GRUB_FONTS}"
|
||||||
for font in $(find '/usr/share/grub' -type 'f' -name '*.pf2') ; do
|
for font in $(find '/usr/share/grub' -type 'f' -name '*.pf2') ; do
|
||||||
cp "${font}" "${GRUB_ROOT}/fonts"
|
cp "${font}" "${GRUB_FONTS}"
|
||||||
done
|
done
|
||||||
|
|
||||||
# grub / themes ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# grub / themes ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
if cd '/usr/share/grub/themes' ; then
|
if cd '/usr/share/grub/themes' ; then
|
||||||
mkdir --parents "${GRUB_ROOT}/themes"
|
echo -n "
|
||||||
|
→ ${GRUB_THEMES}
|
||||||
|
"
|
||||||
|
mkdir --parents "${GRUB_THEMES}"
|
||||||
for theme in * ; do
|
for theme in * ; do
|
||||||
if [ -f "${theme}/theme.txt" ] ; then
|
if [ -f "${theme}/theme.txt" ] ; then
|
||||||
cp --recursive "${theme}" "${GRUB_ROOT}/themes"
|
cp --recursive "${theme}" "${GRUB_THEMES}"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
@ -200,23 +277,34 @@ cd "${DIRECTORY}"
|
||||||
|
|
||||||
# grub / locales ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# grub / locales ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
mkdir --parents "${GRUB_ROOT}/locale"
|
echo -n "
|
||||||
|
→ ${GRUB_LOCALES}
|
||||||
|
"
|
||||||
|
mkdir --parents "${GRUB_LOCALES}"
|
||||||
cd '/usr/share/locale'
|
cd '/usr/share/locale'
|
||||||
for locale in * ; do
|
for locale in * ; do
|
||||||
file="${locale}/LC_MESSAGES/grub.mo"
|
file="${locale}/LC_MESSAGES/grub.mo"
|
||||||
if [ -f "${file}" ] ; then
|
if [ -f "${file}" ] ; then
|
||||||
cp "${file}" "${GRUB_ROOT}/locale/${locale}.mo"
|
cp "${file}" "${GRUB_LOCALES}/${locale}.mo"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
cd "${DIRECTORY}"
|
cd "${DIRECTORY}"
|
||||||
|
|
||||||
# grub / pubkey ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# grub / pubkey ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
|
echo -n "
|
||||||
|
↙ ${PGP_PUB}
|
||||||
|
↘ ${GRUB_PUB}
|
||||||
|
"
|
||||||
gpg --export "${PGP_PUB}" > "${GRUB_PUB}"
|
gpg --export "${PGP_PUB}" > "${GRUB_PUB}"
|
||||||
|
|
||||||
# grub / modules ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
# grub / modules ⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅
|
||||||
|
|
||||||
for target in 'x86_64-efi' 'i386-pc' ; do
|
for target in 'x86_64-efi' 'i386-pc' ; do
|
||||||
|
echo -n "
|
||||||
|
↙ /usr/lib/grub/${target}
|
||||||
|
↘ ${GRUB_ROOT}/${target}
|
||||||
|
"
|
||||||
mkdir --parents "${GRUB_ROOT}/${target}"
|
mkdir --parents "${GRUB_ROOT}/${target}"
|
||||||
cd "/usr/lib/grub/${target}"
|
cd "/usr/lib/grub/${target}"
|
||||||
for module in *.lst *.mod ; do
|
for module in *.lst *.mod ; do
|
||||||
|
|
11
readme.md
11
readme.md
|
@ -58,23 +58,22 @@ Build an ESP File System including:
|
||||||
|
|
||||||
## Tasks
|
## Tasks
|
||||||
|
|
||||||
* build
|
* build.sh
|
||||||
* echo section lists & modules
|
|
||||||
* args/pgp
|
* args/pgp
|
||||||
* args/esp & lsgm/cp
|
* args/esp & lsgm/cp
|
||||||
* keyboard layouts
|
|
||||||
* mimic grubx64.efi.signed
|
* mimic grubx64.efi.signed
|
||||||
* efi
|
* efi
|
||||||
* bios
|
* bios
|
||||||
* grub.cfg
|
* grub.cfg
|
||||||
* check squashfs
|
* check squashfs option
|
||||||
* option
|
* python
|
||||||
* end grubenv with \n
|
|
||||||
|
|
||||||
![Graph](todo.svg)
|
![Graph](todo.svg)
|
||||||
|
|
||||||
### Later
|
### Later
|
||||||
|
|
||||||
* arm
|
* arm
|
||||||
|
* keyboard layouts
|
||||||
|
* custom fonts
|
||||||
* live-media
|
* live-media
|
||||||
* -mount-opts
|
* -mount-opts
|
||||||
|
|
Loading…
Reference in a new issue