]> git.zerfleddert.de Git - m1-debian/blame - doc/asahi.txt
put that under revision control it became to important
[m1-debian] / doc / asahi.txt
CommitLineData
5e01b9d1
TG
1# Boot into macos
2
3# Make space the last number is the size that MacOS instatllation should consume
4diskutil apfs resizeContainer disk0s2 200GB
5
6# Run the installer, select as stub OS 12.1, in the boot picker you supposed to
7# click Restart than return to the shell and wait until the installer is
8# finished and press Return to shutdown your system.
9curl -L https://mrcn.st/alxsh | sh
10
11# 1. Press and hold down the power button to power on the system.
12# * It is important that the system be fully powered off before this step,
13# and that you press and hold down the button once, not multiple times.
14# This is required to put the machine into the right mode.
15# 2. Release it once 'Entering startup options' is displayed.
16# 3. Choose Options.
17# 4. You will briefly see a 'macOS Recovery' dialog.
18# * If you are asked to 'Select a volume to recover',
19# then choose your normal macOS volume and click Next.
20# 5. Click on the Utilities menu and select Terminal.
21# 6. Type the following command and follow the prompts:
22
23# Create an EFI parition because the final layout will have that
24diskutil list
25diskutil addPartition <identifier before free space> %EFI% LB 512MB
26
27# Create partition to hold a rootfs (minimum 1GB if you want to use the rootfs below)
28diskutil list
29diskutil addPartition <identifier before free space> %Linux% %noformat% <size>
30
31# dd a Debian Testing rootfs on it (minimum size 1 GB)
32# Find the scripts to create that rootfs here: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/m1-debian
33curl -L https://tg.st/u/m1.tgz | tar -xOz | dd of=/dev/<identifier of Linux Filesystem>
34
35# Relax the boot policy for the stub os and uplaod install m1n1
36/Volumes/Linux/step2.sh
37
38# Compile the kernel
39git clone --depth 1 https://github.com/AsahiLinux/linux
40cd linux
41curl -s https://tg.st/u/9ce9060dea91951a330feeeda3ad636bc88c642c.patch | git am -
42curl -s https://tg.st/u/5nly | git am -
43curl -s https://tg.st/u/m1-config-2022-01-27 > .config
44
45# Crosscompile the kernel
46make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- olddefconfig
47make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j32 Image.gz dtbs
48
49cd ..
50
51# build m1n1
52git clone --recursive https://github.com/AsahiLinux/m1n1.git
53cd m1n1
54make
55
56# Export the control device for the proxyclient and friends
57export M1N1DEVICE=/dev/ttyACM0
58
59# chainload m1n1 so that you have the latest features available
60./proxyclient/tools/chainload.py build/m1n1.macho
61
62# Enable PCIe for wifi
63python3 ./proxyclient/experiments/pcie_enable_devices.py
64
65# Pick the dtb for your device: https://github.com/AsahiLinux/docs/wiki/Devices
66proxyclient/tools/linux.py --bootargs="net.ifnames=0 rw root=/dev/nvme0n1p5 rootwait rootfstype=ext4" ../linux/arch/arm64/boot/Image.gz ../linux/arch/arm64/boot/dts/apple/t8103-j293.dtb
67
68# Set timezone
69dpkg-reconfigure tzdata
Impressum, Datenschutz