topjohnwu
4ca25f74c6
More robust mounting scripts
...
Close #1376
2019-04-30 17:35:58 -04:00
osm0sis
7fda917b86
Fix addon.d error OUTFD derp
2019-04-30 17:09:25 -04:00
osm0sis
e6bd5f2c40
Display error if actual Magisk addon.d script cannot be run
...
- this would likely occur on an FDE device with block map OTAs (a la LineageOS) since they do not require/request decrypt
- for reference all other addon.d "v1" cases should work fine:
1) FDE with openrecovery script works fine since it requests decrypt
2) FBE with openrecovery script OR block map work fine since /data/adb remains accessible
2019-04-30 10:27:29 -04:00
topjohnwu
c5758b3f2d
Update scripts
2019-04-06 13:04:17 -04:00
topjohnwu
7af7910e78
Revert "Revert to old find boot order"
...
This reverts commit 5203886f0bc535e913b17fe2adbc83beb85df6b9.
2019-04-05 15:18:39 -04:00
vvb2060
a4f5d47e72
get_flags need before find_boot_image
2019-04-05 15:18:28 -04:00
topjohnwu
5203886f0b
Revert to old find boot order
2019-04-04 20:01:59 -04:00
topjohnwu
91da1cf817
Make on_install happen earlier to allow more customization
2019-03-31 15:37:12 -04:00
topjohnwu
1cd45b53b1
Support recovery based Magisk
...
Some devices (mainly new Samsung phones we're talking here...) using
A only system-as-root refuse to load ramdisk when booted with boot
no matter what we do. With many A only system-as-root devices, even
though their boot image is kernel only, we can still be able to add
a ramdisk section into the image and force the kernel to use it as
rootfs. However the bootloader on devices like the S10 simply does
not load anything within boot image into memory other than the kernel.
This gives as the only option is to install Magisk on the recovery
partition. This commits adds proper support for these kind of scenarios.
2019-03-30 00:49:48 -04:00
topjohnwu
1c09b3642f
Properly setup update flag in module installer
2019-03-27 22:20:39 -04:00
topjohnwu
a199b0ace1
Use ZIPFILE instead of ZIP
...
The tool zip reads , we don't want it
2019-03-23 20:49:16 -04:00
topjohnwu
2f2108e4e8
Fix typo in module installer
2019-03-23 05:28:43 -04:00
topjohnwu
f9ae4ab475
Add base Magisk module installer script
2019-03-23 04:27:36 -04:00
topjohnwu
b7e2e972c7
Support boot_img_hdr_v2
2019-03-13 16:51:22 -04:00
topjohnwu
7f08c06943
Remove unnecessary '--' from magiskboot actions
2019-03-07 18:07:23 -05:00
topjohnwu
14ae29d907
Support Android Q new init setup
2019-03-03 06:35:25 -05:00
topjohnwu
e72c6685ed
Support A only System-as-root Devices
...
Most Chinese devices (and supposedly Galaxy S10) running Android Pie
is using system-as-root without A/B partition.
https://source.android.com/devices/bootloader/system-as-root#about-system-as-root
According to the docs above, these devices will have a ramdisk block
with size 0 in their boot images. Since magiskinit can run independently
on system-as-root devices, we simply just create an empty ramdisk with
magiskinit added as init.
Huge thanks to @vvb2060 for the heads up and original PR.
Close #980 , close #1102
2019-02-28 05:46:36 -05:00
topjohnwu
63b18246d8
Add compressed ramdisk support
2019-02-24 20:39:01 -05:00
topjohnwu
6ca8db2f0c
Welcome to the 64 bit world!
...
Close #854
2019-02-24 08:13:27 -05:00
topjohnwu
3356d7b6ff
More friendly to obscure/outdated custom recoveries
...
Close #1049
2019-02-24 04:45:47 -05:00
topjohnwu
86f778c0aa
Group unsupported formats into the same code
2019-02-24 02:30:04 -05:00
topjohnwu
defbbdfe21
Update scripts
2019-02-24 02:11:11 -05:00
HemanthJabalpuri
10613686ed
Fix bootloop when removing system SuperSU in <5.0
2019-02-18 03:31:16 -05:00
topjohnwu
1321f097b8
Remove usage of magisk.img
...
Mounting ext4 images causes tons of issues, such as unmountable with broken F2FS drivers.
Resizing is also very complicated and does not work properly on all devices.
Each step in either measuring free space, resizing, and shrinking the image is a
point of failure, and either step's failure could cause the module system completely broken.
The new method is to directly store modules into /data/adb/modules, and for module installation
on boot /data/adb/modules_update. Several compatibility layers has been done: the new path is
bind mounted to the old path (/sbin/.magisk/img), and the helper functions in util_functions.sh
will now transparently make existing modules install to the new location without any changes.
MagiskHide is also updated to unmount module files stored in this new location.
2019-02-12 02:14:57 -05:00
topjohnwu
ab47b717b1
Reorganize scripts
2019-02-11 17:14:07 -05:00
vvb2060
e05cdc83f3
fix extract_bb
2019-02-11 02:35:04 -05:00
Erfan Abdi
6698c189fc
Support non-ext4 filesystem for vendor and system
...
Signed-off-by: Erfan Abdi <erfangplus@gmail.com>
2019-02-07 00:45:30 -05:00
topjohnwu
6ee08b6717
Temporary remove API 16 support
2019-02-03 16:42:16 -05:00
topjohnwu
c7301a5161
Better support for low API levels
2019-02-03 09:50:49 -05:00
topjohnwu
62acc17e42
Support API 16 (Android 4.1)
...
Because why not
2019-02-02 05:06:13 -05:00
topjohnwu
858216796a
Allow API 17 installation
2019-01-20 18:17:24 -05:00
Ivan Kutepov
6ea42a35a9
Fix reqSizeM check in mount_magisk_img function
2019-01-17 10:19:59 -05:00
topjohnwu
23e5188422
Update scripts
...
1. Update build.py to use f-strings
2. Directly append busybox binaries to update-binary
3. Remove b64xz
2019-01-15 08:32:18 -05:00
Zackptg5
0a64a7e5d4
Update util_functions.sh
...
Eliminates `cat: write error`
2019-01-13 13:17:45 -05:00
topjohnwu
0be158afa1
Official KitKat support
2018-12-28 16:03:23 +08:00
topjohnwu
8d210b5e37
Enhance EMUI 9 user experience
2018-12-25 01:08:46 +08:00
topjohnwu
3c6c0e6700
Support EMUI 9.0
2018-12-24 21:36:37 +08:00
topjohnwu
8b4008798f
Add backward compat paths
2018-12-05 20:10:59 -05:00
topjohnwu
fd4faf59b8
Use tr for replacing whitespace to newline
...
Close #824
2018-12-05 20:07:15 -05:00
Pzqqt
1cff08ce5d
Fix possible error block counts
...
Add "-k" parameter to force the unit to 1024 bytes.
2018-12-05 12:53:06 -05:00
topjohnwu
0784448c69
Remove /.backup folder on start
2018-11-20 05:24:40 -05:00
topjohnwu
96b93bd876
Add function to find manager APK
...
Close #673
2018-11-15 03:12:31 -05:00
topjohnwu
376e7977f0
Deprecate path /sbin/.core, switch to /sbin/.magisk
...
Symlink is preserved for backwards compatibility
2018-11-15 01:36:03 -05:00
topjohnwu
83ae66daea
Change stock boot image SHA1 backup method
2018-11-15 00:33:20 -05:00
topjohnwu
d7d80d3fc1
Update encryption detection for determining default flags
2018-10-20 17:10:35 -04:00
topjohnwu
dd9ddd2019
Remove unnecessary instruction from Defex hexpatch
...
Close #489
2018-10-20 00:28:09 -04:00
topjohnwu
e1a65276b9
Switch to general Samsung defex patch
...
Should be future proof unless code changes
2018-10-17 03:17:24 -04:00
topjohnwu
3f87f6aee3
Fix output in Magisk Manager if no root exists
2018-09-20 16:21:22 -04:00
topjohnwu
04bcd145d3
Add a.a alias to BootSigner
2018-09-20 15:37:59 -04:00
topjohnwu
70d3b24338
Keep dm/avb-verity when device is using system_root_image
...
Close #512
2018-08-29 00:40:14 -04:00
topjohnwu
8664e9d19b
Update scripts
2018-08-28 22:03:12 -04:00
topjohnwu
f6aae2b048
Add hexpatch to remove Samsung defex in kernel
...
Close #499
2018-08-26 22:38:13 -04:00
topjohnwu
a46c6252c6
Detect insufficient partition size
...
Close #388
2018-08-11 15:56:12 +08:00
topjohnwu
5c1886c8f5
Update scripts
2018-08-10 18:59:14 +08:00
topjohnwu
6add682705
Remove high compression mode
2018-08-10 03:49:25 +08:00
topjohnwu
a63696836c
Proper addon.d-v2 support
2018-08-03 22:40:49 +08:00
topjohnwu
bb25edc09e
Use own busybox for get_outfd
2018-08-03 04:25:00 +08:00
topjohnwu
169c0fe4af
Stop use clashing names
2018-08-03 03:43:02 +08:00
topjohnwu
0ef026c610
Remove system root when running addon.d
2018-07-20 00:37:38 +08:00
topjohnwu
90379eeb35
Detect ramdisk partition
...
Because Huawei, fix #400
2018-07-19 17:48:51 +08:00
topjohnwu
ef62272df7
Small adjustments to prevent seccomp errors
2018-07-10 02:44:58 +08:00
topjohnwu
c3b473e4bc
Fix get_outfd in embedded mode
2018-07-07 17:48:05 +08:00
topjohnwu
c3a6179a21
Update scripts
2018-07-05 17:29:13 +08:00
topjohnwu
4de51d93ef
Tweak info when installing
2018-07-04 23:46:16 +08:00
topjohnwu
70243d7a47
Add fallback to parse block from fstabs
2018-07-03 18:28:44 +08:00
topjohnwu
b5b8c4b725
First find blocks by-name, then fallback to parsing sysfs
2018-07-03 02:57:57 +08:00
topjohnwu
d149af9628
Fix bootloop when upgrading from older Magisk
2018-07-01 14:58:31 +08:00
topjohnwu
3283439fd4
New uninstaller
2018-06-27 06:00:01 +08:00
topjohnwu
c8216f9bc5
Fix uninstaller
2018-06-26 22:41:03 +08:00
Jat
d1a7372bd2
fix a bug when $ABILONG is arm64-v8a
2018-06-26 05:03:07 +08:00
topjohnwu
7265450e2e
Precise free space calculation for magisk.img
...
1. Introduce new applet: imgtool for better separation from the main program
2. Actually mount the image and check statvfs for free space in the image
This shall eliminate any possible module installation failure from image resizing issues.
2018-06-22 06:18:06 +08:00
topjohnwu
daf9b019c6
More elaborate bb_setup
2018-06-21 16:39:10 +08:00
topjohnwu
14eebd582f
Source addon.d script from data
2018-06-21 11:54:21 +08:00
topjohnwu
9a8eeacee8
Fix output of addon.d, and add support for addon.d-v2
2018-06-21 10:53:49 +08:00
topjohnwu
45b0bf5bc5
Remove unnecessary variable
2018-06-21 01:48:46 +08:00
topjohnwu
88db822c43
Get device blocks with sysfs
2018-06-21 01:37:08 +08:00
John Wu
c0ca99f4b4
Make sure APK exists before signing AVB 1.0
...
Check all possible APK locations before actually running the verification
2018-06-19 14:19:38 -07:00
XiNGRZ
196f15d240
Fix survival script for AVB 1.0 signed boot image
2018-06-19 14:19:38 -07:00
topjohnwu
835ece5469
Update default flag logic, fix S9/S9+ DTB patches
2018-06-18 01:40:56 +08:00
topjohnwu
d93fc67a75
Improve detecting device status
2018-06-17 17:59:24 +08:00
topjohnwu
3f83919e09
Fix bootloops when flashing Magisk after data wipe on FBE devices
2018-06-11 02:26:18 +08:00
topjohnwu
72a5b83544
Support patching dtb placed in extra section (S9/S9+)
2018-06-10 20:36:18 +08:00
topjohnwu
274efb49e7
Fix modules installation error
2018-06-03 17:01:10 +08:00
topjohnwu
9b445d89a1
Add extract feature to update-binary
2018-05-13 14:26:28 +08:00
topjohnwu
25703c1750
Do not force LD_LIBRARY_PATH in recovery
2018-05-06 01:49:01 +08:00
topjohnwu
fc9d4034a9
Fix installation in custom recoveries
2018-04-29 14:04:18 +08:00
topjohnwu
a2c1b024f3
Use 32-bit binaries only
2018-04-22 14:13:27 +08:00
topjohnwu
9e737df534
Update high compression mode detection logic
2018-03-10 15:55:55 +08:00
topjohnwu
a94fa81195
Support non skip_initramfs device with slot suffix
2018-02-14 00:57:52 +08:00
topjohnwu
6728445542
Support separate ramdisk images
2018-02-10 03:34:13 +08:00
topjohnwu
10ed299c78
Detect recovery on FBE devices with no DE access
2018-02-10 03:31:00 +08:00
topjohnwu
e5c3183025
Update scripts
2018-01-01 16:46:28 +08:00
topjohnwu
d8bb3af06b
Miscellaneous
2017-12-29 04:25:30 +08:00
topjohnwu
74da6e1dc0
Support new 1500 template
2017-12-26 03:23:58 +08:00
topjohnwu
f7b4935677
Add recommend KEEPVERITY and KEEPFORCEENCRYPT flags
2017-12-21 15:42:03 +08:00
topjohnwu
a3c49de6a5
Refactor magiskboot
2017-12-21 03:36:18 +08:00
topjohnwu
4db0ad32f0
Fix install scripts
2017-12-18 03:08:53 +08:00
topjohnwu
8ca1e43533
Move all /data files into /data/adb
2017-12-16 04:42:16 +08:00
topjohnwu
bd01c314dc
Change database location
2017-12-12 03:04:55 +08:00
topjohnwu
942c870981
Properly handle KEEPVERITY and HIGHCOMP
2017-12-07 04:20:27 +08:00