mirror of
https://github.com/leminlimez/Nugget.git
synced 2025-04-08 04:23:05 +08:00
attempt to generate mga with lockdown (failed)
This commit is contained in:
103
devicemanagement/generate_mga.py
Normal file
103
devicemanagement/generate_mga.py
Normal file
@@ -0,0 +1,103 @@
|
|||||||
|
from pymobiledevice3.lockdown import LockdownClient
|
||||||
|
|
||||||
|
def get_model_name(product_type: str) -> str:
|
||||||
|
return "iPhone something"
|
||||||
|
|
||||||
|
def get_idiom(device_class: str) -> str:
|
||||||
|
if device_class == 'iPhone':
|
||||||
|
return 'phone'
|
||||||
|
else:
|
||||||
|
return 'pad'
|
||||||
|
|
||||||
|
def generate_mga(ld: LockdownClient) -> dict:
|
||||||
|
# queries the device values and generates a mobile gestalt dictionary to return
|
||||||
|
vals = ld.all_values
|
||||||
|
prod = vals['ProductType']
|
||||||
|
device_class = vals['DeviceClass']
|
||||||
|
region = vals['RegionInfo'].split("/")
|
||||||
|
build = vals['BuildVersion']
|
||||||
|
model_name = get_model_name(prod)
|
||||||
|
cache_extra = {
|
||||||
|
# main dict to query
|
||||||
|
"+3Uf0Pm5F8Xy7Onyvko0vA": device_class, # DeviceClass
|
||||||
|
"/YYygAofPDbhrwToVsXdeA": vals['HardwareModel'], # HardwareModel
|
||||||
|
"0+nc/Udy4WNG8S+Q7a/s1A": prod, # ProductType
|
||||||
|
# "0GizaJLOyfzgAbxQ/5aniA" ## DeviceHousingColorUncooked
|
||||||
|
# "4W7X4OWHjri5PGaAGsCWxw" ## MaxH264PlaybackLevel
|
||||||
|
# "4qfpxrvLtWillIHpIsVgMA" ## SystemImageID
|
||||||
|
"5pYKlGnYYBzGvAlIU8RjEQ": vals['HardwarePlatform'], # HardwarePlatform
|
||||||
|
# "913P3Zsei09w0GSSOaBD+w" ## VolumeUpButtonNormalizedCGRect
|
||||||
|
"91LyMcx4z1w3SGVeqteMnA": vals['BasebandRegionSKU'], # BasebandRegionSKU
|
||||||
|
# "96GRvvjuBKkU4HzNsYcHPA" ## MinimumSupportediTunesVersion
|
||||||
|
# "97JDvERpVwO+GHtthIh7hA" ## RegulatoryModelNumber
|
||||||
|
"9MZ5AdH43csAUajl/dU+IQ": vals['SupportedDeviceFamilies'], # SupportedDeviceFamilies
|
||||||
|
"9s45ldrCC1WF+7b6C4H2BA": prod, # GSDeviceName
|
||||||
|
# "AoKnINTLPoKML3ctoP0AZg" ## IOSurfaceFormatDictionary
|
||||||
|
"DViRIxZ/ZwO007CLcEYvZw": "", # DViRIxZ/ZwO007CLcEYvZw
|
||||||
|
# "HXTqT3UXOKuTEklxz+wMAA" ## BasebandAPTimeSync
|
||||||
|
"IMLaTlxS7ITtwfbRfPYWuA": region[1], # DeviceVariantGuess
|
||||||
|
# "J1QHVh74Nnd6Rqyiq71/yw" ## AVDDecodingRate
|
||||||
|
# "JHXk7RXOxvlqK+SxkwcM2A" ## LowPowerExpressModesSupported
|
||||||
|
"JUWcn+5Ss0nvr5w/jk4WEg": device_class, # device-name
|
||||||
|
# "JhEU414EIaDvAz8ki5DSqw" ## DeviceEnclosureColor
|
||||||
|
# "LTI8wHvEYKy8zR1IXBW1uQ" ## ArtworkTraitDisplayGamut
|
||||||
|
"LeSRsiLoJCMhjn6nd6GWbQ": vals['FirmwareVersion'], # FirmwareVersion
|
||||||
|
# "NUYAz1eq3Flzt7ZQxXC/ng" ## FirstPartyLaunchTimeLimitScale
|
||||||
|
# "NaA/zJV7myg2w4YNmSe4yQ" ## WifiChipset
|
||||||
|
# "Nzu4E/VsXjEIa83CkRdZrQ" ## Image4CryptoHashMethod
|
||||||
|
# "PdprWthPO6YyrO6p1vLRgQ" ## VolumeDownButtonCGRect
|
||||||
|
# "QbQzuIbef01P4JeoL9EmKg" ## DeviceSceneUpdateTimeLimitScale
|
||||||
|
# "SbXytSPZXB1jQ8GLZOxCPw" ## VolumeDownButtonNormalizedCGRect
|
||||||
|
# "TZ/0j62wM3D0CuRt+Nc/Lw" ## ProductHash
|
||||||
|
# "VuGdqp8UBpi9vPWHlPluVQ" ## CompatibleAppVariants
|
||||||
|
# "WPEkba78QeFFU/wgqpOx6w" ## UserIntentPhysicalButtonNormalizedCGRect
|
||||||
|
"Z/dqyWS6OZTRy10UcmUAhw": model_name, # marketing-name
|
||||||
|
# "aD51uqjUwgRKjAC04BCrxg" ## VolumeUpButtonCGRect
|
||||||
|
"bbtR9jQx50Fv5Af/affNtA": model_name, # PhysicalHardwareNameString
|
||||||
|
# "c7fCSBIbX1mFaRoKT5zTIw" ## WifiVendor
|
||||||
|
# "emXA9B552rnSoI7xXE91DA" ## DeviceLaunchTimeLimitScale
|
||||||
|
# "gBw7IWiBnLHaA+lBrZBgWw" ## CameraMaxBurstLength
|
||||||
|
# "gD8SNRcHQeIxCAvsp+2vjA" ## WSKU
|
||||||
|
"h63QSdBCiT/z0WU6rdQv6Q": region[0], # RegionCode
|
||||||
|
"h9jDsbgj7xIVeIQ8S3/X3Q": prod, # ProductType
|
||||||
|
"ivIu8YTDnBSrYv/SN4G8Ag": vals['ProductName'], # ProductName
|
||||||
|
# "k+KTni1jrwErpcDMEnn3aw" ## MobileDeviceMinimumVersion
|
||||||
|
"k7QIBwZJJOVw+Sej/8h8VA": vals['CPUArchitecture'], # CPUArchitecture
|
||||||
|
"mZfUC7qo4pURNhyMHZ62RQ": build, # BuildVersion
|
||||||
|
"mumHZHMLEfAuTkkd28fHlQ": vals['DeviceColor'], # DeviceColor
|
||||||
|
# "nSo8opze5rFk+EdBoR6tBw" ## RestrictedCountryCodes
|
||||||
|
# "oBbtJ8x+s1q0OkaiocPuog" ## MainScreenStaticInfo
|
||||||
|
"oPeik/9e8lQWMszEjbPzng": { # ArtworkTraits
|
||||||
|
"ArtworkDeviceIdiom": get_idiom(device_class),
|
||||||
|
"ArtworkDeviceProductDescription": model_name,
|
||||||
|
# "ArtworkDeviceScaleFactor"
|
||||||
|
# "ArtworkDeviceSubType"
|
||||||
|
# "ArtworkDisplayGamut"
|
||||||
|
# "ArtworkDynamicDisplayMode"
|
||||||
|
# "CompatibleDeviceFallback"
|
||||||
|
# "DevicePerformanceMemoryClass"
|
||||||
|
# "GraphicsFeatureSetClass"
|
||||||
|
# "GraphicsFeatureSetFallbacks"
|
||||||
|
},
|
||||||
|
"oYicEKzVTz4/CxxE05pEgQ": vals['HardwareModel'], # TargetSubType
|
||||||
|
# "pB5sZVvnp+QjZQtt2KfQvA" ## BasebandChipset
|
||||||
|
# "pMeQxE5szZTjLMk10TisDQ" ## UserIntentPhysicalButtonCGRect
|
||||||
|
"qNNddlUK+B/YlooNoymwgA": vals['ProductVersion'], # ProductVersion
|
||||||
|
# "qwXfFvH5jPXPxrny0XuGtQ" ## BuildID
|
||||||
|
# "rJkMAGeVLdhP5+10G5hVcA" ## UserIntentPhysicalButtonCGRectString
|
||||||
|
"rkqlwPcRHwixY4gapPjanw": device_class, # DeviceName
|
||||||
|
"vme9Buk6XiWFCXoHApxNFA": device_class, # MarketingDeviceFamilyName
|
||||||
|
# "wYMBabAO8VguyDDVgCsPdg" ## WiFiChipsetRevision
|
||||||
|
"xUHcyT2/HE8oi/4LaOI+Sw": vals['PartitionType'], # PartitionType
|
||||||
|
# "xojWvSTQWT7Icy+xfVzjAQ" ## FramebufferIdentifier
|
||||||
|
# "yUqD8AXE/c+IggkuYoxrqA" ## ChromeIdentifier
|
||||||
|
# "ybGkijAwLTwevankfVzsDQ" ## MainScreenCanvasSizes
|
||||||
|
"yjP8DgByZmLk04Ta6f6DWQ": "iOS", # PartitionStyle
|
||||||
|
"zHeENZu+wbg7PUprwNwBWg": vals['RegionInfo'], # RegionInfo
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
# "CacheData": b"",
|
||||||
|
"CacheExtra": cache_extra,
|
||||||
|
# "CacheUUID": "",
|
||||||
|
"CacheVersion": build # build number
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user