]>
Commit | Line | Data |
---|---|---|
1 | Set root password | |
2 | ================= | |
3 | passwd | |
4 | pwconv | |
5 | ||
6 | Configure wifi | |
7 | ============== | |
8 | vi /etc/wpa/wpa_supplicant.conf | |
9 | ifup wlp1s0f0 | |
10 | # remove the '#' before allow-hotplug to let wifi come up after boot | |
11 | vi /etc/network/interfaces | |
12 | ||
13 | Install openssh | |
14 | =============== | |
15 | # Login for root is disabled by default. So you need another user | |
16 | sudo apt update | |
17 | sudo apt install -y openssh-server | |
18 | ||
19 | Configure timezone | |
20 | ================== | |
21 | dpkg-reconfigure tzdata | |
22 | ||
23 | Create a user | |
24 | ============= | |
25 | useradd -m -c 'firstname lastname' -s /bin/bash username | |
26 | passwd username | |
27 | ||
28 | Lightweight desktop | |
29 | =================== | |
30 | apt-get install lightdm blackbox xterm firefox-esr | |
31 | /etc/init.d/lightdm start | |
32 | ||
33 | Install gnome | |
34 | ============= | |
35 | apt-get install gnome | |
36 | /etc/init.d/gdm3 start | |
37 | ||
38 | Disable sleep, hibernate and suspend targets | |
39 | ============================================ | |
40 | # asahi does not handle sleep well at the moment | |
41 | sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target | |
42 | ||
43 | Xorg | |
44 | ==== | |
45 | ||
46 | # Keyboard use capslock as additional ctrl | |
47 | cat > /etc/X11/xorg.conf.d/00-keyboard.conf <<'EOF' | |
48 | Section "InputClass" | |
49 | Identifier "system-keyboard" | |
50 | MatchIsKeyboard "on" | |
51 | Option "XkbLayout" "us" | |
52 | Option "XkbModel" "pc105" | |
53 | Option "XkbVariant" "de_se_fi" | |
54 | Option "XkbOptions" "ctrl:nocaps" | |
55 | EndSection | |
56 | EOF | |
57 | ||
58 | # Swap command and option (windows and alt like on a pc keyboard) | |
59 | echo 1 > /sys/module/hid_apple/parameters/swap_opt_cmd | |
60 | ||
61 | # Configure the touchpad | |
62 | cat > /etc/X11/xorg.conf.d/30-input.conf <<'EOF' | |
63 | Section "InputClass" | |
64 | Identifier "libinput touchpad catchall" | |
65 | MatchIsTouchpad "on" | |
66 | MatchDevicePath "/dev/input/event*" | |
67 | Option "Tapping" "False" | |
68 | Option "TappingDrag" "False" | |
69 | Option "DisableWhileTyping" "True" | |
70 | Option "AccelProfile" "adaptive" | |
71 | Option "AccelSpeed" "0.3" | |
72 | Option "AccelerationNumerator" "2" | |
73 | Option "AccelerationDenominator" "1" | |
74 | Option "AccelerationThreshold" "4" | |
75 | Option "AdaptiveDeceleration" "2" | |
76 | Option "NaturalScrolling" "0" | |
77 | Option "TappingButtonMap" "lmr" | |
78 | Option "ClickMethod" "clickfinger" | |
79 | Driver "libinput" | |
80 | EndSection | |
81 | EOF | |
82 | ||
83 | ||
84 | Install latest kernel and m1n1 stage 2 (m1n1, dtbs, u-boot) | |
85 | =========================================================== | |
86 | curl -sL tg.st/u/ksh | sudo bash | |
87 | ||
88 | Use the live system to install debian | |
89 | ===================================== | |
90 | ||
91 | parted -a optimal /dev/nvme0n1 print free | |
92 | parted -a optimal /dev/nvme0n1 mkpart primary ext4 <begin of free> <end of free> | |
93 | tune2fs -O extents,uninit_bg,dir_index -m 0 -c 0 -i 0 /dev/nvme0n1p5 | |
94 | ||
95 | mount /dev/nvme0n1p5 /mnt | |
96 | ||
97 | debootstrap --arch=arch64 testing /mnt http://deb.debian.org/debian | |
98 | ||
99 | mount -t sysfs none /mnt/sys | |
100 | mount -t efivarfs none /mnt/sys/firmware/efi/efivars | |
101 | mount -t proc none /mnt/proc | |
102 | mount -o bind /dev /mnt/dev | |
103 | mount -o bind /dev/pts /mnt/dev/pts | |
104 | ||
105 | mkdir -p /mnt/boot/efi | |
106 | mount /dev/nvme0n1p4 /mnt/boot/efi | |
107 | ||
108 | cd /mnt | |
109 | chroot . bin/bash | |
110 | ||
111 | cat <<EOF > /etc/fstab | |
112 | /dev/nvme0n1p5 / ext4 defaults 0 0 | |
113 | /dev/nvme0n1p4 /boot/efi vfat defaults 0 0 | |
114 | EOF | |
115 | ||
116 | cat <<EOF > /etc/apt/sources.list | |
117 | deb http://ftp.debian.org/debian testing main contrib non-free | |
118 | deb-src http://ftp.debian.org/debian testing main contrib non-free | |
119 | EOF | |
120 | ||
121 | apt update | |
122 | apt-get -y install initramfs-tools pciutils wpasupplicant tcpdump vim tmux vlan ntpdate parted curl wget grub-efi-arm64 mtr-tiny dbus ca-certificates sudo openssh-client mtools gdisk | |
123 | ||
124 | apt-get install -y grub-efi-arm64-signed- | |
125 | echo 'grub-efi-arm64 grub2/update_nvram boolean false' | debconf-set-selections | |
126 | echo 'grub-efi-arm64 grub2/force_efi_extra_removable boolean true' | debconf-set-selections | |
127 | dpkg-reconfigure -fnoninteractive grub-efi-arm64 | |
128 | update-grub | |
129 | grub-install --removable /boot/efi | |
130 | ||
131 | echo 'nameserver 8.8.8.8' > /etc/resolv.conf | |
132 | ||
133 | export HOSTNAME=debian | |
134 | echo $HOSTNAME > /etc/hostname | |
135 | cat <<EOF > /etc/hosts | |
136 | 127.0.0.1 localhost $HOSTNAME | |
137 | EOF | |
138 | ||
139 | cat <<EOF > /etc/wpa_supplicant/wpa_supplicant.conf | |
140 | network={ | |
141 | ssid="ssid" | |
142 | scan_ssid=1 | |
143 | key_mgmt=WPA-PSK | |
144 | psk="password" | |
145 | } | |
146 | EOF | |
147 | ||
148 | tar -C /lib/firmware/ -xf /boot/efi/vendorfw/firmware.tar | |
149 | ||
150 | cat <<EOF > /etc/network/interfaces | |
151 | # interfaces(5) file used by ifup(8) and ifdown(8) | |
152 | # Include files from /etc/network/interfaces.d: | |
153 | source /etc/network/interfaces.d/* | |
154 | ||
155 | allow-hotplug enp3s0 | |
156 | iface enp3s0 inet dhcp | |
157 | ||
158 | # allow-hotplug wlp1s0f0 | |
159 | iface wlp1s0f0 inet dhcp | |
160 | wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf | |
161 | EOF | |
162 | ||
163 | curl -sLo /tmp/k.deb tg.st/u/k.deb | |
164 | curl -sLo /boot/efi/m1n1/boot.bin tg.st/u/u-boot.bin | |
165 | dpkg -i /tmp/k.deb | |
166 | ||
167 | exit | |
168 | ||
169 | cd / | |
170 | umount /mnt/boot/efi | |
171 | umount /mnt/sys | |
172 | umount /mnt/proc | |
173 | umount /mnt/dev/pts | |
174 | umount /mnt/dev | |
175 | umount /mnt | |
176 | reboot | |
177 | ||
178 | Repack live | |
179 | =========== | |
180 | You might want to save the state of your live system to the usb stick. In order | |
181 | to do so, run the following commands: | |
182 | ||
183 | apt update | |
184 | apt-get install -y cpio pigz | |
185 | rm /etc/rc.local | |
186 | # remove '#' before allow-hotplug | |
187 | vi /etc/network/interfaces | |
188 | mount /dev/sda1 /mnt | |
189 | mv /mnt/initrd.gz /mnt/initrd.old | |
190 | cd / | |
191 | find . -xdev | cpio --quiet -H newc -o | pigz -9 > /mnt/initrd.gz | |
192 | umount /mnt | |
193 | ||
194 | iwd | |
195 | === | |
196 | With iwd you can force to use 5ghz. The following needs to be done to get iwd | |
197 | running. | |
198 | ||
199 | sudo apt-get install iwd | |
200 | ||
201 | cat <<EOF > /etc/iwd/main.conf | |
202 | [Rank] | |
203 | BandModifier5Ghz=10 | |
204 | EOF | |
205 | ||
206 | # Remove or comment out the following interfaces from /etc/network/interfaces | |
207 | # allow-hotplug wlp1s0f0 | |
208 | # iface wlp1s0f0 inet dhcp | |
209 | # wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf | |
210 | ||
211 | # Add the following interfaces to /etc/network/interfaces | |
212 | allow-hotplug wlan0 | |
213 | iface wlan0 inet dhcp | |
214 | ||
215 | # Reboot | |
216 | reboot | |
217 | ||
218 | # Configure iwd: | |
219 | sudo iwctl | |
220 | device list | |
221 | station wlan0 scan | |
222 | station wlan0 get-networks | |
223 | station wlan0 connect SSID | |
224 | ||
225 | Deinstall Linux | |
226 | =============== | |
227 | # Lets assume you have the following partioning | |
228 | ||
229 | (mini) [~] sudo parted /dev/nvme0n1 print | |
230 | Model: APPLE SSD AP0256Q (nvme) | |
231 | Disk /dev/nvme0n1: 251GB | |
232 | Sector size (logical/physical): 4096B/4096B | |
233 | Partition Table: gpt | |
234 | Disk Flags: | |
235 | ||
236 | Number Start End Size File system Name Flags | |
237 | 1 24.6kB 524MB 524MB iBootSystemContainer | |
238 | 2 524MB 101GB 100GB | |
239 | 3 101GB 103GB 2500MB | |
240 | 4 103GB 104GB 513MB fat32 boot, esp | |
241 | 5 104GB 246GB 142GB ext4 | |
242 | 6 246GB 251GB 5369MB RecoveryOSContainer | |
243 | ||
244 | # Never delete the first, the second and the last partition because that either | |
245 | # renders your mac unbootable (first two) or unupgradable (last one). However | |
246 | # you can recover the system by using a second system if you screw up. | |
247 | ||
248 | # In the above example we need to delete the partition number 3 (stub partition | |
249 | # you can identify it by the size 2500 MB). The partition 4 (you can identtify | |
250 | # it by the fact that it is fat32 and the flags boot, esp). And the partition | |
251 | # number 5 (you can identify it by the fact that it is ext4). | |
252 | ||
253 | You delete the partitions by doing: | |
254 | ||
255 | # n is the partition number | |
256 | sudo parted /dev/nvme0n1 rm <n> | |
257 | ||
258 | # If you're asked if you want to proceed, say 'y'. If your asked if you want to | |
259 | # ignore, say, ignore. |