x1ongzhu преди 1 година
родител
ревизия
7691c081bc
променени са 14 файла, в които са добавени 36 реда и са изтрити 452 реда
  1. 1 0
      .gitignore
  2. 0 16
      custom.pif.json
  3. 29 7
      index.js
  4. 1 0
      package.json
  5. 0 7
      pif-gen-vendor-results.txt
  6. 0 0
      scripts/gen_pif_custom.sh
  7. 0 0
      scripts/gen_pif_vendor.sh
  8. 0 0
      scripts/my_migrate.sh
  9. 0 0
      scripts/pif-gen-vendor-json-files.sh
  10. 0 0
      scripts/pif-test-json-files.sh
  11. 0 398
      vendor-build.prop
  12. 0 12
      vendor.pif.json
  13. 0 12
      vendor.pif.json.bak
  14. 5 0
      yarn.lock

+ 1 - 0
.gitignore

@@ -1,3 +1,4 @@
 node_modules
 .vscode
 .DS_Store
+dist

+ 0 - 16
custom.pif.json

@@ -1,16 +0,0 @@
-{
-    "MANUFACTURER": "samsung",
-    "MODEL": "SM-A205U1",
-    "FINGERPRINT": "samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UESDCVI1:user/release-keys",
-    "BRAND": "samsung",
-    "PRODUCT": "a20pue",
-    "DEVICE": "a20p",
-    "RELEASE": "11",
-    "ID": "RP1A.200720.012",
-    "INCREMENTAL": "A205U1UESDCVI1",
-    "TYPE": "user",
-    "TAGS": "release-keys",
-    "DEVICE_INITIAL_SDK_INT": "28",
-    "*.build.id": "RP1A.200720.012",
-    "*api_level": "28"
-}

+ 29 - 7
index.js

@@ -5,7 +5,7 @@ import tmp from "tmp"
 import fs from "fs"
 import path from "path"
 import { execFileSync } from "child_process"
-
+import printf from "printf"
 async function fetchModels() {
     console.log("fetching models")
     const html = await pRetry(
@@ -128,7 +128,7 @@ async function fetchProps(model, firmware) {
     console.log(tmpDir.name)
 
     fs.copyFileSync(
-        "gen_pif_custom.sh",
+        path.join("scripts", "gen_pif_custom.sh"),
         path.join(tmpDir.name, "gen_pif_custom.sh")
     )
     fs.chmodSync(path.join(tmpDir.name, "gen_pif_custom.sh"), "755")
@@ -139,7 +139,11 @@ async function fetchProps(model, firmware) {
     rawProps.split("\n").forEach(line => {
         if (line.includes(".vendor.")) {
             vendorBuildProp += line + "\n"
-        } else if (line.includes(".product.")) {
+        } else if (
+            line.includes(".product.product.") ||
+            line.includes(".product.build.") ||
+            line.includes(".product.vndk.")
+        ) {
             productBuildProp += line + "\n"
         } else {
             buildProp += line + "\n"
@@ -156,11 +160,29 @@ async function fetchProps(model, firmware) {
         productBuildProp
     )
 
-    execFileSync(path.join(tmpDir.name, "gen_pif_custom.sh"), [], {
-        cwd: tmpDir.name
-    })
+    try {
+        execFileSync(path.join(tmpDir.name, "gen_pif_custom.sh"), [], {
+            cwd: tmpDir.name
+        })
+    } catch (e) {}
+
+    const pifPath = path.join(tmpDir.name, "custom.pif.json")
+    if (fs.existsSync(pifPath)) {
+        fs.copyFileSync(
+            pifPath,
+            path.join(
+                "dist",
+                `${printf("%05d", model.id)}_${printf(
+                    "%05d",
+                    firmware.id
+                )}.json`
+            )
+        )
+    }
+}
+if (!fs.existsSync("dist")) {
+    fs.mkdirSync("dist")
 }
-
 const models = await fetchModels()
 const model = models[parseInt(Math.random() * models.length)]
 const firmwares = await fetchFirmwares(model)

+ 1 - 0
package.json

@@ -3,6 +3,7 @@
         "axios": "^1.7.2",
         "node-html-parser": "^6.1.13",
         "p-retry": "^6.2.0",
+        "printf": "^0.6.1",
         "tmp": "^0.2.3"
     },
     "type": "module"

+ 0 - 7
pif-gen-vendor-results.txt

@@ -1,7 +0,0 @@
-PID=5333
-script_path=.
-test_path=.
-gen_script=./gen_pif_vendor.sh
-
-folders=0, created=0
-

+ 0 - 0
gen_pif_custom.sh → scripts/gen_pif_custom.sh


+ 0 - 0
gen_pif_vendor.sh → scripts/gen_pif_vendor.sh


+ 0 - 0
my_migrate.sh → scripts/my_migrate.sh


+ 0 - 0
pif-gen-vendor-json-files.sh → scripts/pif-gen-vendor-json-files.sh


+ 0 - 0
pif-test-json-files.sh → scripts/pif-test-json-files.sh


+ 0 - 398
vendor-build.prop

@@ -1,398 +0,0 @@
-#
-# ADDITIONAL_DEFAULT_PROPERTIES
-#
-ro.actionable_compatible_property.enabled=true
-ro.postinstall.fstab.prefix=/system
-ro.oem_unlock_supported=1
-ro.secure=1
-security.perf_harden=1
-ro.adb.secure=1
-ro.allow.mock.location=0
-ro.debuggable=0
-debug.atrace.tags.enableflags=0
-persist.traced.enable=1
-com.samsung.speg.disable=true
-dalvik.vm.image-dex2oat-Xms=64m
-dalvik.vm.image-dex2oat-Xmx=64m
-dalvik.vm.dex2oat-Xms=64m
-dalvik.vm.dex2oat-Xmx=512m
-dalvik.vm.usejit=true
-dalvik.vm.usejitprofiles=true
-dalvik.vm.dexopt.secondary=true
-dalvik.vm.appimageformat=lz4
-ro.dalvik.vm.native.bridge=0
-pm.dexopt.first-boot=quicken
-pm.dexopt.boot=verify
-pm.dexopt.install=speed-profile
-pm.dexopt.bg-dexopt=speed-profile
-pm.dexopt.ab-ota=speed-profile
-pm.dexopt.inactive=verify
-pm.dexopt.shared=speed
-dalvik.vm.dex2oat-updatable-bcp-packages-file=/system/etc/updatable-bcp-packages.txt
-dalvik.vm.dex2oat-resolve-startup-strings=true
-dalvik.vm.dex2oat-max-image-block-size=524288
-dalvik.vm.minidebuginfo=true
-dalvik.vm.dex2oat-minidebuginfo=true
-ro.iorapd.enable=false
-ro.multisim.simslotcount=1
-ro.telephony.default_cdma_sub=0
-ro.telephony.iwlan_operation_mode=legacy
-persist.radio.sib16_support=1
-restore.feature.use_samsung_smart_switch_flow=1
-setupwizard.feature.enable_stencil_partner_customization=1
-ro.com.google.clientidbase=android-samsung-ss
-ro.setupwizard.rotation_locked=false
-setupwizard.theme=glif_v3_light
-ro.setupwizard.wifi_on_exit=false
-ro.setupwizard.mode=OPTIONAL
-ro.opa.eligible_device=true
-ro.com.google.gmsversion=11_202106
-persist.sys.usb.config=none
-#
-# ADDITIONAL VENDOR DEFAULT PROPERTIES
-#
-ro.vndk.version=30
-persist.sys.usb.config=mtp
-ro.zygote=zygote64_32
-ro.logd.size.stats=64K
-log.tag.stats_log=I
-ro.vendor.multisim.simslotcount=1
-ro.radio.noril=no
-ro.vendor.epdg.support=true
-ro.bionic.arch=arm64
-ro.bionic.cpu_variant=generic
-ro.bionic.2nd_arch=arm
-ro.bionic.2nd_cpu_variant=cortex-a53
-persist.sys.dalvik.vm.lib.2=libart.so
-dalvik.vm.isa.arm64.variant=generic
-dalvik.vm.isa.arm64.features=default
-dalvik.vm.isa.arm.variant=cortex-a53
-dalvik.vm.isa.arm.features=default
-
-# begin common build properties
-# autogenerated by build/make/tools/buildinfo_common.sh
-ro.system.build.date=Tue Sep 13 13:59:28 KST 2022
-ro.system.build.date.utc=1663045168
-ro.system.build.fingerprint=samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UESDCVI1:user/release-keys
-ro.system.build.id=RP1A.200720.012
-ro.system.build.tags=release-keys
-ro.system.build.type=user
-ro.system.build.version.incremental=A205U1UESDCVI1
-ro.system.build.version.release=11
-ro.system.build.version.release_or_codename=11
-ro.system.build.version.sdk=30
-ro.product.system.brand=samsung
-ro.product.system.device=a20p
-ro.product.system.manufacturer=samsung
-ro.product.system.model=SM-A205U1
-ro.product.system.name=a20pue
-# end common build properties
-# begin build properties
-# autogenerated by buildinfo.sh
-ro.build.id=RP1A.200720.012
-ro.build.display.id=RP1A.200720.012.A205U1UESDCVI1
-ro.build.keys=test-keys
-ro.build.display_build_number=true
-ro.build.version.incremental=A205U1UESDCVI1
-ro.build.date=Tue Sep 13 13:59:28 KST 2022
-ro.build.date.utc=1663045168
-ro.build.version.sdk=30
-ro.build.version.preview_sdk=0
-ro.build.version.preview_sdk_fingerprint=REL
-ro.build.version.codename=REL
-ro.build.version.all_codenames=REL
-ro.build.version.release=11
-ro.build.version.release_or_codename=11
-ro.build.version.security_patch=2022-09-01
-ro.build.version.base_os=samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UEU9CUH3:user/release-keys
-ro.build.version.security_index=1
-ro.build.version.min_supported_target_sdk=23
-ro.build.type=user
-ro.build.user=dpi
-ro.build.host=SWDK6309
-ro.build.tags=release-keys
-ro.build.flavor=a20pue-user
-ro.build.system_root_image=true
-ro.build.tf_modelnumber=SM-A205U1
-# ro.product.cpu.abi and ro.product.cpu.abi2 are obsolete,
-# use ro.product.cpu.abilist instead.
-ro.product.cpu.abi=arm64-v8a
-ro.product.cpu.abilist=arm64-v8a,armeabi-v7a,armeabi
-ro.product.cpu.abilist32=armeabi-v7a,armeabi
-ro.product.cpu.abilist64=arm64-v8a
-ro.product.locale=en-US
-ro.wifi.channels=
-# ro.build.product is obsolete; use ro.product.device
-# ro.product.name/ro.product.device should use PRODUCT_MODEL in case of jpn model
-ro.build.product=a20p
-# Do not try to parse description or thumbprint
-ro.build.description=a20pue-user 11 RP1A.200720.012 A205U1UESDCVI1 release-keys
-# Samsung Specific Properties
-ro.build.PDA=A205U1UESDCVI1
-ro.build.sw_version=A205U1UESDCVI1
-ro.build.official.release=true
-ro.build.2ndbrand=false
-ro.config.rm_preload_enabled=1
-ro.build.changelist=21984420
-ro.product_ship=true
-ro.user_trial=FALSE
-ro.hardware.chipname=exynos7904
-ro.build.characteristics=phone
-# end build properties
-
-#
-# from device/samsung/a20p/system.prop
-#
-#
-# system.prop for universal7885
-#
-
-ro.arch=exynos7904
-ro.kernel.qemu=0
-ro.kernel.qemu.gles=1
-persist.demo.hdmirotationlock=false
-
-#Enable S.LSI USB settings
-dev.usbsetting.embedded=on
-
-#RILD debug level setting
-ro.debug_level=0x494d
-
-#Phone early start enable flag
-sys.config.phone_start_early=true
-
-#for DTV FullSeg SD Recording..
-oneseg.extSdCard.path=/storage/extSdCard
-
-#Status of softsim
-persist.sys.softsim.status=default,default
-persist.sys.softsim.netmode=3g
-persist.sys.softsim.type=default
-
-# Set csc support in OMX
-# If not set or set to 0, OMX will only use BT.601 colorspace.
-# Set to 1 if and only if BOARD_USES_EXYNOS_DATASPACE_FEATURE := true in BoardConfig.mk
-ro.vendor.cscsupported=1
-
-#for DTV FullSeg SD Recording..
-oneseg.extSdCard.path=/storage/extSdCard
-
-
-
-# end of device/samsung/a20p/system.prop
-
-#
-# ADDITIONAL_BUILD_PROPERTIES
-#
-ro.product.first_api_level=28
-ro.treble.enabled=true
-ro.build.version.sem=3001
-ro.build.version.sep=120100
-persist.log.semlevel=0xFFFFFF00
-persist.log.level=0xFFFFFFFF
-ro.system.build.version.sehi=3003
-ro.build.selinux=1
-ro.config.iccc_version=3.0
-ro.config.dmverity=G
-ro.config.tima=1
-ro.config.timaversion=3.0
-ro.config.timaversion_info=Knox3.4_S.R.R
-ro.config.knox.ucm=1
-ro.config.knox=v30
-ro.kernel.qemu=0
-net.bt.name=Android
-
-ro.product.first_api_level=28
-ro.vendor.build.security_patch=
-ro.vendor.product.cpu.abilist=arm64-v8a,armeabi-v7a,armeabi
-ro.vendor.product.cpu.abilist32=armeabi-v7a,armeabi
-ro.vendor.product.cpu.abilist64=arm64-v8a
-ro.product.board=exynos7904
-ro.board.platform=universal7904
-ro.hwui.use_vulkan=
-# begin common build properties
-# autogenerated by build/make/tools/buildinfo_common.sh
-ro.vendor.build.date=Tue Sep 13 13:59:28 KST 2022
-ro.vendor.build.date.utc=1663045168
-ro.vendor.build.fingerprint=samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UESDCVI1:user/release-keys
-ro.vendor.build.id=RP1A.200720.012
-ro.vendor.build.tags=release-keys
-ro.vendor.build.type=user
-ro.vendor.build.version.incremental=A205U1UESDCVI1
-ro.vendor.build.version.release=11
-ro.vendor.build.version.release_or_codename=11
-ro.vendor.build.version.sdk=30
-ro.product.vendor.brand=samsung
-ro.product.vendor.device=a20p
-ro.product.vendor.manufacturer=samsung
-ro.product.vendor.model=SM-A205U1
-ro.product.vendor.name=a20pue
-# end common build properties
-#
-# BOOTIMAGE_BUILD_PROPERTIES
-#
-ro.bootimage.build.date=Tue Sep 13 13:59:28 KST 2022
-ro.bootimage.build.date.utc=1663045168
-ro.bootimage.build.fingerprint=samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UESDCVI1:user/release-keys
-#
-# ADDITIONAL VENDOR BUILD PROPERTIES
-#
-net.dns1=8.8.8.8
-net.dns2=8.8.4.4
-persist.demo.hdmirotationlock=false
-dev.usbsetting.embedded=on
-ro.surface_flinger.vsync_event_phase_offset_ns=0
-ro.surface_flinger.vsync_sf_event_phase_offset_ns=0
-ro.surface_flinger.max_frame_buffer_acquired_buffers=3
-ro.surface_flinger.running_without_sync_framework=false
-debug.sf.disable_backpressure=1
-wifi.interface=wlan0
-ro.opengles.version=196610
-debug.slsi_platform=1
-debug.hwc.winupdate=1
-dalvik.vm.heapstartsize=8m
-dalvik.vm.heapgrowthlimit=192m
-dalvik.vm.heapsize=512m
-dalvik.vm.heaptargetutilization=0.75
-dalvik.vm.heapminfree=512k
-dalvik.vm.heapmaxfree=8m
-security.ASKS.policy_version=00000000
-security.ASKS.version=0
-security.ASKS.time_value=00000000
-security.ASKS.rufs_enable=true
-security.ADP.version=0
-security.ADP.policy_version=00000000
-sys.config.activelaunch_enable=true
-ro.smps.enable=false
-ro.hardware.keystore=mdfpp
-ro.security.keystore.keytype=sak,gak
-security.securehw.available=false
-security.securenvm.available=false
-ro.apex.updatable=false
-sys.config.hardcoder.enable=false
-sys.config.ibs.enable=false
-dalvik.vm.lockprof.threshold=500
-ro.control_privapp_permissions=enforce
-ro.carrier=unknown
-telephony.lteOnCdmaDevice=0
-vendor.sec.rild.libpath=/vendor/lib64/libsec-ril.so
-persist.radio.multisim.config=ss
-ro.security.cass.feature=1
-ro.security.vpnpp.ver=2.2
-ro.security.vpnpp.release=1.0
-ro.config.ringtone=Over_the_Horizon.ogg
-ro.config.notification_sound=Spaceline.ogg
-ro.config.alarm_alert=Homecoming.ogg
-ro.config.media_sound=Media_preview_Touch_the_light.ogg
-ro.config.ringtone_2=Atomic_Bell.ogg
-ro.config.notification_sound_2=Signal.ogg
-ro.config.vc_call_vol_steps=8
-ro.build.scafe.version=2021A
-ro.sf.lcd_density=280
-ro.slmk.dha_th_rate=2.0
-ro.slmk.add_bonusEFK=2
-ro.slmk.v_bonusEFK=20480
-ro.slmk.dha_lmk_scale=0.2425
-ro.slmk.dha_cached_min=3
-ro.slmk.dha_cached_max=6
-ro.slmk.dha_empty_min=6
-ro.slmk.dha_empty_init=16
-ro.slmk.dha_empty_max=16
-ro.slmk.2nd.dha_cached_min=6
-ro.slmk.2nd.dha_cached_max=12
-ro.slmk.2nd.dha_empty_min=6
-ro.slmk.2nd.dha_empty_init=20
-ro.slmk.2nd.dha_empty_max=20
-ro.slmk.dha_2ndprop_thMB=2048
-ro.slmk.fha_enable=true
-ro.slmk.enable_userspace_lmk=true
-ro.slmk.kill_heaviest_task=true
-ro.slmk.custom_sw_limit=225
-ro.slmk.2nd.custom_sw_limit=225
-ro.slmk.2nd.upgrade_pressure=55
-ro.slmk.custom_tm_limit=1000
-ro.slmk.2nd.freelimit_val=10
-ro.slmk.enable_reentry_lmk=true
-persist.sys.kpm_onoff=false
-ro.slmk.chimera_strategy_3gb=560,8,7,1098
-persist.sys.zram.daily_quota_remain=131072
-ro.sys.kernelmemory.nandswap.daily_quota=131072
-ro.sys.kernelmemory.nandswap.daily_quota_limit=393216
-ro.config.pageboost.vramdisk.bootfile.enabled=true
-ro.config.pageboost.vramdisk.minimize=true
-ro.frp.pst=/dev/block/persistent
-ro.config.systemaudiodebug=abox
-ro.camera.notify_nfc=1
-
-ro.odm.product.cpu.abilist=arm64-v8a,armeabi-v7a,armeabi
-ro.odm.product.cpu.abilist32=armeabi-v7a,armeabi
-ro.odm.product.cpu.abilist64=arm64-v8a
-# begin common build properties
-# autogenerated by build/make/tools/buildinfo_common.sh
-ro.odm.build.date=Tue Sep 13 13:59:28 KST 2022
-ro.odm.build.date.utc=1663045168
-ro.odm.build.fingerprint=samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UESDCVI1:user/release-keys
-ro.odm.build.id=RP1A.200720.012
-ro.odm.build.tags=release-keys
-ro.odm.build.type=user
-ro.odm.build.version.incremental=A205U1UESDCVI1
-ro.odm.build.version.release=11
-ro.odm.build.version.release_or_codename=11
-ro.odm.build.version.sdk=30
-ro.product.odm.brand=samsung
-ro.product.odm.device=a20p
-ro.product.odm.manufacturer=samsung
-ro.product.odm.model=SM-A205U1
-ro.product.odm.name=a20pue
-# end common build properties
-#
-# ADDITIONAL ODM BUILD PROPERTIES
-#
-
-# begin common build properties
-# autogenerated by build/make/tools/buildinfo_common.sh
-ro.product.build.date=Tue Sep 13 13:59:28 KST 2022
-ro.product.build.date.utc=1663045168
-ro.product.build.fingerprint=samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UESDCVI1:user/release-keys
-ro.product.build.id=RP1A.200720.012
-ro.product.build.tags=release-keys
-ro.product.build.type=user
-ro.product.build.version.incremental=A205U1UESDCVI1
-ro.product.build.version.release=11
-ro.product.build.version.release_or_codename=11
-ro.product.build.version.sdk=30
-ro.product.product.brand=samsung
-ro.product.product.device=a20p
-ro.product.product.manufacturer=samsung
-ro.product.product.model=SM-A205U1
-ro.product.product.name=a20pue
-# end common build properties
-#
-# ADDITIONAL PRODUCT PROPERTIES
-#
-ro.build.characteristics=phone
-
-# begin common build properties
-# autogenerated by build/make/tools/buildinfo_common.sh
-ro.system_ext.build.date=Tue Sep 13 13:59:28 KST 2022
-ro.system_ext.build.date.utc=1663045168
-ro.system_ext.build.fingerprint=samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UESDCVI1:user/release-keys
-ro.system_ext.build.id=RP1A.200720.012
-ro.system_ext.build.tags=release-keys
-ro.system_ext.build.type=user
-ro.system_ext.build.version.incremental=A205U1UESDCVI1
-ro.system_ext.build.version.release=11
-ro.system_ext.build.version.release_or_codename=11
-ro.system_ext.build.version.sdk=30
-ro.product.system_ext.brand=samsung
-ro.product.system_ext.device=a20p
-ro.product.system_ext.manufacturer=samsung
-ro.product.system_ext.model=SM-A205U1
-ro.product.system_ext.name=a20pue
-# end common build properties
-#
-# ADDITIONAL SYSTEM_EXT BUILD PROPERTIES
-#
-#
-# RECOVERY UI BUILD PROPERTIES
-#

+ 0 - 12
vendor.pif.json

@@ -1,12 +0,0 @@
-{
-  "MANUFACTURER": "samsung",
-  "MODEL": "SM-A205U1",
-  "FINGERPRINT": "samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UESDCVI1:user/release-keys",
-  "BRAND": "samsung",
-  "PRODUCT": "a20pue",
-  "DEVICE": "a20p",
-  "SECURITY_PATCH": "2022-09-01",
-  "VNDK_VERSION": "30",
-  "FIRST_API_LEVEL": "28",
-  "DEVICE_INITIAL_SDK_INT": "30"
-}

+ 0 - 12
vendor.pif.json.bak

@@ -1,12 +0,0 @@
-{
-  "MANUFACTURER": "samsung",
-  "MODEL": "SM-A205U1",
-  "FINGERPRINT": "samsung/a20pue/a20p:11/RP1A.200720.012/A205U1UESDCVI1:user/release-keys",
-  "BRAND": "samsung",
-  "PRODUCT": "a20pue",
-  "DEVICE": "a20p",
-  "SECURITY_PATCH": "2022-09-01",
-  "VNDK_VERSION": "30",
-  "FIRST_API_LEVEL": "28",
-  "DEVICE_INITIAL_SDK_INT": "30"
-}

+ 5 - 0
yarn.lock

@@ -149,6 +149,11 @@ p-retry@^6.2.0:
     is-network-error "^1.0.0"
     retry "^0.13.1"
 
+printf@^0.6.1:
+  version "0.6.1"
+  resolved "https://registry.npmmirror.com/printf/-/printf-0.6.1.tgz#b9afa3d3b55b7f2e8b1715272479fc756ed88650"
+  integrity sha512-is0ctgGdPJ5951KulgfzvHGwJtZ5ck8l042vRkV6jrkpBzTmb/lueTqguWHy2JfVA+RY6gFVlaZgUS0j7S/dsw==
+
 proxy-from-env@^1.1.0:
   version "1.1.0"
   resolved "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"