diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..791e3ae --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +files/syslinux64.exe diff --git a/config.yaml b/config.yaml new file mode 100644 index 0000000..784a4e9 --- /dev/null +++ b/config.yaml @@ -0,0 +1,32 @@ +actions: + + - modify_release: + - suffix: ".alma.1" + enabled: true + + - changelog_entry: + - name: "Eduard Abdullin" + email: "eabdullin@almalinux.org" + line: + - "Use static syslinux64.exe to avoid a difference in the checksum in x86_64_v2 arch" + + - replace: + - target: "spec" + find: | + rm -f %{buildroot}%{_prefix}/lib/libsyslinux* + rm -f %{buildroot}%{_includedir}/syslinux.h + replace: | + rm -f %{buildroot}%{_prefix}/lib/libsyslinux* + rm -f %{buildroot}%{_includedir}/syslinux.h + rm -f %{buildroot}%{_datadir}/syslinux/syslinux64.exe + mv %{SOURCE1000} %{buildroot}%{_datadir}/syslinux/syslinux64.exe + count: 1 + + - run_script: + - script: "build-syslinux-exe.sh" + cwd: 'autopatch' + + - add_files: + - type: "source" + name: "syslinux64.exe" + number: 1000 diff --git a/scripts/build-syslinux-exe.sh b/scripts/build-syslinux-exe.sh new file mode 100644 index 0000000..0d3be9f --- /dev/null +++ b/scripts/build-syslinux-exe.sh @@ -0,0 +1,30 @@ +#!/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