-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 94685ab
Showing
11 changed files
with
339 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
# Declare files that will always have LF line endings on checkout. | ||
META-INF/** text eol=lf | ||
common/** text eol=lf | ||
module.prop text eol=lf | ||
changelog.txt text eol=lf | ||
|
||
# Denote all files that are truly binary and should not be modified. | ||
system/** binary |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,190 @@ | ||
#!/sbin/sh | ||
|
||
################# | ||
# Initialization | ||
################# | ||
|
||
umask 022 | ||
|
||
# echo before loading util_functions | ||
ui_print() { echo "$1"; } | ||
|
||
require_new_magisk() { | ||
ui_print "*******************************" | ||
ui_print " Please install Magisk v19.0+! " | ||
ui_print "*******************************" | ||
exit 1 | ||
} | ||
|
||
######################### | ||
# Load util_functions.sh | ||
######################### | ||
|
||
OUTFD=$2 | ||
ZIPFILE=$3 | ||
|
||
mount /data 2>/dev/null | ||
|
||
[ -f /data/adb/magisk/util_functions.sh ] || require_new_magisk | ||
. /data/adb/magisk/util_functions.sh | ||
[ $MAGISK_VER_CODE -lt 19000 ] && require_new_magisk | ||
|
||
if [ $MAGISK_VER_CODE -ge 20400 ]; then | ||
# New Magisk have complete installation logic within util_functions.sh | ||
install_module | ||
exit 0 | ||
fi | ||
|
||
################# | ||
# Legacy Support | ||
################# | ||
|
||
TMPDIR=/dev/tmp | ||
PERSISTDIR=/sbin/.magisk/mirror/persist | ||
|
||
is_legacy_script() { | ||
unzip -l "$ZIPFILE" install.sh | grep -q install.sh | ||
return $? | ||
} | ||
|
||
print_modname() { | ||
local len | ||
len=`echo -n $MODNAME | wc -c` | ||
len=$((len + 2)) | ||
local pounds=`printf "%${len}s" | tr ' ' '*'` | ||
ui_print "$pounds" | ||
ui_print " $MODNAME " | ||
ui_print "$pounds" | ||
ui_print "*******************" | ||
ui_print " Powered by Magisk " | ||
ui_print "*******************" | ||
} | ||
|
||
# Override abort as old scripts have some issues | ||
abort() { | ||
ui_print "$1" | ||
$BOOTMODE || recovery_cleanup | ||
[ -n $MODPATH ] && rm -rf $MODPATH | ||
rm -rf $TMPDIR | ||
exit 1 | ||
} | ||
|
||
rm -rf $TMPDIR 2>/dev/null | ||
mkdir -p $TMPDIR | ||
|
||
# Preperation for flashable zips | ||
setup_flashable | ||
|
||
# Mount partitions | ||
mount_partitions | ||
|
||
# Detect version and architecture | ||
api_level_arch_detect | ||
|
||
# Setup busybox and binaries | ||
$BOOTMODE && boot_actions || recovery_actions | ||
|
||
############## | ||
# Preparation | ||
############## | ||
|
||
# Extract prop file | ||
unzip -o "$ZIPFILE" module.prop -d $TMPDIR >&2 | ||
[ ! -f $TMPDIR/module.prop ] && abort "! Unable to extract zip file!" | ||
|
||
$BOOTMODE && MODDIRNAME=modules_update || MODDIRNAME=modules | ||
MODULEROOT=$NVBASE/$MODDIRNAME | ||
MODID=`grep_prop id $TMPDIR/module.prop` | ||
MODPATH=$MODULEROOT/$MODID | ||
MODNAME=`grep_prop name $TMPDIR/module.prop` | ||
|
||
# Create mod paths | ||
rm -rf $MODPATH 2>/dev/null | ||
mkdir -p $MODPATH | ||
|
||
########## | ||
# Install | ||
########## | ||
|
||
if is_legacy_script; then | ||
unzip -oj "$ZIPFILE" module.prop install.sh uninstall.sh 'common/*' -d $TMPDIR >&2 | ||
|
||
# Load install script | ||
. $TMPDIR/install.sh | ||
|
||
# Callbacks | ||
print_modname | ||
on_install | ||
|
||
# Custom uninstaller | ||
[ -f $TMPDIR/uninstall.sh ] && cp -af $TMPDIR/uninstall.sh $MODPATH/uninstall.sh | ||
|
||
# Skip mount | ||
$SKIPMOUNT && touch $MODPATH/skip_mount | ||
|
||
# prop file | ||
$PROPFILE && cp -af $TMPDIR/system.prop $MODPATH/system.prop | ||
|
||
# Module info | ||
cp -af $TMPDIR/module.prop $MODPATH/module.prop | ||
|
||
# post-fs-data scripts | ||
$POSTFSDATA && cp -af $TMPDIR/post-fs-data.sh $MODPATH/post-fs-data.sh | ||
|
||
# service scripts | ||
$LATESTARTSERVICE && cp -af $TMPDIR/service.sh $MODPATH/service.sh | ||
|
||
ui_print "- Setting permissions" | ||
set_permissions | ||
else | ||
print_modname | ||
|
||
unzip -o "$ZIPFILE" customize.sh -d $MODPATH >&2 | ||
|
||
if ! grep -q '^SKIPUNZIP=1$' $MODPATH/customize.sh 2>/dev/null; then | ||
ui_print "- Extracting module files" | ||
unzip -o "$ZIPFILE" -x 'META-INF/*' -d $MODPATH >&2 | ||
|
||
# Default permissions | ||
set_perm_recursive $MODPATH 0 0 0755 0644 | ||
fi | ||
|
||
# Load customization script | ||
[ -f $MODPATH/customize.sh ] && . $MODPATH/customize.sh | ||
fi | ||
|
||
# Handle replace folders | ||
for TARGET in $REPLACE; do | ||
ui_print "- Replace target: $TARGET" | ||
mktouch $MODPATH$TARGET/.replace | ||
done | ||
|
||
if $BOOTMODE; then | ||
# Update info for Magisk Manager | ||
mktouch $NVBASE/modules/$MODID/update | ||
cp -af $MODPATH/module.prop $NVBASE/modules/$MODID/module.prop | ||
fi | ||
|
||
# Copy over custom sepolicy rules | ||
if [ -f $MODPATH/sepolicy.rule -a -e $PERSISTDIR ]; then | ||
ui_print "- Installing custom sepolicy patch" | ||
PERSISTMOD=$PERSISTDIR/magisk/$MODID | ||
mkdir -p $PERSISTMOD | ||
cp -af $MODPATH/sepolicy.rule $PERSISTMOD/sepolicy.rule | ||
fi | ||
|
||
# Remove stuffs that don't belong to modules | ||
rm -rf \ | ||
$MODPATH/system/placeholder $MODPATH/customize.sh \ | ||
$MODPATH/README.md $MODPATH/.git* 2>/dev/null | ||
|
||
############# | ||
# Finalizing | ||
############# | ||
|
||
cd / | ||
$BOOTMODE || recovery_cleanup | ||
rm -rf $TMPDIR | ||
|
||
ui_print "- Done" | ||
exit 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
#MAGISK |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# MiUI System Launcher for Poco phones | ||
### Hamza417 @ xda-developers | ||
*Adds native System Launcher of MiUI in Poco Phones* | ||
|
||
### Description | ||
Poco Phones including Poco F1 and Poco X2 ships Poco Launcher with their phones and doesn't include the default MiUI System Launcher that comes with the MiUI. The problem with Poco Launcher is it doesn't support many reactive animations as the default System Launcher does such as unlocked animation and some other animations that Poco Launcher lacks. Poco Launcher fails to trigger some animations after reboot until it is set to default launcher again after replacing it. | ||
|
||
This module fixes these problems by adding the native MiUI System Launcher into the /System/priv-app in such phones that runs on MiUI but don't include the native launcher. | ||
|
||
### Notes | ||
This module doesn't add any extra modifications to the system and after installing this module the launcher updates can be installed as regular apps. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
/magisk(/.*)? u:object_r:system_file:s0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
#!/system/bin/sh | ||
# Please don't hardcode /magisk/modname/... ; instead, please use $MODDIR/... | ||
# This will make your scripts compatible even if Magisk change its mount point in the future | ||
MODDIR=${0%/*} | ||
|
||
# This script will be executed in post-fs-data mode | ||
# More info in the main Magisk thread |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
#!/system/bin/sh | ||
# Please don't hardcode /magisk/modname/... ; instead, please use $MODDIR/... | ||
# This will make your scripts compatible even if Magisk change its mount point in the future | ||
MODDIR=${0%/*} | ||
|
||
# This script will be executed in late_start service mode | ||
# More info in the main Magisk thread |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# This file will be read by resetprop | ||
# Example: Change dpi | ||
# ro.sf.lcd_density=320 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
########################################################################################## | ||
# | ||
# Magisk | ||
# by topjohnwu | ||
# | ||
# This is a template zip for developers | ||
# | ||
########################################################################################## | ||
########################################################################################## | ||
# | ||
# Instructions: | ||
# | ||
# 1. Place your files into system folder (delete the placeholder file) | ||
# 2. Fill in your module's info into module.prop | ||
# 3. Configure the settings in this file (common/config.sh) | ||
# 4. For advanced features, add shell commands into the script files under common: | ||
# post-fs-data.sh, service.sh | ||
# 5. For changing props, add your additional/modified props into common/system.prop | ||
# | ||
########################################################################################## | ||
|
||
########################################################################################## | ||
# Defines | ||
########################################################################################## | ||
|
||
# NOTE: This part has to be adjusted to fit your own needs | ||
|
||
# This will be the folder name under /magisk | ||
# This should also be the same as the id in your module.prop to prevent confusion | ||
MODID=Miui System Launcher | ||
|
||
# Set to true if you need to enable Magic Mount | ||
# Most mods would like it to be enabled | ||
AUTOMOUNT=true | ||
|
||
# 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=false | ||
|
||
########################################################################################## | ||
# Installation Message | ||
########################################################################################## | ||
|
||
# Set what you want to show when installing your mod | ||
|
||
print_modname() { | ||
ui_print "*******************************" | ||
ui_print " MiUI System Launcher " | ||
ui_print " for Poco F1/Poco X2 " | ||
ui_print " " | ||
ui_print " by Hamza417@xda " | ||
ui_print "*******************************" | ||
} | ||
|
||
########################################################################################## | ||
# Replace list | ||
########################################################################################## | ||
|
||
# List all directories you want to directly replace in the system | ||
# By default Magisk will merge your files with the original system | ||
# Directories listed here however, will be directly mounted to the correspond directory in the system | ||
|
||
# You don't need to remove the example below, these values will be overwritten by your own list | ||
# This is an example | ||
REPLACE=" | ||
/system/app/Youtube | ||
/system/priv-app/SystemUI | ||
/system/priv-app/Settings | ||
/system/framework | ||
" | ||
|
||
# Construct your own list here, it will overwrite the example | ||
# !DO NOT! remove this if you don't need to replace anything, leave it empty as it is now | ||
REPLACE=" | ||
/system/priv-app/SystemLauncher | ||
" | ||
|
||
########################################################################################## | ||
# Permissions | ||
########################################################################################## | ||
|
||
# NOTE: This part has to be adjusted to fit your own needs | ||
|
||
set_permissions() { | ||
# Default permissions, don't remove them | ||
set_perm_recursive $MODPATH 0 0 0755 0644 | ||
|
||
# Only some special files require specific permissions | ||
# The default permissions should be good enough for most cases | ||
|
||
# Some templates if you have no idea what to do: | ||
|
||
# set_perm_recursive <dirname> <owner> <group> <dirpermission> <filepermission> <contexts> (default: u:object_r:system_file:s0) | ||
# set_perm_recursive $MODPATH/system/lib 0 0 0755 0644 | ||
|
||
# set_perm <filename> <owner> <group> <permission> <contexts> (default: u:object_r:system_file:s0) | ||
# 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 | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
id=miuisystemlauncher | ||
name=Miui System Launcher | ||
version=v-ALPHA-4.23.0.3277 | ||
versionCode=1 | ||
author=Hamza Rizwan | ||
description=Systemless-ly installs Miui System Launcher in Poco F1/Poco X2 and maybe other MiUI based phones that doesn't have System Launcher pre-included |
Binary file not shown.