diff --git a/docs/Delete-an-Installation.md b/docs/Delete-an-Installation.md index 445343c3..a9247935 100644 --- a/docs/Delete-an-Installation.md +++ b/docs/Delete-an-Installation.md @@ -103,4 +103,4 @@ diskutil apfs resizeContainer disk 0 ``` ### Errors? Need More Background Information? -[Partitioning cheatsheet](https://github.com/AsahiLinux/docs/wiki/Partitioning-cheatsheet) \ No newline at end of file +[Partitioning cheatsheet](Partitioning-cheatsheet.md) diff --git a/docs/Introduction-to-Apple-Silicon.md b/docs/Introduction-to-Apple-Silicon.md index c1eb03a5..d8b97553 100644 --- a/docs/Introduction-to-Apple-Silicon.md +++ b/docs/Introduction-to-Apple-Silicon.md @@ -2,7 +2,7 @@ This document attempts to explain the Apple Silicon (i.e. M1 and later) Mac boot ecosystem (henceforth "AS Macs"), as it pertains for how open OSes interoperate with the platform. -It is intended for developers and maintainers of Linux, BSD and other OS distributions and boot-related components, as well as users interested in the platform, and its goal is to cover the overall picture without delving into excessive technical detail. Specifics should be left to other wiki pages. It also omits details that only pertain to macOS (such as how kernel extensions work and how they are loaded). +It is intended for developers and maintainers of Linux, BSD and other OS distributions and boot-related components, as well as users interested in the platform, and its goal is to cover the overall picture without delving into excessive technical detail. Specifics should be left to other pages. It also omits details that only pertain to macOS (such as how kernel extensions work and how they are loaded). The information here is based on how things work in system firmware and macOS versions 12.0 (Monterey) and later. A number of rapid design changes took place in the first year after the initial M1 Mac announcement; although older 11.x firmwares are usable, they are obsolete and buggy in various ways, and attempting to cover these changes would make things too confusing. We expect users wishing to run open OSes to run system firmware corresponding to macOS 12.1 or later, for practical reasons (though they may have older versions of macOS itself installed). diff --git a/docs/Kernel-config-notes-for-distros.md b/docs/Kernel-config-notes-for-distros.md index abccf040..36d6a80b 100644 --- a/docs/Kernel-config-notes-for-distros.md +++ b/docs/Kernel-config-notes-for-distros.md @@ -128,6 +128,6 @@ CONFIG_APPLE_MFI_FASTCHARGE=m ``` -Warning: if this is your first time modifying a kernel configuration, please do take the advice at the top of the file about not hand-editing the file seriously. Do NOT just copy the fragments in this wiki into your config and try to build the kernel; this is likely to result in an inconsistent config and a failed build. Instead, use the `make menuconfig` or `make xconfig` system to modify your kernel configuration. +Warning: if this is your first time modifying a kernel configuration, please do take the advice at the top of the file about not hand-editing the file seriously. Do NOT just copy the fragments in this page into your config and try to build the kernel; this is likely to result in an inconsistent config and a failed build. Instead, use the `make menuconfig` or `make xconfig` system to modify your kernel configuration. -For a reference kernel configuration, see [here](https://github.com/AsahiLinux/docs/wiki/Reference-Asahi-kernel-config). \ No newline at end of file +For a reference kernel configuration, see [here](Reference-Asahi-kernel-config.md). diff --git a/docs/Open-OS-Ecosystem-on-Apple-Silicon-Macs.md b/docs/Open-OS-Ecosystem-on-Apple-Silicon-Macs.md index a6ea9fc4..72a9c11f 100644 --- a/docs/Open-OS-Ecosystem-on-Apple-Silicon-Macs.md +++ b/docs/Open-OS-Ecosystem-on-Apple-Silicon-Macs.md @@ -116,7 +116,7 @@ At this time, the Asahi Linux installer is supported as a purely online installe Future installation options could include: -* USB netinstall images/bundles, setting up the installer as "bootable install media". This can be set up by just unpacking some files to a FAT32 partition on a USB drive, so it is easy for users to use, and will allow them to select the installer from the boot picker ([more info](https://github.com/AsahiLinux/docs/wiki/Introduction-to-Apple-Silicon#boot-picker) on how this magic works). It would still fetch the OS to be installed from the internet. +* USB netinstall images/bundles, setting up the installer as "bootable install media". This can be set up by just unpacking some files to a FAT32 partition on a USB drive, so it is easy for users to use, and will allow them to select the installer from the boot picker ([more info](Introduction-to-Apple-Silicon.md#boot-picker) on how this magic works). It would still fetch the OS to be installed from the internet. * USB local install images/bundles, which can also serve as UEFI install media for later or for other platforms. This will install the target OS from USB, but will still hit Apple's CDN for the Apple components, making the install not truly offline. * An option for end users to add the Apple components, e.g. by running a script from the USB drive, making it fully offline * An option for end users to add the Apple components when creating the USB installer, e.g. by running a script that downloads them and provisions the installer in one go, instead of a pre-baked image. diff --git a/docs/SW-Hypervisor.md b/docs/SW-Hypervisor.md index ac9a4762..32de2e95 100644 --- a/docs/SW-Hypervisor.md +++ b/docs/SW-Hypervisor.md @@ -47,7 +47,7 @@ kmutil create -z -n boot -a arm64e -B ~/dev.kc.macho -V development \ 1. Start into 1tr and start a terminal 2. Disable most security feature in the boot policy: `bputil -nkcas`; use `diskutil info [disk name]` to get UUID 3. Disable SIP (bputil resets it): `csrutil disable` -4. install [m1n1](https://github.com/AsahiLinux/docs/wiki/m1n1%3AUser-Guide) as custom boot object +4. install [m1n1](m1n1-User-Guide.md) as custom boot object ``` kmutil configure-boot -c build/m1n1.bin --raw --entry-point 2048 --lowest-virtual-address 0 -v /Volumes/macOSTest ``` @@ -112,4 +112,4 @@ process connect unix-connect:///tmp/.m1n1-unix Do not run hypervisor console commands interfering with GDB/LLDB, or they will be out-of-sync. For example, do not edit breakpoints from both of hypervisor console and GDB/LLDB at the same time. # Sources -Source for the kernelcache creation: https://kernelshaman.blogspot.com/2021/02/building-xnu-for-macos-112-intel-apple.html \ No newline at end of file +Source for the kernelcache creation: https://kernelshaman.blogspot.com/2021/02/building-xnu-for-macos-112-intel-apple.html diff --git a/docs/SW-Ubuntu-Asahi-Qemu.md b/docs/SW-Ubuntu-Asahi-Qemu.md index 22a3dd80..530fbee5 100644 --- a/docs/SW-Ubuntu-Asahi-Qemu.md +++ b/docs/SW-Ubuntu-Asahi-Qemu.md @@ -1,6 +1,6 @@ Tested on Ubuntu 22.10 Asahi on M1 Air. -Other Ubuntu Asahi install info at https://github.com/AsahiLinux/docs/wiki/SW%3AAlternative-Distros +See [this page](SW-Alternative-Distros.md) for other Ubuntu Asahi install info. Also installs virt-manager. diff --git a/docs/Tethered-Boot-Setup-For-Developers.md b/docs/Tethered-Boot-Setup-For-Developers.md index dfd2f79f..72ed812b 100644 --- a/docs/Tethered-Boot-Setup-For-Developers.md +++ b/docs/Tethered-Boot-Setup-For-Developers.md @@ -7,7 +7,7 @@ This guide is intended specifically for kernel developers and advanced users who * An Apple Silicon Mac with _at least_ **macOS 12.3** installed and configured * You must have a password-protected administrator account. Typically, this will be the first account you created when setting up the machine for the first time. -* A host machine of any architecture running a GNU/Linux distribution (macOS is also supported, but less well tested see [Tethered-Boot-Setup-on-macOS](Tethered-Boot-Setup-on-macOS.md)) +* A host machine of any architecture running a GNU/Linux distribution (macOS is also supported, but less well tested see [Tethered-Boot-Setup-on-macOS](Tethered-boot-setup-on-macOS.md)) * Both `GCC` and `Clang/LLVM` AArch64 cross-toolchains are supported. If you are interested in low-level access to the SoC via its debug UART, you will also require a real, physical serial port solution. See [Low-level-serial-debug](Low-level-serial-debug.md) for more information on this. This is not necessary for general kernel development or reverse-engineering, and most developers will find the virtual serial port offered by the m1n1 hypervisor to be adequate for everything (unless you're debugging KVM and can't use it). diff --git a/docs/index.md b/docs/index.md index ed2c20ee..a8e27c08 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,4 +1,4 @@ -# Welcome to the Asahi Linux documentation Wiki! +# Welcome to the Asahi Linux documentation! We are just getting started. @@ -27,4 +27,4 @@ following updates adding support for more devices and hardware: * [Conformant OpenGL 4.6 on the M1](https://asahilinux.org/2024/02/conformant-gl46-on-the-m1/) * [Vulkan 1.3 on the M1 in 1 month](https://asahilinux.org/2024/06/vk13-on-the-m1-in-1-month/) * [AAA gaming on Asahi Linux](https://asahilinux.org/2024/10/aaa-gaming-on-asahi-linux/) -* [Beyond Gaming: X11 bridging in muvm](https://asahilinux.org/2024/12/muvm-x11-bridging/) \ No newline at end of file +* [Beyond Gaming: X11 bridging in muvm](https://asahilinux.org/2024/12/muvm-x11-bridging/) diff --git a/mkdocs.yml b/mkdocs.yml index 48a9a267..f35e0a78 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -22,7 +22,7 @@ nav: - Display Controllers: Display-Controllers.md - For users: - Broken Software: Broken-Software.md - - Alternative Distros: SW:Alternative-Distros.md + - Alternative Distros: SW-Alternative-Distros.md - For developers: - Yaks in need of shaving (HELP WANTED!): Yaks-in-need-of-shaving.md - Tethered Boot Setup (For Developers): Tethered-Boot-Setup-For-Developers.md