]>
cvs.zerfleddert.de Git - m1-debian/blob - m1n1_uboot_kernel.sh
aa8dfe3c2c763748f0cbed43b901f698d9cfad0f
3 # SPDX-License-Identifier: MIT
12 export CARGO_HOME
="$(pwd)/build/cargo"
13 export RUSTUP_HOME
="$(pwd)/build/rust"
14 source "$(pwd)/build/cargo/env"
21 if [ "`uname -m`" != 'aarch64' ]; then
23 export CROSS_COMPILE
=aarch64
-linux-gnu-
24 sudo apt
install -y libc6
-dev-arm64-cross
32 test -d linux
|| git clone https
://github.com
/AsahiLinux
/linux
35 git
reset --hard asahi
-6.4
-3;
36 cat ..
/..
/config.txt
> .config
37 make LLVM
=${CLANG_VERSION} rustavailable
38 make LLVM
=${CLANG_VERSION} olddefconfig
39 make -j `nproc` LLVM
=${CLANG_VERSION} V
=0 bindeb
-pkg > /dev
/null
46 test -d m1n1
|| git clone
--recursive https
://github.com
/AsahiLinux
/m1n1
49 git
reset --hard v1.3
.0;
58 test -d u
-boot || git clone https
://github.com
/AsahiLinux
/u
-boot
61 git
reset --hard asahi
-v2023.04
-2;
63 make apple_m1_defconfig
66 cat m
1n
1/build
/m1n1.bin
`find linux/arch/arm64/boot/dts/apple/ -name \*.dtb` <(gzip -c u
-boot/u
-boot-nodtb.bin
) > u
-boot.bin
72 export M1N1_VERSION
=1.3.0
73 rm -rf m1n1_
${M1N1_VERSION}_arm64
74 mkdir -p m1n1_
${M1N1_VERSION}_arm
64/DEBIAN m1n1_
${M1N1_VERSION}_arm
64/usr
/lib
/m
1n
1/
75 cp u
-boot.bin m1n1_
${M1N1_VERSION}_arm
64/usr
/lib
/m
1n
1/boot.bin
76 cat <<EOF > m1n1_${M1N1_VERSION}_arm64/DEBIAN/control
78 Version: $M1N1_VERSION
82 Maintainer: Thomas Glanzmann <thomas@glanzmann.de>
83 Description: Apple silicon boot loader
84 Next to m1n1 this also contains the device trees and u-boot.
87 cat > m1n1_
${M1N1_VERSION}_arm
64/DEBIAN
/postinst
<<'EOF'
91 if [ -f /boot/efi/m1n1/boot.bin ]; then
92 cp /boot/efi/m1n1/boot.bin /boot/efi/m1n1/`date +%Y%m%d%H%M`.bin
94 mkdir -p /boot/efi/m1n1/
95 cp /usr/lib/m1n1/boot.bin /boot/efi/m1n1/
98 chmod 755 m1n1_
${M1N1_VERSION}_arm
64/DEBIAN
/postinst
99 dpkg
-deb --build m1n1_
${M1N1_VERSION}_arm64
103 if type clang
-15; then
104 export CLANG_VERSION
=-15
105 elif type clang
-11; then
106 export CLANG_VERSION
=-11