syslinux/scripts/build-syslinux-exe.sh
2025-02-05 10:36:09 +03:00

31 lines
1.5 KiB
Bash

#!/bin/bash
set -e
set -o pipefail
CONTAINER_TAG=almalinux:10-kitten
PKGS="cpio rpm-build make git python3 python3-setuptools python3-pip dnf-plugins-core"
CONTAINER_ID=$(docker run --platform=linux/amd64 -d $CONTAINER_TAG tail -f /dev/null)
echo "Building syslinux-exe in container $CONTAINER_ID"
docker exec $CONTAINER_ID dnf install --enablerepo=extras-common -y almalinux-kitten-release-devel
docker exec $CONTAINER_ID dnf install --enablerepo=crb --enablerepo=devel -y $PKGS
docker exec $CONTAINER_ID mkdir /root/.ssh
docker exec $CONTAINER_ID touch /root/.ssh/known_hosts
docker exec $CONTAINER_ID sh -c 'ssh-keyscan git.almalinux.org >> /root/.ssh/known_hosts'
docker exec $CONTAINER_ID git clone https://git.almalinux.org/almalinux/almalinux-git-utils.git
docker exec -w /almalinux-git-utils $CONTAINER_ID python3 setup.py install
docker exec $CONTAINER_ID git clone https://git.almalinux.org/rpms/syslinux.git -b c10s
docker exec $CONTAINER_ID dnf builddep --enablerepo=crb --enablerepo=devel /syslinux/syslinux.spec -y
docker exec -w /syslinux $CONTAINER_ID alma_get_sources -i sources
docker exec -w /syslinux $CONTAINER_ID rpmbuild -bb syslinux.spec --define "_sourcedir /syslinux"
docker exec -w /root/rpmbuild/RPMS/x86_64 $CONTAINER_ID sh -c "rpm2cpio \$(ls | grep -E '^syslinux-[0-9].*\.rpm$') | cpio -id"
[ -d files ] || mkdir files
docker cp $CONTAINER_ID:/root/rpmbuild/RPMS/x86_64/usr/share/syslinux/syslinux64.exe files/syslinux64.exe
docker rm -f $CONTAINER_ID