]> cvs.zerfleddert.de Git - m1-debian/blob - dcp.sh
377adb0acb861df734456df50c517282a7c75d57
[m1-debian] / dcp.sh
1 #!/usr/bin/env bash
2
3 # SPDX-License-Identifier: MIT
4
5 set -o errexit
6 set -o nounset
7 set -o pipefail
8 set -o xtrace
9
10 cd "$(dirname "$0")"
11
12 unset LC_CTYPE
13 unset LANG
14
15 build_linux()
16 {
17 (
18 test -d linux || git clone https://github.com/AsahiLinux/linux
19 cd linux
20 git fetch -a -t
21 git reset --hard asahi-6.1-rc6-5
22 source "$HOME/.cargo/env"
23 curl -o .config https://tg.st/u/1dbcb0d155911d80f29e61153f53e39bff1c6198f9ed0673520d4cf45343fa9f.config
24 make LLVM=-14 olddefconfig
25 make LLVM=-14 -j `nproc` V=0 > /dev/null
26 sudo make LLVM=-14 V=0 modules_install > /dev/null
27 sudo make LLVM=-14 install
28 )
29 }
30
31 build_m1n1()
32 {
33 (
34 test -d m1n1 || git clone --recursive https://github.com/AsahiLinux/m1n1
35 cd m1n1
36 git fetch -a -t
37 git reset --hard v1.2.2;
38 make -j `nproc`
39 )
40 }
41
42 build_uboot()
43 {
44 (
45 test -d u-boot || git clone https://github.com/AsahiLinux/u-boot
46 cd u-boot
47 git fetch -a -t
48 git reset --hard asahi-v2022.10-1;
49
50 make apple_m1_defconfig
51 make -j `nproc`
52 )
53 cat m1n1/build/m1n1.bin `find linux/arch/arm64/boot/dts/apple/ -name \*.dtb` <(gzip -c u-boot/u-boot-nodtb.bin) > u-boot.bin
54 sudo cp /boot/efi/m1n1/boot.bin /boot/efi/m1n1/`date +%Y%m%d%H%M`.bin
55 sudo cp u-boot.bin /boot/efi/m1n1/boot.bin
56 }
57
58 mkdir -p build
59 cd build
60
61 build_linux
62 build_m1n1
63 build_uboot
Impressum, Datenschutz