123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- const fs = require('fs')
- const path = require('path')
- const log = require('../../util/log')
- const plist = require('../../util/plist')
- module.exports = {
- version: 4,
- name: 'backup.info',
- description: `Gets a backup's info`,
- requiresBackup: true,
- // Run on a v3 lib / backup object.
- async run (lib, { backup }) {
- // Get the path for the info plist.
- let infoPath = path.join(backup.path, 'Info.plist')
- log.verbose('parsing info', infoPath)
- var data = plist.parseFile(infoPath)
- // Remove this data, it's kind of useless.
- delete data['iTunes Files']
- return data
- },
- // Public facing properties
- output: {
- buildVersion: el => el['Build Version'],
- deviceName: el => el['Device Name'],
- displayName: el => el['Display Name'],
- guid: el => el['GUID'],
- installedApplications: el => el['Installed Applications'],
- lastBackupDate: el => el['Last Backup Date'],
- productName: el => el['Product Name'],
- productType: el => el['Product Type'],
- productVersion: el => el['Product Version'],
- serialNumber: el => el['Serial Number'],
- targetIdentifier: el => el['Target Identifier'],
- targetType: el => el['Target Type'],
- uniqueIdentifier: el => el['Unique Identifier'],
- iTunesSettings: el => el['iTunes Settings'],
- iTunesVersion: el => el['iTunes Version']
- }
- }
|