The Magic Mask for Android
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
topjohnwu 1eb83ad812 Update Android Studio 1 month ago
.github Stop gradle daemon 1 month ago
app Support Android S AVD 1 month ago
buildSrc Update dependencies 2 months ago
docs Update installation instructions 1 month ago
gradle/wrapper Update dependencies 2 months ago
native Build a single APK for all ABIs 1 month ago
scripts Support Android S AVD 1 month ago
stub Remove/move unused files 2 months ago
tools Update NDK to r21e 3 months ago
.gitattributes Small native code reorganization 1 year ago
.gitignore Make main app fully independent from the stub 2 years ago
.gitmodules Build our own zlib 1 month ago
LICENSE Use GPL v3 license and update copyright messages 4 years ago
README.MD Publish v23.0 docs 1 month ago
build.gradle.kts Update Android Studio 1 month ago
build.py Build a single APK for all ABIs 1 month ago
config.prop.sample Cleanup scripts 5 months ago
gradle.properties Release new canary build 1 month ago
gradlew Update AGP 3 months ago
gradlew.bat Update AGP 3 months ago
settings.gradle.kts Move signing code into main app sources 6 months ago

README.MD

Downloads

Introduction

Magisk is a suite of open source software for customizing Android, supporting devices higher than Android 5.0.
Here are some feature highlights:

  • MagiskSU: Provide root access for applications
  • Magisk Modules: Modify read-only partitions by installing modules
  • MagiskHide: Hide Magisk from root detections / system integrity checks
  • MagiskBoot: The most complete tool for unpacking and repacking Android boot images

Downloads

Github is the only source where you can get official Magisk information and downloads.

Bug Reports

Only bug reports from Canary builds will be accepted.

For installation issues, upload both boot image and install logs.
For Magisk issues, upload boot logcat or dmesg.
For Magisk app crashes, record and upload the logcat when the crash occurs.

Building and Development

  • Magisk builds on any OS Android Studio supports. Install Android Studio and do the initial setups.
  • Clone sources: git clone --recurse-submodules https://github.com/topjohnwu/Magisk.git
  • Install Python 3.6+
    (Windows only: select 'Add Python to PATH' in installer, and run pip install colorama after install)
  • Configure to use the JDK bundled in Android Studio:
    • macOS: export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home"
    • Linux: export PATH="/path/to/androidstudio/jre/bin:$PATH"
    • Windows: Add C:\Path\To\Android Studio\jre\bin to environment variable PATH
  • Set environment variable ANDROID_SDK_ROOT to the Android SDK folder (can be found in Android Studio settings)
  • Run ./build.py ndk to let the script download and install NDK for you
  • To start building, run build.py to see your options.
    For each action, use -h to access help (e.g. ./build.py all -h)
  • To start development, open the project with Android Studio. The IDE can be used for both app (Kotlin/Java) and native (C++/C) sources.
  • Optionally, set custom configs with config.prop. A sample config.prop.sample is provided.
  • To sign APKs and zips with your own private keys, set signing configs in config.prop. For more info, check Google's Documentation.

Translation Contributions

Default string resources for the Magisk app and its stub APK are located here:

  • app/src/main/res/values/strings.xml
  • stub/src/main/res/values/strings.xml

Translate each and place them in the respective locations ([module]/src/main/res/values-[lang]/strings.xml).

License

Magisk, including all git submodules are free software:
you can redistribute it and/or modify it under the terms of the
GNU General Public License as published by the Free Software Foundation,
either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.