From 6219d36dbbd60a11dbe7635d4909ae68521cfe1a Mon Sep 17 00:00:00 2001 From: quindecim Date: Sat, 4 Jan 2020 18:03:04 -0500 Subject: [PATCH] [New Magisk module template] - renamed in customized.sh --- install.sh | 202 ----------------------------------------------------- 1 file changed, 202 deletions(-) delete mode 100644 install.sh diff --git a/install.sh b/install.sh deleted file mode 100644 index 20f8269..0000000 --- a/install.sh +++ /dev/null @@ -1,202 +0,0 @@ -########################################################################################## -# -# Magisk Module Installer Script -# -########################################################################################## -########################################################################################## -# -# Instructions: -# -# 1. Place your files into system folder (delete the placeholder file) -# 2. Fill in your module's info into module.prop -# 3. Configure and implement callbacks in this file -# 4. If you need boot scripts, add them into common/post-fs-data.sh or common/service.sh -# 5. Add your additional or modified system properties into common/system.prop -# -########################################################################################## - -########################################################################################## -# Config Flags -########################################################################################## - -# Set to true if you do *NOT* want Magisk to mount -# any files for you. Most modules would NOT want -# to set this flag to true -SKIPMOUNT=false - -# Set to true if you need to load system.prop -PROPFILE=false - -# Set to true if you need post-fs-data script -POSTFSDATA=false - -# Set to true if you need late_start service script -LATESTARTSERVICE=true - -########################################################################################## -# Replace list -########################################################################################## - -# List all directories you want to directly replace in the system -# Check the documentations for more info why you would need this - -# Construct your list in the following format -# This is an example -REPLACE_EXAMPLE=" -/system/app/Youtube -/system/priv-app/SystemUI -/system/priv-app/Settings -/system/framework -" - -# Construct your own list here -REPLACE=" -" - -########################################################################################## -# -# Function Callbacks -# -# The following functions will be called by the installation framework. -# You do not have the ability to modify update-binary, the only way you can customize -# installation is through implementing these functions. -# -# When running your callbacks, the installation framework will make sure the Magisk -# internal busybox path is *PREPENDED* to PATH, so all common commands shall exist. -# Also, it will make sure /data, /system, and /vendor is properly mounted. -# -########################################################################################## -########################################################################################## -# -# The installation framework will export some variables and functions. -# You should use these variables and functions for installation. -# -# ! DO NOT use any Magisk internal paths as those are NOT public API. -# ! DO NOT use other functions in util_functions.sh as they are NOT public API. -# ! Non public APIs are not guranteed to maintain compatibility between releases. -# -# Available variables: -# -# MAGISK_VER (string): the version string of current installed Magisk -# MAGISK_VER_CODE (int): the version code of current installed Magisk -# BOOTMODE (bool): true if the module is currently installing in Magisk Manager -# MODPATH (path): the path where your module files should be installed -# TMPDIR (path): a place where you can temporarily store files -# ZIPFILE (path): your module's installation zip -# ARCH (string): the architecture of the device. Value is either arm, arm64, x86, or x64 -# IS64BIT (bool): true if $ARCH is either arm64 or x64 -# API (int): the API level (Android version) of the device -# -# Availible functions: -# -# ui_print -# print to console -# Avoid using 'echo' as it will not display in custom recovery's console -# -# abort -# print error message to console and terminate installation -# Avoid using 'exit' as it will skip the termination cleanup steps -# -# set_perm [context] -# if [context] is empty, it will default to "u:object_r:system_file:s0" -# this function is a shorthand for the following commands -# chown owner.group target -# chmod permission target -# chcon context target -# -# set_perm_recursive [context] -# if [context] is empty, it will default to "u:object_r:system_file:s0" -# for all files in , it will call: -# set_perm file owner group filepermission context -# for all directories in (including itself), it will call: -# set_perm dir owner group dirpermission context -# -########################################################################################## -########################################################################################## -# If you need boot scripts, DO NOT use general boot scripts (post-fs-data.d/service.d) -# ONLY use module scripts as it respects the module status (remove/disable) and is -# guaranteed to maintain the same behavior in future Magisk releases. -# Enable boot scripts by setting the flags in the config section above. -########################################################################################## - -# Set what you want to display when installing your module - -print_modname() { - ui_print " " - ui_print "******************************" - ui_print "* dnscrypt-proxy-android *" - ui_print "* 2.0.36 *" - ui_print "******************************" - ui_print "* quindecim *" - ui_print "******************************" - ui_print " " -} - -# Copy/extract your module files into $MODPATH in on_install. - -on_install() { - # The following is the default implementation: extract $ZIPFILE/system to $MODPATH - # Extend/change the logic to whatever you want - - if [ "$ARCH" == "arm" ];then - BINARY_PATH=$TMPDIR/binary/dnscrypt-proxy-arm - elif [ "$ARCH" == "arm64" ];then - BINARY_PATH=$TMPDIR/binary/dnscrypt-proxy-arm64 - elif [ "$ARCH" == "x86" ];then - BINARY_PATH=$TMPDIR/binary/dnscrypt-proxy-x86 - elif [ "$ARCH" == "x64" ];then - BINARY_PATH=$TMPDIR/binary/dnscrypt-proxy-x86_64 - fi - - CONFIG_PATH=$TMPDIR/config - - unzip -o "$ZIPFILE" 'config/*' 'binary/*' -d $TMPDIR - - ui_print "* Creating binary path" - mkdir -p $MODPATH/system/bin - - ui_print "* Creating config path" - mkdir -p /data/media/0/dnscrypt-proxy - - if [ -f "$BINARY_PATH" ]; then - ui_print "* Copying binary for $ARCH" - cp -af $BINARY_PATH $MODPATH/system/bin/dnscrypt-proxy - else - abort "Binary file for $ARCH is missing!" - fi - -# Backup an existing config file before proceed | quindecim - -CONFIG_FILE="/data/media/0/dnscrypt-proxy/dnscrypt-proxy.toml" - - if [ -f "$CONFIG_FILE" ]; then - ui_print "* Backing up config file" - cp -afv $CONFIG_FILE ${CONFIG_FILE}-`date +%Y%m%d%H%M`.bak - fi - - if [ -d "$CONFIG_PATH" ]; then - ui_print "* Copying config, example and license files" - cp -af $CONFIG_PATH/* /data/media/0/dnscrypt-proxy/ - else - abort "Config file is missing!" - fi - -} - -# Only some special files require specific permissions -# This function will be called after on_install is done -# The default permissions should be good enough for most cases - - -set_permissions() { - # The following is the default rule, DO NOT remove - set_perm_recursive $MODPATH 0 0 0755 0644 - set_perm $MODPATH/system/bin/dnscrypt-proxy 0 0 0755 - # Here are some examples: - # set_perm_recursive $MODPATH/system/lib 0 0 0755 0644 - # set_perm $MODPATH/system/bin/app_process32 0 2000 0755 u:object_r:zygote_exec:s0 - # set_perm $MODPATH/system/bin/dex2oat 0 2000 0755 u:object_r:dex2oat_exec:s0 - # set_perm $MODPATH/system/lib/libart.so 0 0 0644 -} - -# You can add more functions to assist your custom script code