Spent a while this evening noodling around with "ibackupextractor", an open source, MIT-licensed, Rust program that takes an (unencrypted) iOS backup and reassembles it into a usable directory/file tree.
It's a fairly niche use case, because you need to have backed-up your iOS device to a Mac (not just to iCloud), but if you happen to have one of those archives and want to get information out if it, without restoring the whole thing back to an iOS device… that's what it does.
My changes implement an 'info' command to see metadata related to the backup, and an 'extract --all' option to dump basically everything retrievable in an archive rather than doing it one iOS 'domain' at a time. I also changed the default behavior a bit, based on what I think is safe/sane behavior. (The upstream author may or may not agree.)
https://github.com/Jachimo/ibackupextractor
#iOS #Rust #Apple #programming