Skip to content

Commit 0792246

Browse files
Micboost: update to latest magisk template
Signed-off-by: sunilpaulmathew <sunil.kde@gmail.com>
1 parent 685e0e4 commit 0792246

9 files changed

Lines changed: 257 additions & 225 deletions

File tree

META-INF/com/google/android/update-binary

100755100644
Lines changed: 64 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,67 +1,56 @@
11
#!/sbin/sh
2-
##########################################################################################
3-
#
4-
# Magisk Module Template Install Script
5-
# by topjohnwu
6-
#
7-
##########################################################################################
8-
9-
# Detect whether in boot mode
10-
ps | grep zygote | grep -v grep >/dev/null && BOOTMODE=true || BOOTMODE=false
11-
$BOOTMODE || ps -A 2>/dev/null | grep zygote | grep -v grep >/dev/null && BOOTMODE=true
122

133
TMPDIR=/dev/tmp
14-
INSTALLER=$TMPDIR/install
15-
MAGISKBIN=/data/adb/magisk
4+
MOUNTPATH=/dev/magisk_img
165

176
# Default permissions
187
umask 022
198

209
# Initial cleanup
2110
rm -rf $TMPDIR 2>/dev/null
22-
mkdir -p $INSTALLER
11+
mkdir -p $TMPDIR
2312

2413
# echo before loading util_functions
2514
ui_print() { echo "$1"; }
2615

2716
require_new_magisk() {
28-
ui_print "*******************************"
29-
ui_print " Please install Magisk v15.0+! "
30-
ui_print "*******************************"
17+
ui_print "***********************************"
18+
ui_print " Please install the latest Magisk! "
19+
ui_print "***********************************"
3120
exit 1
3221
}
3322

23+
imageless_magisk() {
24+
[ $MAGISK_VER_CODE -gt 18100 ]
25+
return $?
26+
}
27+
3428
##########################################################################################
3529
# Environment
3630
##########################################################################################
3731

3832
OUTFD=$2
39-
ZIP=$3
33+
ZIPFILE=$3
4034

4135
mount /data 2>/dev/null
4236

43-
# Utility functions must exist
44-
[ -f $MAGISKBIN/util_functions.sh ] || require_new_magisk
45-
# Load utility fuctions
46-
. $MAGISKBIN/util_functions.sh
47-
48-
# We can't alter magisk image live, use alternative image if required
49-
$BOOTMODE && IMG=/data/adb/magisk_merge.img
50-
# Always mount under tmp
51-
MOUNTPATH=$TMPDIR/magisk_img
37+
# Load utility functions
38+
if [ -f /data/adb/magisk/util_functions.sh ]; then
39+
. /data/adb/magisk/util_functions.sh
40+
NVBASE=/data/adb
41+
else
42+
require_new_magisk
43+
fi
5244

5345
# Preperation for flashable zips
54-
get_outfd
46+
setup_flashable
5547

5648
# Mount partitions
5749
mount_partitions
5850

5951
# Detect version and architecture
6052
api_level_arch_detect
6153

62-
# You can get the Android API version from $API, the CPU architecture from $ARCH
63-
# Useful if you are creating Android version / platform dependent mods
64-
6554
# Setup busybox and binaries
6655
$BOOTMODE && boot_actions || recovery_actions
6756

@@ -70,22 +59,28 @@ $BOOTMODE && boot_actions || recovery_actions
7059
##########################################################################################
7160

7261
# Extract common files
73-
unzip -o "$ZIP" module.prop config.sh 'common/*' -d $INSTALLER >&2
74-
75-
[ ! -f $INSTALLER/config.sh ] && abort "! Unable to extract zip file!"
76-
# Load configurations
77-
. $INSTALLER/config.sh
62+
unzip -oj "$ZIPFILE" module.prop install.sh uninstall.sh 'common/*' -d $TMPDIR >&2
63+
64+
[ ! -f $TMPDIR/install.sh ] && abort "! Unable to extract zip file!"
65+
# Load install script
66+
. $TMPDIR/install.sh
67+
68+
if imageless_magisk; then
69+
$BOOTMODE && MODDIRNAME=modules_update || MODDIRNAME=modules
70+
MODULEROOT=$NVBASE/$MODDIRNAME
71+
else
72+
$BOOTMODE && IMGNAME=magisk_merge.img || IMGNAME=magisk.img
73+
IMG=$NVBASE/$IMGNAME
74+
request_zip_size_check "$ZIPFILE"
75+
mount_magisk_img
76+
MODULEROOT=$MOUNTPATH
77+
fi
7878

79-
# Check the installed magisk version
80-
MIN_VER=`grep_prop minMagisk $INSTALLER/module.prop`
81-
[ ! -z $MAGISK_VER_CODE -a $MAGISK_VER_CODE -ge $MIN_VER ] || require_new_magisk
82-
MODID=`grep_prop id $INSTALLER/module.prop`
83-
MODPATH=$MOUNTPATH/$MODID
79+
MODID=`grep_prop id $TMPDIR/module.prop`
80+
MODPATH=$MODULEROOT/$MODID
8481

85-
# Print mod name
8682
print_modname
8783

88-
# Please leave this message in your flashable zip for credits :)
8984
ui_print "******************************"
9085
ui_print "Powered by Magisk (@topjohnwu)"
9186
ui_print "******************************"
@@ -94,47 +89,51 @@ ui_print "******************************"
9489
# Install
9590
##########################################################################################
9691

97-
# Get the variable reqSizeM. Use your own method to determine reqSizeM if needed
98-
request_zip_size_check "$ZIP"
99-
100-
# This function will mount $IMG to $MOUNTPATH, and resize the image based on $reqSizeM
101-
mount_magisk_img
102-
10392
# Create mod paths
10493
rm -rf $MODPATH 2>/dev/null
10594
mkdir -p $MODPATH
10695

107-
# Extract files to system. Use your own method if needed
108-
ui_print "- Extracting module files"
109-
unzip -o "$ZIP" 'system/*' -d $MODPATH >&2
96+
on_install
11097

11198
# Remove placeholder
11299
rm -f $MODPATH/system/placeholder 2>/dev/null
113100

114-
# Handle replace folders
115-
for TARGET in $REPLACE; do
116-
mktouch $MODPATH$TARGET/.replace
117-
done
101+
# Custom uninstaller
102+
[ -f $TMPDIR/uninstall.sh ] && cp -af $TMPDIR/uninstall.sh $MODPATH/uninstall.sh
118103

119104
# Auto Mount
120-
$AUTOMOUNT && touch $MODPATH/auto_mount
105+
if imageless_magisk; then
106+
$SKIPMOUNT && touch $MODPATH/skip_mount
107+
else
108+
$SKIPMOUNT || touch $MODPATH/auto_mount
109+
fi
121110

122111
# prop files
123-
$PROPFILE && cp -af $INSTALLER/common/system.prop $MODPATH/system.prop
112+
$PROPFILE && cp -af $TMPDIR/system.prop $MODPATH/system.prop
124113

125114
# Module info
126-
cp -af $INSTALLER/module.prop $MODPATH/module.prop
115+
cp -af $TMPDIR/module.prop $MODPATH/module.prop
127116
if $BOOTMODE; then
128117
# Update info for Magisk Manager
129-
mktouch /sbin/.core/img/$MODID/update
130-
cp -af $INSTALLER/module.prop /sbin/.core/img/$MODID/module.prop
118+
if imageless_magisk; then
119+
mktouch $NVBASE/modules/$MODID/update
120+
cp -af $TMPDIR/module.prop $NVBASE/modules/$MODID/module.prop
121+
else
122+
mktouch /sbin/.magisk/img/$MODID/update
123+
cp -af $TMPDIR/module.prop /sbin/.magisk/img/$MODID/module.prop
124+
fi
131125
fi
132126

133127
# post-fs-data mode scripts
134-
$POSTFSDATA && cp -af $INSTALLER/common/post-fs-data.sh $MODPATH/post-fs-data.sh
128+
$POSTFSDATA && cp -af $TMPDIR/post-fs-data.sh $MODPATH/post-fs-data.sh
135129

136130
# service mode scripts
137-
$LATESTARTSERVICE && cp -af $INSTALLER/common/service.sh $MODPATH/service.sh
131+
$LATESTARTSERVICE && cp -af $TMPDIR/service.sh $MODPATH/service.sh
132+
133+
# Handle replace folders
134+
for TARGET in $REPLACE; do
135+
mktouch $MODPATH$TARGET/.replace
136+
done
138137

139138
ui_print "- Setting permissions"
140139
set_permissions
@@ -143,11 +142,10 @@ set_permissions
143142
# Finalizing
144143
##########################################################################################
145144

146-
# Unmount magisk image and shrink if possible
147-
unmount_magisk_img
148-
145+
cd /
146+
imageless_magisk || unmount_magisk_img
149147
$BOOTMODE || recovery_cleanup
150-
rm -rf $TMPDIR
148+
rm -rf $TMPDIR $MOUNTPATH
151149

152150
ui_print "- Done"
153151
exit 0

README.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
1-
## Microphone boost for Lineage-OS 15.1 v1.2
1+
## Microphone boost for Lineage-OS
22

3-
### This repo holds the source code of Microphone boost for Lineage-OS 15.1 Magisk Module
3+
by <i>sunilpaulmathew@xda-developers.com</i>
44

5-
### This module will boost Microphone volume in Lineage-OS 15.1 and other LOS based Oreo ROMs (kltexxx). Please note: This module will modify "/system/vendor/etc/mixer_paths.xml"
5+
<b>Version</b>: <i>1.3</i>
6+
7+
<b>Microphone boost for Lineage-OS Oreo/Pie v1.3</b>
8+
9+
### Disclaimer
10+
11+
<b>This module is made for personal use only.</b>

build.sh

Lines changed: 0 additions & 44 deletions
This file was deleted.

common/post-fs-data.sh

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
#!/system/bin/sh
2-
# Please don't hardcode /magisk/modname/... ; instead, please use $MODDIR/...
3-
# This will make your scripts compatible even if Magisk change its mount point in the future
2+
# Do NOT assume where your module will be located.
3+
# ALWAYS use $MODDIR if you need to know where this script
4+
# and module is placed.
5+
# This will make sure your module will still work
6+
# if Magisk change its mount point in the future
47
MODDIR=${0%/*}
58

69
# This script will be executed in post-fs-data mode
7-
# More info in the main Magisk thread

common/service.sh

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
#!/system/bin/sh
2-
# Please don't hardcode /magisk/modname/... ; instead, please use $MODDIR/...
3-
# This will make your scripts compatible even if Magisk change its mount point in the future
2+
# Do NOT assume where your module will be located.
3+
# ALWAYS use $MODDIR if you need to know where this script
4+
# and module is placed.
5+
# This will make sure your module will still work
6+
# if Magisk change its mount point in the future
47
MODDIR=${0%/*}
58

69
# This script will be executed in late_start service mode
7-
# More info in the main Magisk thread

0 commit comments

Comments
 (0)