X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/m1-debian/blobdiff_plain/cccfe6d57d96f392cb3e49a9998db9fea3bc043f..f75bb0316722213ed7f8137c09051add8e25391b:/README.md?ds=inline diff --git a/README.md b/README.md index 13ee08b..ee53686 100644 --- a/README.md +++ b/README.md @@ -11,10 +11,14 @@ problematic if you're using multiple ESP partitions for example when having multiple Linux and BSD installations. # Artefacts -If you don't want to use the prebuild artefacts, you can build them yourself using the [bootstrap.sh](https://git.zerfleddert.de/cgi-bin/gitweb.cgi/m1-debian/blob_plain/refs/heads/master:/bootstrap.sh) script. +If you don't want to use the prebuild artefacts, you can build them yourself +using the following scripts: -# Kernel header files -The kernel header files can be found here: + - prepare_rust.sh - Prepares a rust installation suitable for kernel compilation + - m1n1_uboot_kernel.sh - Builds m1n1, u-boot and the kernel including gpu support. + - mesa.sh - Creates mesa packages + - bootstrap.sh - Creates Debian root and live filesystem + - meta.sh - Meta package which makes sure that we always get latest and greatest kernel. # Asahi installer @@ -38,7 +42,7 @@ The kernel header files can be found here: * Configure wifi by editing the wpa_supplicant.conf, enabling the interface and remove the # before allow-hotplug to enable it during boot. vi /etc/wpa_supplicant/wpa_supplicant.conf - ifup wlp1s0f0 + ifup wlan0 vi /etc/network/interfaces * Reboot to see if grub was correctly installed @@ -102,7 +106,7 @@ Than open a terminal, and run the following commands: * If you have a EFI binary on the NVMe and want to boot from the usb stick, you need to interrupt u-boot on the countdown by pressing any key and run the following comamnd to boot from usb: - run bootcmd_usb0 + env set boot_efi_bootmgr; run bootcmd_usb0 * Reboot with the USB stick connected, the Debian livesystem should automatically start, if it doesn't load the kernel and initrd manually, you can use tab. For x try 0,1,2,... @@ -116,7 +120,38 @@ Than open a terminal, and run the following commands: # FAQ -* If I install Debian, will it still be relatively easy to update the Asahi work as it develops? +## Why has there been no kernel update? + +For Debian stable I'm currently unable to update the kernel due to the fact +that the kernel requires new mesa packages and the new mesa package needs too +many dependencies which are not in Debian stable and I'm not willing to add +that many new packages. So I recommend that if you want the latest asahi +kernel, mesa, sound and other packages, switch to testing and use Thomas +Renards packages for testing. + +## How to enable spakers? + +Currently speakers are only supported on M1 air. Install the necessary packages: + + apt update + apt upgrade -y + apt dist-upgrade -y + apt install -y alsa-ucm-conf-asahi speakersafetyd + reboot + +After the reboot I need to restart the speakersafetyd in order to hear sound out of the speakers: + + sudo systemctl restart speakersafetyd + +## Does it work on M2? + +Yes, M3 is not yet supported. + +## Are you still maintaining this? + +Yes, I do and will continue doing this until there is an official Debian installer. + +## If I install Debian, will it be easy to update the Asahi work as it develops? Yes, long answer below. @@ -128,7 +163,7 @@ as root: For installations before 2022-12-12, see -Later it might be necessary to upgrade the stub parition in order to +Later it might be necessary to upgrade the stub partion in order to support the GPU code. As soon as that happens, I'll add the instructions and a video in order to do so, but short version is: @@ -139,3 +174,58 @@ instructions and a video in order to do so, but short version is: So, you never need to reinstall Debian. Kernel updates are easy, stub updates are a little bit more cumbersome but also seldom. + +## How do I compile zfs on apple silicon debian? + +- In order to build zfs you need the rust environment. So from the m1-debian + repository you have to run these scripts: + + ./dependencies.sh + ./prepare_rust.sh + +- Prepare your zfs build environment. You need to replace + /home/sithglan/work/m1-debian with your path to + your m1-debian checkout: + + export CARGO_HOME="/home/sithglan/work/m1-debian/build/cargo" + export RUSTUP_HOME="/home/sithglan/work/m1-debian/build/rust" + source "/home/sithglan/work/m1-debian/build/cargo/env" + +- Tell zfs which version of clang you use to compile the kernel: + + export KERNEL_LLVM=-15 + +- Checkout ZFS: + + git clone https://github.com/openzfs/zfs + cd ./zfs + git checkout master + +- Apply the following patch: + + diff --git a/META b/META + index 3919b0d..67c9f7d 100644 + --- a/META + +++ b/META + @@ -4,7 +4,7 @@ Branch: 1.0 + Version: 2.2.99 + Release: 1 + Release-Tags: relext + -License: CDDL + +License: GPL + Author: OpenZFS + Linux-Maximum: 6.4 + Linux-Minimum: 3.10 + +- Build ZFS: + + sh autogen.sh + ./configure + make -s -j$(nproc) + +- Follow the instructions on how to install it. + +## What about gnome? + +You need an unpriviledged user to log in. You should delete /etc/network/interfaces in order to manage the network under gnome. If you don't have an US keyboard, you can change the settings in Gnome > Settings > Keyboard. +