]> cvs.zerfleddert.de Git - m1-debian/blame - files/quickstart.txt
more dependencies
[m1-debian] / files / quickstart.txt
CommitLineData
49e0d4d9
TG
1Set root password
2=================
3passwd
4pwconv
5
6Configure wifi
7==============
8vi /etc/wpa/wpa_supplicant.conf
9ifup wlp1s0f0
10# remove the '#' before allow-hotplug to let wifi come up after boot
11vi /etc/network/interfaces
7c94d3fa 12
49e0d4d9
TG
13Install openssh
14===============
15# Login for root is disabled by default. So you need another user
16sudo apt update
17sudo apt install -y openssh-server
cd51dc6c 18
49e0d4d9
TG
19Configure timezone
20==================
21dpkg-reconfigure tzdata
708a0d2b 22
49e0d4d9
TG
23Create a user
24=============
25useradd -m -c 'firstname lastname' -s /bin/bash username
26passwd username
7a54df2e 27
49e0d4d9
TG
28Lightweight desktop
29===================
7fd4b59a 30apt-get install lightdm blackbox xterm firefox-esr big-cursor
49e0d4d9 31/etc/init.d/lightdm start
5e01b9d1 32
49e0d4d9
TG
33Install gnome
34=============
35apt-get install gnome
36/etc/init.d/gdm3 start
60b74f9d 37
49e0d4d9
TG
38Disable sleep, hibernate and suspend targets
39============================================
40# asahi does not handle sleep well at the moment
41sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
7a54df2e 42
49e0d4d9
TG
43Xorg
44====
c45f72fa
TG
45
46# Keyboard use capslock as additional ctrl
1c4cc0fc 47cat > /etc/X11/xorg.conf.d/00-keyboard.conf <<'EOF'
7a54df2e
TG
48Section "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"
55EndSection
1c4cc0fc
TG
56EOF
57
c45f72fa 58# Swap command and option (windows and alt like on a pc keyboard)
34ce98d9 59echo 1 > /sys/module/hid_apple/parameters/swap_opt_cmd
c45f72fa
TG
60
61# Configure the touchpad
1c4cc0fc 62cat > /etc/X11/xorg.conf.d/30-input.conf <<'EOF'
7a54df2e
TG
63Section "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"
80EndSection
1c4cc0fc 81EOF
cd51dc6c 82
49e0d4d9
TG
83Install latest kernel and m1n1 stage 2 (m1n1, dtbs, u-boot)
84===========================================================
85curl -sL tg.st/u/ksh | sudo bash
cd51dc6c 86
49e0d4d9
TG
87Use the live system to install debian
88=====================================
cd51dc6c 89
49e0d4d9
TG
90parted -a optimal /dev/nvme0n1 print free
91parted -a optimal /dev/nvme0n1 mkpart primary ext4 <begin of free> <end of free>
92tune2fs -O extents,uninit_bg,dir_index -m 0 -c 0 -i 0 /dev/nvme0n1p5
cd51dc6c 93
49e0d4d9 94mount /dev/nvme0n1p5 /mnt
5fe4d912 95
7d9a6771 96debootstrap --arch=arm64 testing /mnt http://deb.debian.org/debian
cd51dc6c 97
49e0d4d9
TG
98mount -t sysfs none /mnt/sys
99mount -t efivarfs none /mnt/sys/firmware/efi/efivars
100mount -t proc none /mnt/proc
101mount -o bind /dev /mnt/dev
102mount -o bind /dev/pts /mnt/dev/pts
cd51dc6c 103
49e0d4d9
TG
104mkdir -p /mnt/boot/efi
105mount /dev/nvme0n1p4 /mnt/boot/efi
cd51dc6c 106
49e0d4d9
TG
107cd /mnt
108chroot . bin/bash
cd51dc6c 109
49e0d4d9
TG
110cat <<EOF > /etc/fstab
111/dev/nvme0n1p5 / ext4 defaults 0 0
112/dev/nvme0n1p4 /boot/efi vfat defaults 0 0
113EOF
7c94d3fa 114
49e0d4d9 115cat <<EOF > /etc/apt/sources.list
8b2a692f
TG
116deb http://deb.debian.org/debian testing main contrib non-free
117deb-src http://deb.debian.org/debian testing main contrib non-free
49e0d4d9
TG
118EOF
119
120apt update
8b2a692f 121apt-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 firmware-linux cryptsetup
49e0d4d9
TG
122
123apt-get install -y grub-efi-arm64-signed-
124echo 'grub-efi-arm64 grub2/update_nvram boolean false' | debconf-set-selections
125echo 'grub-efi-arm64 grub2/force_efi_extra_removable boolean true' | debconf-set-selections
126dpkg-reconfigure -fnoninteractive grub-efi-arm64
127update-grub
128grub-install --removable /boot/efi
129
130echo 'nameserver 8.8.8.8' > /etc/resolv.conf
131
132export HOSTNAME=debian
133echo $HOSTNAME > /etc/hostname
134cat <<EOF > /etc/hosts
135127.0.0.1 localhost $HOSTNAME
136EOF
137
138cat <<EOF > /etc/wpa_supplicant/wpa_supplicant.conf
139network={
140 ssid="ssid"
141 scan_ssid=1
142 key_mgmt=WPA-PSK
143 psk="password"
144}
145EOF
146
dad9242c
TG
147passwd
148
49e0d4d9 149tar -C /lib/firmware/ -xf /boot/efi/vendorfw/firmware.tar
cd51dc6c 150
49e0d4d9
TG
151cat <<EOF > /etc/network/interfaces
152# interfaces(5) file used by ifup(8) and ifdown(8)
153# Include files from /etc/network/interfaces.d:
154source /etc/network/interfaces.d/*
155
156allow-hotplug enp3s0
157iface enp3s0 inet dhcp
158
159# allow-hotplug wlp1s0f0
160iface wlp1s0f0 inet dhcp
161 wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
162EOF
163
164curl -sLo /tmp/k.deb tg.st/u/k.deb
165curl -sLo /boot/efi/m1n1/boot.bin tg.st/u/u-boot.bin
166dpkg -i /tmp/k.deb
167
168exit
169
170cd /
171umount /mnt/boot/efi
5874ab90 172umount /mnt/sys/firmware/efi/efivars
49e0d4d9
TG
173umount /mnt/sys
174umount /mnt/proc
175umount /mnt/dev/pts
176umount /mnt/dev
177umount /mnt
178reboot
83966e16
TG
179
180Repack live
181===========
182You might want to save the state of your live system to the usb stick. In order
183to do so, run the following commands:
184
185apt update
186apt-get install -y cpio pigz
187rm /etc/rc.local
188# remove '#' before allow-hotplug
189vi /etc/network/interfaces
190mount /dev/sda1 /mnt
191mv /mnt/initrd.gz /mnt/initrd.old
192cd /
193find . -xdev | cpio --quiet -H newc -o | pigz -9 > /mnt/initrd.gz
194umount /mnt
77431dc9
TG
195
196iwd
197===
198With iwd you can force to use 5ghz. The following needs to be done to get iwd
199running.
200
201sudo apt-get install iwd
202
203cat <<EOF > /etc/iwd/main.conf
204[Rank]
205 BandModifier5Ghz=10
206EOF
207
208# Remove or comment out the following interfaces from /etc/network/interfaces
209# allow-hotplug wlp1s0f0
210# iface wlp1s0f0 inet dhcp
211# wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
212
213# Add the following interfaces to /etc/network/interfaces
214allow-hotplug wlan0
215iface wlan0 inet dhcp
216
217# Reboot
218reboot
219
220# Configure iwd:
221sudo iwctl
222device list
223station wlan0 scan
224station wlan0 get-networks
225station wlan0 connect SSID
ab29a9ca
TG
226
227Deinstall Linux
228===============
229# Lets assume you have the following partioning
230
231(mini) [~] sudo parted /dev/nvme0n1 print
232Model: APPLE SSD AP0256Q (nvme)
233Disk /dev/nvme0n1: 251GB
234Sector size (logical/physical): 4096B/4096B
235Partition Table: gpt
236Disk Flags:
237
238Number Start End Size File system Name Flags
239 1 24.6kB 524MB 524MB iBootSystemContainer
240 2 524MB 101GB 100GB
241 3 101GB 103GB 2500MB
242 4 103GB 104GB 513MB fat32 boot, esp
243 5 104GB 246GB 142GB ext4
244 6 246GB 251GB 5369MB RecoveryOSContainer
245
246# Never delete the first, the second and the last partition because that either
247# renders your mac unbootable (first two) or unupgradable (last one). However
248# you can recover the system by using a second system if you screw up.
249
250# In the above example we need to delete the partition number 3 (stub partition
251# you can identify it by the size 2500 MB). The partition 4 (you can identtify
252# it by the fact that it is fat32 and the flags boot, esp). And the partition
253# number 5 (you can identify it by the fact that it is ext4).
254
255You delete the partitions by doing:
256
257# n is the partition number
258sudo parted /dev/nvme0n1 rm <n>
259
260# If you're asked if you want to proceed, say 'y'. If your asked if you want to
261# ignore, say, ignore.
38fde6be
TG
262
263Control Charging
264================
265# Do not charge
266echo inhibit-charge > /sys/class/power_supply/macsmc-battery/charge_behaviour
267
268# Default
269echo auto > /sys/class/power_supply/macsmc-battery/charge_behaviour
270
271# Force discharge
272echo force-discharge > /sys/class/power_supply/macsmc-battery/charge_behaviour
5896bbfd
TG
273
274# Find out which device tree you're using
275cat /proc/device-tree/compatible
f7d011bf
TG
276
277# Bluetooth
278https://g3la.de/hedgedoc/s/MIaCyVv1A#Bluetooth
a515fd59
TG
279
280# Set Firefox as default browser
281xdg-mime default firefox-esr.desktop x-scheme-handler/https x-scheme-handler/http
a7b2b797
TG
282
283Get it running with debian and crypto file system
284=================================================
420e5bd7 285https://g3la.de/hedgedoc/buDIXGBuRzKMwUnYOpStuw#
Impressum, Datenschutz