v4.0.0-v51

This commit is contained in:
Didgeridoohan 2019-04-05 23:10:02 +02:00 committed by GitHub
parent c4615b39a0
commit 1409f398ee
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 231 additions and 327 deletions

View File

@ -1,161 +1,10 @@
#!/sbin/sh #!/sbin/sh
########################################################################################## # This is a dummy file that should be replaced with a proper installer script
#
# Magisk Module Template Install Script
# by topjohnwu
#
##########################################################################################
TMPDIR=/dev/tmp # If you are creating a module locally for personal usage or testing,
INSTALLER=$TMPDIR/install # download the script in the following URL:
# Always mount under tmp # https://github.com/topjohnwu/Magisk/blob/master/scripts/module_installer.sh
MOUNTPATH=$TMPDIR/magisk_img # And replace this script with the downloaded script
# Default permissions # Error, this script should always be replaced
umask 022 exit 1
# Initial cleanup
rm -rf $TMPDIR 2>/dev/null
mkdir -p $INSTALLER
# echo before loading util_functions
ui_print() { echo "$1"; }
require_new_magisk() {
ui_print "*******************************"
ui_print " Please install Magisk v17.0+! "
ui_print "*******************************"
exit 1
}
##########################################################################################
# Environment
##########################################################################################
OUTFD=$2
ZIP=$3
mount /data 2>/dev/null
# Load utility functions
if [ -f /data/adb/magisk/util_functions.sh ]; then
. /data/adb/magisk/util_functions.sh
elif [ -f /data/magisk/util_functions.sh ]; then
NVBASE=/data
. /data/magisk/util_functions.sh
else
require_new_magisk
fi
# Use alternative image if in BOOTMODE
$BOOTMODE && IMG=$NVBASE/magisk_merge.img
# Preperation for flashable zips
setup_flashable
# Mount partitions
mount_partitions
# Detect version and architecture
api_level_arch_detect
# You can get the Android API version from $API, the CPU architecture from $ARCH
# Useful if you are creating Android version / platform dependent mods
# Setup busybox and binaries
$BOOTMODE && boot_actions || recovery_actions
##########################################################################################
# Preparation
##########################################################################################
# Extract common files
unzip -o "$ZIP" module.prop config.sh 'common/*' -d $INSTALLER >&2
[ ! -f $INSTALLER/config.sh ] && abort "! Unable to extract zip file!"
# Load configurations
. $INSTALLER/config.sh
# Check the installed magisk version
MIN_VER=`grep_prop minMagisk $INSTALLER/module.prop`
[ ! -z $MAGISK_VER_CODE -a $MAGISK_VER_CODE -ge $MIN_VER ] || require_new_magisk
MODID=`grep_prop id $INSTALLER/module.prop`
MODPATH=$MOUNTPATH/$MODID
# Print mod name
print_modname
# Please leave this message in your flashable zip for credits :)
ui_print "******************************"
ui_print "Powered by Magisk (@topjohnwu)"
ui_print "******************************"
##########################################################################################
# Install
##########################################################################################
# Get the variable reqSizeM. Use your own method to determine reqSizeM if needed
request_zip_size_check "$ZIP"
# This function will mount $IMG to $MOUNTPATH, and resize the image based on $reqSizeM
mount_magisk_img
# Start module installation log
log_start
# Check for fresh Magisk installation
install_check
# Create mod paths
rm -rf $MODPATH 2>/dev/null
mkdir -p $MODPATH
# Extract files to system. Use your own method if needed
ui_print "- Extracting module files"
unzip -o "$ZIP" 'system/*' -d $MODPATH >&2
# Remove placeholder
rm -f $MODPATH/system/placeholder 2>/dev/null
# Handle replace folders
for TARGET in $REPLACE; do
mktouch $MODPATH$TARGET/.replace
done
# Auto Mount
$AUTOMOUNT && touch $MODPATH/auto_mount
# prop files
$PROPFILE && cp -af $INSTALLER/common/system.prop $MODPATH/system.prop
# Module info
cp -af $INSTALLER/module.prop $MODPATH/module.prop
if $BOOTMODE; then
# Update info for Magisk Manager
mktouch /sbin/.core/img/$MODID/update
cp -af $INSTALLER/module.prop /sbin/.core/img/$MODID/module.prop
fi
# post-fs-data mode scripts
$POSTFSDATA && cp -af $INSTALLER/common/post-fs-data.sh $MODPATH/post-fs-data.sh
# service mode scripts
$LATESTARTSERVICE && cp -af $INSTALLER/common/service.sh $MODPATH/service.sh
# Module script installation
script_install
ui_print "- Setting permissions"
set_permissions
##########################################################################################
# Finalizing
##########################################################################################
# Unmount magisk image and shrink if possible
unmount_magisk_img
$BOOTMODE || recovery_cleanup
rm -rf $TMPDIR
ui_print "- Done"
exit 0

View File

@ -63,8 +63,8 @@ Keep reading below to find out more details about the different parts of the mod
## Prerequisites ## Prerequisites
- Magisk v17+. - Magisk v19+.
- Busybox, preferably @osm0sis' - Busybox, preferably @osm0sis' (installable from the Magisk Manager Downloads).
## Installation ## Installation
@ -78,6 +78,8 @@ After installing the module and rebooting, run the command `props` in a terminal
You can also run the command with options. Use -h for details. You can also run the command with options. Use -h for details.
If you want further details as to what this module does and can do, keep reading. To get an overview of what is available, take a look at the index above. If experiencing issues, take a look at the part about [Issues, support,etc](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#issues-support-etc), and don't forget to provide [logs](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#logs) when asking for help.
## Spoofing device's fingerprint to pass the ctsProfile check ## Spoofing device's fingerprint to pass the ctsProfile check
If your device can't pass SafetyNet fully, the CTS profile check fails while basic integrity passes, that means MagiskHide is working on your device but Google doesn't recognise your device as being certified (if basic integrity fails there is nothing this module can do, please check [I can't pass the basicIntegrity check](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#i-cant-pass-the-basicintegrity-check)). If your device can't pass SafetyNet fully, the CTS profile check fails while basic integrity passes, that means MagiskHide is working on your device but Google doesn't recognise your device as being certified (if basic integrity fails there is nothing this module can do, please check [I can't pass the basicIntegrity check](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config/blob/master/README.md#i-cant-pass-the-basicintegrity-check)).
@ -176,7 +178,7 @@ Just run the `props` command and the list will be updated automatically. Use the
If you already have a device fingerprint set by the module, and it has been updated in the current fingerprints list, it will be automatically updated when the prints list gets an update. Just reboot to apply. This function can be turned of in the script settings (see ["Prop script settings"](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config#prop-script-settings) below) If you already have a device fingerprint set by the module, and it has been updated in the current fingerprints list, it will be automatically updated when the prints list gets an update. Just reboot to apply. This function can be turned of in the script settings (see ["Prop script settings"](https://github.com/Magisk-Modules-Repo/MagiskHide-Props-Config#prop-script-settings) below)
**_Current fingerprints list version - v50_** **_Current fingerprints list version - v51_**
## Please add support for device X ## Please add support for device X
@ -359,9 +361,17 @@ Any previous releases can be found on [GitHub](https://github.com/Magisk-Modules
Releases up until v2.4.0 are compatible with Magisk v15 to v16.7. Releases up until v2.4.0 are compatible with Magisk v15 to v16.7.
Releases from v2.4.1 are compatible with Magisk v17+. Releases from v2.4.1 are compatible with Magisk v17+.
Releases from v4.0.0 are compatible with Magisk v19+.
## Changelog ## Changelog
### v4.0.0
- Updated to the new module template. Otherwise the same as v3.5.2, apart from some installation cleanup.
- New (Samsung Galaxy A6 Plus and Tab S3, Xiaomi Mi Note 3) and updated (Essential PH-1, Google Pixel and Pixel XL 1-3 and Pixel C, OnePlus 5T and Xiaomi Mi A2 and Pocophone F1) fingerprints added. List at v51.
### v3.5.2
- Fixed a bug where automatic update of the applied fingerprint during installation would cause the installation to fail.
### v3.5.1 ### v3.5.1
- Fix a few bugs causing props not setting properly at boot in some cases when using the system.prop boot stage. - Fix a few bugs causing props not setting properly at boot in some cases when using the system.prop boot stage.
- Moved ro.build.version.security_patch to late_start service by default, so as not to cause issues for devices with Keymaster 4 (possible source of bootloops). Thank you @Nebrassy. - Moved ro.build.version.security_patch to late_start service by default, so as not to cause issues for devices with Keymaster 4 (possible source of bootloops). Thank you @Nebrassy.
@ -599,7 +609,7 @@ Releases from v2.4.1 are compatible with Magisk v17+.
## Current fingerprints list ## Current fingerprints list
### List v50 ### List v51
- Asus Zenfone 2 Laser (6.0.1) - Asus Zenfone 2 Laser (6.0.1)
- Asus Zenfone 4 Max (7.1.1) - Asus Zenfone 4 Max (7.1.1)
- Asus Zenfone Max M1 (8.0.0) - Asus Zenfone Max M1 (8.0.0)

View File

@ -11,8 +11,7 @@ BOOTSTAGE="post"
. $MODPATH/util_functions.sh . $MODPATH/util_functions.sh
# Variables # Variables
IMGPATH=$(dirname "$MODPATH") MODULESPATH=$(dirname "$MODPATH")
COREPATH=$(dirname "$IMGPATH")
# Start logging # Start logging
log_start log_start
@ -44,16 +43,13 @@ if [ ! -f "$LATEFILE" ] || [ -f "$RESETFILE" ]; then
fi fi
log_handler "$RSTTXT late_start service boot script (${LATEFILE})." log_handler "$RSTTXT late_start service boot script (${LATEFILE})."
cp -af $MODPATH/propsconf_late $LATEFILE >> $LOGFILE 2>&1 cp -af $MODPATH/propsconf_late $LATEFILE >> $LOGFILE 2>&1
chmod -v 755 $LATEFILE >> $LOGFILE 2>&1
placeholder_update $LATEFILE COREPATH CORE_PLACEHOLDER "$COREPATH"
placeholder_update $LATEFILE CACHELOC CACHE_PLACEHOLDER "$CACHELOC"
fi fi
# Checks for the Universal SafetyNet Fix module and similar modules editing the device fingerprint # Checks for the Universal SafetyNet Fix module and similar modules editing the device fingerprint
PRINTMODULE=false PRINTMODULE=false
for USNF in $USNFLIST; do for USNF in $USNFLIST; do
if [ -d "$IMGPATH/$USNF" ]; then if [ -d "$MODULESPATH/$USNF" ]; then
NAME=$(get_file_value $IMGPATH/$USNF/module.prop "name=") NAME=$(get_file_value $MODULESPATH/$USNF/module.prop "name=")
log_handler "'$NAME' installed (modifies the device fingerprint)." log_handler "'$NAME' installed (modifies the device fingerprint)."
PRINTMODULE=true PRINTMODULE=true
fi fi
@ -69,19 +65,13 @@ fi
# Get default values # Get default values
log_handler "Checking device default values." log_handler "Checking device default values."
#curr_values
# Get the current original values saved in propsconf_late
#log_handler "Loading currently saved values."
#. $LATEFILE
# Save default file values in propsconf_late # Save default file values in propsconf_late
for ITEM in $VALPROPSLIST; do for ITEM in $VALPROPSLIST; do
TMPPROP=$(get_prop_type $ITEM | tr '[:lower:]' '[:upper:]') TMPPROP=$(get_prop_type $ITEM | tr '[:lower:]' '[:upper:]')
ORIGPROP="ORIG${TMPPROP}" ORIGPROP="ORIG${TMPPROP}"
#ORIGTMP="$(eval "echo \$$ORIGPROP")"
ORIGTMP="$(get_file_value $LATEFILE "${ORIGPROP}=")" ORIGTMP="$(get_file_value $LATEFILE "${ORIGPROP}=")"
CURRPROP="CURR${TMPPROP}" CURRPROP="CURR${TMPPROP}"
#CURRTMP="$(eval "echo \$$CURRPROP")"
CURRTMP="$(resetprop $ITEM)" CURRTMP="$(resetprop $ITEM)"
replace_fn $ORIGPROP "\"$ORIGTMP\"" "\"$CURRTMP\"" $LATEFILE replace_fn $ORIGPROP "\"$ORIGTMP\"" "\"$CURRTMP\"" $LATEFILE
done done
@ -153,10 +143,10 @@ if [ "$FILESAFE" == 0 ]; then
# Checks if any other modules are using a local copy of build.prop # Checks if any other modules are using a local copy of build.prop
BUILDMODULE=false BUILDMODULE=false
MODID=$(get_file_value $MODPATH/module.prop "id=") MODID=$(get_file_value $MODPATH/module.prop "id=")
for D in $(ls $IMGPATH); do for D in $(ls $MODULESPATH); do
if [ $D != "$MODID" ]; then if [ $D != "$MODID" ]; then
if [ -f "$IMGPATH/$D/system/build.prop" ] || [ "$D" == "safetypatcher" ]; then if [ -f "$MODULESPATH/$D/system/build.prop" ] || [ "$D" == "safetypatcher" ]; then
NAME=$(get_file_value $IMGPATH/$D/module.prop "name=") NAME=$(get_file_value $MODULESPATH/$D/module.prop "name=")
log_handler "Conflicting build.prop editing in module '$NAME'." log_handler "Conflicting build.prop editing in module '$NAME'."
BUILDMODULE=true BUILDMODULE=true
fi fi

View File

@ -4,7 +4,7 @@
# Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers # Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers
# Licence: MIT # Licence: MIT
PRINTSV=50 PRINTSV=51
PRINTSTRANSF=350 PRINTSTRANSF=350
# Certified fingerprints # Certified fingerprints
@ -15,7 +15,7 @@ Asus Zenfone Max M1 (8.0.0)=asus/WW_X00PD/ASUS_X00P_4:8.0.0/OPR1.170623.032/15.0
Asus Zenfone Max Pro M1 (8.1.0)=asus/RU_X00TD/ASUS_X00T_6:8.1.0/OPM1/15.2016.1902.340-20190216:user/release-keys__2019-02-01 Asus Zenfone Max Pro M1 (8.1.0)=asus/RU_X00TD/ASUS_X00T_6:8.1.0/OPM1/15.2016.1902.340-20190216:user/release-keys__2019-02-01
Asus ZenPad S 8.0 (6.0.1)=asus/WW_P01M/P01M_3:6.0.1/MMB29P/WW_P01M-V5.6.0-20170608:user/release-keys Asus ZenPad S 8.0 (6.0.1)=asus/WW_P01M/P01M_3:6.0.1/MMB29P/WW_P01M-V5.6.0-20170608:user/release-keys
Elephone U Pro (8.0.0)=Elephone/U_Pro/U_Pro:8.0.0/Elephone_U_Pro_20180917/09172123:user/release-keys__2018-09-05 Elephone U Pro (8.0.0)=Elephone/U_Pro/U_Pro:8.0.0/Elephone_U_Pro_20180917/09172123:user/release-keys__2018-09-05
Essential PH-1 (9)=essential/mata/mata:9/PQ1A.190105.024/462:user/release-keys__2019-03-05 Essential PH-1 (9)=essential/mata/mata:9/PQ1A.190105.045/483:user/release-keys__2019-04-05
Google Nexus 4 (5.1.1)=google/occam/mako:5.1.1/LMY48T/2237560:user/release-keys Google Nexus 4 (5.1.1)=google/occam/mako:5.1.1/LMY48T/2237560:user/release-keys
Google Nexus 5 (6.0.1)=google/hammerhead/hammerhead:6.0.1/M4B30Z/3437181:user/release-keys Google Nexus 5 (6.0.1)=google/hammerhead/hammerhead:6.0.1/M4B30Z/3437181:user/release-keys
Google Nexus 5X (8.1.0)=google/bullhead/bullhead:8.1.0/OPM7.181205.001/5080180:user/release-keys__2018-12-05 Google Nexus 5X (8.1.0)=google/bullhead/bullhead:8.1.0/OPM7.181205.001/5080180:user/release-keys__2018-12-05
@ -28,13 +28,13 @@ Google Nexus 7 2013 LTE (6.0.1)=google/razorg/deb:6.0.1/MOB30X/3036618:user/rele
Google Nexus 9 WiFi (7.1.1)=google/volantis/flounder:7.1.1/N9F27M/4333998:user/release-keys Google Nexus 9 WiFi (7.1.1)=google/volantis/flounder:7.1.1/N9F27M/4333998:user/release-keys
Google Nexus 9 LTE (7.1.1)=google/volantisg/flounder_lte:7.1.1/N4F27P/4333386:user/release-keys Google Nexus 9 LTE (7.1.1)=google/volantisg/flounder_lte:7.1.1/N4F27P/4333386:user/release-keys
Google Nexus 10 (5.1.1)=google/mantaray/manta:5.1.1/LMY49J/2640980:user/release-keys Google Nexus 10 (5.1.1)=google/mantaray/manta:5.1.1/LMY49J/2640980:user/release-keys
Google Pixel (8.1.0 & 9)=google/sailfish/sailfish:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/sailfish/sailfish:9/PQ2A.190305.002/5240760:user/release-keys__2019-03-05 Google Pixel (8.1.0 & 9)=google/sailfish/sailfish:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/sailfish/sailfish:9/PQ2A.190405.003/5310204:user/release-keys__2019-04-05
Google Pixel XL (8.1.0 & 9)=google/marlin/marlin:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/marlin/marlin:9/PQ2A.190305.002/5240760:user/release-keys__2019-03-05 Google Pixel XL (8.1.0 & 9)=google/marlin/marlin:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/marlin/marlin:9/PQ2A.190405.003/5310204:user/release-keys__2019-04-05
Google Pixel 2 (8.1.0 & 9)=google/walleye/walleye:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/walleye/walleye:9/PQ2A.190305.002/5240760:user/release-keys__2019-03-05 Google Pixel 2 (8.1.0 & 9)=google/walleye/walleye:8.1.0/OPM2.171019.029/4657601:user/release-keys;google/walleye/walleye:9/PQ2A.190405.003/5310204:user/release-keys__2019-04-05
Google Pixel 2 XL (8.1.0 & 9)=google/taimen/taimen:8.1.0/OPM4.171019.016.B1/4720843:user/release-keys;google/taimen/taimen:9/PQ2A.190305.002/5240760:user/release-keys__2019-03-05 Google Pixel 2 XL (8.1.0 & 9)=google/taimen/taimen:8.1.0/OPM4.171019.016.B1/4720843:user/release-keys;google/taimen/taimen:9/PQ2A.190405.003/5310204:user/release-keys__2019-04-05
Google Pixel 3 (9)=google/blueline/blueline:9/PQ2A.190305.002/5240760:user/release-keys__2019-03-05 Google Pixel 3 (9)=google/blueline/blueline:9/PQ2A.190405.003/5310204:user/release-keys__2019-04-05
Google Pixel 3 XL (9)=google/crosshatch/crosshatch:9/PQ2A.190305.002/5240760:user/release-keys__2019-03-05 Google Pixel 3 XL (9)=google/crosshatch/crosshatch:9/PQ2A.190405.003/5310204:user/release-keys__2019-04-05
Google Pixel C (8.1.0)=google/ryu/dragon:8.1.0/OPM8.190305.001/5238107:user/release-keys__2019-03-05 Google Pixel C (8.1.0)=google/ryu/dragon:8.1.0/OPM8.190405.001/5321448:user/release-keys__2019-04-05
HTC 10 (6.0.1)=htc/HTCOneM10vzw/htc_pmewl:6.0.1/MMB29M/774095.8:user/release-keys HTC 10 (6.0.1)=htc/HTCOneM10vzw/htc_pmewl:6.0.1/MMB29M/774095.8:user/release-keys
HTC U11 (8.0.0)=htc/ocndtwl_01405/htc_ocndtwl:8.0.0/OPR6.170623.013/1017190.2:user/release-keys HTC U11 (8.0.0)=htc/ocndtwl_01405/htc_ocndtwl:8.0.0/OPR6.170623.013/1017190.2:user/release-keys
HTC U12 Plus (8.0.0)=htc/imeuhl_00617/htc_imeuhl:8.0.0/OPR1.170623.032/1041457.3:user/release-keys__2018-06-01 HTC U12 Plus (8.0.0)=htc/imeuhl_00617/htc_imeuhl:8.0.0/OPR1.170623.032/1041457.3:user/release-keys__2018-06-01
@ -77,13 +77,14 @@ OnePlus X (6.0.1)=OnePlus/OnePlus/OnePlus:6.0.1/MMB29M/10281213:user/release-key
OnePlus 3 (8.0.0)=OnePlus/OnePlus3/OnePlus3:8.0.0/OPR1.170623.032/1809142047:user/release-keys__2018-09-01 OnePlus 3 (8.0.0)=OnePlus/OnePlus3/OnePlus3:8.0.0/OPR1.170623.032/1809142047:user/release-keys__2018-09-01
OnePlus 3T (8.0.0)=OnePlus/OnePlus3/OnePlus3T:8.0.0/OPR1.170623.032/1812060016:user/release-keys__2018-11-01 OnePlus 3T (8.0.0)=OnePlus/OnePlus3/OnePlus3T:8.0.0/OPR1.170623.032/1812060016:user/release-keys__2018-11-01
OnePlus 5 (8.1.0 & 9)=OnePlus/OnePlus5/OnePlus5:8.1.0/OPM1.171019.011/1809241512:user/release-keys__2018-09-01;OnePlus/OnePlus5/OnePlus5:9/PKQ1.180716.001/1812102249:user/release-keys__2018-12-01 OnePlus 5 (8.1.0 & 9)=OnePlus/OnePlus5/OnePlus5:8.1.0/OPM1.171019.011/1809241512:user/release-keys__2018-09-01;OnePlus/OnePlus5/OnePlus5:9/PKQ1.180716.001/1812102249:user/release-keys__2018-12-01
OnePlus 5T (8.1.0 & 9)=OnePlus/OnePlus5T/OnePlus5T:8.1.0/OPM1.171019.011/1809241512:user/release-keys__2018-09-01;OnePlus/OnePlus5T/OnePlus5T:9/PKQ1.180716.001/1902221914:user/release-keys__2019-01-01 OnePlus 5T (8.1.0 & 9)=OnePlus/OnePlus5T/OnePlus5T:8.1.0/OPM1.171019.011/1809241512:user/release-keys__2018-09-01;OnePlus/OnePlus5T/OnePlus5T:9/PKQ1.180716.001/1903112032:user/release-keys__2019-03-01
OnePlus 6 (8.1.0 & 9)=OnePlus/OnePlus6/OnePlus6:8.1.0/OPM1.171019.011/06140300:user/release-keys;OnePlus/OnePlus6/OnePlus6:9/PKQ1.180716.001/1809150000:user/release-keys__2018-09-05 OnePlus 6 (8.1.0 & 9)=OnePlus/OnePlus6/OnePlus6:8.1.0/OPM1.171019.011/06140300:user/release-keys;OnePlus/OnePlus6/OnePlus6:9/PKQ1.180716.001/1809150000:user/release-keys__2018-09-05
OnePlus 6T (9)=OnePlus/OnePlus6T/OnePlus6T:9/PKQ1.180716.001/1901231231:user/release-keys__2019-01-01 OnePlus 6T (9)=OnePlus/OnePlus6T/OnePlus6T:9/PKQ1.180716.001/1901231231:user/release-keys__2019-01-01
Razer Phone (8.1.0)=razer/cheryl/cheryl:8.1.0/OPM1.171019.011-RZR-180803/6033:user/release-keys__2018-07-05 Razer Phone (8.1.0)=razer/cheryl/cheryl:8.1.0/OPM1.171019.011-RZR-180803/6033:user/release-keys__2018-07-05
Razer Phone 2 (8.1.0)=razer/cheryl2/aura:8.1.0/O-MR2-RC009-RZR-181124/2009:user/release-keys__2018-10-05 Razer Phone 2 (8.1.0)=razer/cheryl2/aura:8.1.0/O-MR2-RC009-RZR-181124/2009:user/release-keys__2018-10-05
Samsung Galaxy A5 2015 (6.0.1)=samsung/a5ultexx/a5ulte:6.0.1/MMB29M/A500FUXXU1CPH3:user/release-keys Samsung Galaxy A5 2015 (6.0.1)=samsung/a5ultexx/a5ulte:6.0.1/MMB29M/A500FUXXU1CPH3:user/release-keys
Samsung Galaxy A5 2017 (8.0.0)=samsung/a5y17ltexx/a5y17lte:8.0.0/R16NW/A520FXXU4CRE8:user/release-keys__2018-05-01 Samsung Galaxy A5 2017 (8.0.0)=samsung/a5y17ltexx/a5y17lte:8.0.0/R16NW/A520FXXU4CRE8:user/release-keys__2018-05-01
Samsung Galaxy A6 Plus (9)=samsung/a6pltedx/a6plte:9/PPR1.180610.011/A605GDXU3BSC6:user/release-keys__2019-03-01
Samsung Galaxy A8 Plus (7.1.1)=samsung/jackpot2ltexx/jackpot2lte:7.1.1/NMF26X/A730FXXU2ARD1:user/release-keys Samsung Galaxy A8 Plus (7.1.1)=samsung/jackpot2ltexx/jackpot2lte:7.1.1/NMF26X/A730FXXU2ARD1:user/release-keys
Samsung Galaxy Grand Prime (5.0.2)=samsung/fortuna3gdtvvj/fortuna3gdtv:5.0.2/LRX22G/G530BTVJU1BPH4:user/release-keys Samsung Galaxy Grand Prime (5.0.2)=samsung/fortuna3gdtvvj/fortuna3gdtv:5.0.2/LRX22G/G530BTVJU1BPH4:user/release-keys
Samsung Galaxy J2 (5.1.1)=samsung/j23gdd/j23g:5.1.1/LMY48B/J200HXXU0AQK2:user/release-keys Samsung Galaxy J2 (5.1.1)=samsung/j23gdd/j23g:5.1.1/LMY48B/J200HXXU0AQK2:user/release-keys
@ -110,6 +111,7 @@ Samsung Galaxy S8 (8.0.0)=samsung/dreamltexx/dreamlte:8.0.0/R16NW/G950FXXU1CRC7:
Samsung Galaxy S8 Plus (8.0.0)=samsung/dream2ltexx/dream2lte:8.0.0/R16NW/G955FXXU1CRC7:user/release-keys Samsung Galaxy S8 Plus (8.0.0)=samsung/dream2ltexx/dream2lte:8.0.0/R16NW/G955FXXU1CRC7:user/release-keys
Samsung Galaxy S9 (8.0.0)=samsung/starltexx/starlte:8.0.0/R16NW/G960FXXU1ARCC:user/release-keys Samsung Galaxy S9 (8.0.0)=samsung/starltexx/starlte:8.0.0/R16NW/G960FXXU1ARCC:user/release-keys
Samsung Galaxy S9 Plus (8.0.0)=samsung/star2ltexx/star2lte:8.0.0/R16NW/G965FXXU1ARCC:user/release-keys Samsung Galaxy S9 Plus (8.0.0)=samsung/star2ltexx/star2lte:8.0.0/R16NW/G965FXXU1ARCC:user/release-keys
Samsung Galaxy Tab S3 (LTE SM-T825) (8.0.0)=samsung/gts3lltexx/gts3llte:8.0.0/R16NW/T825XXU2BRL2:user/release-keys__2018-12-01
Sony Xperia X (8.0.0)=Sony/F5121/F5121:8.0.0/34.4.A.2.118/1631208121:user/release-keys__2018-09-01 Sony Xperia X (8.0.0)=Sony/F5121/F5121:8.0.0/34.4.A.2.118/1631208121:user/release-keys__2018-09-01
Sony Xperia X Compact (8.0.0)=Sony/F5321/F5321:8.0.0/34.4.A.2.118/1631208121:user/release-keys__2018-09-01 Sony Xperia X Compact (8.0.0)=Sony/F5321/F5321:8.0.0/34.4.A.2.118/1631208121:user/release-keys__2018-09-01
Sony Xperia X Dual (8.0.0)=Sony/F5122/F5122:8.0.0/34.4.A.2.118/1631208121:user/release-keys__2018-09-01 Sony Xperia X Dual (8.0.0)=Sony/F5122/F5122:8.0.0/34.4.A.2.118/1631208121:user/release-keys__2018-09-01
@ -147,15 +149,16 @@ Xiaomi Mi 5S Plus (6.0.1 & 7.0)=Xiaomi/natrium/natrium:6.0.1/MXB48T/V8.5.2.0.MBG
Xiaomi Mi 6 (8.0.0)=Xiaomi/sagit/sagit:8.0.0/OPR1.170623.027/V9.2.3.0.OCAMIEK:user/release-keys Xiaomi Mi 6 (8.0.0)=Xiaomi/sagit/sagit:8.0.0/OPR1.170623.027/V9.2.3.0.OCAMIEK:user/release-keys
Xiaomi Mi 8 (8.1.0 & 9)=Xiaomi/dipper/dipper:8.1.0/OPM1.171019.011/V9.5.5.0.OEAMIFA:user/release-keys;Xiaomi/dipper/dipper:9/PKQ1.180729.001/V10.2.3.0.PEAMIXM:user/release-keys__2019-02-01 Xiaomi Mi 8 (8.1.0 & 9)=Xiaomi/dipper/dipper:8.1.0/OPM1.171019.011/V9.5.5.0.OEAMIFA:user/release-keys;Xiaomi/dipper/dipper:9/PKQ1.180729.001/V10.2.3.0.PEAMIXM:user/release-keys__2019-02-01
Xiaomi Mi A1 (8.0.0 & 9)=xiaomi/tissot/tissot_sprout:8.0.0/OPR1.170623.026/V.9.5.10.0.ODHMIFA:user/release-keys;xiaomi/tissot/tissot_sprout:9/PKQ1.180917.001/V10.0.4.0.PDHMIXM:user/release-keys_2019-01-05 Xiaomi Mi A1 (8.0.0 & 9)=xiaomi/tissot/tissot_sprout:8.0.0/OPR1.170623.026/V.9.5.10.0.ODHMIFA:user/release-keys;xiaomi/tissot/tissot_sprout:9/PKQ1.180917.001/V10.0.4.0.PDHMIXM:user/release-keys_2019-01-05
Xiaomi Mi A2 (8.1.0 & 9)=xiaomi/jasmine/jasmine_sprout:8.1.0/OPM1.171019.011/V9.6.16.0.ODIMIFE:user/release-keys__2018-11-05;xiaomi/jasmine/jasmine_sprout:9/PKQ1.180904.001/V10.0.4.0.PDIMIXM:user/release-keys__2019-02-05 Xiaomi Mi A2 (8.1.0 & 9)=xiaomi/jasmine/jasmine_sprout:8.1.0/OPM1.171019.011/V9.6.16.0.ODIMIFE:user/release-keys__2018-11-05;xiaomi/jasmine/jasmine_sprout:9/PKQ1.180904.001/V10.0.7.0.PDIMIXM:user/release-keys__2019-03-05
Xiaomi Mi A2 Lite (9)=xiaomi/daisy/daisy_sprout:9/PKQ1.180917.001/V10.0.1.0.PDLMIFJ:user/release-keys__2018-11-05 Xiaomi Mi A2 Lite (9)=xiaomi/daisy/daisy_sprout:9/PKQ1.180917.001/V10.0.1.0.PDLMIFJ:user/release-keys__2018-11-05
Xiaomi Mi Max (6.0.1)=Xiaomi/helium/helium:6.0.1/MMB29M/V8.2.3.0.MBDMIDL:user/release-keys Xiaomi Mi Max (6.0.1)=Xiaomi/helium/helium:6.0.1/MMB29M/V8.2.3.0.MBDMIDL:user/release-keys
Xiaomi Mi Max 2 (7.1.1)=Xiaomi/oxygen/oxygen:7.1.1/NMF26F/V9.5.4.0.NDDMIFA:user/release-keys Xiaomi Mi Max 2 (7.1.1)=Xiaomi/oxygen/oxygen:7.1.1/NMF26F/V9.5.4.0.NDDMIFA:user/release-keys
Xiaomi Mi Mix 2 (8.0.0)=Xiaomi/chiron/chiron:8.0.0/OPR1.170623.027/V10.2.2.0.ODEMIXM:user/release-keys__2018-12-01 Xiaomi Mi Mix 2 (8.0.0)=Xiaomi/chiron/chiron:8.0.0/OPR1.170623.027/V10.2.2.0.ODEMIXM:user/release-keys__2018-12-01
Xiaomi Mi Mix 2S (8.0.0 & 9)=Xiaomi/polaris/polaris:8.0.0/OPR1.170623.032/V9.5.19.0.ODGMIFA:user/release-keys;Xiaomi/polaris/polaris:9/PKQ1.180729.001/V10.2.2.0.PDGMIXM:user/release-keys__2019-02-01 Xiaomi Mi Mix 2S (8.0.0 & 9)=Xiaomi/polaris/polaris:8.0.0/OPR1.170623.032/V9.5.19.0.ODGMIFA:user/release-keys;Xiaomi/polaris/polaris:9/PKQ1.180729.001/V10.2.2.0.PDGMIXM:user/release-keys__2019-02-01
Xiaomi Mi Note 2 (7.0 & 8.0.0)=Xiaomi/scorpio/scorpio:7.0/NRD90M/V9.2.1.0.NADMIEK:user/release-keys;Xiaomi/scorpio/scorpio:8.0.0/OPR1.170623.032/V9.6.1.0.OADCNFD:user/release-keys Xiaomi Mi Note 2 (7.0 & 8.0.0)=Xiaomi/scorpio/scorpio:7.0/NRD90M/V9.2.1.0.NADMIEK:user/release-keys;Xiaomi/scorpio/scorpio:8.0.0/OPR1.170623.032/V9.6.1.0.OADCNFD:user/release-keys
Xiaomi Mi Note 3 (8.1.0)=Xiaomi/jason/jason:8.1.0/OPM1.171019.019/V10.2.2.0.OCHMIXM:user/release-keys__2018-12-01
Xiaomi Mi Pad 4 (8.1.0)=Xiaomi/clover/clover:8.1.0/OPM1.171019.019/V10.1.1.0.ODJCNFI:user/release-keys__2018-10-01 Xiaomi Mi Pad 4 (8.1.0)=Xiaomi/clover/clover:8.1.0/OPM1.171019.019/V10.1.1.0.ODJCNFI:user/release-keys__2018-10-01
Xiaomi Pocophone F1 (9)=Xiaomi/beryllium/beryllium:9/PKQ1.180729.001/V10.2.3.0.PEJMIXM:user/release-keys__2019-02-05 Xiaomi Pocophone F1 (9)=Xiaomi/beryllium/beryllium:9/PKQ1.180729.001/V10.3.4.0.PEJMIXM:user/release-keys__2019-03-01
Xiaomi Redmi 3/3 Pro (5.1.1)=Xiaomi/ido/ido:5.1.1/LMY47V/V9.6.2.0.LAIMIFD:user/release-keys Xiaomi Redmi 3/3 Pro (5.1.1)=Xiaomi/ido/ido:5.1.1/LMY47V/V9.6.2.0.LAIMIFD:user/release-keys
Xiaomi Redmi 3S/X Prime (6.0.1)=Xiaomi/land/land:6.0.1/MMB29M/V9.5.1.0.MALMIFA:user/release-keys Xiaomi Redmi 3S/X Prime (6.0.1)=Xiaomi/land/land:6.0.1/MMB29M/V9.5.1.0.MALMIFA:user/release-keys
Xiaomi Redmi 4 Prime (6.0.1)=Xiaomi/markw/markw:6.0.1/MMB29M/V9.5.3.0.MBEMIFA:user/release-keys Xiaomi Redmi 4 Prime (6.0.1)=Xiaomi/markw/markw:6.0.1/MMB29M/V9.5.3.0.MBEMIFA:user/release-keys

View File

@ -4,7 +4,11 @@
# Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers # Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers
# Licence: MIT # Licence: MIT
# Required module version. Do not edit this value! # =================================================================
# ======================= Configuration file ======================
# =================================================================
# Required module version (or newer). Do not edit this value!
CONFTRANSF=351 CONFTRANSF=351
# Device fingerprint # Device fingerprint

View File

@ -1,5 +1,3 @@
#!/system/bin/sh
# MagiskHide Props Config # MagiskHide Props Config
# Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers # Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers
# Licence: MIT # Licence: MIT
@ -10,17 +8,10 @@
# In that case, feel free to delete it. # In that case, feel free to delete it.
# Script version # Script version
SCRIPTV=25 SCRIPTV=26
SETTRANSF=2 SETTRANSF=2
NOTTRANSF="" NOTTRANSF=""
# Paths
COREPATHPH=CORE_PLACEHOLDER
IMGPATH=$COREPATH/img
MODPATH=$IMGPATH/MagiskHidePropsConf
CACHELOCPH=CACHE_PLACEHOLDER
LATELOGFILE=$CACHELOC/propsconf_latefile.log
# Fingerprint # Fingerprint
FINGERPRINTENB=1 FINGERPRINTENB=1
PRINTMODULE=0 PRINTMODULE=0
@ -134,34 +125,3 @@ SETTYPE=false
SETTAGS=false SETTAGS=false
SETSELINUX=false SETSELINUX=false
SETFINGERPRINT=false SETFINGERPRINT=false
rm -f $LATELOGFILE
# Function to clean up some files after the module has been uninstalled
cleanup() {
echo "Cleaning up files in $CACHELOC." >> $LATELOGFILE 2>&1
for ITEM in $CACHEFILES; do
if [ -f "$CACHELOC/$ITEM" ]; then
echo "Deleting ${ITEM}." >> $LATELOGFILE 2>&1
rm -f $CACHELOC/$ITEM
fi
done
# Suicide.
echo "Removing script." >> $LATELOGFILE 2>&1
rm -f $0
}
# Checks if the module is installed. Deletes itself if it isn't.
if [ -d "$MODPATH" ]; then
# Checks if the module is set for removal
if [ -f "$MODPATH/remove" ]; then
echo "Module set for removal." >> $LATELOGFILE 2>&1
# Cleanup
cleanup
fi
else
echo "$MODPATH not found." >> $LATELOGFILE 2>&1
echo "Module no longer installed." >> $LATELOGFILE 2>&1
# Cleanup
cleanup
fi

View File

@ -14,28 +14,16 @@ get_file_value() {
# ======================== Variables ======================== # ======================== Variables ========================
if [ "$INSTFN" ]; then if [ "$INSTFN" ]; then
# Installation (config.sh) # Installation (config.sh)
MODVERSION=$(echo $(get_file_value $INSTALLER/module.prop "version=") | sed 's|-.*||') MODVERSION=$(echo $(get_file_value $TMPDIR/module.prop "version=") | sed 's|-.*||')
if [ "$MAGISK_VER_CODE" -ge 17316 ]; then
COREPATH=/sbin/.magisk
else
COREPATH=/sbin/.core
fi
ADBPATH=/data/adb ADBPATH=/data/adb
BIMGPATH=$COREPATH/img MODULESPATH=$ADBPATH/modules
$BOOTMODE && IMGPATH=$BIMGPATH || IMGPATH=$MOUNTPATH
if [ "$MAGISK_VER_CODE" -ge 17316 ]; then
POSTPATH=$ADBPATH/post-fs-data.d POSTPATH=$ADBPATH/post-fs-data.d
SERVICEPATH=$ADBPATH/service.d SERVICEPATH=$ADBPATH/service.d
LATEHOLDER=$ADBPATH/service.d/propsconf_late LATEPATH=$ADBPATH/mhpc
else LATEFILE=$LATEPATH/propsconf_late
POSTPATH=$IMGPATH/.core/post-fs-data.d
SERVICEPATH=$IMGPATH/.core/service.d
LATEHOLDER=$BIMGPATH/.core/service.d/propsconf_late
fi
POSTFILE=$POSTPATH/propsconf_post POSTFILE=$POSTPATH/propsconf_post
LATEFILE=$SERVICEPATH/propsconf_late
POSTLATEFILE=$POSTPATH/propsconf_late POSTLATEFILE=$POSTPATH/propsconf_late
UPDATELATEFILE=$INSTALLER/common/propsconf_late UPDATELATEFILE=$TMPDIR/propsconf_late
MIRRORLOC=/sbin/.magisk/mirror/system MIRRORLOC=/sbin/.magisk/mirror/system
if [ -z $SLOT ]; then if [ -z $SLOT ]; then
CACHELOC=/cache CACHELOC=/cache
@ -99,7 +87,6 @@ if [ "$INSTFN" ]; then
DELETEPROPS DELETEPROPS
" "
else else
# Regular
# Placeholder variables # Placeholder variables
MODVERSIONPH=VER_PLACEHOLDER MODVERSIONPH=VER_PLACEHOLDER
LATEFILEPH=LATE_PLACEHOLDER LATEFILEPH=LATE_PLACEHOLDER
@ -121,6 +108,7 @@ else
" "
fi fi
COREPATH=/sbin/.magisk
MIRRORPATH=$COREPATH/mirror MIRRORPATH=$COREPATH/mirror
SYSTEMFILE=$MODPATH/system.prop SYSTEMFILE=$MODPATH/system.prop
POSTCHKFILE=$CACHELOC/propsconf_postchk POSTCHKFILE=$CACHELOC/propsconf_postchk
@ -130,8 +118,8 @@ MAGISKLOC=/data/adb/magisk
# Make sure that the terminal app used actually can see resetprop # Make sure that the terminal app used actually can see resetprop
alias resetprop="$MAGISKLOC/magisk resetprop" alias resetprop="$MAGISKLOC/magisk resetprop"
# Finding installed Busybox # Finding installed Busybox
if [ -d "$IMGPATH/busybox-ndk" ]; then if [ -d "$MODULESPATH/busybox-ndk" ]; then
BBPATH=$(find $IMGPATH/busybox-ndk -name 'busybox') BBPATH=$(find $MODULESPATH/busybox-ndk -name 'busybox')
else else
BBPATH=$(which busybox) BBPATH=$(which busybox)
fi fi
@ -154,6 +142,7 @@ universal-safetynet-fix
samodx-safetyskipper samodx-safetyskipper
safetypatcher safetypatcher
petnoires-safetyspoofer petnoires-safetyspoofer
VR_Patch
" "
# Configuration file locations # Configuration file locations
@ -303,8 +292,7 @@ menu_header() {
# Get module version # Get module version
module_v_ctrl() { module_v_ctrl() {
VERSIONTMP=$(get_file_value $MODPATH/module.prop "version=") VERSIONCMP=$(echo $MODVERSION | sed 's|v||g' | sed 's|\.||g')
VERSIONCMP=$(echo $VERSIONTMP | sed 's|v||g' | sed 's|-.*||' | sed 's|\.||g')
} }
# Check for Busybox # Check for Busybox
@ -424,7 +412,8 @@ format_file() {
# Reboot the device # Reboot the device
force_reboot() { force_reboot() {
echo "" echo ""
log_print "${C}Rebooting...${N}" echo "${C}Rebooting...${C}"
log_print "Rebooting."
setprop sys.powerctl reboot setprop sys.powerctl reboot
sleep 15 sleep 15
log_handler "Rebooting failed." log_handler "Rebooting failed."
@ -505,9 +494,6 @@ after_change() {
if [ "$2" == "file" ]; then if [ "$2" == "file" ]; then
# Load module settings # Load module settings
. $LATEFILE . $LATEFILE
if [ "$3" == "install" ]; then
MODPATH=$MOUNTPATH/$MODID
fi
else else
# Update the reboot variable # Update the reboot variable
reboot_chk reboot_chk
@ -515,7 +501,7 @@ after_change() {
all_values all_values
# Update the system.prop file # Update the system.prop file
system_prop system_prop
if [ "$4" != "noreboot" ]; then if [ "$3" != "noreboot" ] && [ -z "$INSTFN" ]; then
# Ask to reboot # Ask to reboot
reboot_fn "$1" "$2" reboot_fn "$1" "$2"
fi fi
@ -608,9 +594,6 @@ reset_fn() {
if [ "$FINGERPRINTENB" ] && [ "$FINGERPRINTENB" != 1 ]; then if [ "$FINGERPRINTENB" ] && [ "$FINGERPRINTENB" != 1 ]; then
replace_fn FINGERPRINTENB 1 $FINGERPRINTENB $LATEFILE replace_fn FINGERPRINTENB 1 $FINGERPRINTENB $LATEFILE
fi fi
chmod -v 755 $LATEFILE >> $LOGFILE 2>&1
placeholder_update $LATEFILE CACHELOC CACHE_PLACEHOLDER "$CACHELOC"
placeholder_update $LATEFILE COREPATH CORE_PLACEHOLDER "$COREPATH"
after_change "$1" "$2" after_change "$1" "$2"
} }
@ -633,7 +616,7 @@ config_file() {
. $CONFFILE . $CONFFILE
module_v_ctrl module_v_ctrl
if [ "$CONFTRANSF" -le $VERSIONCMP ]; then if [ "$CONFTRANSF" ] && [ $CONFTRANSF -le $VERSIONCMP ]; then
# Check if vendor fingerprint is set # Check if vendor fingerprint is set
if [ "$CONFVENDPRINT" == "true" ]; then if [ "$CONFVENDPRINT" == "true" ]; then
log_handler "Using vendor fingerprint" log_handler "Using vendor fingerprint"
@ -651,19 +634,19 @@ config_file() {
if [ "$TMPPROP" != "preserve" ]; then if [ "$TMPPROP" != "preserve" ]; then
if [ "$PROPTYPE" == "ro.build.fingerprint" ]; then if [ "$PROPTYPE" == "ro.build.fingerprint" ]; then
if [ "$FINGERPRINTENB" == 1 ]; then if [ "$FINGERPRINTENB" == 1 ]; then
change_print "$PROPTYPE" "$TMPPROP" "file" "$1" change_print "$PROPTYPE" "$TMPPROP" "file"
fi fi
else else
change_prop "$PROPTYPE" "$TMPPROP" "file" "$1" change_prop "$PROPTYPE" "$TMPPROP" "file"
fi fi
fi fi
else else
if [ "$PROPTYPE" == "ro.build.fingerprint" ]; then if [ "$PROPTYPE" == "ro.build.fingerprint" ]; then
if [ "$FINGERPRINTENB" == 1 ]; then if [ "$FINGERPRINTENB" == 1 ]; then
reset_print "$PROPTYPE" "file" "$1" reset_print "$PROPTYPE" "file"
fi fi
else else
reset_prop "$PROPTYPE" "file" "$1" reset_prop "$PROPTYPE" "file"
fi fi
fi fi
done done
@ -680,14 +663,14 @@ config_file() {
else else
TMPVAL=0 TMPVAL=0
fi fi
change_sim_prop "Device simulation" "$ITEM" "$TMPVAL" "file" "$1" change_sim_prop "Device simulation" "$ITEM" "$TMPVAL" "file"
done done
fi fi
# Device description # Device description
if [ "$CONFDESCRIPTION" == "true" ]; then if [ "$CONFDESCRIPTION" == "true" ]; then
change_sim_descr "Device simulation" 1 "file" "$1" change_sim_descr "Device simulation" 1 "file"
else else
change_sim_descr "Device simulation" 0 "file" "$1" change_sim_descr "Device simulation" 0 "file"
fi fi
fi fi
@ -736,9 +719,9 @@ config_file() {
# Updates prop file editing # Updates prop file editing
if [ "$FILESAFE" == 0 ]; then if [ "$FILESAFE" == 0 ]; then
if [ "$CONFPROPFILES" == "true" ]; then if [ "$CONFPROPFILES" == "true" ]; then
edit_prop_files "file" "" " (configuration file)" "$1" edit_prop_files "file" "" " (configuration file)"
elif [ "$CONFPROPFILES" == "false" ]; then elif [ "$CONFPROPFILES" == "false" ]; then
reset_prop_files "file" "" " (configuration file)" "$1" reset_prop_files "file" "" " (configuration file)"
fi fi
fi fi
@ -747,26 +730,26 @@ config_file() {
if [ "$CONFPROPS" ] || [ "$CONFPROPSPOST" ] || [ "$CONFPROPSLATE" ]; then if [ "$CONFPROPS" ] || [ "$CONFPROPSPOST" ] || [ "$CONFPROPSLATE" ]; then
if [ "$PROPOPTION" == "add" ] || [ "$PROPOPTION" == "replace" ]; then if [ "$PROPOPTION" == "add" ] || [ "$PROPOPTION" == "replace" ]; then
if [ "$PROPOPTION" == "replace" ]; then if [ "$PROPOPTION" == "replace" ]; then
reset_all_custprop "file" "$1" reset_all_custprop "file"
fi fi
if [ "$CONFPROPS" ]; then if [ "$CONFPROPS" ]; then
for ITEM in $CONFPROPS; do for ITEM in $CONFPROPS; do
set_custprop "$(get_eq_left "$ITEM")" "$(get_eq_right "$ITEM")" "default" "file" "$1" set_custprop "$(get_eq_left "$ITEM")" "$(get_eq_right "$ITEM")" "default" "file"
done done
fi fi
if [ "$CONFPROPSPOST" ]; then if [ "$CONFPROPSPOST" ]; then
for ITEM in $CONFPROPSPOST; do for ITEM in $CONFPROPSPOST; do
set_custprop "$(get_eq_left "$ITEM")" "$(get_eq_right "$ITEM")" "post" "file" "$1" set_custprop "$(get_eq_left "$ITEM")" "$(get_eq_right "$ITEM")" "post" "file"
done done
fi fi
if [ "$CONFPROPSLATE" ]; then if [ "$CONFPROPSLATE" ]; then
for ITEM in $CONFPROPSLATE; do for ITEM in $CONFPROPSLATE; do
set_custprop "$(get_eq_left "$ITEM")" "$(get_eq_right "$ITEM")" "late" "file" "$1" set_custprop "$(get_eq_left "$ITEM")" "$(get_eq_right "$ITEM")" "late" "file"
done done
fi fi
fi fi
else else
reset_all_custprop "file" "$1" reset_all_custprop "file"
fi fi
fi fi
@ -775,14 +758,14 @@ config_file() {
if [ "$CONFDELPROPS" ]; then if [ "$CONFDELPROPS" ]; then
if [ "$DELPROPOPTION" == "add" ] || [ "$DELPROPOPTION" == "replace" ]; then if [ "$DELPROPOPTION" == "add" ] || [ "$DELPROPOPTION" == "replace" ]; then
if [ "$DELPROPOPTION" == "replace" ]; then if [ "$DELPROPOPTION" == "replace" ]; then
reset_all_delprop "file" "$1" reset_all_delprop "file"
fi fi
for ITEM in $CONFDELPROPS; do for ITEM in $CONFDELPROPS; do
set_delprop "$ITEM" "file" "$1" set_delprop "$ITEM" "file"
done done
fi fi
else else
reset_all_delprop "file" "$1" reset_all_delprop "file"
fi fi
fi fi
@ -825,7 +808,7 @@ config_file() {
replace_fn OPTIONUPDATE $OPTIONUPDATE $OPTFCHNG $LATEFILE replace_fn OPTIONUPDATE $OPTIONUPDATE $OPTFCHNG $LATEFILE
log_handler "Automatic fingerprint update is set to $CONFUPDATE." log_handler "Automatic fingerprint update is set to $CONFUPDATE."
else else
log_handler "The configuration file is not compatible with the current module version." log_handler "The configuration file is not compatible with the current module version ($CONFTRANSF vs $VERSIONCMP)."
fi fi
# Update the system.prop file # Update the system.prop file
@ -887,13 +870,19 @@ script_placement() {
if [ -f "$LATEFILE" ]; then if [ -f "$LATEFILE" ]; then
FILEV=$(get_file_value $LATEFILE "SCRIPTV=") FILEV=$(get_file_value $LATEFILE "SCRIPTV=")
FILETRANSF=$(get_file_value $LATEFILE "SETTRANSF=") FILETRANSF=$(get_file_value $LATEFILE "SETTRANSF=")
LATEFILETMP="$LATEFILE"
elif [ -f "$SERVICEPATH/propsconf_late" ]; then
FILEV=$(get_file_value $SERVICEPATH/propsconf_late "SCRIPTV=")
FILETRANSF=$(get_file_value $SERVICEPATH/propsconf_late "SETTRANSF=")
LATEFILETMP="$SERVICEPATH/propsconf_late"
else else
FILEV=0 FILEV=0
FILETRANSF=$UPDATETRANSF FILETRANSF=$UPDATETRANSF
LATEFILETMP="$LATEFILE"
fi fi
log_print "- Installing scripts" log_print "- Installing scripts"
cp -af $INSTALLER/common/util_functions.sh $MODPATH/util_functions.sh >> $LOGFILE 2>&1 cp -af $TMPDIR/util_functions.sh $MODPATH/util_functions.sh >> $LOGFILE 2>&1
cp -af $INSTALLER/common/prints.sh $MODPATH/prints.sh >> $LOGFILE 2>&1 cp -af $TMPDIR/prints.sh $MODPATH/prints.sh >> $LOGFILE 2>&1
cp -af $UPDATELATEFILE $MODPATH/propsconf_late >> $LOGFILE 2>&1 cp -af $UPDATELATEFILE $MODPATH/propsconf_late >> $LOGFILE 2>&1
if [ "$FILEV" ]; then if [ "$FILEV" ]; then
# New script # New script
@ -926,7 +915,7 @@ script_placement() {
if [ "$TRANSFOPT" == 1 ]; then if [ "$TRANSFOPT" == 1 ]; then
log_handler "Not transfering settings for ${ITEM}." log_handler "Not transfering settings for ${ITEM}."
else else
SOLD=$(get_file_value $LATEFILE "${ITEM}=") SOLD=$(get_file_value $LATEFILETMP "${ITEM}=")
SNEW=$(get_file_value $UPDATELATEFILE "${ITEM}=") SNEW=$(get_file_value $UPDATELATEFILE "${ITEM}=")
if [ "$SOLD" ] && [ "$SOLD" != "$SNEW" ]; then if [ "$SOLD" ] && [ "$SOLD" != "$SNEW" ]; then
log_handler "Setting ${ITEM} from ${SNEW} to ${SOLD}." log_handler "Setting ${ITEM} from ${SNEW} to ${SOLD}."
@ -936,7 +925,7 @@ script_placement() {
done done
# Prop values # Prop values
for ITEM in $PROPSETTINGSLIST; do for ITEM in $PROPSETTINGSLIST; do
SOLD=$(get_file_value $LATEFILE "${ITEM}=") SOLD=$(get_file_value $LATEFILETMP "${ITEM}=")
if [ "$SOLD" ]; then if [ "$SOLD" ]; then
log_handler "Setting ${ITEM} to ${SOLD}." log_handler "Setting ${ITEM} to ${SOLD}."
sed -i "s|${ITEM}=\"\"|${ITEM}=\"${SOLD}\"|" $UPDATELATEFILE sed -i "s|${ITEM}=\"\"|${ITEM}=\"${SOLD}\"|" $UPDATELATEFILE
@ -947,8 +936,8 @@ script_placement() {
ITEM="$(get_prop_type $ITEM)" ITEM="$(get_prop_type $ITEM)"
REPROP=$(echo "RE${ITEM}" | tr '[:lower:]' '[:upper:]') REPROP=$(echo "RE${ITEM}" | tr '[:lower:]' '[:upper:]')
SETPROP=$(echo "SET${ITEM}" | tr '[:lower:]' '[:upper:]') SETPROP=$(echo "SET${ITEM}" | tr '[:lower:]' '[:upper:]')
REOLD=$(get_file_value $LATEFILE "${REPROP}=") REOLD=$(get_file_value $LATEFILETMP "${REPROP}=")
SETOLD=$(get_file_value $LATEFILE "${SETPROP}=") SETOLD=$(get_file_value $LATEFILETMP "${SETPROP}=")
if [ "$REOLD" ] && [ "$REOLD" != "false" ]; then if [ "$REOLD" ] && [ "$REOLD" != "false" ]; then
log_handler "Setting sensitive prop ${ITEM} to ${REOLD}." log_handler "Setting sensitive prop ${ITEM} to ${REOLD}."
sed -i "s/${REPROP}=false/${REPROP}=${REOLD}/" $UPDATELATEFILE sed -i "s/${REPROP}=false/${REPROP}=${REOLD}/" $UPDATELATEFILE
@ -960,10 +949,16 @@ script_placement() {
done done
fi fi
log_handler "Setting up late_start settings script." log_handler "Setting up late_start settings script."
if [ ! -d "$LATEPATH" ]; then
mkdir -pv $LATEPATH >> $LOGFILE 2>&1
fi
cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1 cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1
# Downgraded script (flashed old module version) # Downgraded script (flashed old module version)
elif [ "$UPDATEV" -lt "$FILEV" ]; then elif [ "$UPDATEV" -lt "$FILEV" ]; then
log_print "- Settings cleared (script downgraded)" log_print "- Settings cleared (script downgraded)"
if [ ! -d "$LATEPATH" ]; then
mkdir -pv $LATEPATH >> $LOGFILE 2>&1
fi
cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1 cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1
# No update of script # No update of script
else else
@ -972,17 +967,24 @@ script_placement() {
else else
log_print "- Placing settings script" log_print "- Placing settings script"
log_handler "Setting up late_start settings script." log_handler "Setting up late_start settings script."
if [ ! -d "$LATEPATH" ]; then
mkdir -pv $LATEPATH >> $LOGFILE 2>&1
fi
cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1 cp -af $UPDATELATEFILE $LATEFILE >> $LOGFILE 2>&1
fi fi
if [ -f "$SERVICEPATH/propsconf_late" ]; then
log_handler "Old settings file found in $SERVICEPATH."
rm -f $SERVICEPATH/propsconf_late >> $LOGFILE 2>&1
fi
} }
# Checks if any other module is using a local copy of build.prop # Checks if any other module is using a local copy of build.prop
build_prop_check() { build_prop_check() {
log_print "- Checking for build.prop conflicts" log_print "- Checking for build.prop conflicts"
for D in $(ls $IMGPATH); do for D in $(ls $MODULESPATH); do
if [ "$D" != "$MODID" ]; then if [ "$D" != "$MODID" ]; then
if [ -f "$IMGPATH/$D/system/build.prop" ] || [ "$D" == "safetypatcher" ]; then if [ -f "$MODULESPATH/$D/system/build.prop" ] || [ "$D" == "safetypatcher" ]; then
NAME=$(get_file_value $IMGPATH/$D/module.prop "name=") NAME=$(get_file_value $MODULESPATH/$D/module.prop "name=")
ui_print "!" ui_print "!"
log_print "! Another module editing build.prop detected!" log_print "! Another module editing build.prop detected!"
log_print "! Module - '$NAME'!" log_print "! Module - '$NAME'!"
@ -998,8 +1000,8 @@ build_prop_check() {
usnf_check() { usnf_check() {
log_print "- Checking for fingerprint conflicts" log_print "- Checking for fingerprint conflicts"
for USNF in $USNFLIST; do for USNF in $USNFLIST; do
if [ -d "$IMGPATH/$USNF" ]; then if [ -d "$MODULESPATH/$USNF" ]; then
NAME=$(get_file_value $IMGPATH/$USNF/module.prop "name=") NAME=$(get_file_value $MODULESPATH/$USNF/module.prop "name=")
ui_print "!" ui_print "!"
log_print "! Module editing fingerprint detected!" log_print "! Module editing fingerprint detected!"
log_print "! Module - '$NAME'!" log_print "! Module - '$NAME'!"
@ -1022,15 +1024,6 @@ bin_check() {
mv -f $MODPATH/system/binpath $MODPATH/system/$BIN >> $LOGFILE 2>&1 mv -f $MODPATH/system/binpath $MODPATH/system/$BIN >> $LOGFILE 2>&1
} }
# Magisk installation check
install_check() {
if [ ! -d "$SERVICEPATH" ]; then
log_print "- Fresh Magisk installation detected."
log_handler "Creating path for boot script."
mkdir -pv $SERVICEPATH >> $LOGFILE 2>&1
fi
}
# Check for late_start service boot script in post-fs-data.d, in case someone's moved it and also delete the old propsconf_post boot script if present # Check for late_start service boot script in post-fs-data.d, in case someone's moved it and also delete the old propsconf_post boot script if present
post_check() { post_check() {
if [ -f "$POSTLATEFILE" ]; then if [ -f "$POSTLATEFILE" ]; then
@ -1073,7 +1066,6 @@ load_settings() {
if [ -f "$LATEFILE" ]; then if [ -f "$LATEFILE" ]; then
. $LATEFILE . $LATEFILE
fi fi
MODPATH=$MOUNTPATH/$MODID
} }
# Installs everything # Installs everything
@ -1085,15 +1077,13 @@ script_install() {
post_check post_check
script_placement script_placement
log_print "- Updating placeholders" log_print "- Updating placeholders"
placeholder_update $LATEFILE CACHELOC CACHE_PLACEHOLDER "$CACHELOC"
placeholder_update $LATEFILE COREPATH CORE_PLACEHOLDER "$COREPATH"
placeholder_update $MODPATH/util_functions.sh MODVERSION VER_PLACEHOLDER "$MODVERSION" placeholder_update $MODPATH/util_functions.sh MODVERSION VER_PLACEHOLDER "$MODVERSION"
placeholder_update $MODPATH/util_functions.sh LATEFILE LATE_PLACEHOLDER "$LATEHOLDER" placeholder_update $MODPATH/util_functions.sh LATEFILE LATE_PLACEHOLDER "$LATEFILE"
placeholder_update $MODPATH/util_functions.sh MIRRORLOC MIRROR_PLACEHOLDER "$MIRRORLOC" placeholder_update $MODPATH/util_functions.sh MIRRORLOC MIRROR_PLACEHOLDER "$MIRRORLOC"
placeholder_update $MODPATH/util_functions.sh CACHELOC CACHE_PLACEHOLDER "$CACHELOC" placeholder_update $MODPATH/util_functions.sh CACHELOC CACHE_PLACEHOLDER "$CACHELOC"
placeholder_update $MODPATH/util_functions.sh BIN BIN_PLACEHOLDER "$BIN" placeholder_update $MODPATH/util_functions.sh BIN BIN_PLACEHOLDER "$BIN"
placeholder_update $MODPATH/system/$BIN/props LATEFILE LATE_PLACEHOLDER "$LATEHOLDER" placeholder_update $MODPATH/system/$BIN/props ADBPATH ADB_PLACEHOLDER "$ADBPATH"
placeholder_update $MODPATH/system/$BIN/props COREPATH CORE_PLACEHOLDER "$COREPATH" placeholder_update $MODPATH/system/$BIN/props LATEFILE LATE_PLACEHOLDER "$LATEFILE"
load_settings load_settings
devsim_update devsim_update
print_files print_files
@ -1114,7 +1104,7 @@ script_install() {
ui_print "- Configuration file found." ui_print "- Configuration file found."
ui_print "- Installing..." ui_print "- Installing..."
ui_print "" ui_print ""
config_file "install" config_file
else else
load_settings load_settings
# Create system.prop in case of no configuration file # Create system.prop in case of no configuration file
@ -1337,7 +1327,7 @@ reset_print() {
# Clear out device simulation variables # Clear out device simulation variables
print_parts "none" print_parts "none"
after_change "$1" "$2" "$3" after_change "$1" "$2"
} }
# Use fingerprint # Use fingerprint
@ -1358,9 +1348,9 @@ change_print() {
NEWFINGERPRINT="" NEWFINGERPRINT=""
if [ "$DEVSIM" == 0 ]; then if [ "$DEVSIM" == 0 ]; then
after_change "$1" "$3" "$4" "noreboot" after_change "$1" "$3" "noreboot"
else else
after_change "$1" "$3" "$4" after_change "$1" "$3"
fi fi
} }
@ -1395,7 +1385,7 @@ change_print_vendor() {
print_parts "$ORIGVENDPRINT" print_parts "$ORIGVENDPRINT"
if [ "$DEVSIM" == 0 ]; then if [ "$DEVSIM" == 0 ]; then
after_change "$1" "$3" "$4" "noreboot" after_change "$1" "$3" "noreboot"
else else
after_change "$1" "$3" after_change "$1" "$3"
fi fi
@ -1503,7 +1493,7 @@ change_sim_prop() {
# Saves new value # Saves new value
replace_fn "${TMPPROP}SET" $SUBA $3 $LATEFILE replace_fn "${TMPPROP}SET" $SUBA $3 $LATEFILE
after_change "$1" "$4" "$5" after_change "$1" "$4"
} }
# Change if description should be simulated or not # Change if description should be simulated or not
@ -1518,7 +1508,7 @@ change_sim_descr() {
# Saves new value # Saves new value
replace_fn DESCRIPTIONSET $DESCRIPTIONSET $2 $LATEFILE replace_fn DESCRIPTIONSET $DESCRIPTIONSET $2 $LATEFILE
after_change "$1" "$3" "$4" after_change "$1" "$3"
} }
# ======================== Props files functions ======================== # ======================== Props files functions ========================
@ -1703,7 +1693,7 @@ reset_prop() {
replace_fn PROPEDIT 1 0 $LATEFILE replace_fn PROPEDIT 1 0 $LATEFILE
fi fi
after_change "$1" "$2" "$3" after_change "$1" "$2"
} }
# Use prop value # Use prop value
@ -1728,7 +1718,7 @@ change_prop() {
fi fi
replace_fn PROPEDIT 0 1 $LATEFILE replace_fn PROPEDIT 0 1 $LATEFILE
after_change "$1" "$3" "$4" after_change "$1" "$3"
} }
# Reset all module prop changes # Reset all module prop changes
@ -1813,7 +1803,7 @@ set_custprop() {
DLIMTMP=$(($DLIMTMP + 1)) DLIMTMP=$(($DLIMTMP + 1))
done done
after_change "$1" "$4" "$5" after_change "$1" "$4"
fi fi
} }
@ -1826,7 +1816,7 @@ reset_all_custprop() {
replace_fn CUSTOMPROPSLATE "\"$CUSTOMPROPSLATE\"" "\"\"" $LATEFILE replace_fn CUSTOMPROPSLATE "\"$CUSTOMPROPSLATE\"" "\"\"" $LATEFILE
replace_fn CUSTOMEDIT 1 0 $LATEFILE replace_fn CUSTOMEDIT 1 0 $LATEFILE
after_change "Resetting all custom props" "$1" "$2" after_change "Resetting all custom props" "$1"
} }
# Reset custom prop value # Reset custom prop value
@ -1881,7 +1871,7 @@ set_delprop() {
replace_fn DELETEPROPS "\"$DELETEPROPS\"" "\"$SORTDELPROPS\"" $LATEFILE replace_fn DELETEPROPS "\"$DELETEPROPS\"" "\"$SORTDELPROPS\"" $LATEFILE
replace_fn DELEDIT 0 1 $LATEFILE replace_fn DELEDIT 0 1 $LATEFILE
after_change "Delete $1" "$2" "$3" after_change "Delete $1" "$2"
fi fi
} }
@ -1892,7 +1882,7 @@ reset_all_delprop() {
replace_fn DELETEPROPS "\"$DELETEPROPS\"" "\"\"" $LATEFILE replace_fn DELETEPROPS "\"$DELETEPROPS\"" "\"\"" $LATEFILE
replace_fn DELEDIT 1 0 $LATEFILE replace_fn DELEDIT 1 0 $LATEFILE
after_change "Reset all props to delete." "$1" "$2" after_change "Reset all props to delete." "$1"
} }
# Reset prop to delete # Reset prop to delete
@ -1939,7 +1929,7 @@ collect_logs() {
CACHELOCTMP=/cache CACHELOCTMP=/cache
fi fi
ITEMTPM=$(echo $ITEM | sed 's|$CACHELOC|$CACHELOCTMP|') ITEMTPM=$(echo $ITEM | sed 's|$CACHELOC|$CACHELOCTMP|')
if [ -f "$a" ]; then if [ -f "$ITEMTPM" ]; then
cp -af $ITEMTPM $TMPLOGLOC >> $LOGFILE 2>&1 cp -af $ITEMTPM $TMPLOGLOC >> $LOGFILE 2>&1
else else
log_handler "$ITEM not available." log_handler "$ITEM not available."

64
install.sh Normal file
View File

@ -0,0 +1,64 @@
##########################################################################################
#
# Magisk Module Installer Script
#
##########################################################################################
##########################################################################################
# Config Flags
##########################################################################################
SKIPMOUNT=false
PROPFILE=false
POSTFSDATA=true
LATESTARTSERVICE=true
##########################################################################################
# Replace list
##########################################################################################
REPLACE="
"
##########################################################################################
# Permissions
##########################################################################################
set_permissions() {
set_perm_recursive $MODPATH 0 0 0755 0644
set_perm $MODPATH/system/$BIN/props 0 0 0755
}
##########################################################################################
# Installation variables and functions for the Magisk module "MagiskHide Props Config"
# Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers.
# Licence: MIT
##########################################################################################
print_modname() {
ui_print "*******************************"
ui_print "MagiskHide Props Config $(grep "version=" $TMPDIR/module.prop | sed 's|.*=||' | sed 's|-.*||')"
ui_print " By Didgeridoohan @XDA"
ui_print "*******************************"
# Load functions and variables
INSTFN=true
. $TMPDIR/util_functions.sh
# Start module installation log
log_start
# Check Magisk version
if [ $MAGISK_VER_CODE -lt 19000 ]; then
ui_print ""
log_print "! Magisk version not supported!"
log_handler "Magisk build $MAGISK_VER_CODE."
abort "! Please install Magisk v19+!"
fi
}
on_install() {
ui_print "- Extracting module files"
unzip -o "$ZIPFILE" 'system/*' -d $MODPATH >&2
# Module script installation
script_install
}

View File

@ -1,7 +1,6 @@
id=MagiskHidePropsConf id=MagiskHidePropsConf
name=MagiskHide Props Config name=MagiskHide Props Config
version=v3.5.1-v50 version=v4.0.0-v51
versionCode=42 versionCode=44
author=Didgeridoohan author=Didgeridoohan
description=Change your device's fingerprint, to pass SafetyNet's CTS Profile check. Edit prop files for better root hiding. Set/reset prop values set by MagiskHide. Change any prop values easily, and set your own custom props. description=Change your device's fingerprint, to pass SafetyNet's CTS Profile check. Edit prop files for better root hiding. Set/reset prop values set by MagiskHide. Change any prop values easily, and set your own custom props.
minMagisk=17000

Binary file not shown.

35
uninstall.sh Normal file
View File

@ -0,0 +1,35 @@
#!/system/bin/sh
# MagiskHide Props Config
# Copyright (c) 2018-2019 Didgeridoohan @ XDA Developers
# Licence: MIT
# Uninstalls the module settings file and directory in Magisk's secure directory
# together with a few module files in /cache.
MODPATH=${0%/*}
# Load functions
. $MODPATH/util_functions.sh
# Variables
DIR=/data/adb/mhpc
# Start logging
log_start
log_handler "Cleaning up module files during uninstall."
if [ -d "$DIR" ]; then
log_handler "Removing settings file(s)."
echo "Deleting $DIR" >> $LOGFILE 2>&1
rm -rf "$DIR" >> $LOGFILE 2>&1
fi
log_handler "Checking for files to remove in $CACHELOC."
for ITEM in $CACHEFILES; do
if [ -f "$CACHELOC/$ITEM" ]; then
echo "Deleting ${ITEM}." >> $LOGFILE 2>&1
rm -f $CACHELOC/$ITEM >> $LOGFILE 2>&1
fi
done