apps.js 873 B

123456789101112131415161718192021222324252627282930313233
  1. const iPhoneBackup = require('../util/iphone_backup.js').iPhoneBackup
  2. module.exports.name = 'apps'
  3. module.exports.description = 'List all installed applications and container IDs.'
  4. module.exports.compatible_versions = [ '>=10.0' ]
  5. module.exports.func = function (program, base) {
  6. if (!program.backup) {
  7. console.log('use -b or --backup <id> to specify backup.')
  8. process.exit(1)
  9. }
  10. // Grab the backup
  11. var backup = iPhoneBackup.fromID(program.backup, base)
  12. if (!backup.manifest) return {}
  13. // Possibly dump output
  14. if (program.dump) {
  15. console.log(JSON.stringify(backup.manifest, null, 4))
  16. return
  17. }
  18. // Enumerate the apps in the backup
  19. var apps = []
  20. for (var key in backup.manifest.Applications) {
  21. apps.push(key)
  22. }
  23. console.log(`Apps installed inside backup: ${backup.id}`)
  24. console.log(apps.map(el => '- ' + el).join('\n'))
  25. }