An error occurred while fetching folder content.
Leah Rowe
authored
This commit adds support for the MacBook Air 4,2 from Apple, circa 2011. This is a blobless board in coreboot, when configured the way Libreboot does it, except for the presence of neutered ME (via me_cleaner) and (per Libreboot project policy), CPU microcode updates. Intel ME image automatically extracted from Apple EFI updates, via the same blobutil script used for fetching Lenovo ME updates. This means that the user does not have to extract it from a dump of the original firmware, when flashing Libreboot. Apple EFI updates are .dmg files, which are LZMA compressed archives containing executables and files. When the archive is de-compressed, more compressed archives shall be found inside. The file targeted (from Apple) contains Apple's EFI firmware update program, that the user runs in MacOS, but we don't care about running that. No, we are only interested in Apple's ME update image, which we extract as `me.bin` and then run through me_cleaner. This has to be done through brute force, because the location of that file is random, with the .dmg file. The script systematically (and recursively) scans the file, trying me_cleaner on files inside first, before attempting extraction with 7z; if me_cleaner passes, then we've found the me.bin file, or if 7z passes, we scan the resulting directory; if neither pass, or the directory created by 7z is finished being scanned, the next file or directory is scanned. When the script encounters a directory in each iteration of the loop, that directory is scanned. I wonder if a non-recursive method would be feasible in shell scripts. This method shouldn't pose any problems, though.
Name | Last commit | Last update |
---|