X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/m1-debian/blobdiff_plain/cccfe6d57d96f392cb3e49a9998db9fea3bc043f..d96c64a5768946a6dfec9ee12e59bf7964a60e45:/README.md?ds=sidebyside diff --git a/README.md b/README.md index 13ee08b..0544e18 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 @@ -116,7 +120,7 @@ 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? +## If I install Debian, will it be easy to update the Asahi work as it develops? Yes, long answer below. @@ -139,3 +143,63 @@ 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 + +- Build a kernel that is not cross compiled. Because the cross compiled header + package does contain the fixtool for the wrong architecture at the moment and + install the resulting kernel deb and headers and boot into it: + + ./m1n1_uboot_kernel.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" + +- You have to specify the default rust version: + + rustup default 1.68.2 + +- 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.