12 test -d m1n1 || git clone
--recursive https
://github.com
/AsahiLinux
/m1n1.git
15 git
reset --hard origin
/main
; git clean
-f -x -d
24 test -d u-boot || git clone https
://github.com
/kettenis
/u-boot
27 git
reset --hard origin
/apple-m1-m1n1-nvme
; git clean
-f -x -d
28 make apple_m1_defconfig
29 # it is normal that it runs on an error at the end
33 cat m1n
1/build
/m1n1.bin
`find u-boot -name \*.dtb` u-boot
/u-boot-nodtb.bin
> u-boot.bin
39 test -d linux || git clone
--depth 1 https
://github.com
/AsahiLinux
/linux
42 git
reset --hard origin
/asahi
; git clean
-f -x -d
43 curl
-s https
://tg.st
/u
/9ce9060dea91951a330feeeda3ad636bc88c642c.
patch | git am
-
44 curl
-s https
://tg.st
/u
/5nly | git am
-
45 curl
-s https
://tg.st
/u
/m1-config-2022-01-27
> .config
55 sudo eatmydata debootstrap
--arch=arm64
--include initramfs-tools
,wpasupplicant
,tcpdump
,vim
,tmux
,vlan
,ntpdate
,bridge-utils
,parted
,curl
,wget
,grub-efi-arm64
,mtr-tiny
,dbus
,ca-certificates
,sudo
,openssh-client testing testing http
://ftp.fau.de
/debian
57 export KERNEL
=`ls -1rt linux-image*.deb | grep -v dbg | tail -1`
61 sudo bash
-c 'echo live > etc/hostname'
63 sudo bash
-c 'echo > etc/motd'
65 sudo
cp ..
/..
/files
/sources.list etc
/apt
/sources.list
66 sudo
cp ..
/..
/files
/hosts etc
/hosts
67 sudo
cp ..
/..
/files
/resolv.conf etc
/resolv.conf
68 sudo
cp ..
/..
/files
/fstab etc
/fstab
69 sudo
cp ..
/..
/files
/quickstart.txt root
/
70 sudo
cp ..
/..
/files
/eth0 etc
/network
/interfaces.d
/
71 sudo
cp ..
/..
/files
/wlp1s0f0 etc
/network
/interfaces.d
/
72 sudo
cp ..
/..
/files
/wpa.conf etc
/wpa_supplicant
/wpa_supplicant.conf
74 sudo bash
-c 'chroot . apt update'
75 sudo bash
-c 'chroot . apt install -y firmware-linux-free'
77 sudo
-- perl
-p -i -e 's/root:x:/root::/' etc
/passwd
79 sudo
-- ln -s lib
/systemd
/systemd init
81 sudo
cp ..
/${KERNEL} .
82 sudo chroot . dpkg
-i ${KERNEL}
85 sudo bash
-c 'apt-get clean'
93 mkdir
-p live-stick
/efi
/boot live-stick
/efi
/debian
/
94 sudo bash
-c 'cd testing; find . | cpio --quiet -H newc -o | pigz > ../live-stick/initrd.gz'
95 cp testing
/usr
/lib
/grub
/arm64-efi
/monolithic
/grubaa64.efi live-stick
/efi
/boot
/bootaa64.efi
96 cp testing
/boot
/vmlinuz
* live-stick
/vmlinuz
97 cp ..
/files
/grub.cfg live-stick
/efi
/debian
/grub.cfg
98 (cd live-stick
; tar cf ..
/asahi-debian-live.
tar .
)
106 dd if=/dev
/zero of
=media bs
=1 count
=0 seek
=1G
109 tune2fs
-O extents
,uninit_bg
,dir_index
-m 0 -c 0 -i 0 media
110 sudo mount
-o loop media mnt
111 sudo
cp -a testing
/* mnt
/
114 tar cf
- media | pigz
> m1.tgz
121 mkdir
-p di-stick
/efi
/boot di-stick
/efi
/debian
/
122 test -f initrd.gz || wget https
://d-i.debian.org
/daily-images
/arm64
/daily
/netboot
/debian-installer
/arm64
/initrd.gz
123 sudo
rm -rf initrd
; mkdir initrd
; (cd initrd
; gzip -cd ..
/initrd.gz | sudo
cpio -imd --quiet)
124 sudo
rm -rf initrd
/lib
/modules
/*
125 sudo
cp -a testing
/lib
/modules
/* initrd
/lib
/modules
/
126 sudo
cp ..
/files
/wpa.conf initrd
/etc
/
127 (cd initrd
; find . |
cpio --quiet -H newc
-o | pigz
> ..
/di-stick
/initrd.gz
)
129 cp testing
/usr
/lib
/grub
/arm64-efi
/monolithic
/grubaa64.efi di-stick
/efi
/boot
/bootaa64.efi
130 cp testing
/boot
/vmlinuz
* di-stick
/vmlinuz
131 cp ..
/files
/grub.cfg di-stick
/efi
/debian
/grub.cfg
132 export KERNEL
=`ls -1rt linux-image*.deb | grep -v dbg | tail -1`
133 cp ${KERNEL} di-stick
/
134 (cd di-stick
; tar cf ..
/m1-d-i.
tar .
)
141 MYCURLARGS
="$MYCURLARGS -F file=@${FILE}";
143 curl
-n -D - $MYCURLARGS https
://upload.glanzmann.de
/ |
grep ^x-location |
awk '{print $2}'
149 export KERNEL
=`ls -1rt linux-image*.deb | grep -v dbg | tail -1`
151 upload m1-d-i.
tar m1.tgz asahi-debian-live.
tar u-boot.bin di-stick
/vmlinuz k.deb