├── system └── placeholder ├── sepolicy.rule ├── uninstall.sh ├── META-INF └── com │ └── google │ └── android │ ├── updater-script │ └── update-binary ├── system.prop ├── module.prop ├── post-fs-data.sh ├── service.sh ├── .gitattributes ├── README.md └── customize.sh /system/placeholder: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /sepolicy.rule: -------------------------------------------------------------------------------- 1 | # 该文件允许您自定义SELinux规则 2 | -------------------------------------------------------------------------------- /uninstall.sh: -------------------------------------------------------------------------------- 1 | # 该脚本将在卸载期间执行,您可以编写自定义卸载规则 2 | -------------------------------------------------------------------------------- /META-INF/com/google/android/updater-script: -------------------------------------------------------------------------------- 1 | #MAGISK 2 | -------------------------------------------------------------------------------- /system.prop: -------------------------------------------------------------------------------- 1 | # 这个文件将被 resetprop 读取 2 | # 示例: 改变 dpi 3 | # ro.sf.lcd_density=320 4 | -------------------------------------------------------------------------------- /module.prop: -------------------------------------------------------------------------------- 1 | id=template 2 | name=magisk模块模板 3 | version=v1 4 | versionCode=1 5 | author=依然的爱 6 | description=描述 7 | -------------------------------------------------------------------------------- /post-fs-data.sh: -------------------------------------------------------------------------------- 1 | #!/system/bin/sh 2 | # 不要假设您的模块将位于何处。 3 | # 如果您需要知道此脚本和模块的放置位置,请使用$MODDIR 4 | # 这将确保您的模块仍能正常工作 5 | # 即使Magisk将来更改其挂载点 6 | MODDIR=${0%/*} 7 | 8 | # 此脚本将在post-fs-data模式下执行 9 | -------------------------------------------------------------------------------- /service.sh: -------------------------------------------------------------------------------- 1 | #!/system/bin/sh 2 | # 不要假设您的模块将位于何处。 3 | # 如果您需要知道此脚本和模块的放置位置,请使用$MODDIR 4 | # 这将确保您的模块仍能正常工作 5 | # 即使Magisk将来更改其挂载点 6 | MODDIR=${0%/*} 7 | 8 | # 此脚本将在late_start service 模式执行 9 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Declare files that will always have LF line endings on checkout. 2 | META-INF/** text eol=lf 3 | *.prop text eol=lf 4 | *.sh text eol=lf 5 | *.md text eol=lf 6 | 7 | # Denote all files that are truly binary and should not be modified. 8 | system/** binary 9 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Magisk 模块模板非官方中文版 2 | ### E7KMbb/依然的爱 3 | 4 | [English Version](https://github.com/E7KMbb/magisk-module-installer) 5 | 6 | **如果你想把模块上传到在线存储库,请修改 `README.md` !** 当用户点击 Magisk Manager 中的模块时,这个 "README.md" 将显示在 Webview 对话框中,所以请确保在这里放置一些信息/修改日志/注释。 7 | 8 | 有关如何使用此模块安装程序的更多信息,请参考 [汉化官方文档](https://e7kmbb.github.io/Magisk/guides.html) 9 | 10 | 如果你不熟悉 Markdown 的语法,可以从GitHub的在线 Markdown 编辑器开始,它将允许你在发布之前进行预览。 如果你需要更多帮助, [Markdown Cheat Sheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet) 将非常方便. 11 | -------------------------------------------------------------------------------- /META-INF/com/google/android/update-binary: -------------------------------------------------------------------------------- 1 | #!/sbin/sh 2 | 3 | ################# 4 | # 初始化 5 | ################# 6 | 7 | umask 022 8 | 9 | # 加载util_functions之前 10 | ui_print() { echo "$1"; } 11 | 12 | require_new_magisk() { 13 | ui_print "*******************************" 14 | ui_print " 请安装 Magisk v20.4+! " 15 | ui_print "*******************************" 16 | exit 1 17 | } 18 | 19 | ######################### 20 | # 本地 util_functions.sh 21 | ######################### 22 | 23 | OUTFD=$2 24 | ZIPFILE=$3 25 | 26 | mount /data 2>/dev/null 27 | 28 | [ -f /data/adb/magisk/util_functions.sh ] || require_new_magisk 29 | . /data/adb/magisk/util_functions.sh 30 | [ $MAGISK_VER_CODE -lt 20400 ] && require_new_magisk 31 | 32 | install_module 33 | exit 0 34 | -------------------------------------------------------------------------------- /customize.sh: -------------------------------------------------------------------------------- 1 | ########################################################################################## 2 | # 3 | # Magisk模块安装脚本 4 | # 5 | ########################################################################################## 6 | ########################################################################################## 7 | # 8 | # 使用说明: 9 | # 10 | # 1. 将文件放入系统文件夹(删除placeholder文件) 11 | # 2. 在module.prop中填写您的模块信息 12 | # 3. 在此文件中配置和调整 13 | # 4. 如果需要开机执行脚本,请将其添加到post-fs-data.sh或service.sh 14 | # 5. 将其他或修改的系统属性添加到system.prop 15 | # 16 | ########################################################################################## 17 | ########################################################################################## 18 | # 19 | # 安装框架将导出一些变量和函数。 20 | # 您应该使用这些变量和函数来进行安装。 21 | # 22 | # !请不要使用任何Magisk的内部路径,因为它们不是公共API。 23 | # !请不要在util_functions.sh中使用其他函数,因为它们也不是公共API。 24 | # !不能保证非公共API在版本之间保持兼容性。 25 | # 26 | # 可用变量: 27 | # 28 | # MAGISK_VER (string):当前已安装Magisk的版本的字符串(字符串形式的Magisk版本) 29 | # MAGISK_VER_CODE (int):当前已安装Magisk的版本的代码(整型变量形式的Magisk版本) 30 | # BOOTMODE (bool):如果模块当前安装在Magisk Manager中,则为true。 31 | # MODPATH (path):你的模块应该被安装到的路径 32 | # TMPDIR (path):一个你可以临时存储文件的路径 33 | # ZIPFILE (path):模块的安装包(zip)的路径 34 | # ARCH (string): 设备的体系结构。其值为arm、arm64、x86、x64之一 35 | # IS64BIT (bool):如果$ARCH(上方的ARCH变量)为arm64或x64,则为true。 36 | # API (int):设备的API级别(Android版本) 37 | # 38 | # 可用函数: 39 | # 40 | # ui_print 41 | # 打印(print)到控制台 42 | # 避免使用'echo',因为它不会显示在定制recovery的控制台中。 43 | # 44 | # abort 45 | # 打印错误信息到控制台并终止安装 46 | # 避免使用'exit',因为它会跳过终止的清理步骤 47 | # 48 | ########################################################################################## 49 | 50 | ########################################################################################## 51 | # 变量 52 | ########################################################################################## 53 | 54 | # 如果您需要更多的自定义,并且希望自己做所有事情 55 | # 请在custom.sh中标注SKIPUNZIP=1 56 | # 以跳过提取操作并应用默认权限/上下文上下文步骤。 57 | # 请注意,这样做后,您的custom.sh将负责自行安装所有内容。 58 | SKIPUNZIP=0 59 | # 如果您需要调用Magisk内部的busybox 60 | # 请在custom.sh中标注ASH_STANDALONE=1 61 | ASH_STANDALONE=0 62 | 63 | ########################################################################################## 64 | # 替换列表 65 | ########################################################################################## 66 | 67 | # 列出你想在系统中直接替换的所有目录 68 | # 查看文档,了解更多关于Magic Mount如何工作的信息,以及你为什么需要它 69 | 70 | 71 | # 按照以下格式构建列表 72 | # 这是一个示例 73 | REPLACE_EXAMPLE=" 74 | /system/app/Youtube 75 | /system/priv-app/SystemUI 76 | /system/priv-app/Settings 77 | /system/framework 78 | " 79 | 80 | # 在这里建立您自己的清单 81 | REPLACE=" 82 | " 83 | ########################################################################################## 84 | # 安装设置 85 | ########################################################################################## 86 | 87 | # 如果SKIPUNZIP=1你将可能会需要使用以下代码 88 | # 当然,你也可以自定义安装脚本,需要时请删除# 89 | # 将 $ZIPFILE 提取到 $MODPATH 90 | # ui_print "- 解压模块文件" 91 | # unzip -o "$ZIPFILE" -x 'META-INF/*' -d $MODPATH >&2 92 | # 删除多余文件 93 | # rm -rf \ 94 | # $MODPATH/system/placeholder $MODPATH/customize.sh \ 95 | # $MODPATH/*.md $MODPATH/.git* $MODPATH/LICENSE 2>/dev/null 96 | 97 | ########################################################################################## 98 | # 权限设置 99 | ########################################################################################## 100 | 101 | # 请注意,magisk模块目录中的所有文件/文件夹都有$MODPATH前缀-在所有文件/文件夹中保留此前缀 102 | # 一些例子: 103 | 104 | # 对于目录(包括文件): 105 | # set_perm_recursive <目录> <所有者> <用户组> <目录权限> <文件权限> <上下文> (默认值是: u:object_r:system_file:s0) 106 | 107 | # set_perm_recursive $MODPATH/system/lib 0 0 0755 0644 108 | # set_perm_recursive $MODPATH/system/vendor/lib/soundfx 0 0 0755 0644 109 | 110 | # 对于文件(不包括文件所在目录) 111 | # set_perm <文件名> <所有者> <用户组> <文件权限> <上下文> (默认值是: u:object_r:system_file:s0) 112 | 113 | # set_perm $MODPATH/system/lib/libart.so 0 0 0644 114 | # set_perm /data/local/tmp/file.txt 0 0 644 115 | 116 | # 默认权限请勿删除 117 | set_perm_recursive $MODPATH 0 0 0755 0644 118 | 119 | --------------------------------------------------------------------------------