opi5-efi/opi5-efi.spec

58 lines
1.4 KiB
RPMSpec
Raw Normal View History

2023-10-04 23:55:36 +00:00
# disable the '-debug{info,source}' pkgs
%define debug_package %{nil}
# also disable packaging files in '/usr/lib/.build-id/'
%define _build_id_links none
Name: opi5-efi
2023-10-07 17:09:15 +00:00
Version: 0.0.4
Release: 11%{?dist}
2023-10-04 23:55:36 +00:00
Summary: Necessary files for booting from vendor U-Boot on Orange Pi 5
License: GPL
Provides: %{name}-%{version}
Requires: (kernel-next-tfg or kernel-rc-tfg or kernel-stable-tfg or kernel-lts-tfg)
Requires: uboot-tools bash
2023-10-04 23:55:36 +00:00
%global full_ver %{version}-%{release}
Source0: boot.cmd
Source1: uEnv.txt
2023-10-05 00:28:20 +00:00
%description
This is a hack to get the kernel booting on the Oragne Pi 5
2023-10-04 23:55:36 +00:00
%prep
echo "Nothing to prepare"
%build
echo "Nothing to build"
%install
2023-10-05 00:36:47 +00:00
rm -rf $RPM_BUILD_ROOT
2023-10-05 03:50:53 +00:00
mkdir -p $RPM_BUILD_ROOT/opt/opi5-efi
cp %{SOURCE0} $RPM_BUILD_ROOT/opt/opi5-efi/boot.cmd
cp %{SOURCE1} $RPM_BUILD_ROOT/opt/opi5-efi/uEnv.txt
2023-10-07 16:22:18 +00:00
cp %{SOURCE2} $RPM_BUILD_ROOT/opt/opi5-efi/post.sh
2023-10-04 23:55:36 +00:00
%clean
rm -rf $RPM_BUILD_ROOT
2023-10-07 16:22:18 +00:00
%post
BOOT_PART="$(grep '/ ' /etc/fstab | awk '{print $1}')"
cp /opt/opi5-efi/boot.cmd boot/efi/boot.cmd
cp /opt/opi5-efi/uEnv.txt boot/efi/uEnv.txt
if [ ! -f /boot/initramfs.img ]; then
echo "Initramfs not found."
exit 1
fi
echo "rootdev=${BOOT_PART}" >> /boot/efi/uEnv.txt
sed -i "s/setenvrootdev/setenv rootdev \"${BOOT_PART}\"/" /boot/efi/boot.cmd
mkimage -A arm -T ramdisk -C none -n uInitrd -d /boot/initramfs.img /boot/uInitrd
mkimage -C none -A arm -T script -d /boot/efi/boot.cmd /boot/efi/boot.scr
2023-10-05 00:36:47 +00:00
%files
2023-10-05 04:24:08 +00:00
/opt/opi5-efi/*