https://github.com/rec0de/apple-ota
Tweaked version of Jonathan Levin's OTA unpacker
https://github.com/rec0de/apple-ota
Last synced: 9 months ago
JSON representation
Tweaked version of Jonathan Levin's OTA unpacker
- Host: GitHub
- URL: https://github.com/rec0de/apple-ota
- Owner: rec0de
- Created: 2024-07-29T11:02:01.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-29T13:43:55.000Z (almost 2 years ago)
- Last Synced: 2025-04-11T19:46:42.205Z (about 1 year ago)
- Language: C
- Size: 14.6 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# OTA unpack
Jonathan Levin's [Apple OTA unpacking tool](https://newosxbook.com/articles/OTA8.html), modified to run out of the box on linux hosts and decompress to temp directory rather than your root filesystem.
## Compile
```
pacman -S xz # ArchLinux, adjust to whatever provides liblzma for your distro
make # should work out of the box :)
```
## Run
```
Usage: ./ota [-v] [-l] [...] filename[s]
Where: -l: list files in update payload
Where: [...] is one of:
-e file: extract file from update payload (use "*" for all files)
-s string file: Look for occurences of string in file
-S string file: Look for occurences of string, NULL terminated in file
[-n] -d file1 file2: Point out differences between OTA file1 and file2
-n to only diff names
```
```
# list files contained in OTA
./ota -l payload.???
# extract entire OTA filesystem to /tmp/fs
./ota -e \* payload.???
```