X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/m1-debian/blobdiff_plain/1e9643525ffd6c9b95587501f93ee31216f1cd8d..2ad631dc766efdf45e699dc24ae4d036911e9211:/doc/notes.txt?ds=sidebyside
diff --git a/doc/notes.txt b/doc/notes.txt
index 006bdfe..605979f 100644
--- a/doc/notes.txt
+++ b/doc/notes.txt
@@ -133,3 +133,51 @@ echo 1 > /sys/module/hid_apple/parameters/swap_opt_cmd
}
cloud-initramfs-growroot
+16:00 < Glanzmann> So applying a new uuid to the rootfs needs to be done in the initrd.
+tune2fs -U random /dev/whatever
+
+07:54 < VinDuv> So Iâve been looking at how macOS installation from USB works on M1 Macs and I think it might be interesting for the Asashi installer. The way it works is that thereâs a hidden plist file on the USB drive that references a macOS
+ application on the drive; if this file is present, the USB drive will show up in the power-button-held boot menu, and when selected, it will run the application. It doesnât seem to care about file signature
+07:54 < VinDuv> (it works even if the app is just a shell script) and it looks like itâs in 1TR mode.
+07:56 < VinDuv> So the installation workflow from 1TR could be âplug in a USB stick, hold the power button, select Install Asahiâ instead of having to manually open the terminal and run curl | sh. The installer doesnât even need to be graphical since
+ itâs possible for the launched shell script to start the recovery environmentâs Terminal and giving it an arbitrary command to run.
+07:59 < VinDuv> This is also not limited to external USB drives; it also works if the files are in an APFS volume in internal storage, which I guess might be useful to have a Asahi Recovery boot option in the boot menu or something.
+
+---- .IAPhysicalMedia ---------------------------------------------------------
+
+
+
+
+ AppName
+ Some App.app
+ ProductBuildVersion
+ 00A191
+ ProductVersion
+ 12.2.1
+
+
+
+---- Some App.app/Contents/Info.plist -----------------------------------------
+
+
+
+
+ CFBundleDisplayName
+ Some App
+ CFBundleExecutable
+ SomeApp
+
+
+
+---- Some App.app/Contents/Resources/.lproj/InfoPlist.strings ------
+"CFBundleDisplayName" = "Some App";
+
+---- Some App.app/Contents/MacOS/SomeApp (executable) -------------------------
+#!/bin/bash
+exec /System/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal "${0%/*}/../Resources/myscript.command"
+
+---- Some App.app/Contents/Resources/myscript.command -------------------------
+#!/bin/sh
+
+echo "Hello, world!"
+exec /bin/bash