Giter Site home page Giter Site logo

kalanyr / magisk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from namelesswonder/magisk

0.0 0.0 0.0 56.25 MB

The 32-bit Enabling Magic Mask for Android

License: GNU General Public License v3.0

Shell 4.49% C++ 46.55% Python 2.36% C 0.12% Java 11.55% Rust 2.67% Kotlin 31.77% Makefile 0.47% AIDL 0.02%

magisk's Introduction

This is not an officially supported Google product and is not endorsed by topjohnwu or HuskyDG.

Introduction

Magisk Zygote64_32 is a modification of Magisk, which is a suite of software primarily designed as a root solution for multilib Android devices that are Zygote64 only.
Some highlight features:

  • MagiskSU: Provide root access for applications
  • Magisk Modules: Modify read-only partitions by installing modules
  • MagiskBoot: The most complete tool for unpacking and repacking Android boot images
  • Zygisk: Run code in every Android applications' processes

Added with Magisk Zygote64_32 is:

  • Zygote64_32: Enables secondary Zygote process to allow 32-bit applications to start

Further added with Magisk Delta 32-bit is:

  • early-mount.d: Mount files before the init process is ran
  • init.rc injection: Inject rc scripts without having to rebuild the initrd
  • Systemless file removal: Remove file and folders systemlessly
  • SuList: Hides Magisk binaries by default and only whitelisted processes can use Magisk
  • Maru: Zygisk implementation using Native Bridge

Currently only the Pixel 7 and Pixel 7 Pro are officially supported by this project.

Currently only Magisk Zygote64_32 has full support, with Magisk Delta 32-bit being offered as-is.

Sources

The sources for Magisk Zygote64_32 are available on the page you are reading this from right now.

The sources for Magisk Delta 32-bit are available in the delta-32bit branch.

Downloads

My GitHub download repository has the downloads of the Magisk app for both Magisk Zygote64_32 and Magisk Delta 32-bit.

NOTE: Magisk Delta 32-bit is offered as-is, as I do not run it daily.

Installation

Useful Links

Bug Reports

Only bug reports from Magisk Zygote64_32 builds will be accepted, as I am not running Magisk Delta 32-bit

For installation issues, upload both boot image and install logs.
For bootloops or Magisk issues, upload boot logcat or dmesg.

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/Namelesswonder/Magisk.git
  • Switch branch to appropriate version: git switch 32bit or git switch delta-32bit
  • Install Python 3.8+
    (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/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 sources.
  • Optionally, set custom configs with config.prop. A sample config.prop.sample is provided.

Signing and Distribution

  • The certificate of the key used to sign the final Magisk APK product is also directly embedded into some executables. In release builds, Magisk's root daemon will enforce this certificate check and reject and forcefully uninstall any non-matching Magisk apps to protect users from malicious and unverified Magisk APKs.
  • To do any development on Magisk itself, switch to an official debug build and reinstall Magisk to bypass the signature check.
  • To distribute your own Magisk builds signed with your own keys, set your signing configs in config.prop.
  • Check Google's Documentation for more details on generating your own key.

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/>.

magisk's People

Contributors

topjohnwu avatar diareuse avatar vvb2060 avatar yujincheng08 avatar d8ahazard avatar osm0sis avatar canyie avatar displax avatar xerta555 avatar tonymanou avatar phhusson avatar linar10 avatar kubalav avatar auanasgheps avatar cocka11 avatar dvdandroid avatar rikkaw avatar krascgq avatar sn-o-w avatar shakalaca avatar royschutte avatar tarasyyyk avatar razor84 avatar tony8077616 avatar joanvc100 avatar gh2923 avatar ygorigor avatar henry2o1o avatar erayrafet avatar gozzwip avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.