LoveSy
19f15f16f6
Use icf to further minimize binary size
2024-06-10 14:47:26 -07:00
topjohnwu
e158cfddfa
Update system_properties
2024-06-07 13:51:24 -07:00
pndwal
d0cf93a08d
Fix typos install.md
2024-06-06 21:12:18 -07:00
LoveSy
08ad0e74dd
Upgrade deps
...
Co-authored-by: vvb2060 <vvb2060@gmail.com>
2024-06-06 21:11:52 -07:00
topjohnwu
722374a024
Update system_properties
2024-06-05 18:42:30 -07:00
LoveSy
c6f0762510
Use pidfd_open for setns
...
which is more efficient on newer kernel
2024-05-20 03:26:55 +08:00
LoveSy
941a363c5a
Support waiting on non-exist prop
2024-05-18 13:55:33 +08:00
Arbri çoçka
2afcdc64a0
Update strings.xml sq
2024-05-18 13:52:31 +08:00
VD $ VD171 @ Priv8
3c66c4bbc5
Update PORTUGUESE translation
2024-05-18 13:52:14 +08:00
VD $ VD171 @ Priv8
9f5cd5e1cc
Update PORTUGUESE translation
2024-05-18 13:52:14 +08:00
kubalav
a35f2bb73b
Update Slovak translation
2024-05-18 13:51:59 +08:00
topjohnwu
6cf00130f4
Check Magisk version instead of app version
2024-05-15 12:42:55 +08:00
topjohnwu
6c27ba6b88
Rename db entry name
2024-05-15 12:42:55 +08:00
vvb2060
dd3b9980e7
app: add safe mode config to menu
2024-05-15 12:42:55 +08:00
vvb2060
02e189a029
core: add safe mode config to db
2024-05-15 12:42:55 +08:00
topjohnwu
72b8d12ee4
Update development guide
2024-05-11 20:40:33 -07:00
topjohnwu
eed03080c1
Update to ONDK r27.1
2024-05-09 09:42:40 -07:00
LoveSy
090cb4b0f9
Upgrade AGP to 8.4.0
2024-05-09 09:42:27 -07:00
topjohnwu
6f2c76b898
Fix build script
2024-05-09 02:19:24 -07:00
topjohnwu
f61827cbec
Switch rustup_wrapper to Rust implementation
...
For better Windows portability
2024-05-09 02:19:07 -07:00
topjohnwu
3f2264f2c7
Support rustup wrapper
2024-05-09 00:34:12 -07:00
topjohnwu
c1cadf4bdc
Update build.py to use pathlib
2024-05-09 00:31:41 -07:00
Rodrigo Martínez
0e56991369
Improve and add missing strings for Spanish
2024-04-29 22:23:02 -07:00
LoveSy
4dc1c59040
add missing `xz_dec_end`
2024-04-29 22:22:47 -07:00
topjohnwu
33b7b8b297
Update resetprop
2024-04-26 16:42:24 -07:00
topjohnwu
e6af5ed460
Address Rust warnings
2024-04-26 16:28:46 -07:00
topjohnwu
b678afa4b6
Update to ONDK r27.0
...
Co-authored-by: LoveSy <shana@zju.edu.cn>
2024-04-26 03:09:44 -07:00
WINZORT
4bac2df4e7
Improve turkish locales and add the missing strings
2024-04-18 02:14:21 -07:00
igor
50416eee09
Improve Portuguese translation
2024-04-18 02:13:50 -07:00
igor
73cf501d33
Improve Brazilian Portuguese translation
2024-04-18 02:13:50 -07:00
Hen_Ry
d2b7907bed
Update german strings.xml
2024-04-18 02:13:28 -07:00
topjohnwu
99d5dd5ea8
Update crt0
2024-04-17 10:12:27 -07:00
cloudchamb3r
5fdb841fa8
Fix typo
...
Fix typo in values-ko/strings.xml
2024-04-17 09:18:14 -07:00
topjohnwu
7c88484d64
Fix #7988
2024-04-16 19:45:01 -07:00
topjohnwu
b22b6a4204
Refactor cpio
2024-04-10 22:46:21 -07:00
topjohnwu
2a3d34c812
Fix mkdirs
2024-04-10 22:36:47 -07:00
topjohnwu
c50ee722a1
Use memmem for finding needle in haystack
2024-04-10 14:57:44 -07:00
topjohnwu
ffc1e38e48
Add 32 bit CI
2024-04-10 02:56:23 -07:00
topjohnwu
6219d5fcbf
Update crt0 for 32 bit
2024-04-10 02:43:37 -07:00
topjohnwu
2e4440b702
Support 32-bit magiskboot
2024-04-09 19:34:14 -07:00
topjohnwu
0d9ec0931b
Code cleanup
2024-04-08 23:00:59 -07:00
vvb2060
60e8415369
Make denylist work when zygisk is disabled
...
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2024-04-08 23:00:50 -07:00
LoveSy
652a26d5d9
Fix comment of sepolicy
2024-04-03 21:03:41 -07:00
topjohnwu
f57839379a
Update RustCrypto dependencies
2024-04-03 21:03:05 -07:00
LoveSy
36bd00a046
Add p521 to magiskboot
2024-04-03 21:03:05 -07:00
topjohnwu
fb5ee86615
Install one single ABI in ramdisk
2024-03-31 22:01:22 -07:00
topjohnwu
30bf5c8448
Fix typos
2024-03-31 14:17:25 -07:00
topjohnwu
2051836a73
Remove unused code
2024-03-30 21:03:51 -07:00
topjohnwu
2cb0af1ff3
Move revert_unmount into Rust
2024-03-30 02:51:39 -07:00
topjohnwu
a1b6568226
Implement preinit related features in Rust
2024-03-28 14:11:03 -07:00
topjohnwu
1eddbfd72c
Use const_format for const strings
2024-03-26 18:03:40 -07:00
topjohnwu
21ed095601
Update crt0
2024-03-25 16:11:02 -07:00
Js0n
000a2e4d59
Upgrade AGP to 8.3.1
2024-03-22 17:02:18 -07:00
Js0n
7abe635de9
fix: AGP 8.3.X
2024-03-22 17:02:18 -07:00
topjohnwu
9a008c17ba
Optimize for binary size
2024-03-22 16:53:44 -07:00
topjohnwu
08dbf728a4
Allow platform_app to access MagiskSU
2024-03-22 16:53:44 -07:00
topjohnwu
4670f762d3
Disable debug only features
2024-03-22 16:53:44 -07:00
topjohnwu
efa49567fa
Fix parsing logic for term and sterm
2024-03-21 18:17:28 -07:00
topjohnwu
0ffc4527a7
Better error reporting
2024-03-21 15:10:34 -07:00
topjohnwu
dd9d43be96
Move sepolicy parsing error message into Rust
2024-03-21 14:07:28 -07:00
topjohnwu
865fca71a5
Optimize sepolicy rules
...
Close #7916
Co-authored-by: vvb2060 <vvb2060@gmail.com>
2024-03-21 01:51:35 -07:00
topjohnwu
6b4baa3bcd
Change a little parsing handling
2024-03-21 00:04:09 -07:00
topjohnwu
a9ee2d7d18
Fix xperm parsing logic
2024-03-20 23:13:54 -07:00
topjohnwu
d654b9cb97
Several code cleanups in sepolicy
2024-03-20 23:09:22 -07:00
LoveSy
4d2921e742
Rewrite sepolicy statement parsing in Rust
2024-03-20 10:12:23 -07:00
vvb2060
ecc74d45d1
Let magic mount optional
2024-03-19 23:21:41 -07:00
vvb2060
5de597f079
No need to unshare
2024-03-19 23:21:41 -07:00
LoveSy
156b0e67ca
No need extra tmpfs for worker
2024-03-19 23:21:41 -07:00
vvb2060
10069215f4
Rename dir name
2024-03-19 23:21:41 -07:00
LoveSy
92b305a389
Remove unnecessary mirror for magic mount
...
Mirror was previously used for accessing the original file during
magic mount when we are using a tmpfs to cover the target. However,
since we introduce atomic mount, we switch all tmpfs mount in
worker and then move to the target at once. It means that we can
still access the original file when we are constructing the tmpfs
mount point. Thus we no longer need mirror.
2024-03-19 23:21:41 -07:00
topjohnwu
d20b30c771
Update libsepol
...
Close #7915
2024-03-19 02:54:01 -07:00
topjohnwu
83209b21ff
Release new canary build
2024-03-19 00:51:07 -07:00
topjohnwu
81658d45f7
Support tar with files larger than 8GiB
...
Fix #7838
2024-03-14 16:54:46 -07:00
topjohnwu
c951b208a1
Always update stub APK when upgrade
2024-03-14 14:31:02 -07:00
topjohnwu
050a073771
Make all I/O suspendable
2024-03-12 03:24:42 -07:00
topjohnwu
21d374214f
Minor cleanup of DownloadEngine
2024-03-12 03:14:06 -07:00
LoveSy
19ea25a9d0
Upgrade AGP
2024-03-08 17:12:46 -08:00
topjohnwu
dbf6e40dfe
Ensure stub APK is expected
...
Fix #7884
2024-03-08 17:09:54 -08:00
topjohnwu
d56f4fbc90
Fix stub on API 34
2024-03-08 15:57:49 -08:00
topjohnwu
73c3d741a7
Reorganize some code
2024-03-06 18:07:01 -08:00
pndwal
2b5fc75127
Update faq.md
...
Since system Safe Mode may activate without Magisk 'Safe Mode', this clarification will prevent users from erroneously concluding either that Safe Mode doesn't work or that modules are not the issue since 'Safe Mode' was apparently triggered...
Fixes this: #4624
2024-03-06 17:48:54 -08:00
osm0sis
991802ab82
Add no decompression flag to magiskboot split
2024-03-06 16:15:30 -08:00
WindowsFan9600
7f6b5305ba
Improve Turkish language translation
...
Updated "reboot_download" string
2024-03-06 02:37:58 -08:00
canyie
825c6c4316
Reverse format template argument order
2024-03-06 01:39:16 -08:00
canyie
f00408c793
Fix zygote restart monitor
2024-03-06 01:39:16 -08:00
topjohnwu
a6ff3672af
Update crt0
2024-03-04 16:42:25 -08:00
LoveSy
2290ddeb89
Fix segfault when sepolicy.rule has empty line
2024-03-02 06:15:45 -08:00
topjohnwu
74af79ad03
Update crt0
2024-03-02 05:57:48 -08:00
LoveSy
b6c24a3a8a
No more sony `init.real` tricks
...
Co-authored-by: canyie <a1364259@163.com>
Co-authored-by: vvb2060 <vvb2060@gmail.com>
2024-02-29 23:40:00 -08:00
LoveSy
a8c2ae223a
Avoid hexpatch /init for 2SI when possible
...
Previous we hexpatch /init from /system/bin/init to /data/magiskinit
to redirect the second stage init. However, some devices like sony
has /init that does not directly invoke /system/bin/init, and thus
the hexpatch fails.
In this patch, we further make use of AOSP `SwitchRoot` to help us
bind mount /data/magisk to /system/bin/init after `SwitchRoot`.
Two important assumption about 2SI are i) that the second stage init
is always /system/bin/init and ii) that the /sdcard (path after
`SwitchRoot`) is always a symlink to `/storage/self/primary`. When
these assumptions hold, during first stage init (before `SwitchRoot`)
we can bind mount magiskinit to /sdcard, and create a symlink
/storage/self/primary to /system/system/bin/init. By these steps,
during `SwitchRoot`, AOSP init will try to mount move /sdcard to
/system/sdcard. And /system/sdcard is symlink to /storage/self/primary,
it will try to mount move /sdcard to /storage/self/primary. And
/storage/self/primary in ramfs is now a symlink that points to
/system/system/bin/init, thus AOSP will try to mount move /sdcard
(which is a bind mount to magiskinit) to /system/system/bin/init.
After chroot done by AOSP init, we then have a magiskinit bind mount
on /system/bin/init, which is the second stage init.
An edge case is that some devices (like meizu) use 2SI but
does not switch root. In this case, they must already have a /sdcard
in the ramfs, thus we can check if /sdcard exists and fallback to
hexpatch.
2024-02-29 23:40:00 -08:00
topjohnwu
953d44302c
Remove ancient NDK binaries
2024-02-29 23:26:58 -08:00
topjohnwu
24e46a5971
Build magiskboot with crt0
2024-02-29 02:36:05 -08:00
topjohnwu
b1297c4192
Less usage of C stdio
2024-02-28 15:52:03 -08:00
topjohnwu
9ae328fd84
Further reduce code size
2024-02-28 11:19:56 -08:00
topjohnwu
625a1d6f44
Remove seek support from streams
2024-02-28 11:07:53 -08:00
topjohnwu
987e5f5413
Address clippy warnings
2024-02-27 21:03:34 -08:00
topjohnwu
715284b70d
Reorganize code
2024-02-27 18:14:30 -08:00
LoveSy
62fc7868ac
Use self implemented parse_mount_info
2024-02-27 17:03:22 -08:00
topjohnwu
1a70796339
Replace all parse_mount_info usage with Rust
2024-02-27 03:49:17 -08:00
topjohnwu
af6965eefa
Update init logging implementation
...
Use less std::fs
2024-02-26 17:49:11 -08:00
topjohnwu
8f7d2e38f7
Make crt0 an external submodule
2024-02-26 17:34:17 -08:00
topjohnwu
be433fa667
Use Rust for formatting
...
The fprintf implementation included in crt0 is too rudimental
2024-02-26 00:26:23 -08:00
topjohnwu
0ccd6e7381
Fix fread and fwrite implementation
2024-02-25 23:20:30 -08:00
topjohnwu
907bbbda41
Remove usage of patched static lib
2024-02-25 22:11:34 -08:00
topjohnwu
4393bc077d
Implement string routines
2024-02-25 21:12:19 -08:00
topjohnwu
365b373480
Make it easy to build without crt0
2024-02-24 22:32:22 -08:00
topjohnwu
47e6dd286d
Minor fixes
2024-02-24 22:00:09 -08:00
topjohnwu
0dbaf52566
Make all platforms build properly
2024-02-24 05:10:54 -08:00
topjohnwu
66f49dfab5
Remove unnecessary lock usage
2024-02-24 04:20:28 -08:00
topjohnwu
f8967e9274
Implement strerror
2024-02-24 04:02:46 -08:00
topjohnwu
a4f008fde5
Reorganize files
2024-02-24 03:41:22 -08:00
topjohnwu
e9980c778b
Implement stub functions
2024-02-24 03:41:03 -08:00
topjohnwu
06b6fb0c33
Add setenv
2024-02-24 03:27:09 -08:00
topjohnwu
38cb3d4105
Add dirent implementation
2024-02-24 03:26:53 -08:00
topjohnwu
db99caf258
Use execve directly
2024-02-24 01:47:11 -08:00
topjohnwu
39dbffadfe
Complete stdio
2024-02-24 01:28:58 -08:00
topjohnwu
b7505c3c9c
Remove fopen usage in magiskinit
2024-02-24 00:45:07 -08:00
topjohnwu
3185e5a7ca
Introduce string/mem functions
2024-02-23 23:56:31 -08:00
topjohnwu
e0cbe28711
Add the generic syscall function
2024-02-23 18:41:39 -08:00
topjohnwu
66cee19cea
Add printf and sscanf family
2024-02-23 17:44:12 -08:00
topjohnwu
2ec29ade79
Add all missing syscalls
2024-02-23 14:35:12 -08:00
topjohnwu
c865d4e187
Add memory allocator
2024-02-22 21:22:27 -08:00
topjohnwu
a42a0a53ce
Declare more symbols
2024-02-22 21:22:27 -08:00
topjohnwu
6d79de7d71
Initial crt0 implementation
...
Builds but cannot link, missing a lot of symbols
2024-02-22 21:22:27 -08:00
topjohnwu
7e9abe6e90
Update ONDK
2024-02-22 20:58:40 -08:00
残页
4d5510be4f
Prompt users to use reboot button in System Updates
...
So the update engine can write verify info of partitions which fixes bootloop on newer Pixel devices
2024-02-19 02:14:12 -08:00
topjohnwu
b04e1394c0
Update README
2024-02-07 14:39:53 -08:00
topjohnwu
2aa923191e
Rename DownloadManager to DownloadEngine
...
Also add some documentation
2024-02-06 17:54:15 -08:00
topjohnwu
4bf1c74164
Disable foreground service on API 34+
2024-02-06 17:29:42 -08:00
topjohnwu
472c7878b2
Update AGP
2024-02-06 17:04:48 -08:00
topjohnwu
38ad871e33
Use user-initiated jobs for download tasks on API 34+
2024-02-06 17:04:39 -08:00
topjohnwu
c5d34670c4
Isolate download logic from service lifecycle
2024-02-06 00:56:14 -08:00
topjohnwu
154121f3dd
Release new canary build
2024-02-02 23:51:35 -08:00
topjohnwu
3d91a561fe
Update README
2024-02-02 23:35:14 -08:00
topjohnwu
2c6adbc69b
Release Magisk v27.0
2024-02-02 22:54:41 -08:00
topjohnwu
5280982363
Add v27.0 changelog
2024-02-02 22:47:35 -08:00
topjohnwu
18c45ae289
Update cxx and Rust dependencies
2024-02-02 14:35:30 -08:00
LoveSy
41fbd2a7be
Upgrade gradle
2024-02-02 10:55:11 -08:00
LoveSy
5e45884af4
Use Apple Silicon for CI
...
https://github.blog/changelog/2024-01-30-github-actions-introducing-the-new-m1-macos-runner-available-to-open-source/
2024-02-01 15:09:42 -08:00
topjohnwu
d78ee171bc
Release new canary build
2024-01-30 15:59:02 -08:00
LoveSy
356ee1febd
Code clean up
2024-01-30 11:07:37 -08:00
LoveSy
cc044ccc4c
Fix zygisk unload
2024-01-30 11:07:37 -08:00
LoveSy
9c638cc463
Remove rust workaround
2024-01-29 15:07:21 -08:00
topjohnwu
df786eb2b6
Separate Linux and other jobs
2024-01-29 01:53:09 -08:00
topjohnwu
8e7186eebb
Try out composite actions
2024-01-29 01:36:51 -08:00
topjohnwu
74b7b84561
Test all APIs on Linux
2024-01-28 00:46:03 -08:00
topjohnwu
308c9999fa
Properly detect package changes
2024-01-28 00:42:43 -08:00
topjohnwu
930bb8687f
Minor zygisk refactoring
2024-01-25 00:17:47 -08:00
topjohnwu
f2c4288d2d
Run pthread_atfork only once
...
Close #7704
2024-01-25 00:17:05 -08:00
topjohnwu
b44141ae39
Run tests on Linux
2024-01-22 18:10:26 -08:00
kam821
86e0020964
Update Polish translation
...
- Added missing strings, fixed translation, escaped quotas.
- Some context dependent values (like target_pid) may require better translation in the future.
- Also, 'DenyList' translation, although correct, could be replaced in the future by better fitting polish equivalent of 'block list' / 'rejection list'.
2024-01-17 16:13:20 -08:00
残页
94d3daeadf
Fix Sony init.real check
2024-01-17 16:09:50 -08:00
LoveSy
79334b7702
One stage zygisk loading
2024-01-11 16:19:39 -08:00
LoveSy
df66458db6
Check full path of init.rc instead of its dir
...
Some devices has `/system/etc/init/hw` but has no init.rc in it.
2024-01-11 16:18:57 -08:00
LoveSy
97705704e2
install or uninstall apk asynchronously
2024-01-11 16:16:36 -08:00
topjohnwu
1206179580
Update dependencies
2024-01-10 15:46:30 -08:00
topjohnwu
a0b8aa4da6
Release new canary build
2023-12-27 01:42:42 +08:00
topjohnwu
65207f96c8
Create custom cxx binding to Utf8CStr
2023-12-26 23:10:55 +08:00
Abhishek Girish
062e498bdd
Update Malayalam translations
2023-12-25 18:46:08 +08:00
topjohnwu
1057cb3e3c
Set serial on Rust binding
2023-12-24 04:36:58 +08:00
topjohnwu
2dd23b2518
Update system_properties
2023-12-24 04:36:58 +08:00
RafaeloxMC
8cab12998c
Update strings.xml / German translation
2023-12-23 16:49:47 +08:00
topjohnwu
48b1c26dc8
Prevent race condition in wait
2023-12-23 06:33:12 +08:00
topjohnwu
f1e0bc3e4a
Use platform implementation if possible
2023-12-23 06:24:20 +08:00
topjohnwu
38527cd58f
Slightly change wait usage and API
2023-12-23 06:23:29 +08:00
LoveSy
e94d65b4b2
Add `resetprop -w` for waiting property change
...
It's very easy to wait for property change both in Java and C++,
but it's not the case in shell script. With this patch, developers
can now easily to wait for property change, just like what we have
in `.rc` files, and to wait for boot complete.
2023-12-23 00:12:42 +08:00
LoveSy
27ece3c7df
Keep mirror shared before magic mount
...
This allows mounting during post-fs-data be kept after magic mount
2023-12-22 21:39:03 +08:00
LoveSy
06687abffc
Fix magisk --stop by making mirror shared
...
Previously mirror is private and then unshared to zygote, which
makes magisk --stop cannot propagate umount mirror to zygote.
2023-12-22 21:39:03 +08:00
vvb2060
deedb462a0
Hide magisk internal mount point
2023-12-22 21:38:15 +08:00
igor
c48962bdf7
Update Portuguese translation
2023-12-22 01:31:55 +08:00
Wang Han
1ef3f6e13b
Remove useless rule for prctl PR_SET_MM
...
* There is no use-case for it now.
2023-12-22 00:36:06 +08:00
topjohnwu
83a34a9004
Update emulator
2023-12-21 21:30:35 +08:00
topjohnwu
e30bda6c8d
Rebase libsepol to AOSP main
2023-12-21 19:23:02 +08:00
vvb2060
00e9d76a5a
Revert "Avoid doing any unmounts for SysUI"
2023-12-20 17:23:17 +08:00
LoveSy
6cda6c2fae
Upgrade github action deps
2023-12-18 16:25:56 +08:00
VD $ VD171 @ Priv8
6dfda6dc39
Update Portuguese Translation
2023-12-18 16:24:14 +08:00
LoveSy
f41994cb52
Skip svc for ro properties
...
ro properties' triggers should only be triggered once, otherwise it
may undefined behaviour.
This patch avoids triggering ro properties' actions again when using
resetprop to modify them.
Co-authored-by: 5ec1cff <ewtqyqyewtqyqy@gmail.com>
2023-12-18 16:21:08 +08:00
topjohnwu
a003336497
Update system_properties for pre Android 10
2023-12-18 16:21:08 +08:00
LoveSy
401090d6fe
Avoid zygiskd restarts when boot-complete
2023-12-18 16:21:08 +08:00
LoveSy
90dcc1cd30
Do not always zero initialize for rust resize vec
2023-12-18 16:21:08 +08:00
LoveSy
2ac464b186
Only compress regular file
2023-12-18 16:21:08 +08:00
LoveSy
8b7fae278b
Support compressing during cpio backup
2023-12-18 16:21:08 +08:00
topjohnwu
d73c2daf6d
Use special emulator to make tests less flaky
2023-12-16 15:50:53 +08:00
topjohnwu
ca25935de3
Release new canary build
2023-12-14 03:21:22 +08:00
LoveSy
d7750b7220
uiautomator dump to /data/local/tmp
2023-12-13 03:28:30 +08:00
LoveSy
98861f0b5a
Clone dir attr for tmpfs in advance
2023-12-13 03:28:30 +08:00
topjohnwu
e35925d520
Properly version zygisk APIs
2023-12-13 03:27:38 +08:00
Kieron Quinn
685a2d2101
Fixes for Android 14 QPR2 B2
...
Added new method signatures and arguments
2023-12-13 00:16:54 +08:00
LoveSy
f7e471616d
Fix clone_attr for newly created dirs
2023-12-10 23:37:47 +08:00
残页
c013a349af
Update install guide
...
- Remove boot vbmeta patching because the checkbox is removed in b1363ee
- Remove meaningless slot argument from `fastboot flash` as it will automatically flash the active slot. Fix #7571
2023-12-10 23:37:02 +08:00
topjohnwu
61ea59a27b
API 34 AOSP ATD image is released
2023-12-08 17:59:24 +08:00
VD $ VD171 @ Priv8
e55f338367
Update Portuguese Translation
2023-12-08 17:03:48 +08:00
VD $ VD171 @ Priv8
1425cf4105
Update Portuguese Translation
2023-12-08 17:03:48 +08:00
topjohnwu
b493a985b0
Update dependencies
2023-12-08 17:03:18 +08:00
canyie
1fe9ede940
Update selinux to disable validation for policydb
2023-12-08 16:50:45 +08:00
LoveSy
1fd49e4987
Make tmpfs mount of magic mount atomic
...
This avoid system libraries disappear temporarily during magic mount,
which causes some dynamic executables fails to run during post-fs-data.
2023-12-08 13:59:02 +08:00
LoveSy
d49b02b274
Fix zygiskd not restart when zygote restarts
2023-12-07 20:44:44 +08:00
LoveSy
d47e70cfaa
Fix native symbol strips
...
`ndkVersion` is also needed by app for striping native symbols.
Set it in `setupCommon` instead.
2023-12-04 00:37:09 +08:00
topjohnwu
40cb031af5
Release new canary build
2023-12-04 00:30:46 +08:00
topjohnwu
1dcf325547
Minor cleanup
2023-12-03 19:32:58 +08:00
LoveSy
4e99997013
Upgrade AGP
2023-12-02 15:25:58 +08:00
LoveSy
334554697d
Enable rust parallel front-end
...
See https://blog.rust-lang.org/2023/11/09/parallel-rustc.html
2023-12-02 15:25:41 +08:00
LoveSy
e77cbd0c15
Upgrade gradle
2023-11-30 11:49:40 +08:00
topjohnwu
46ba008b9d
Disable SCCACHE_DIRECT
2023-11-30 01:55:38 +08:00
LoveSy
58aded31c2
Enable iter_intersperse
2023-11-29 23:47:51 +08:00
LoveSy
6f6b0ade06
Correct cpio's norm_path
2023-11-29 23:47:51 +08:00
topjohnwu
d9b67a207b
Update ONDK
2023-11-27 17:41:11 +08:00
topjohnwu
c7083659aa
Directly guard boot state with mutex
2023-11-27 17:40:58 +08:00
topjohnwu
a6d1803105
Update dependencies
2023-11-26 23:09:20 +08:00
Re*Index. (ot_inc)
66eef75673
Update strings.xml
2023-11-26 22:54:53 +08:00
Alessandro Sangiorgi
367f5f7b44
Update italian translation
...
Co-authored-by: Francesco Saltori <francescosaltori@gmail.com>
2023-11-26 22:54:33 +08:00
topjohnwu
0edcb03c45
Update test API levels
2023-11-26 21:41:43 +08:00
canyie
63eef153de
Warn about unsupported installation methods
2023-11-17 13:58:41 -08:00
canyie
68442f38ac
Misc changes
...
- actions: Update all actions/checkout references to v4
- magiskboot: Add missing new line to dtb help message
- docs: Update documents, fix some errors and remove outdated info
2023-11-17 13:58:41 -08:00
topjohnwu
8d5b9e5329
C++/Rust 2 way binding for MagiskD
2023-11-17 13:35:50 -08:00
topjohnwu
6c0966b795
Move some global state into Rust
2023-11-16 15:38:38 -08:00
topjohnwu
7c2e93d266
Introduce owned_fd
2023-11-16 15:38:38 -08:00
topjohnwu
1ff7b9055f
Add LSPosed launch test
2023-11-16 15:38:38 -08:00
topjohnwu
49f241b77c
Allow running scripts with incomplete env
2023-11-10 00:55:05 -08:00
topjohnwu
cfb20b0f86
Zygisk refactoring part 2
2023-11-09 20:55:58 -08:00
topjohnwu
6d6f14fcb3
Use bitflags
2023-11-09 14:35:49 -08:00
topjohnwu
977c981265
Make sure native bridge is restored on daemon restart
2023-11-08 17:55:25 -08:00
topjohnwu
ef48abf19d
Reorganize zygisk code
2023-11-08 17:46:39 -08:00
topjohnwu
65c18f9c09
Restructure project files
2023-11-08 01:46:02 -08:00
残页
ecb31eed40
Prevent Zygisk from closing new fds created by Zygote itself
2023-11-08 00:34:38 -08:00
topjohnwu
a80cadf587
Refactor hookJniNativeMethods
...
Utilize NativeBridgeRuntimeCallbacks we obtained from native bridge
to directly fetch and modify registered native JNI methods.
By doing so, we do not need to keep a copy of every single
JNINativeMethod registered in order to provide JNI hooking
functionality.
Co-authored-by: LoveSy <shana@zju.edu.cn>
2023-11-07 23:57:55 -08:00
LoveSy
fce1bf2365
Obtain NativeBridgeRuntimeCallbacks for future use
...
NativeBridgeRuntimeCallbacks can be used for better JNI method hooking
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2023-11-07 16:56:40 -08:00
LoveSy
cbc6d40b2c
Clean up codes
2023-11-07 14:25:57 -08:00
LoveSy
9fbd079560
Refactor zygisk to use native bridge to inject
...
Co-authored-by: vvb2060 <vvb2060@gmail.com>
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2023-11-07 14:25:57 -08:00
LoveSy
42eb928054
Inject zygisk.rc for sync `--zygisk-restart`
2023-11-06 15:39:48 -08:00
topjohnwu
577483fde1
Release new canary build
2023-11-05 23:49:35 -08:00
topjohnwu
aa6c7c15cc
Update README
2023-11-05 23:44:07 -08:00
topjohnwu
6c807d35b2
Release Magisk v26.4
2023-11-05 23:31:15 -08:00
topjohnwu
8ca8cdae97
Add v26.4 release notes
2023-11-05 23:07:53 -08:00
topjohnwu
75e37be6f3
Do not need to check pkg in magisk_env
2023-11-05 23:02:40 -08:00
WindowsFan9600
4985314ca6
Update language "tr" on main application
2023-11-05 22:37:39 -08:00
topjohnwu
ac5ceb18c8
Guard log FIFO with SELinux
2023-11-04 23:59:11 -07:00
topjohnwu
72b39594d3
Always close logd_fd during fork
2023-11-04 02:36:14 -07:00
topjohnwu
16ae4aedf1
Remove usage of MAGISKTMP
2023-11-02 15:50:36 -07:00
topjohnwu
3ba00858e6
Allow avd_magisk on API 28
2023-11-01 09:15:17 -07:00
topjohnwu
489100c755
Fix fd sanitization
2023-11-01 02:01:29 -07:00
topjohnwu
da766f2a4e
Do not go through magiskd for getting the log pipe
2023-11-01 02:01:18 -07:00
topjohnwu
c81d7ff76c
Remove unnecessary RefCell usage
2023-10-31 18:22:48 -07:00
topjohnwu
a6e50d3648
Make log pipe a FIFO instead of anonymous pipe
2023-10-31 18:05:22 -07:00
topjohnwu
a177846044
Better logging in recv_fds
2023-10-31 17:40:59 -07:00
topjohnwu
19a4e11645
Make tmpfs path static strings
2023-10-29 00:47:28 -07:00
topjohnwu
67cc36268e
Simplify zygisk log pipe
2023-10-26 18:13:56 -07:00
topjohnwu
28770b9a32
Support baseline profiles
2023-10-26 15:56:51 -07:00
WindowsFan9600
9f92e1bf15
[STRINGS] Improve Turkish (tr) language
2023-10-26 15:23:35 -07:00
topjohnwu
23fe5d5a19
Update build.yml
2023-10-26 14:50:42 -07:00
LoveSy
9088b584f6
Use official argh
2023-10-25 15:14:16 -07:00
vvb2060
beaf636415
Use ccache for C code
2023-10-25 15:05:41 -07:00
vvb2060
09bb2fe8dc
Update dependencies
2023-10-25 14:58:02 -07:00
tzagim
1d6747d90e
Update Hebrew translation
2023-10-24 21:06:15 -07:00
南宫雪珊
efadd94de3
Update strings.xml
2023-10-24 21:02:32 -07:00
vvb2060
8c0b4e444a
Update zh-rCN translation
2023-10-24 21:02:32 -07:00
Rom
32c7106e40
Update French translation
2023-10-24 21:01:53 -07:00
topjohnwu
d2f2a9e4c8
Make avd_test less flaky
2023-10-24 16:45:24 -07:00
topjohnwu
985454afd4
Better logging
2023-10-24 16:41:49 -07:00
topjohnwu
9e1322de25
Make sure the shared preference is committed
2023-10-24 16:41:38 -07:00
topjohnwu
4e4ec73d94
Make gradle.properties optional
2023-10-19 15:44:34 -07:00
topjohnwu
bb39a524d0
Switch to default images for faster boot time
2023-10-19 05:31:03 -07:00
topjohnwu
196d9af099
Add application and Zygisk tests to avd_test.sh
2023-10-19 05:15:53 -07:00
topjohnwu
1eeb2a34a1
Don't support alternative binary paths
...
The Magisk app will guide users through repair setup
2023-10-19 05:11:43 -07:00
Arbri çoçka
cf43c56218
Update strings.xml sq
2023-10-18 14:29:55 -07:00
kubalav
e6c1aec443
Update Slovak translation
2023-10-18 14:29:38 -07:00
topjohnwu
43fd1c4c1b
Update stub version
2023-10-17 19:22:53 -07:00
topjohnwu
022caca979
Release new canary build
2023-10-17 19:13:16 -07:00
topjohnwu
0352ea2cca
Rename biometrics to user authentication
2023-10-17 18:43:27 -07:00
topjohnwu
e483d6befe
Do not go through a fragment for auth
2023-10-17 17:39:31 -07:00
vvb2060
678c07fff5
suBiometric: remove biometric
...
use device credential to support more devices and second user
2023-10-17 17:39:05 -07:00
topjohnwu
91c92051f1
Simplify C++ SELinux routines
2023-10-17 16:04:59 -07:00
topjohnwu
4b8a0388e7
Make SELinux support a feature
2023-10-17 13:29:15 -07:00
topjohnwu
66788dc58c
Cleanup SELinux support
2023-10-16 17:38:44 -07:00
topjohnwu
dd8c28b1cb
Upgrade AGP
2023-10-16 17:25:57 -07:00
残页
32c5153e8e
Increase boot timeout to 600s
2023-10-16 01:20:25 -07:00
topjohnwu
36de62873a
Fix error logging on the C++ side
2023-10-13 16:59:54 -07:00
topjohnwu
51e37880c6
Add repr(transparent) to guarantee soundness
2023-10-12 18:59:16 -07:00
topjohnwu
4b83c1e76c
Cleanup messy error messages
2023-10-12 18:54:09 -07:00
topjohnwu
b0b04690d5
Use newer bash version for avd_test.sh
2023-10-12 00:45:53 -07:00
topjohnwu
6d1e8d86cb
Cleaner cstr code
2023-10-11 23:53:55 -07:00
topjohnwu
eda8c70a80
Borrow value instead of moving in FsPath::from()
...
When accepting a value of AsRef<Utf8CStr> in FsPath::from(), the
existing code will move a value of Utf8CStrBufArr, creating a reference
that lives longer than the borrowing value, causing undefined behavior.
The issue is only visible on release builds, as more advanced
optimizations will be more aggressive re-using the stack of variables
that no longer lives.
Fix #7408
2023-10-11 23:48:54 -07:00
topjohnwu
587b6cfd41
Update avd_test.sh
2023-10-11 22:42:45 -07:00
topjohnwu
e774408782
Allow AVD hacks on release builds
2023-10-11 14:17:31 -07:00
canyie
187f583c95
Fix $RECOVERYMODE from config being incorrectly overridden
...
Move legacy SAR checking logic into mount_partitions, and avoid calling get_flags before check_boot_ramdisk
Fix #7346
2023-10-10 15:53:18 -07:00
topjohnwu
f5d3a71478
Update ONDK to r26.1
2023-10-10 15:52:59 -07:00
残页
d868ff3080
AVD test release builds as well
2023-10-10 15:52:41 -07:00
nkh0472
f80198a669
typo fix
2023-10-09 17:22:48 -07:00
topjohnwu
6076b52c48
Update libcxx
2023-10-03 17:22:25 -07:00
topjohnwu
79a1c39b30
Simplify fd sanitization
2023-09-28 20:38:16 -07:00
topjohnwu
5c92d39498
Enable Zygisk by default in emulators
...
Make sure CI tests Zygisk
2023-09-28 20:25:26 -07:00
topjohnwu
6e7a995716
Introduce UtfCString
2023-09-27 15:21:24 -07:00
topjohnwu
a55d570213
Move more I/O operations into Rust
2023-09-27 02:28:43 -07:00
topjohnwu
5d07d0b964
Do not support systems without SELinux
2023-09-27 02:28:43 -07:00
Wang Han
ec115cd7e3
Don't skip fd sanitization if fds_to_ignore does not exist
2023-09-25 09:45:03 -07:00
osm0sis
9b3896fd3d
Retain PREINITDEVICE during A-only addon.d
2023-09-23 23:51:36 -07:00
topjohnwu
a3f5918d25
Fix bug in libsepol
...
Fix #7308
2023-09-23 22:34:51 -07:00
topjohnwu
b28326198c
Use crates for cpio code
2023-09-22 01:39:21 -07:00
topjohnwu
46275b90c2
Generalize unxz
2023-09-21 05:47:21 -07:00
topjohnwu
15e13a8d8b
Organize logging code
2023-09-19 03:02:30 -07:00
topjohnwu
b750c89c87
Address clippy warnings
2023-09-19 01:11:50 -07:00
LoveSy
8d7c7c3dfb
Refactor dtb in rust
2023-09-19 00:41:42 -07:00
topjohnwu
8e1a91509c
Remove readlink_unsafe
2023-09-19 00:06:21 -07:00
LoveSy
927cd571f8
Fix `read_cert` crash when receive fd = -1
2023-09-18 22:32:32 -07:00
LoveSy
5fbd3e5c65
Fix buf len update of read_link to Utf8CStrBuf
2023-09-18 22:31:12 -07:00
LoveSy
877aeb66cb
Upgrade to Gradle 8.3
2023-09-14 13:16:59 -07:00
topjohnwu
8a88d8465a
Prevent OOM
...
Fix #7341
2023-09-14 13:14:30 -07:00
topjohnwu
dda8cc85c9
Use bytemuck
2023-09-14 13:10:09 -07:00
topjohnwu
6a59939d9a
Remove for_all_file
2023-09-13 18:09:16 -07:00
topjohnwu
4745e86c1b
Fix #7301
2023-09-13 14:44:20 -07:00
topjohnwu
9aa466c773
Fix genfscon and filename_trans
...
Fix #7329
2023-09-12 21:31:31 -07:00
LoveSy
0243610c09
No trailing zeros if the signed boot img is larger
2023-09-12 18:09:20 -07:00
topjohnwu
0a2a590ab7
Use Utf8CStr for logging
2023-09-12 17:35:20 -07:00
topjohnwu
89aee6ffa7
Add more to the Utf8CStr family
...
Better C strings with path operations
2023-09-12 17:35:01 -07:00
topjohnwu
4eaf701cb7
Address clippy warnings
2023-09-06 21:45:12 -07:00
topjohnwu
4fff2aa7d8
Fix proto read and write
2023-09-06 20:45:59 -07:00
topjohnwu
35b3c8ba5c
Cleanup persist props code
2023-09-06 15:52:14 -07:00
topjohnwu
1d7cff7703
Update Cargo dependencies
2023-09-06 13:57:43 -07:00
LoveSy
8d81bd0e33
resetprop: replace nanopb with quick-protobuf for persist
2023-09-05 22:20:57 -07:00
topjohnwu
7826d7527f
Release new canary build
2023-09-04 00:35:17 -07:00
topjohnwu
d4e552d08b
Update README
2023-09-04 00:26:48 -07:00
topjohnwu
5a16418543
Release Magisk v26.3
2023-09-04 00:01:46 -07:00
topjohnwu
7297aba15a
Add v26.3 release notes
2023-09-03 23:54:45 -07:00
Ylarod
bc5d5f9502
Update details.md
...
The `MAGISKTMP` changed to `/debug_ramdisk` since https://github.com/topjohnwu/Magisk/pull/6931
2023-09-03 23:46:25 -07:00
vvb2060
1761986c1b
Update zh-rCN translation
2023-09-03 23:43:07 -07:00
topjohnwu
1e034e3e0e
Update libsu
2023-09-03 23:41:17 -07:00
topjohnwu
bbf9756bfa
Release new canary build
2023-09-02 06:20:10 -07:00
topjohnwu
96e559fb0e
Skip cargo build if possible
2023-09-02 06:03:39 -07:00
topjohnwu
4c45775131
Update BusyBox
2023-09-02 05:45:18 -07:00
LoveSy
c072b4254d
Wrap rename and renameat
2023-09-02 04:24:24 -07:00
topjohnwu
2dbb812126
Disable stack protector on x86 static executables
...
Close #7274
2023-09-01 23:04:19 -07:00
topjohnwu
be50f17f55
Update to ONDK r26.0
...
Close #7264
2023-09-01 23:01:49 -07:00
残页
6f77f190f2
Fix processPayload
2023-08-31 20:30:10 -07:00
topjohnwu
6bdc57cbe4
Release new canary build
2023-08-30 01:22:02 -07:00
残页
de00f1d5a9
Always check mounts to detect legacy SAR on bootmode
2023-08-30 01:02:19 -07:00
残页
e9b9bf987b
Fix syntax error in util_functions.sh
2023-08-29 15:33:03 -07:00
topjohnwu
f4b6385f9f
Disable boot vbmeta patch when found vbmeta.img
2023-08-28 22:54:55 -07:00
topjohnwu
75d905a56d
Fix device detection scripts and logic
2023-08-28 22:13:36 -07:00
topjohnwu
b1363ee479
Do not allow user to configure boot vbmeta patching
2023-08-28 22:13:36 -07:00
topjohnwu
51afe43a30
Cleanup util_functions
2023-08-28 22:13:36 -07:00
残页
189c03c047
Add canyie to developer list
2023-08-28 13:21:58 -07:00
topjohnwu
ae9d270a32
Release new canary build
2023-08-28 01:25:07 -07:00
topjohnwu
e47e869f6b
Update full changelog
2023-08-28 01:15:14 -07:00
topjohnwu
c39038a439
Update README
2023-08-28 01:13:25 -07:00
topjohnwu
69174e2c13
Release Magisk v26.2
2023-08-28 01:04:28 -07:00
Chris Renshaw
474268a0af
manager.sh: add ro.boot.vbmeta.size + ro.product.ab_ota_partitions to vbmeta check
...
ro.boot.vbmeta.device doesn't seem to be in use on all A/B devices
2023-08-28 00:45:14 -07:00
topjohnwu
eadb0307fa
Add v26.2 release notes
2023-08-27 23:48:49 -07:00
topjohnwu
5a5d0d5d72
Add missing permissions
2023-08-27 23:29:34 -07:00
topjohnwu
a1273bc467
Update dependencies
2023-08-27 22:44:51 -07:00
topjohnwu
0c28a916be
Use cxx_name
2023-08-24 00:50:38 -07:00
BlackMesa123
0ba573b789
Additional Samsung devices install guide refactoring
...
Signed-off-by: BlackMesa123 <giangrecosalvo9@gmail.com>
2023-08-18 17:24:25 -07:00
BlackMesa123
ec42ee152c
Refactor Samsung devices install guide
...
Signed-off-by: BlackMesa123 <giangrecosalvo9@gmail.com>
2023-08-18 17:24:25 -07:00
I3elphegor
abcb487361
Update czech translation of strings.xml
...
Added and translated new strings.
2023-08-18 17:19:36 -07:00
vvb2060
d12d9e82f1
Force kernel to load rootfs only for legacy SAR devices
2023-08-18 17:18:34 -07:00
topjohnwu
275208e81b
Update Rust dependencies
2023-08-17 21:24:29 -07:00
topjohnwu
41226c12b8
Update to ONDK r25.7
2023-08-15 17:10:20 -07:00
topjohnwu
f86c66c99d
Officially support API 34
2023-08-11 09:46:45 -07:00
topjohnwu
93876b5fd3
Update dependencies, AGP, and SDK level
2023-08-11 09:38:59 -07:00
topjohnwu
b5b14ce343
Use cxx_name instead of rust_name
2023-08-10 21:22:53 -07:00
topjohnwu
350d0d600c
Update build script
2023-08-08 01:05:32 -07:00
topjohnwu
f924ffcbf3
Merge files
2023-08-08 00:57:58 -07:00
VD $ VD171 @ Priv8
0f5963f231
Update PORTUGUESE Translation
2023-08-08 00:54:01 -07:00
Arbri çoçka
1961ff2c40
Update strings.xml Albania
2023-08-08 00:53:38 -07:00
vvb2060
40003691d6
manager.sh: check vbmeta device by getprop
2023-08-08 00:53:21 -07:00
topjohnwu
8290358241
Release new canary build
2023-08-05 23:27:06 -07:00
kubalav
ee34f775c3
Update Slovak translation
2023-08-05 23:19:34 -07:00
vvb2060
feb47cd88c
sulog: add migration
2023-08-02 21:18:05 -07:00
vvb2060
c6efb51f61
sulog: add more info
2023-08-02 21:18:05 -07:00
Hen_Ry
a5acf33ccd
Update De translation
2023-08-02 21:17:12 -07:00
vvb2060
ab9ee449e4
suBiometric: fix open app on second user will auto disable biometric
...
second user does not support biometric, but the config of app ignores user
2023-08-02 21:16:06 -07:00
vvb2060
9571b6f9be
SuperuserViewModel: fix updatePolicy
...
Starting biometrics may cause the SuperuserFragment to lost focus. After onResume(), doLoadWork() will refresh the itemsPolicies, so notify property changed will work on wrong items. Fixed by snapshotting items to be refreshed before starting biometrics.
2023-08-02 09:29:14 -07:00
vvb2060
207d7fd3f6
SuRequestViewModel: fix await RootService on the main thread
2023-08-02 09:21:25 -07:00
南宫雪珊
bcdcfa1104
Update scripts/avd_magisk.sh
2023-08-02 09:12:00 -07:00
vvb2060
e0a4230dac
avd_magisk: hide stderr
2023-08-02 09:12:00 -07:00
topjohnwu
17ba5cba3e
Print permissive rules
2023-08-02 09:11:22 -07:00
topjohnwu
f2e109ad7d
Update libselinux and libsepol
2023-08-01 18:07:53 -07:00
topjohnwu
c83e141a1c
Support dumping sepolicy rules
2023-08-01 18:03:54 -07:00
topjohnwu
6089cc36de
Update xperm parsing
2023-07-31 09:28:27 -07:00
topjohnwu
9638dc0a66
Fix perror
2023-07-25 21:03:04 -07:00
Andrew Gunnerson
b191a14a23
magiskpolicy: Fix old xperms being cleared when adding new xperms
...
This commit updates sepol_impl::add_xperm_rule() so that it loads the
current xperm bits from the existing avtab entry before setting or
clearing xperm bits. This fixes new allowxperm rules causing old xperm
rules within the same xperm specified/driver to be removed.
Fixes : #7176
Signed-off-by: Andrew Gunnerson <accounts+github@chiller3.com>
2023-07-24 23:52:28 -07:00
topjohnwu
cf1bc82537
Random small refactoring
2023-07-24 23:49:20 -07:00
残页
6141bb5bb3
Fix MagiskInstaller.patchBoot() error catching
2023-07-21 12:05:33 -07:00
topjohnwu
4d2b62da0d
Do not override global variables in document
2023-07-21 12:04:42 -07:00
topjohnwu
39383229d1
Update dependencies
...
Close #7128
2023-07-20 18:35:53 -07:00
topjohnwu
08bfbb154a
Release new canary build
2023-07-17 23:20:07 -07:00
残页
d390ca2fdf
Avoid using IconCompat.createFromIcon() that doesn't support bitmap icon
2023-07-17 21:46:47 -07:00
topjohnwu
7ad77a14ae
Remove unused line
2023-07-17 21:43:09 -07:00
topjohnwu
f33343b4e6
Remove unused code and logic
2023-07-17 18:58:48 -07:00
topjohnwu
af65d07456
Support AVB1.0 signing and verification in magiskboot
2023-07-17 18:57:50 -07:00
topjohnwu
16d728f379
Partially document global variables in scripts
2023-07-17 16:07:16 -07:00
topjohnwu
c97ab690b6
Segment memory mapped boot image region
2023-07-13 21:01:49 -07:00
topjohnwu
4caed73fe0
Always include boot image when processing tar
...
Credits: @BlackMesa123
Fix #7132 , close #7133
2023-07-09 02:04:42 -07:00
BlackMesa123
4856da1584
Ignore `userdata.img` in Samsung tar firmware packages
...
Signed-off-by: BlackMesa123 <giangrecosalvo9@gmail.com>
2023-07-06 17:37:12 -07:00
LoveSy
0a07018fec
No need to use submodule for argh
2023-07-06 15:28:39 -07:00
LoveSy
64c82e1f2c
Refine cpio argh
...
we can use argh to handle `--help` now
2023-07-06 15:07:06 -07:00
topjohnwu
e8e8afa6c2
Properly handle visibility
2023-07-06 11:12:27 -07:00
LoveSy
af2207433d
Fix error logging
...
ok_or will unconditionally creates a LoggedResult, which prints
an error even it successes. Use ok_or_else which lazily creates
a LoggedResult only if it fails.
2023-07-06 11:01:57 -07:00
LoveSy
75ba62d588
Fix stub resource loading on Android 9, 10
...
They can only load resources from zip files
Co-authored-by: canyie <a1364259@163.com>
Co-authored-by: 南宫雪珊 <vvb2060@gmail.com>
2023-07-06 04:53:26 -07:00
LoveSy
606d97ae4d
Trace location from LoggedError
...
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2023-07-05 18:55:23 -07:00
topjohnwu
d778b0b0a7
Custom help message when using argh
...
Help messages generated from argh is nearly useless and very hard to
customize. Fork argh and disable all code for generating help messages.
Use a closure to print the help message when handling EarlyExit.
2023-07-05 17:05:39 -07:00
topjohnwu
5ee6daf126
Handle cpio commands properly
2023-07-03 21:57:28 -07:00
Fs00
43b9a09c9b
Update Italian app strings
2023-06-30 15:57:56 -07:00
Fs00
8475a2bb94
Update Italian stub strings
2023-06-30 15:57:56 -07:00
Rom
d8692de2f4
Update French translation
2023-06-30 15:57:37 -07:00
LoveSy
33a9abc946
Fix backup fails when ramdisk does not exist
2023-06-30 15:57:09 -07:00
topjohnwu
ee943afbc9
Cleanup SHA hash implementation
2023-06-30 15:50:52 -07:00
LoveSy
1f7c3e9f14
Use rust to calculate sha
2023-06-30 14:06:02 -07:00
topjohnwu
46770db18b
Rename stuffs
2023-06-30 03:03:51 -07:00
vvb2060
92f980601c
Fix close
2023-06-30 02:43:38 -07:00
vvb2060
d0b8c16651
Fix file permission
2023-06-30 02:43:38 -07:00
LoveSy
a470ee6f93
Fix mmap block device
2023-06-30 01:06:51 -07:00
vvb2060
ff1c56683d
Skip magisk32 for 64bit only avd
2023-06-29 20:45:51 -07:00
topjohnwu
4ee4cbada6
Standardize logging and error handling
...
- Introduce new types: LoggedResult and LoggedError
- Introduce new extension methods to log and add additional msgs
- Never exit when logging error messages in Rust (all errors should be
handled by using Result and Rust's error propagation)
- Remove all usages of anyhow as it doesn't fit Magisk's use cases
2023-06-29 17:14:53 -07:00
topjohnwu
dbc2236dd2
Release new canary build
2023-06-23 02:39:07 -07:00
topjohnwu
a8c4a33e91
Avoid using trait object
2023-06-23 02:32:29 -07:00
topjohnwu
279f955a84
Minor changes
2023-06-23 01:50:33 -07:00
topjohnwu
fbd1dbb20c
Manage MenuProvider with lifecycle state
2023-06-22 16:12:35 -07:00
topjohnwu
6c09fc2e64
Move addMenuProvider into onStart
2023-06-22 15:47:12 -07:00
LoveSy
f3304b482c
Fix sulog prompt always shows
2023-06-22 15:27:34 -07:00
LoveSy
0a85ef61c3
Call `removeMenuProvider` on `Fragment::onStop`
2023-06-22 15:27:23 -07:00
topjohnwu
dc26ad7125
Address clippy warnings
2023-06-22 02:36:31 -07:00
LoveSy
24b1c607f3
Replace clap with argh
2023-06-22 02:36:31 -07:00
topjohnwu
732a161b67
Minor cleanup
2023-06-22 02:23:27 -07:00
topjohnwu
9c7cf340a1
Move pattern matching to Rust
2023-06-21 16:47:20 -07:00
topjohnwu
399b9e5eba
Move hexpatch to Rust
2023-06-20 18:17:26 -07:00
topjohnwu
5805573625
Update clean operation
2023-06-20 14:50:02 -07:00
topjohnwu
a6b1149b9f
Minor cleanup
2023-06-20 14:36:07 -07:00
LoveSy
51e985ae7f
Use quick-protobuf
2023-06-20 14:36:07 -07:00
vvb2060
9929b25339
Move su request path to magisk tmp
2023-06-20 03:29:06 -07:00
topjohnwu
2359cfc480
Small refactor
2023-06-20 00:21:51 -07:00
topjohnwu
81493475f9
Directly use rust::Vec
2023-06-20 00:21:51 -07:00
Arbri çoçka
0493829231
Update strings.xml sq
2023-06-16 14:15:31 -07:00
VD $ VD171 @ Priv8
e2d1952ad9
Update PORTUGUESE Translation
2023-06-16 14:14:46 -07:00
LoveSy
7450965458
Update Chinese translation
...
Co-authored-by: 南宫雪珊 <vvb2060@gmail.com>
2023-06-16 14:13:46 -07:00
Vladimír Kubala
f45384685b
Update Slovak translation
2023-06-16 14:13:01 -07:00
topjohnwu
8abcccc262
Fix typo
2023-06-16 01:49:44 -07:00
LoveSy
a9c89cbbbb
Read certificate in Rust
...
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2023-06-16 01:49:44 -07:00
topjohnwu
d2eaa6e6c1
Fix scripts on Windows
2023-06-15 05:57:19 -07:00
LoveSy
53257b6ea1
Fix `find_apk_path`
2023-06-15 04:09:45 -07:00
LoveSy
c874391be4
Box CpioEntry
2023-06-15 04:09:17 -07:00
LoveSy
7e8e013832
Fix two typo
2023-06-15 04:09:17 -07:00
topjohnwu
037f46f7f0
Fix copy_cstr
2023-06-15 04:00:32 -07:00
topjohnwu
d3e1c496ca
Upgrade ONDK to r25.6
2023-06-15 01:26:54 -07:00
topjohnwu
d7d0a44693
Remove randomness from Magisk
2023-06-14 17:05:49 -07:00
topjohnwu
9d6f6764cb
Use Metadata instead of direct stat syscall
2023-06-12 14:58:13 -07:00
topjohnwu
cb3ab63815
Replace all CStr usage to Utf8CStr
2023-06-12 13:57:15 -07:00
topjohnwu
caae932117
Remove unnecessary lifetime markers
2023-06-12 13:56:20 -07:00
LoveSy
e9cf27eb5a
Fix map_file
2023-06-12 13:55:58 -07:00
LoveSy
6ee6685f4c
AVD test on API 34
2023-06-12 03:23:27 -07:00
LoveSy
d15017b777
Add arg requirement for cpio extract
2023-06-12 02:40:50 -07:00
LoveSy
a9387e63e1
Fix Utf8CStr::as_ref() -> OsStr
2023-06-12 02:40:50 -07:00
topjohnwu
23c1f0111b
Improve Rust implementation
...
- Move mmap_file implementation into Rust
- Introduce Utf8CStr as the better c-string type to use
2023-06-12 02:40:50 -07:00
LoveSy
866386e21f
Use to_string instead of to_owned
2023-06-12 02:40:50 -07:00
LoveSy
bf10496fa9
Add log for restore
2023-06-12 02:40:50 -07:00
LoveSy
607e6547a7
No check rm -r
2023-06-12 02:40:50 -07:00
topjohnwu
6b21091fe2
Fix compile errors and cleanup
2023-06-12 02:40:50 -07:00
topjohnwu
e58f98e844
Update cargo files
2023-06-12 02:40:50 -07:00
LoveSy
b8cb9cd84d
Refactor magiskboot cpio
2023-06-12 02:40:50 -07:00
LoveSy
c1038ac6f9
Remove permissve update_engine
2023-06-10 13:17:37 -07:00
LoveSy
c556dd0aac
Increase sccache hit rate
2023-06-10 13:17:16 -07:00
LoveSy
d2fbcd07b7
Use sccache on non CI env
2023-06-10 13:14:12 -07:00
LoveSy
bf6359abaa
Fix release build
2023-06-10 13:10:54 -07:00
topjohnwu
d1621845b8
Fix typo
2023-06-10 01:50:18 -07:00
topjohnwu
f33f1d25d0
Move find_apk_path to Rust
2023-06-10 01:40:45 -07:00
topjohnwu
40f25f4d56
Introduce directory traversal
2023-06-09 02:00:37 -07:00
topjohnwu
e13775ec2c
Directly use memmem in contains
2023-06-07 16:52:52 -07:00
topjohnwu
ee4dad7a13
Bridge C++ bytes with Rust &[u8]
2023-06-07 16:49:40 -07:00
topjohnwu
5e2ef1b7f4
Better bytes support in C++
2023-06-06 17:11:42 -07:00
topjohnwu
f8c38eab74
Proper Windows support
2023-06-05 02:27:02 -07:00
topjohnwu
305e8b3d14
Improve bootimg const correctness
2023-06-03 05:10:22 -07:00
topjohnwu
2a654e5d7f
Improve byte_data const correctness
2023-06-03 03:16:03 -07:00
topjohnwu
57afae3425
Cleanup cpio codebase
2023-06-03 00:31:20 -07:00
topjohnwu
feb44f875e
Migrate PREINITDEVICE in recovery mode
...
Close #6917
2023-06-02 16:49:04 -07:00
topjohnwu
7eebe62bb6
Do not realpath ANDROID_SDK_ROOT
2023-06-02 15:36:45 -07:00
topjohnwu
9ea9f01933
Resolve clippy errors and warnings
2023-05-31 01:08:33 -07:00
topjohnwu
665c6bdc4b
Provide easy access to the cargo command
2023-05-31 01:08:33 -07:00
topjohnwu
c79bc83275
Update dependencies
2023-05-30 01:32:43 -07:00
topjohnwu
c30fbdf145
Simplify logging code
2023-05-29 01:27:40 -07:00
topjohnwu
f12951bd1d
Fix typo
2023-05-29 00:30:55 -07:00
nikk gitanes
52f2e8c4a0
allow fast switch access with d-pad on superuser tab
2023-05-28 23:51:37 -07:00
nikk gitanes
1b2af1ed6d
correlate nextFocusRight
2023-05-28 23:51:18 -07:00
nikk gitanes
0f9b2a7df8
make module card clickable and highlight when focused
2023-05-28 23:51:18 -07:00
topjohnwu
f2846694e1
Cleanup some code
2023-05-28 23:50:52 -07:00
topjohnwu
e668dbf6f7
Update AGP
2023-05-28 17:57:53 -07:00
topjohnwu
d77a368176
Move dependency version into workspace
2023-05-28 17:30:33 -07:00
topjohnwu
ad0da08610
Update native clean operation
2023-05-28 17:30:20 -07:00
topjohnwu
0c52385ad4
Update to use ONDK r25.4
2023-05-27 01:57:02 -07:00
topjohnwu
5b8b48ccc1
Properly support streamable input
2023-05-26 14:07:11 -07:00
topjohnwu
659b9c6fee
Support extracting any partition from payload.bin
2023-05-26 13:36:47 -07:00
LoveSy
ec31cab5a7
Add zip and payload.bin support to Magisk app
2023-05-26 13:36:47 -07:00
vvb2060
dd93556ad8
Faster get magisk tmpfs path
2023-05-25 01:03:27 -07:00
topjohnwu
533aeadd38
Update cstr macro
2023-05-25 01:03:04 -07:00
topjohnwu
18d0cedbe2
Parse rule files with Rust
2023-05-24 19:11:56 -07:00
topjohnwu
5a94ef9106
Fix init rust code setup
2023-05-23 21:50:13 -07:00
topjohnwu
8e8f01f8b5
Move project common code into include
2023-05-23 21:30:30 -07:00
topjohnwu
7087badf87
Release new canary build
2023-05-23 21:02:33 -07:00
topjohnwu
47d2d4e3a5
Update su cmdline parsing
2023-05-23 20:51:23 -07:00
topjohnwu
6c47d8f556
Support 32 bit only AVD patch
...
Close #7010
2023-05-23 18:12:06 -07:00
topjohnwu
8c9d0314fb
Use sccache for all native builds in CI
2023-05-23 17:52:10 -07:00
topjohnwu
69144942e3
Fix fortify
...
Close #7009 , fix #7003
2023-05-23 16:31:24 -07:00
topjohnwu
5627053b74
Move su folder into core
2023-05-23 01:36:25 -07:00
topjohnwu
0f666de5e6
Organize headers
2023-05-22 21:36:15 -07:00
LoveSy
eddc862fa3
Use POSIX format
2023-05-22 18:14:59 -07:00
LoveSy
4327682120
Add mnt ns attach support for `su`
2023-05-22 18:14:59 -07:00
LoveSy
af5bdee78f
Reimplement `su -z`
2023-05-22 18:14:59 -07:00
LoveSy
0e36e86dbf
Support settings gids of su
2023-05-22 18:14:59 -07:00
LoveSy
f95478f1f1
Truncate file only if needed
2023-05-22 00:51:42 -07:00
topjohnwu
9fe8741a02
Export get_prop to Rust
2023-05-21 23:51:30 -07:00
topjohnwu
a5768e02ea
Cleanup byte_channel implementation
2023-05-20 14:19:40 -07:00
topjohnwu
f5aaff2b1e
Cleanup filter_out_stream implementation
2023-05-20 01:28:10 -07:00
topjohnwu
655f778171
Better cxx binding codegen
2023-05-19 15:59:40 -07:00
topjohnwu
2e77a426b2
Fix build script
2023-05-19 15:32:14 -07:00
topjohnwu
2bcf2e76f1
Generate cxx binding in build.rs
2023-05-19 15:16:54 -07:00
topjohnwu
57bd450798
Split input and output streams
2023-05-19 04:19:43 -07:00
topjohnwu
582cad1b8d
Cleanup libc hacks
2023-05-19 03:23:43 -07:00
topjohnwu
6ca2a3d841
Update libsystemproperties
2023-05-19 03:22:50 -07:00
topjohnwu
91773c3311
Support only read properties from storage
2023-05-19 01:53:40 -07:00
topjohnwu
dc61033b2c
Support persist props bypassing property_service
2023-05-18 23:36:46 -07:00
topjohnwu
f8d62a4b6c
Move resetprop under core
2023-05-18 22:15:49 -07:00
topjohnwu
1d2145b1b7
Improve argument parsing and help message
2023-05-18 21:54:54 -07:00
topjohnwu
1f7f84b74a
Remove unnecessary class
2023-05-18 20:38:33 -07:00
topjohnwu
cd7a335d0f
Cleanup implementation
2023-05-18 20:26:20 -07:00
topjohnwu
17569005a4
Remove sysprop fallback
...
The library now supports mapping as ro
2023-05-18 15:47:50 -07:00
topjohnwu
f36b21bae5
Support get property context
...
Co-authored-by: canyie <a1364259@163.com>
Co-authored-by: vvb2060 <vvb2060@gmail.com>
2023-05-18 14:46:36 -07:00
topjohnwu
fe1ca52f6d
Simplify prop_cb
2023-05-16 02:41:39 -07:00
topjohnwu
1be647a279
Put all FFI into same module
2023-05-16 02:41:39 -07:00
topjohnwu
2ea1a47bec
Fix color printing
2023-05-16 02:41:39 -07:00
Ernest
2d799dae0d
Update app/src/main/res/values-lt/strings.xml
...
Co-authored-by: LoveSy <631499712@qq.com>
2023-05-14 23:54:57 -07:00
Ernest
c6408babac
Update strings.xml
...
Updated all strings.
2023-05-14 23:54:57 -07:00
topjohnwu
a8c1ed8795
Update development docs
2023-05-13 02:38:03 -07:00
topjohnwu
e3cb5f8ddd
Support setting ANDROID_STUDIO
2023-05-13 02:38:03 -07:00
topjohnwu
e160e211dd
Format build.py with black
2023-05-13 02:38:03 -07:00
topjohnwu
22d05ca399
Update time handling code
2023-05-13 02:38:03 -07:00
vvb2060
bd2651057d
Simplify prefs migration
2023-05-11 16:29:01 -07:00
topjohnwu
1610092ec4
Increase wait timeout
2023-05-10 16:13:45 -07:00
LoveSy
b9e6937996
Make magisk node ro as well
2023-05-10 00:13:18 -07:00
topjohnwu
a207f03952
Run tests in parallel
2023-05-10 00:10:19 -07:00
topjohnwu
851153dd7c
Fix avd_test.sh
2023-05-09 23:11:11 -07:00
topjohnwu
583ffc8177
Reduce cpp logging overhead
2023-05-09 19:14:08 -07:00
topjohnwu
7518092ad2
Implement logging purely in Rust
2023-05-09 18:54:38 -07:00
topjohnwu
8c2ad3883a
Update avd_magisk.sh
2023-05-09 17:33:20 -07:00
topjohnwu
d364554425
Remove unused code
2023-05-06 01:48:47 -07:00
vvb2060
726ffdcd98
Fix meizu rootfs type
2023-05-06 00:06:59 -07:00
vvb2060
f9d22cf8ee
New magisk tmp dir: /debug_ramdisk
...
Co-authored-by: LoveSy <shana@zju.edu.cn>
2023-05-06 00:04:11 -07:00
vvb2060
ee50da566f
Cancel recursive bind
2023-05-06 00:04:11 -07:00
vvb2060
9f7d410959
Use pathname local socket
2023-05-06 00:04:11 -07:00
vvb2060
bc94ea4334
Update SELinux policy
2023-05-06 00:04:11 -07:00
topjohnwu
c0c9204848
Add ResultExt
2023-05-05 23:57:34 -07:00
topjohnwu
c0d1bf63bc
Clean up logging on C++ side
2023-05-05 01:14:56 -07:00
StoyanDimitrov
bbda0cdffe
Update strings.xml
2023-05-05 00:39:19 -07:00
topjohnwu
7b5ff99cd1
Reorganize code
2023-05-04 21:37:08 -07:00
topjohnwu
21ddb26db8
Perform proto codegen in build script
2023-05-04 21:37:08 -07:00
LoveSy
7bf2e3875f
Support extract boot image from payload.bin
2023-05-04 21:37:08 -07:00
topjohnwu
b136aba1e2
Implement magiskinit logging in Rust
2023-05-02 16:49:43 -07:00
topjohnwu
0d84f80b3c
Update AGP
2023-05-02 16:28:14 -07:00
topjohnwu
af45aeb771
Extract busybox from APK for AVD
2023-05-02 16:28:02 -07:00
topjohnwu
1c5a435e1f
Update cxx-rs
2023-05-01 14:53:07 -07:00
Soo-Hwan Na
0ea1257dcd
Update Korean translation
2023-05-01 12:08:12 -07:00
Mohamadreza Nakhleh
4c92677b5a
(translate)
...
update some Persian (Farsi,فارسی) translations and add more Persian equivalent
2023-05-01 12:07:50 -07:00
fadlyas07
979260bd62
app: l10n: Update Indonesian translations
...
* Added new strings based on the latest source.
* Rephrase "bisa" (informal) to "dapat" (formal).
Change-Id: I7c29951adff7e5dc086e6044571ff4cdb6366966
2023-05-01 12:07:21 -07:00
topjohnwu
f7de649a36
Update ODNK requirement to r25.3
2023-04-29 15:12:04 -07:00
topjohnwu
0cf0d2b821
Move avd_hack boolean out of init class
2023-04-25 23:34:45 -07:00
vvb2060
3733c9a091
CI: add avd test
2023-04-25 23:00:59 -07:00
vvb2060
e9f32e4f68
Set text and background color
2023-04-25 23:00:59 -07:00
vvb2060
68c2817d40
Enable avd hack for debug build
2023-04-25 23:00:59 -07:00
naxitoo
83d837d868
Update/refine Spanish translations
2023-04-18 11:53:22 -04:00
I3elphegor
093eb15ee1
Update strings.xml
...
Incorrectly placed punctuation marks have been removed. Word order and some expressions have been corrected. The style of the menu headings and descriptions has been unified in the settings.
2023-04-18 11:22:44 -04:00
VD $ VD171 @ Priv8
c6412c1b1b
Update PORTUGUESE translation
2023-04-18 11:22:03 -04:00
serkanege
1151393d74
tr language update
2023-04-18 11:21:32 -04:00
topjohnwu
468f3efb13
Update dependencies
2023-04-13 14:19:34 -07:00
LoveSy
d6b19b9d4c
Upgrade gradle
2023-04-13 14:19:30 -07:00
Ilya Kushnir
709f25f600
Fix changelog index
2023-04-12 02:46:21 -07:00
topjohnwu
4b16e4b026
Update README
2023-04-11 12:51:22 -07:00
topjohnwu
cdfbc02922
Release new canary build
2023-04-11 02:04:15 -07:00
topjohnwu
d0c9384233
Release Magisk v26.1
2023-04-11 01:57:30 -07:00
topjohnwu
2488668b06
Add v26.1 release notes
2023-04-11 01:52:45 -07:00
LoveSy
52a98cbd51
Temp workaround for module file context
2023-04-10 19:30:37 -07:00
serkanege
1840c4c486
Update strings.xml
2023-04-10 19:30:11 -07:00
serkanege
34080f3958
Update strings.xml
2023-04-10 19:30:11 -07:00
topjohnwu
e9b76b6aa5
Add monochrome adaptive icon support
...
Close #6867
2023-04-10 19:29:32 -07:00
Jakub K
b7799b53d9
Updated Czech translation
...
Added missing strings and updated few.
2023-04-09 21:24:55 -07:00
Lishoo
1e206515c7
Update PL strings
...
Update PL strings
2023-04-08 21:15:19 -07:00
sn-o-w
6bb313184d
Update Romanian
2023-04-08 21:15:02 -07:00
l3ng
2763992434
Update Azerbaijani
...
Co-authored-by: LoveSy <631499712@qq.com>
2023-04-08 21:14:41 -07:00
osm0sis
18fe0e6442
Fix scripts
...
manager.sh + boot_patch.sh:
- all listed files from boot_patch.sh header are required for boot patching, but stub.apk was being removed so install_magisk via addon.d.sh would fail without it; leave it in place
addon.d.sh:
- remove old redundant recovery_actions call (it's also performed by setup_flashable in initialize)
- print ABI to match flash_script.sh output
boot_patch.sh:
- catch and abort on any errors from ramdisk.cpio patching in the future
util_functions.sh:
- fix hiding of mount_partitions /system_root umount stderr
- quote mount_apex .pb DEST name parsing charset for safety even though both work
Fixes #6828
2023-04-08 21:13:40 -07:00
zjw
a70c73bffd
Fix config file path
...
$MAGISKTMP was redefined in commit 4e2b88b
2023-04-08 21:10:54 -07:00
topjohnwu
b4ae3493a6
Use ext4 partitions for preinit first
...
Fix #6841 , close #6847
2023-04-08 20:30:40 -07:00
残页
1a16004b20
Add help message for `magisk --preinit-device`
2023-04-08 18:32:34 -07:00
topjohnwu
56707b8119
Make FilterList more accurate
2023-04-08 18:32:00 -07:00
LoveSy
c3f9533ddc
Fix inconsistency of FilterableDiffObservableList
...
`update` should also update sublist
2023-04-08 18:32:00 -07:00
Rom
3b3abd63cc
Update FR translation
2023-04-07 03:08:27 -07:00
Hen_Ry
411d3ed4e9
Update DE strings
2023-04-07 03:07:46 -07:00
LoveSy
f29cc26103
Correctly get displayName of live uri
2023-04-06 02:03:09 -07:00
Ilya Kushnir
1cd595a598
Update RU strings
2023-04-06 01:10:48 -07:00
topjohnwu
22e023b58d
Set notes on main thread
2023-04-06 00:53:06 -07:00
topjohnwu
7be958e35d
Fix crash when revoke root permission
2023-04-06 00:40:26 -07:00
topjohnwu
69b66ef637
Make core package more self contained
2023-04-05 23:04:33 -07:00
topjohnwu
daf8653c38
Release new canary build
2023-04-05 11:13:51 -07:00
topjohnwu
e2545e57cf
Update README badges
2023-04-05 11:07:40 -07:00
topjohnwu
7cb0909c70
Release Magisk v26.0
2023-04-05 11:02:17 -07:00
topjohnwu
cc5ff36165
Revert "Cancel recursive bind"
...
This reverts commit a18a440236
.
2023-04-05 10:47:13 -07:00
topjohnwu
18b1ef6c29
Only restore JNIEnv in constructor
2023-04-05 10:13:50 -07:00
LoveSy
7fe012347a
Restore JNIEnv in advance for clean env to modules
2023-04-05 09:29:59 -07:00
vvb2060
5c165c9bb0
Fix avd hack
2023-04-05 04:01:32 -07:00
topjohnwu
6c3519923d
Make things more obvious
2023-04-05 04:01:07 -07:00
topjohnwu
9ea859810d
Update api.hpp copyright notice
2023-04-05 01:54:56 -07:00
LoveSy
8dae7b5451
Update installation guide
2023-04-05 01:50:45 -07:00
vvb2060
f827755aaf
Skip getSessionInfo
2023-04-05 01:46:33 -07:00
topjohnwu
637a8af234
Add v26.0 release notes
2023-04-05 01:42:42 -07:00
LoveSy
b0fc580860
Avoid crash when calling `abandonSession`
2023-04-05 00:36:51 -07:00
vvb2060
9279f30e89
Upload mapping and native debug symbols
2023-04-05 00:14:51 -07:00
LoveSy
b505819ca2
Fix a typo
2023-04-04 12:28:08 -07:00
topjohnwu
39d1d23909
Release new canary build
2023-04-04 03:00:50 -07:00
vvb2060
69529ac59c
Fix restorecon
2023-04-04 02:34:16 -07:00
vvb2060
a18a440236
Cancel recursive bind
2023-04-04 02:12:07 -07:00
LoveSy
aa7846c1c0
No need to mount ROOTMIR if tmp_dir != /sbin
2023-04-04 02:12:07 -07:00
topjohnwu
24ba4ab95b
Better AVD support
2023-04-04 02:04:49 -07:00
topjohnwu
762b70ba9d
Better string split implementation
2023-04-03 18:50:36 -07:00
topjohnwu
41b77e4f25
Make base as template argument for optimization
2023-04-03 18:32:11 -07:00
topjohnwu
2087e47300
Get random separately
2023-04-03 18:32:11 -07:00
vvb2060
46ce765860
Use stable random seed
2023-04-03 18:32:11 -07:00
topjohnwu
5117dc1a31
Reorganize code
2023-04-03 17:47:07 -07:00
Arbri çoçka
620fd7d124
Update sq strings.xml
2023-04-03 16:54:11 -07:00
kubalav
3e991dc003
Update Slovak translation
2023-04-03 16:53:59 -07:00
LoveSy
15cab86152
Make module mirror read only
2023-04-02 22:03:02 -07:00
LoveSy
aa785b5845
Show confirm dialog when installing local module
...
It can avoid miss click
Co-authored-by: 南宫雪珊 <vvb2060@gmail.com>
2023-04-02 21:33:13 -07:00
LoveSy
97731a519a
Update zygisk API to avoid mem leak
2023-04-02 03:54:33 -07:00
残页
b696dae808
Specify foregroundServiceType for DownloadService
2023-04-02 02:20:49 -07:00
topjohnwu
732a8260c2
Update dependencies
2023-04-02 02:13:47 -07:00
LoveSy
4ff60ef9a9
No more patching libc.a on 64bit platforms
2023-04-01 03:51:57 -07:00
topjohnwu
23b1b69110
Consolidate zygisk cleanup routines
2023-04-01 03:37:17 -07:00
LoveSy
3a4fe53f27
New way to unload zygisk
...
Co-authored-by: 残页 <a1364259@163.com>
2023-04-01 03:37:17 -07:00
LoveSy
e48afff5e8
Compress jniLibs
2023-04-01 01:54:10 -07:00
topjohnwu
3f4f4598e8
Better AVD support
2023-03-31 17:21:12 -07:00
LoveSy
3921e9cb1b
Fix release build
2023-03-31 00:06:55 -07:00
topjohnwu
0b987dd0b0
Cleanup more databinding implementation
2023-03-31 00:05:33 -07:00
Ilya Kushnir
1620e15f99
Update RU strings
2023-03-30 13:45:13 -07:00
topjohnwu
b089511e91
Update Android Studio
2023-03-30 13:35:13 -07:00
Arbri çoçka
958788c1aa
Update Albania
2023-03-30 13:33:26 -07:00
LoveSy
b5a8a27296
Update Chinese translation
2023-03-30 13:33:04 -07:00
kubalav
98123775ad
Update Slovak translation
2023-03-30 13:32:40 -07:00
Thonsi
c7133974be
Clean up some codes
2023-03-26 20:48:23 -07:00
LoveSy
04324a7ebe
Upgrade LSPlt to bypass a bionic bug
2023-03-23 20:56:35 -07:00
vvb2060
f54daa3469
Force ramdisk format to lz4_legacy for v4
2023-03-23 20:50:27 -07:00
LoveSy
07c22ccd39
Use app_dir to detect systemui instead
...
uid may be shared by other apps (e.g., in MIUI, systemui's uid
is 1000 and shared by many system apps).
2023-03-23 16:17:13 -07:00
LoveSy
e893c13cf1
Unlink preinit device if bind mount fails
2023-03-23 00:40:13 -07:00
LoveSy
dba5020e4f
Refactor magiskrc
2023-03-22 17:53:15 -07:00
LoveSy
87e036a190
Update LSPlt to avoid crash when hooking libc
2023-03-22 12:02:33 -07:00
LoveSy
3dd94672b0
Fix preinit scripts
2023-03-22 03:07:34 -07:00
LoveSy
004b193f69
Fix installation crash
2023-03-22 02:44:14 -07:00
topjohnwu
4417997749
Make sure ro mmap region is not overwritten
2023-03-21 15:50:43 -07:00
LoveSy
2eef542054
Add amonet microloader support
2023-03-21 15:50:43 -07:00
LoveSy
a07d4080b6
Upgrade termux-elf-cleaner to strip DT_PREINIT_ARRAY
2023-03-21 02:17:21 -07:00
LoveSy
b9d0a3b3d4
Use partition name or devpath's name
2023-03-21 00:40:11 -07:00
topjohnwu
76405bd984
Add more comments
2023-03-21 00:40:11 -07:00
topjohnwu
4e2b88b3d0
Rename rules to preinit
...
It is possible that we will allow more preinit files for modules.
Rename the partition and folders from rules to preinit.
2023-03-21 00:40:11 -07:00
LoveSy
7048aa1014
Rename sepolicy.rules -> rules
2023-03-21 00:40:11 -07:00
LoveSy
1c2fcd14b5
Mount sepolicy.rules for migration
2023-03-21 00:40:11 -07:00
vvb2060
84e1bd7bc3
Refactor sepolicy.rules resolve app
2023-03-21 00:40:11 -07:00
vvb2060
362eea741f
Refactor sepolicy.rules resolve native
...
Co-authored-by: LoveSy <shana@zju.edu.cn>
2023-03-21 00:40:11 -07:00
LoveSy
4de93cfd4b
Use RV to show Magisk logs
2023-03-19 23:47:29 -07:00
LoveSy
03cee0b8d4
Remove meaningless umount in magiskinit
...
This is no longer required since we redirect to /data/magiskinit
2023-03-19 23:35:18 -07:00
LoveSy
54ecc001f4
Clean up more codes
2023-03-19 23:20:19 -07:00
LoveSy
5c325d9466
Fix su log with long command
2023-03-19 23:20:04 -07:00
topjohnwu
0e851cdcf8
Always fetch network state on process onStart
2023-03-19 04:11:59 -07:00
topjohnwu
af054e4e31
Bump minSdk to 23
2023-03-17 04:24:26 -07:00
Chris Renshaw
33fb4653f0
Sanitize any bad chars from mount_apex apex_manifest.pb string parsing
...
For example, Lineage's com.android.ondevicepersonalization apex_manifest.pb has a # char, which strings keeps in its output, and breaks the mount for that apex before this fix
2023-03-17 02:44:36 -07:00
LoveSy
d9f0aed571
Fix unpack -n and repack -n of ZIMAGE kernel
2023-03-17 02:00:46 -07:00
LoveSy
98813c24fb
Drop trailing garbage of gzip decompress
...
I previously refered to minigzip from libz which copies all trailing
data to the output when decompressing. However, gzip, on the other
hand, drop trailing garbage by default. Consider ZIMAGE append
the kernel size with zero padding, we should drop trailing garbage
as well.
2023-03-17 02:00:25 -07:00
topjohnwu
3cc81bb3fd
Cleanup ObservableList implementation
2023-03-17 01:40:28 -07:00
topjohnwu
366dd52419
Update AGP
2023-03-16 04:18:03 -07:00
topjohnwu
fe6b658c02
Use MenuProvider
2023-03-09 18:05:37 -08:00
LoveSy
3cf66d1c57
Fix currentFocus
...
Looks like currentFocus does not always exist even after setContentView,
so I hereby use another way to check if setContentView is called
2023-03-09 17:52:38 -08:00
topjohnwu
382568bd3c
Cleanup filterable list implementation
2023-03-09 17:45:00 -08:00
LoveSy
d130aa02a1
Do not always create new adapter
2023-03-09 16:00:08 -08:00
LoveSy
1a1646795f
Support `untrusted_app_32`
2023-03-09 02:17:30 -08:00
LoveSy
d52ea1b068
Postpone `showMainUI` when activity has stopped
...
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2023-03-07 21:04:04 -08:00
LoveSy
e14f7b6908
No KeyDispatch or OnBackPress when no currentFocus
2023-03-07 20:20:35 -08:00
南宫雪珊
4709a32641
Fix mkdir
...
Co-authored-by: LoveSy <shana@zju.edu.cn>
2023-03-07 01:47:26 -08:00
topjohnwu
71b7f52663
Release new canary build
2023-03-06 05:32:08 -08:00
LoveSy
981ccabbef
No support for partitions w/o symlink in /system
2023-03-06 05:23:40 -08:00
vvb2060
9e07eb592c
Fix make private before remount
2023-03-06 05:18:16 -08:00
LoveSy
9555380818
Replace parse_mnt with parse_mount_info
2023-03-06 05:09:12 -08:00
topjohnwu
f80d5d858e
Update AGP
2023-03-06 05:08:58 -08:00
topjohnwu
a1ce6f5f12
Fix race condition when switching root manager
...
Before this change, the root manager package name is only written into
the database after the repackaged APK is installed. In the time between
the repackaged APK being installed and the package name being written
into the database, if some operation calls `get_manager`, the Magisk
daemon will cache this result and ignore the repackaged APK, even if
the package name is set afterwards, because the cache won't be
invalidated. The result is that the repackaged manager APK will not be
recognized as the root manager, breaking the hide manager feature.
This race condition is more likely to happen when Zygisk is enabled,
because `get_manager` is called with a very high frequency in that case.
To fix the issue, we have to set the new package name into the database
BEFORE installing the repackaged APK. We also stop pruning the
database if the repackaged manager is not found, moving this logic into
the Magisk app. By doing so, we can guarantee that the instant after
the repackaged manager APK is installed, the Magisk daemon will
immediately pick it up and treat it as the root manager.
Another small optimization: when the requester is root, simply bypass
the whole database + manager package check. Since the Magisk app hiding
APK installation proces will call `su` several times to run `pm` under
different UIDs, doing this opimization will reduce the amount of
unnecessary database query + filesystem traversals.
2023-03-06 03:58:58 -08:00
LoveSy
1aade8f8a8
No greedy match to find parent mount point
...
This fixes /sys is considered as a parent mount point of /system
2023-03-03 11:09:03 -08:00
LoveSy
b9213b7043
Remove redundant stub.apk
2023-03-03 11:07:36 -08:00
LoveSy
4af72324f4
Fix gradle cache
2023-03-03 02:39:22 -08:00
LoveSy
b6ea5b8984
Fix SYSTEM_ROOT not passed to boot patch
2023-03-02 23:39:50 -08:00
topjohnwu
c279e08c88
Release new canary build
2023-03-02 21:35:14 -08:00
topjohnwu
2717feac21
Fix stub APK building in app
2023-03-02 21:27:48 -08:00
topjohnwu
8adf27859d
Build script adjustments
2023-03-02 20:32:46 -08:00
LoveSy
307cf87215
Fix build script
2023-03-02 20:32:46 -08:00
Takeda-senpai
ca31412c05
Update strings.xml
2023-03-02 14:34:08 -08:00
LoveSy
f59fbd5dca
Filter duplicate mount points
...
This prevents umounting existing overlay mount points
2023-03-02 14:33:50 -08:00
topjohnwu
2285f5e888
Fix build script
2023-03-02 03:02:10 -08:00
LoveSy
da36e5bcd5
Make worker private
2023-03-02 02:25:44 -08:00
Prithvi
4ed9f57fdc
Update ota.md ( #6374 )
...
Specified the steps of the OTA install process so there is less confusion about what step 1 and 2 entail.
2023-03-02 02:23:19 -08:00
Daki Carnhof
ea7be6162f
install.md: Mention Heimdall beside Odin
...
Proven to work with Magisk 25.2, LineageOS 18.1, SM-A520F.
2023-03-02 02:21:14 -08:00
南宫雪珊
3726eb6032
Deny init relabel to adb_data_file
...
Co-authored-by: 残页 <a1364259@163.com>
Co-authored-by: LoveSy <shana@zju.edu.cn>
2023-03-02 02:20:38 -08:00
vvb2060
6e918ffd68
Remove fetchCustomUpdate
2023-03-02 02:05:38 -08:00
vvb2060
4772868d6a
Move REMOUNT_ROOT
2023-03-02 02:05:38 -08:00
vvb2060
78df677a42
Use /data/adb/modules directly
2023-03-02 02:05:38 -08:00
vvb2060
85a4b249b3
Skip copy old rule
2023-03-02 02:05:38 -08:00
vvb2060
d06e9a0b51
Allow R8 to delete fetchCanary
2023-03-02 02:05:38 -08:00
vvb2060
5eb774a2ad
Fix typo
2023-03-02 02:05:38 -08:00
topjohnwu
cbbbbab483
Release new canary build
2023-02-27 23:16:54 -08:00
LoveSy
e5641d5bdb
Fix avd-magisk
2023-02-27 23:00:42 -08:00
topjohnwu
a721206c6f
Update items in the right thread
2023-02-27 23:00:21 -08:00
LoveSy
c7a27481f9
Update proguard rules to fix module page crash
2023-02-27 20:50:24 -08:00
LoveSy
594c304634
Fix release build
2023-02-26 22:35:20 -08:00
topjohnwu
d0ec387c28
Release new canary build
2023-02-26 15:06:33 -08:00
vvb2060
7dbfba76bf
Umount by tmpfs id
2023-02-26 14:23:11 -08:00
vvb2060
2a4aa95a6f
Identify tmpfs used by magisk
2023-02-26 14:23:11 -08:00
vvb2060
5520f0fbf7
Add stub version to apk comment
2023-02-26 14:23:02 -08:00
LoveSy
a1a87c9956
Get rid of vtable hook
2023-02-26 04:59:21 -08:00
vvb2060
2c53356bfd
Remove unexpected files
2023-02-26 03:47:38 -08:00
topjohnwu
85d9756f62
Update Zygisk API documentation
2023-02-26 03:16:13 -08:00
LoveSy
79586ece4c
Update install.md
2023-02-26 01:17:11 -08:00
AndroPlus
6851d11a8e
Update Japanese translation
2023-02-26 01:16:23 -08:00
LoveSy
996a857096
Upgrade kotlin
2023-02-26 01:15:32 -08:00
LoveSy
d7158131e4
No need to manually parse mount flags
2023-02-26 01:15:18 -08:00
topjohnwu
3d3082bc82
Minor optimizations
2023-02-26 01:14:10 -08:00
topjohnwu
744ebca206
Don't let inter_node upgrade to module_node
2023-02-25 22:05:50 -08:00
topjohnwu
92077ebe53
Refactor module and node implementation
2023-02-25 18:19:46 -08:00
LoveSy
78ca682bc5
Always mount tmpfs for dirs
...
https://android-review.googlesource.com/c/platform/system/core/+/928592
2023-02-25 18:19:46 -08:00
LoveSy
af01a36296
Refactor magic mount to support overlayfs
...
Previously, magic mount creates its own mirror devices and mount
mirror mount points. With these mirror mount points, magic mount
can get the original files and directory trees. However, some
devices use overlayfs to modify some mount points, and thus after
magic mount, the overlayed files are missing because the mirror
mount points do not contain the overlayed files. To address this
issue and make magic mount more compatible, this patch refactors
how magic mount works.
The new workflows are as follows:
1. make MAGISKTMP a private mount point so that we can create the
private mount points there
2. for mirror mount points, we instead of creating our own mirror
devices and mount the mirror mount points, we "copy" the
original mount points by recursively mounting /
3. to prevent magic mount affecting the mirror mount points, we
recursively set the mirror mount points private
4. to trace the mount points we created for reverting mounts, we
again make the mirror mount points shared, and by this way we
create a new peer group for each mirror mount points
5. as for tracing the newly created tmpfs mount point by magic
mount, we create a dedicated tmpfs mount point for them, namely
worker mount point, and obviously, it is shared as in a newly
created peer group for tracing
6. when reverting mount points by magic mount, we can then trace
the peer group id and unmount the mount points whose peer group
ids are created by us
The advantages are as follows:
1. it is more compatible, (e.g., with overlayfs, fix #2359 )
2. it can mount more partitions for which previous implementation
cannot create mirror mount points (fix #3338 )
2023-02-25 18:19:46 -08:00
LoveSy
97ed1b16d0
Fix gzip decompression
2023-02-20 18:26:04 -08:00
LoveSy
508a001753
Remove obsolete link
2023-02-20 17:25:32 -08:00
vvb2060
c1909d520b
Fix gradle build cache
2023-02-20 01:23:56 -08:00
topjohnwu
9b1e173373
Update AGP
2023-02-20 01:03:35 -08:00
LoveSy
4ba365565f
Upgrade gradle
2023-02-20 00:08:23 -08:00
残页
ae34659b26
No kernel repack if it isn't patched at all
...
It turns out that decompressing and recompressing the kernel is enough to break booting on many devices that use MT6763.
Fix #5124 , fix #6204 , fix #6566
Co-authored-by: LoveSy <shana@zju.edu.cn>
Co-authored-by: 南宫雪珊 <vvb2060@gmail.com>
2023-02-17 15:00:14 -08:00
LoveSy
79a85f5937
Use mountinfo for revert unmount
2023-02-17 12:36:19 -08:00
LoveSy
b249832571
Use statfs to check rootfs
...
This helps support adb remount
2023-02-12 22:49:27 -08:00
LoveSy
577b5912af
Fix SKIP_FD_SANITIZATION false positive
...
Fix #6523
2023-02-12 00:40:09 -08:00
LoveSy
9e8c68af12
Refactor sepolicy.rules resolve
...
We resolve available partitions for sepolicy.rules when patching
boot and bind mount the partition by magiskinit.
For older devices, the previous logic won't work because the part name
is never readable.
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2023-02-12 00:36:38 -08:00
shìwēi nguyen
03418ddcbf
run module uninstall.sh on Magisk uninstallation
2023-02-09 20:36:58 -08:00
LoveSy
220a1c84ce
Zygisk v4 module's plt commit should not use regex
2023-02-09 20:19:53 -08:00
南宫雪珊
9a4458ffac
Update appcompat
2023-02-09 20:13:40 -08:00
vvb2060
7a9e6d2ad2
Remove unexpected /sbin/overlay.d
2023-02-09 20:08:59 -08:00
LoveSy
9656cf2f86
Refine
2023-02-09 20:08:44 -08:00
BlackMesa123
584bad5314
Add `init_boot.img` patching for Samsung tar firmware packages
...
Signed-off-by: BlackMesa123 <giangrecosalvo9@gmail.com>
2023-02-09 20:08:44 -08:00
topjohnwu
459088024f
Update dependencies
2023-02-09 19:53:40 -08:00
Chris Renshaw
d740bbe058
Ignore AMLogic "normal" slot suffix in scripts as well
...
Fixes #6572
2023-02-03 10:44:43 -08:00
canyie
6ecc04a4df
Fix auto install stub
2023-01-23 01:55:28 +08:00
canyie
15a7e9af57
Fix ResourcesProvider being closed
2023-01-20 19:32:22 +08:00
LoveSy
0329f00129
Upgrade LSPlt
...
Fix #6533
2023-01-20 19:29:55 +08:00
topjohnwu
cd8a2edefb
Reduce unnecessary formatting
2023-01-20 14:41:34 +08:00
LoveSy
4318ab5cd2
Reuse tmpfs for magic mount
...
As we already have a tmpfs (magisktmp), we can reuse them for
magic mount
2023-01-20 03:49:40 +08:00
topjohnwu
3517e6d752
Handle nullptr char* in Rust
2023-01-20 03:45:16 +08:00
LoveSy
67845f9c21
Clear sepolicy rules when disable/remove modules
...
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2023-01-19 04:25:44 +08:00
Kian-Meng Ang
f562710438
Fix typos
...
Found via `codespell -S *.xml,*.kt,./native/src/external -L crate,bu`
2023-01-18 16:35:37 +08:00
vvb2060
e836909c50
umount old hijack binary
2023-01-18 13:06:17 +08:00
vvb2060
7769ba5f54
Remove READ_EXTERNAL_STORAGE permission added by AGP 1.8
2023-01-18 12:52:24 +08:00
topjohnwu
7fe9db90a1
Update AGP
2023-01-18 12:52:04 +08:00
topjohnwu
8f7d6dfb77
Cleanup unused functions
2023-01-12 23:17:41 +08:00
canyie
2839978cc1
Use null oat dir in root service only
2023-01-12 22:38:14 +08:00
canyie
e73f87b758
Update LSPlt
2023-01-12 01:18:56 +08:00
canyie
bd0409fd15
Fix busybox filename
2023-01-12 01:18:41 +08:00
canyie
babdfe80cb
Fix stub resources load on Android 5
2023-01-12 01:12:56 +08:00
topjohnwu
636223b289
Cleanup APIs
2023-01-10 02:42:45 +08:00
LoveSy
aa0a2f77cf
Add inode plt hook APIs
2023-01-10 02:42:45 +08:00
topjohnwu
e38f35eab2
Update libsu
...
Fix #6488
2023-01-09 03:16:11 +08:00
canyie
cb39514705
Fix NotificationService implementation
...
- Fix #6385 . (Maybe the reason is, the call to stopForeground() with STOP_FOREGROUND_DETACH ensures the notification is shown so it reposts the notification?)
- Use FOREGROUND_SERVICE_IMMEDIATE on Android 12+ to make sure the downloading notification always shows immediately
2023-01-09 00:10:52 +08:00
topjohnwu
78a444d601
Wait for root service to bind
2022-12-30 15:52:41 -08:00
LoveSy
37b81ad1f6
Refine module preparation return value
2022-12-26 17:17:41 -08:00
vvb2060
7871c2f595
Update deps
2022-12-26 17:16:26 -08:00
topjohnwu
57d83635c6
Check stub.xz existence
2022-12-26 16:07:04 -08:00
topjohnwu
76fbf4634a
Update scripts
2022-12-26 16:07:04 -08:00
topjohnwu
7ce4bd3330
Copy stub APK into output directory
2022-12-26 16:07:04 -08:00
vvb2060
ad0e6511e1
Stop embedding stub.apk in magiskinit
2022-12-26 16:07:04 -08:00
vvb2060
a4a734458b
Fix network capabilities
2022-12-26 13:48:17 -08:00
Brian Kepha
f989756b93
Added Swahili Translation
2022-12-26 03:30:44 -08:00
LoveSy
5763a3d908
Support replacing existing .rc by overlay.d
...
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2022-12-26 03:28:10 -08:00
topjohnwu
1b745ae1a0
Use latest build tools
2022-12-26 02:02:21 -08:00
topjohnwu
b6d50bea2c
Release new canary build
2022-12-26 00:33:02 -08:00
topjohnwu
831a398bf1
Check Python 3.8+
2022-12-26 00:09:27 -08:00
topjohnwu
a848783b97
Guard boot stages more precisely
...
Close #6468 , fix #6148
2022-12-26 00:04:58 -08:00
LoveSy
4d876f0145
Support detecting safemode by ro.sys.safemode
2022-12-24 15:16:53 -08:00
LoveSy
bdfedea4e0
Close missing fd
...
Fix #6463
2022-12-24 15:16:27 -08:00
LoveSy
ea0e3a09ef
Update install.md
2022-12-23 17:21:44 -08:00
topjohnwu
dadae20960
Remove unused implementations
2022-12-23 17:20:39 -08:00
LoveSy
4ed34cd648
Eliminate unnecessarily copy on magiskinit
...
This patch reuses the abused /data tmpfs for magisktmp
2022-12-23 17:03:16 -08:00
osm0sis
0d38c94c9c
scripts: fix root loss until reboot after Magisk addon.d-v2
...
- /system/bin/su was being removed in error from the live system so update remove_system_su to be aware of a running A/B OTA and generalize/simplify removal logic with relative paths to correctly run on the updated system slot
2022-12-23 16:36:44 -08:00
vvb2060
2a2a452bd4
CI uses java 17
2022-12-13 14:13:25 -08:00
vvb2060
13c2695e98
simplify denylist rm
2022-12-13 14:11:32 -08:00
fadlyas07
3ff60ed49f
app: l10n: Update Indonesian translations
...
* Added new strings based on the recent source.
Change-Id: I40d6e0374a0356d93c61acace7ab48c3649e85e8
2022-12-13 14:05:54 -08:00
VD $ VD171 @ Priv8
bbb1786ec3
Fix typo PT translation
...
Fix typo PT translation
2022-12-13 14:05:40 -08:00
Davy Defaud
4bfd2dac54
Fix gender of ”install” as an adjective in French
...
In French, install as an adjective depends on the gender of its related noun. For instance, “Magisk installed” is translated “Magisk installé” (masculine form), whereas “Application installed” is translated “Application installée” (feminine form).
By using “Version installée”, “installed” is related to “version” which is feminine. For consistency of the GUI, I’m also changing "home_latest_version" string to ”Dernière version” instead of “Dernière”.
2022-12-13 14:05:24 -08:00
ysard
857c12372a
Update French translations
...
Just a misspelling fix
2022-12-13 14:05:09 -08:00
残页
33f5154269
Inject binaries into /system if sbin not accessible
...
Some Android 11+ devices have the /sbin partition but not accessible by the global shell (`PATH` doesn't contain `/sbin`). Not only custom ROMs but also some stock ROMs have the same behavior so I believe it is something we need to deal with.
Fix #6427 , fix #4309 , fix #5728 , fix #3593
2022-12-13 13:54:55 -08:00
topjohnwu
ed37ddd570
Stricter validation
2022-11-22 14:47:37 -08:00
LoveSy
cd5384f13e
Fix crashes whenever a zygisk module has ver > 4
2022-11-22 14:47:37 -08:00
LoveSy
11b2ddbad8
Fix zygisk v4 ApiTable abi
...
Also refactor some code to let the compiler check the abi
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2022-11-22 11:49:31 -08:00
topjohnwu
cf9957ce4d
Properly detect SysUI appId
...
Fix #6322
2022-11-01 02:04:50 -07:00
topjohnwu
44643ad7b3
Restrict pointer aliasing
...
Close #6354 , close #6353
2022-10-31 16:35:33 -07:00
topjohnwu
1e53a5555e
Update AGP
2022-10-31 16:00:42 -07:00
topjohnwu
616adc22e1
Support Linux < 3.6
2022-10-31 16:00:42 -07:00
akhilkedia
916e373edb
Update README.md to specify python version 3.8+
...
Current readme suggests python 3.6+
However, the file `build.py` on executing `build.py ndk` runs the command `shutil.copytree(src_dir, lib_dir, copy_function=cp, dirs_exist_ok=True)`
This command errors out on python 3.7, because the `dirs_exist_ok` parameter is new in Python 3.8 (https://docs.python.org/3/library/shutil.html#shutil.copytree )
So the README should suggest python 3.8+
2022-10-20 17:21:08 -07:00
Hen_Ry
021ae15395
Update German translation
2022-10-12 13:08:12 -07:00
vvb2060
52cf72002a
Update resources load
...
addAssetPath supports apk and directory
2022-10-12 13:07:30 -07:00
topjohnwu
68874bf571
Release new canary build
2022-10-11 13:33:08 -07:00
残页
a468fd946d
Fix #6314
2022-10-11 13:01:34 -07:00
topjohnwu
e327565434
Release new canary build
2022-10-10 21:44:32 -07:00
topjohnwu
c3b4678f6e
Properly detect SysUI
2022-10-10 21:28:13 -07:00
vvb2060
978216eade
local module: filter hidden dirs
2022-10-03 14:20:09 -07:00
残页
44cfe94e4d
Always cleanup init LD_PRELOAD hooks
...
Fix #6296
2022-10-03 08:26:33 -07:00
Nitrovenom
f9e82c9e8a
Update Bengali translation
2022-09-26 23:11:00 -07:00
theunknownKiran
25b4b107d3
Create strings.xml
...
Added Malayalam translation
2022-09-26 23:10:48 -07:00
theunknownKiran
db651fa9ec
Create strings.xml
...
Added Malayalam translation
2022-09-26 23:10:34 -07:00
LoveSy
23ad611566
Use sccache for rust build
2022-09-26 01:35:52 +02:00
topjohnwu
095d821240
Don't use xopen in readlink
2022-09-25 16:35:28 -07:00
topjohnwu
e23f23a8b7
Update AGP
2022-09-21 03:09:53 +02:00
topjohnwu
48f829b76e
Minor refactoring
2022-09-21 03:09:46 +02:00
topjohnwu
0b82fe197c
Update avd_test.sh
2022-09-15 19:45:58 -07:00
topjohnwu
af99c1b843
Don't crash when nullptr paired with len = 0
2022-09-15 16:56:22 -07:00
topjohnwu
c6646efe68
Move all xwrap to Rust
2022-09-15 01:17:05 -07:00
Nitrovenom
66a7ef5615
Update Bengali translation
2022-09-13 04:30:01 -07:00
canyie
9474750bdf
Close fd of erroneous daemon socket connections
2022-09-13 04:29:29 -07:00
LoveSy
e86db0bd61
Reset stack guard after fork from Zygote
2022-09-13 04:18:34 -07:00
topjohnwu
a29fc11798
Update libsu
...
Fix #6255
2022-09-13 04:17:19 -07:00
topjohnwu
a66a3b7438
Make sure logs are always ended with newline
2022-09-09 04:29:50 -07:00
topjohnwu
44029875a6
Add new API exemptFd
2022-09-09 03:27:19 -07:00
topjohnwu
ccf21b0992
Zygisk code refactor
2022-09-07 13:48:20 -07:00
topjohnwu
4e14dab60a
Specialize does not need to close logd_fd
2022-09-06 03:01:39 -07:00
topjohnwu
6e299018a4
Preserve logd_fd after specialization
...
Also add more comments regarding FD checks
2022-09-02 01:49:17 -07:00
topjohnwu
555a54ec53
Avoid doing any unmounts for SysUI
2022-08-31 00:15:15 -07:00
topjohnwu
1565bf5442
Make Zygisk API 0BSD
2022-08-30 01:58:40 -07:00
topjohnwu
14b830027b
Cleanup zygisk headers
2022-08-30 01:40:14 -07:00
topjohnwu
38325e708e
Make private applets hidden
2022-08-27 14:50:28 -07:00
topjohnwu
646260ad6d
Fix typo
2022-08-27 05:27:23 -07:00
topjohnwu
d1d26f4481
Fix building individual applet
2022-08-27 05:06:28 -07:00
topjohnwu
357d913f18
Dynamically generate component names at runtime
2022-08-26 06:31:51 -07:00
topjohnwu
71b0c8b42b
Make stub patching 100% offline
2022-08-26 06:31:51 -07:00
topjohnwu
cdc66c1ac8
Move patching logic out of AXML
2022-08-26 06:31:51 -07:00
topjohnwu
e9af773901
Remove usage of AndroidX CoreComponentFactory
2022-08-26 06:31:51 -07:00
Rom
eadf6e8b96
Update French translation
2022-08-25 02:27:35 -07:00
topjohnwu
87bec70d9f
Setup notification on app init
...
Close #6216
2022-08-25 02:24:30 -07:00
Ilya Kushnir
3668b28f62
Update RU strings
2022-08-24 03:20:55 -07:00
Arbri çoçka
933e4bd163
update Albania strings
2022-08-24 03:20:33 -07:00
vvb2060
e3ab9e9a1e
Update zh-rCN translation
2022-08-24 03:20:19 -07:00
VD $ VD171 @ Priv8
58ad2c1416
Update Portuguese & Portuguese Brazilian Translations
2022-08-24 03:19:31 -07:00
kubalav
c5291ad33b
Update Slovak translation
2022-08-24 03:19:09 -07:00
vvb2060
77d8445bfd
Avoid hardcode package name
2022-08-24 03:18:55 -07:00
topjohnwu
f8395a7dc6
Make sure UI and state is in sync
2022-08-23 05:38:19 -07:00
topjohnwu
727c70005e
Release new canary build
2022-08-23 05:20:44 -07:00
topjohnwu
38ab6858f0
Do not crash root service in stub
2022-08-23 05:10:18 -07:00
topjohnwu
a54114f149
Pre-grant permissions if possible
2022-08-23 05:09:50 -07:00
topjohnwu
7a4a5c8992
Ensure JobService is rescheduled
2022-08-23 04:14:06 -07:00
topjohnwu
928a16d8cc
Update app to target API 33
...
Close #6206
2022-08-23 03:59:09 -07:00
topjohnwu
3f7f6e619a
Use VERSION_CODES instead of raw numbers
2022-08-23 01:43:53 -07:00
vvb2060
c2f96975ce
Pre grant as much as possible
2022-08-23 01:33:10 -07:00
vvb2060
8bd4760b00
Fix build
2022-08-23 01:32:32 -07:00
vvb2060
4f4aeb893d
Update deps
2022-08-23 01:31:48 -07:00
canyie
fed4f1b50f
Collect kernel version and environment variables in log
2022-08-22 12:52:13 -07:00
vvb2060
e11087cd1a
Update kotlin R8 rules
2022-08-22 12:51:54 -07:00
南宫雪珊
e6eb51551c
Fix ci text color
2022-08-22 12:51:36 -07:00
topjohnwu
c5c608f0d3
Release new canary build
2022-08-20 18:31:18 -07:00
topjohnwu
4737c5117a
Update to ONDK r25.2
2022-08-19 16:26:25 -07:00
topjohnwu
9806b38d8e
Introduce zygisk loader
...
Use a separate library for 1st stage
2022-08-19 04:49:19 -07:00
topjohnwu
6bfe34e5a8
Support testing magiskinit on arm64 AVD
2022-08-19 02:40:33 -07:00
topjohnwu
34dd9eb7d6
More Rust
2022-08-19 02:21:52 -07:00
topjohnwu
2d8beabbd4
Better build script
2022-08-17 01:59:23 -07:00
topjohnwu
4d9b7e7114
More Rust
2022-08-15 11:53:51 -07:00
topjohnwu
40aab13601
Make IDE recognize we are targeting Android
2022-08-09 14:09:39 -07:00
topjohnwu
4c0f72f68f
Move part of libbase to Rust
2022-08-08 22:53:37 -07:00
vvb2060
dd565a11ea
Fix outdated state
2022-08-08 13:59:56 -07:00
残页
1735a713cb
Use `ANDROID_DLEXT_FORCE_LOAD` to load second stage if possible
...
Fix #6095
2022-08-08 02:43:19 -07:00
残页
52ba6d11bc
Don't let remote errors crash Zygisk
...
Fix #6095
2022-08-07 05:09:46 -07:00
topjohnwu
7357a35f8d
Fix build errors
2022-08-07 05:03:18 -07:00
Acetylcholine
aeb7fd7cb3
Fix denylist add_list
...
Signed-off-by: ACh Sulfate <xenonhydride@gmail.com>
Co-authored-by: John Wu <topjohnwu@gmail.com>
2022-08-07 04:48:47 -07:00
topjohnwu
1b4a6850b8
Ensure parent folders exist before extract
2022-08-07 04:06:18 -07:00
Cristian Silaghi
07b45f39df
Update Romanian
2022-08-07 03:38:57 -07:00
canyie
1d0b873950
Fix sepolicy `attribute` rule parsing
...
Fix #6166
2022-08-07 03:35:50 -07:00
topjohnwu
d449f49d73
Update AGP
2022-08-05 15:47:46 -07:00
canyie
e8787b5cfd
Fix UB when remote process died
...
If remote process died, `xreadlink` fails and leaves `buf` uninitialized. Then the daemon calls `str_ends`, creates a temp `std::string_view` with the uninitialized buffer and undefined behavior occurs.
2022-08-02 12:54:54 -07:00
topjohnwu
d17ed2b979
Support patching AVD with release builds
2022-08-02 03:37:04 -07:00
topjohnwu
b496923cbb
Update Cargo.toml
2022-07-24 06:14:49 -07:00
topjohnwu
759d196aad
Update cxx.rs
2022-07-24 05:45:23 -07:00
topjohnwu
a7ab8216ce
Proper build scripts
2022-07-24 05:39:14 -07:00
topjohnwu
b9e89a1a2d
Restructure the native module
...
Consolidate all code into the src folder
2022-07-23 13:51:56 -07:00
vvb2060
c7c9fb9576
Restore context before copy
...
fix magiskpolicy context
2022-07-23 03:57:43 -07:00
vvb2060
8b095de04d
Fix app_zygote context
2022-07-23 03:14:44 -07:00
vvb2060
468325b51a
Fix CRLF
2022-07-23 03:14:44 -07:00
gidano
e5058bfb8b
Hungarian translation
2022-07-23 02:43:00 -07:00
vvb2060
d4b9ef736d
Check magisk32 exists
2022-07-23 02:41:36 -07:00
vvb2060
00d3cb0908
magisk_node: check target exists
2022-07-23 02:40:13 -07:00
vvb2060
d35072d4e6
Match app_zygote by context
2022-07-23 02:39:28 -07:00
canyie
1a964e78dd
Support 32-bit emulators
...
This would be helpful when debugging arch-related bugs, there is no reason to prevent it.
2022-07-23 02:27:50 -07:00
topjohnwu
4264ae49c0
Format with rustfmt
2022-07-22 03:56:09 -07:00
topjohnwu
f08712cd0a
Update to ONDK r25.1
2022-07-22 03:56:09 -07:00
LoveSy
3906fe75dc
Clean up code
2022-07-21 00:52:28 -07:00
topjohnwu
2497e548c9
Update to ONDK r25.0
2022-07-21 00:07:09 -07:00
topjohnwu
e4635684e9
Release new canary build
2022-07-20 20:21:49 -07:00
topjohnwu
9b61bdfc9a
Update README
2022-07-20 20:17:02 -07:00
topjohnwu
6066b5cf86
Release Magisk v25.2
2022-07-20 20:13:26 -07:00
topjohnwu
5cdf95a4d0
Update v25.2 docs
2022-07-20 20:09:02 -07:00
topjohnwu
910a36fdc1
Make sepolicy.rules relative if possible
2022-07-20 19:28:38 -07:00
topjohnwu
8331206acb
Clean only java projects when clean java
2022-07-20 11:20:03 -07:00
canyie
8423dc8d63
Later check persistent_properties
...
`daemon_entry` calls `getprop` which initializes sysprop impl and checks whether we need to load persistent property file. On FDE devices, magiskd starts before /data is actually decrypted, and the check always fails. Thus `persist_getprop("persist.sys.safemode")` will always fail.
2022-07-20 09:58:20 -07:00
Yann
6077c989a7
app: fix typo
2022-07-20 03:34:48 -07:00
topjohnwu
c97d1044fa
Release new canary build
2022-07-19 17:44:19 -07:00
Hen_Ry
f42c089b26
Fix
2022-07-18 13:34:14 -07:00
Andrew Gunnerson
1f8c063dc6
Fix booting into recovery with Android 13 GKI kernels
...
With Android 13 GKI kernels, the boot partition has no ramdisk, so
Magisk constructs one from scratch. In this scenario, there's no backup
init binary at /.backup/init. For normal boot, magiskinit will symlink
/init -> /system/bin/init if needed. This commit implements the same
for booting into recovery. Before, magiskinit would just exec itself
over and over again because it couldn't restore the backup init.
Signed-off-by: Andrew Gunnerson <chillermillerlong@hotmail.com>
2022-07-18 13:33:50 -07:00
Hen_Ry
4874520d65
Update german translation
2022-07-14 12:32:55 -07:00
Nguyen Hoang The Vi
5e53639969
Add Bengali translation
2022-07-14 12:32:33 -07:00
Grammatopoulos Apostolos
83ab0ca6cd
Greek translation updated
2022-07-14 12:31:47 -07:00
topjohnwu
70fd03d5fc
Rearchitect logging
2022-07-06 01:16:08 -07:00
topjohnwu
2e52875b50
Move all logging into Rust
2022-07-05 21:13:09 -07:00
topjohnwu
fd9b990ad7
Update to ONDK r24.2
2022-07-05 01:34:48 -07:00
LONE DEVIL
69978a9442
Update russian translation
2022-07-01 15:16:44 -07:00
残页
d155da52ce
More friendly and clear error message
2022-07-01 15:15:54 -07:00
Weslley Almeida
9c5b131913
Update Brazilian translation
2022-07-01 15:15:07 -07:00
Syuugo
9d740cec1a
Partially fixed Japanese translation
2022-07-01 15:14:18 -07:00
vvb2060
c2978eb9c3
More log for get_manager
2022-07-01 15:13:38 -07:00
vvb2060
38abad1e44
Fix app state
2022-07-01 15:12:50 -07:00
topjohnwu
b4863eb51b
Setup logging infra in the Rust side
2022-07-01 04:54:00 -07:00
LoveSy
3817167ba1
Correct `ro.crypto.state` check
...
Fix #6042
Co-authored-by: vvb2060 <vvb2060@gmail.com>
2022-06-30 19:32:43 -07:00
topjohnwu
d1a35dd2ba
Fix cargo builds on Windows
2022-06-30 18:12:07 -07:00
topjohnwu
26116ac414
Setup preliminary rust infrastructure
2022-06-30 14:50:21 -07:00
topjohnwu
0b26882fce
Build dynamic stub resource APK at runtime
...
Close #6013
Co-authored-by: vvb2060 <vvb2060@gmail.com>
2022-06-22 05:19:27 -07:00
Nicolás
a2495fb5fb
Update spanish translations
2022-06-22 04:08:52 -07:00
vvb2060
0beb3bf16a
Make CI builds reproducible
2022-06-22 04:08:18 -07:00
vvb2060
b68658e974
Rebuild manifest
2022-06-22 04:06:22 -07:00
LoveSy
3ae7344747
Create `/dev` on stub cpio
2022-06-22 04:05:50 -07:00
topjohnwu
4eb71830b3
Release new canary build
2022-06-19 03:24:36 -07:00
topjohnwu
9183a0a6ea
Update README
2022-06-19 03:06:14 -07:00
topjohnwu
bb64ba0ef6
Release Magisk v25.1
2022-06-19 02:54:22 -07:00
topjohnwu
d89a568897
Update v25.1 docs
2022-06-19 02:35:05 -07:00
topjohnwu
9fd1f41e8b
Always relaunch process after package migration
2022-06-19 02:09:14 -07:00
孟武.尼德霍格.龍
c1ab348673
Improve Traditional Chinese strings
...
Co-authored-by: John Wu <topjohnwu@gmail.com>
2022-06-19 01:50:43 -07:00
canyie
00247c7901
Fix meizu non-SAR 2SI compatibility again
...
Meizu devices using 2SI won't switch root to /system and still on rootfs, and /init is the 1st stage's, which cannot handle the 2nd stage. So we have to manually execute /system/bin/init for the 2nd stage.
2022-06-19 01:22:18 -07:00
topjohnwu
3c75f474c6
Embed version info in prop format
2022-06-19 00:43:38 -07:00
topjohnwu
db1f5b0397
Reduce files relying on flags.h
2022-06-19 00:43:38 -07:00
fadlyas07
db277c3e55
app: l10n: Update Indonesian translations
...
* Added new strings based on the recent source.
* Fixed some words based on Indonesian National Dictionary (KBBI).
Link: https://kbbi.kemdikbud.go.id
Signed-off-by: fadlyas07 <mhmmdfdlyas@gmail.com>
2022-06-18 10:43:25 -07:00
vvb2060
b9c93c66f6
Force app version not lower than daemon
2022-06-17 11:53:16 -07:00
vvb2060
a250e2b56c
Set version comment in apk
2022-06-17 11:53:16 -07:00
残页
cd96454886
Fix finding recovery image on direct install
...
Fix #5972 , fix #5673
2022-06-17 02:53:18 -07:00
topjohnwu
741b679306
Cleanup libbase
2022-06-17 02:36:04 -07:00
topjohnwu
90013e486d
Use AtomicBoolean
2022-06-17 02:03:09 -07:00
LoveSy
4e2ecdb920
Fix env overflow
...
Fix #5989
2022-06-17 02:02:44 -07:00
topjohnwu
6e5df1f06b
Abort when unsupported dtb is detected
2022-06-16 01:47:23 -07:00
topjohnwu
9469e79e3c
Proper namespacing
...
The IDE will get confused when #include is in a namespace
2022-06-15 02:38:56 -07:00
topjohnwu
db78c20161
Add dtb test command
2022-06-15 02:26:50 -07:00
topjohnwu
1699da1754
Update help message and make behavior consistent
2022-06-14 21:19:17 -07:00
canyie
754e690274
Fix config backup for legacy SAR
2022-06-14 02:57:47 -07:00
topjohnwu
6f74ed6ceb
Cleanup manager.sh
2022-06-13 01:21:24 -07:00
canyie
71205bc530
Anchor Snackbar above reboot FAB in FlashFragment
2022-06-12 11:00:36 -07:00
Chris Renshaw
10e236abdf
scripts: fix remaining instances of && ||
...
Looks like I may have missed this in ce84f1762c
originally
2022-06-12 11:00:09 -07:00
残页
2248af00f3
Fix #5673
...
util_functions.sh overrides `get_flags` function (defined in manager.sh), which sets `RECOVERYMODE` and causes `check_boot_ramdisk` not overriding the incorrect value.
2022-06-12 00:32:34 -07:00
topjohnwu
7e61716277
Update Kotlin to 1.7.0
2022-06-11 03:41:02 -07:00
topjohnwu
50edb8d072
Better network detection and invalidation
2022-06-10 04:25:34 -07:00
topjohnwu
515f81944c
Move coroutine job into its own class
2022-06-10 04:12:31 -07:00
topjohnwu
46d4708386
Decouple state from BaseViewModel
2022-06-10 02:13:25 -07:00
topjohnwu
aabc36f86b
Maintain separate flash screen state
2022-06-10 00:33:53 -07:00
nikk gitanes
e0d5d90267
fix restart button focus on flash result
2022-06-10 00:33:53 -07:00
topjohnwu
482a5b991b
Don't always refresh on network state change
2022-06-09 23:28:46 -07:00
CDzungx
20124fe410
Update vi translation
2022-06-09 21:03:26 -07:00
Softastur
f8dcec116a
Fix Asturian translation
2022-06-09 21:03:09 -07:00
Ilya Kushnir
343a339aae
Update RU strings (fix)
2022-06-09 21:02:45 -07:00
vvb2060
42606efe56
Always remove task
2022-06-09 21:02:31 -07:00
vvb2060
cae58c8790
Update hijack bins
2022-06-08 23:30:22 -07:00
topjohnwu
3a39dd4049
Update ramdisk restore implementation
2022-06-08 23:23:39 -07:00
canyie
89ff3c6572
Don't backup ramdisk created by Magisk
...
Fix topjohnwu#5938, fix topjohnwu#5944
2022-06-08 04:53:43 -07:00
topjohnwu
7bf9c74216
Don't skip backup even if original does not exist
...
Close #5945 , fix #5944
2022-06-08 03:58:25 -07:00
topjohnwu
e2f3753551
Release new canary build
2022-06-07 03:36:21 -07:00
topjohnwu
cacf873645
Release Magisk v25.0
2022-06-07 03:11:29 -07:00
NeoHBz
11e1e7ee36
updated: `hi` translations, matched with source
2022-06-07 02:58:43 -07:00
vvb2060
87801b6f23
Fix mv file when install module
2022-06-07 02:46:16 -07:00
topjohnwu
7ce4789e17
Add v25.0 release notes
2022-06-07 02:44:26 -07:00
topjohnwu
9dc6d9afce
Restore AVD after testing
2022-06-07 01:06:27 -07:00
MCPEngu
d6a5354bff
fix typo
2022-06-07 01:00:39 -07:00
Ilya Kushnir
07af37475b
Update RU strings
2022-06-07 00:08:10 -07:00
Oliver Cervera
1b9c273b10
Italian translation update
2022-06-07 00:07:52 -07:00
AndroPlus-org
262c52db56
Update Japanese translation
2022-06-07 00:06:31 -07:00
topjohnwu
eb777296d4
Suppress AppLinkUrlError
2022-06-06 05:26:53 -07:00
topjohnwu
fc70a384d3
Release new canary build
2022-06-06 03:43:23 -07:00
vvb2060
34b2f525a3
Update proguard-rules.pro
2022-06-06 02:59:57 -07:00
vvb2060
569e9ad937
Use noHistory attribute for SuRequestActivity
2022-06-06 02:58:52 -07:00
vvb2060
c495b3d183
Remove request uninstall code
...
unreachable
2022-06-06 02:51:11 -07:00
Softastur
8b16bfbb54
Add Asturian language support
2022-06-06 01:22:05 -07:00
Arbri çoçka
b2f1fd9966
update albania
2022-06-06 00:36:22 -07:00
topjohnwu
317153c53a
Better stub launch flow
2022-06-05 19:15:43 -07:00
topjohnwu
fa60daf9b5
Verify caller before uninstallation
2022-06-05 07:03:26 -07:00
canyie
aadb2d825c
Also set snackbar container for FlashFragment
2022-06-05 05:36:04 -07:00
kubalav
0e7fe537e3
Update Slovak translation
2022-06-05 05:35:39 -07:00
VD $ VD171 @ Priv8
409de3ac44
Update Portugueses Translations
2022-06-05 05:34:45 -07:00
RV7PR
759055eaa5
Replace logo
2022-06-05 05:34:19 -07:00
topjohnwu
9016e6727d
Fix stub app loading on older Android versions
2022-06-05 01:09:30 -07:00
残页
a3381da7ed
Bypass DexFile's security check for RootService ( #5911 )
...
Old Android (pre 8.0) enforces `optimizedDirectory` to have the same uid with the process. If repackaged, root service (uid=0) will crash when trying to load current.apk. So we set `optimizedDirectory` to null to bypass the check.
2022-06-04 04:21:57 -07:00
topjohnwu
351e094440
Release new canary build
2022-06-03 03:38:12 -07:00
残页
2106751ea4
Fix SnackBar shows behind window insets
2022-06-03 03:21:56 -07:00
vvb2060
7ae3cd1c43
Fix D-pad navigation on android 8-
2022-06-03 03:03:41 -07:00
topjohnwu
edfd4dcddf
Fix kotlin jvmTarget
2022-06-03 01:13:29 -07:00
topjohnwu
fb89cf1367
Fix typo
2022-06-03 00:25:10 -07:00
Rom
b7b345cf8a
Update FR translation
2022-06-02 23:47:11 -07:00
残页
0be487e47e
Update zh-rCN translation
2022-06-02 23:45:54 -07:00
topjohnwu
5471147422
Remove usage of BindingCollectionAdapter (part 2)
2022-06-02 23:40:10 -07:00
topjohnwu
6305159c5e
Remove usage of BindingCollectionAdapter (part 1)
2022-06-02 20:55:19 -07:00
topjohnwu
2ed092c9db
Update contributors in app
2022-06-02 06:08:47 -07:00
topjohnwu
5c6a7ffa6f
Simplify context hacks
2022-06-02 04:22:25 -07:00
topjohnwu
9ab7550970
Use weak reference to track activity
2022-06-02 02:18:11 -07:00
topjohnwu
47e7a0a434
Update libsu
2022-06-02 02:04:35 -07:00
RikkaW
4cc5e9f986
Let module remove button support disable state
2022-06-01 09:04:47 -07:00
RikkaW
6a2ae89846
Fix card view background color on API 21 & 22
2022-06-01 09:04:35 -07:00
残页
3c93539e02
Fix log save
2022-06-01 03:10:07 -07:00
topjohnwu
05e5ac2ad2
Bump min version to v22
2022-06-01 03:05:29 -07:00
topjohnwu
10b1782732
Update version gating
2022-06-01 03:01:56 -07:00
topjohnwu
e029994ef8
Move Zygisk out of beta
2022-06-01 02:59:02 -07:00
vvb2060
9679874874
Disable repack on android 5.0
...
am does not support -p
2022-06-01 02:05:15 -07:00
topjohnwu
8186f253e8
Fix zygisk code unloading
2022-06-01 01:50:42 -07:00
topjohnwu
d4fe8632ec
Support SELinux disabled on debug builds
2022-05-31 22:24:13 -07:00
vvb2060
d7776f6597
Return empty on failure to get context
2022-05-31 18:35:56 -07:00
残页
3219d945f5
Prevent multi animators setting property concurrently
...
It crashes on Android 5.0 (API 21) platform.
Fix topjohnwu#5793
2022-05-31 18:35:40 -07:00
Takeda-senpai
8a73a16029
Update VN translation
2022-05-30 23:46:53 -07:00
VD $ VD171 @ Priv8
ce90f9b60d
Update Portugueses Translations by VD171
...
Update Portugueses Translations by VD171
2022-05-30 23:46:33 -07:00
VD $ VD171 @ Priv8
bdf54d562f
Update Portugueses Translations by VD171
...
Update Portugueses Translations by VD171
2022-05-30 23:46:33 -07:00
Rom
e744cc8ea6
Update French translation
2022-05-30 23:46:11 -07:00
Ilya Kushnir
babcf36495
Update RU strings
2022-05-30 23:45:59 -07:00
topjohnwu
e4094c0caa
Update build scripts
2022-05-30 03:47:31 -07:00
topjohnwu
2e51fe20a1
Move things to the correct location
2022-05-30 02:09:07 -07:00
vvb2060
c29636c452
Update zh-rTW translation
2022-05-30 01:54:12 -07:00
vvb2060
22017a5543
Update zh-rCN translation
2022-05-30 01:54:12 -07:00
topjohnwu
50e2f33d1c
More debug indication in UI
...
Close #5874
2022-05-30 01:53:07 -07:00
topjohnwu
5e6eb8dd01
Avoid non-blocking I/O
2022-05-30 01:21:38 -07:00
topjohnwu
18acb97dfe
Make SYSTEM_UID a special case
2022-05-30 00:49:42 -07:00
topjohnwu
bf2f823b8c
Prune unused UID at boot
2022-05-29 23:43:22 -07:00
topjohnwu
d0c4226997
Proper package state management
2022-05-29 23:31:57 -07:00
topjohnwu
4ea8bd0229
Fix incorrect use of compare_exchange
2022-05-29 22:19:56 -07:00
topjohnwu
ee0d58a9b8
Release new canary build
2022-05-29 11:24:39 -07:00
topjohnwu
bf04fa134b
Indicate debug builds
...
Close #5859
2022-05-29 11:14:39 -07:00
Arbri çoçka
297662cafb
update Albanian
2022-05-29 11:03:23 -07:00
kubalav
f464a9b269
Update Slovak translation
2022-05-29 11:03:11 -07:00
vvb2060
d19fcd5e21
Check path when start daemon
2022-05-29 09:08:05 -07:00
topjohnwu
c0981174a8
Use LiveData instead of Observable
2022-05-29 03:57:42 -07:00
vvb2060
0b5f973b31
Print message when getting original app_process fails
2022-05-29 03:46:31 -07:00
topjohnwu
4159b3871c
Fix #5867
2022-05-29 02:49:38 -07:00
南宫雪珊
580c993c0b
Display module status
2022-05-29 01:40:20 -07:00
canyie
0cc29350a0
Navigate only if user has not left the fragment
2022-05-28 22:40:09 -07:00
topjohnwu
490a784993
Handle zygote restarts
2022-05-28 22:39:44 -07:00
topjohnwu
9c774f96db
Use exec for boot_complete
2022-05-28 16:53:04 -07:00
topjohnwu
99afe7ac07
Update AGP
2022-05-28 04:46:58 -07:00
topjohnwu
b3f05fd925
Update setup
2022-05-27 00:44:20 -07:00
topjohnwu
683cfee88b
Cleanup and move things around
2022-05-26 22:05:28 -07:00
topjohnwu
3bcaf0ed5b
Move more files into core
2022-05-25 05:48:02 -07:00
topjohnwu
edb76503d3
Update README
2022-05-24 06:13:51 -07:00
topjohnwu
484038638f
Release new canary build
2022-05-24 05:56:59 -07:00
topjohnwu
8dfb30fefe
Skip cert check on debug builds
2022-05-24 05:39:16 -07:00
topjohnwu
2a252d13b8
Enforce dyn APK signature in stub app
2022-05-24 05:21:36 -07:00
topjohnwu
afa364cfc3
Update dependencies
2022-05-22 20:11:24 -07:00
topjohnwu
dfa36fb25d
Move things around
2022-05-22 19:36:47 -07:00
topjohnwu
c8492b0c58
Use official APIs to load dynamic resources
2022-05-22 19:20:24 -07:00
topjohnwu
083ef803fe
Enforce package signature verification
2022-05-20 04:37:58 -07:00
topjohnwu
351f0269ae
Install stub if necessary
2022-05-19 22:54:49 -07:00
topjohnwu
a29ae15ff7
Proper get_manager implementation
2022-05-19 02:39:57 -07:00
topjohnwu
34dded3b25
Fix denylist on shared UID apps
2022-05-18 01:59:45 -07:00
topjohnwu
975b1a5e36
Prune unused UIDs from su policies
2022-05-18 01:55:58 -07:00
vvb2060
e11508f84d
Respond deny when pkg name not found
2022-05-16 20:44:18 -07:00
topjohnwu
0772f6dcaf
Fix debug channel preference not persisting
2022-05-16 20:16:50 -07:00
topjohnwu
d3fe3a711a
Release new canary build
2022-05-15 01:35:02 -07:00
topjohnwu
756d8356ca
Show canary channel option on canary builds
2022-05-15 01:28:49 -07:00
topjohnwu
42003b4006
Release new canary build
2022-05-15 01:14:07 -07:00
topjohnwu
dc65a2b884
Introduce new debug channel
2022-05-15 01:01:54 -07:00
topjohnwu
071ae79fa8
Release new canary build
2022-05-13 04:34:27 -07:00
topjohnwu
c11ccbae2d
Extract vbmeta from footer
...
Do not scan manually, extract properly from footer like libavb
2022-05-13 02:49:18 -07:00
topjohnwu
6ef86d8d20
Release new canary build
2022-05-12 03:16:16 -07:00
topjohnwu
985249c3d0
Support GKIs without ramdisk
...
Fix #5819
2022-05-12 03:04:55 -07:00
topjohnwu
622e09862a
Restructure native codebase
2022-05-12 02:03:51 -07:00
残页
7505599ea0
Skip invalid slot_suffix argument
...
Many Amlogic devices (e.g. FireTV 2nd gen Cube, Vero 4k+, MI Smart Speaker, etc.) are A-only with androidboot.slot_suffix=normal argument. I think "normal" actually means A-only in this case so just ignore it.
Fix topjohnwu#5806
2022-05-12 00:37:22 -07:00
topjohnwu
575c417403
More detailed comments and documentation
2022-05-11 21:12:37 -07:00
topjohnwu
9f7a3db8be
Move cert extraction to its own file
2022-05-11 21:12:37 -07:00
topjohnwu
029422679c
Remove enforcement
...
Enforcement will be re-implemented later
2022-05-11 21:12:37 -07:00
vvb2060
05d6d2b51b
Verify app signature
2022-05-11 21:12:37 -07:00
capntrips
4cff0384f7
Remove temporary note about OTA update no longer working
2022-05-10 00:11:34 -07:00
vvb2060
68db366696
Delete outdated policies
2022-05-10 00:11:17 -07:00
南宫雪珊
358538717c
Reduce number of loop
2022-05-10 00:10:26 -07:00
topjohnwu
24603b3cef
Update Android Studio
2022-05-09 20:53:47 -07:00
topjohnwu
4eb9240806
Handle Activty recreation on content result
...
Credits to @canyie for the initial PR and finding the bug
Close #5791 , fix #5789
2022-05-08 14:29:59 -07:00
vvb2060
0469f0b5ae
Add uid check for getAppProcess
2022-05-08 04:51:39 -07:00
vvb2060
0b8577d02b
Set tag for root service
2022-05-08 00:39:37 -07:00
Rei Ryuki
97135879a1
Fix sepolicy rules dir is not found in recovery
2022-05-07 02:43:26 -07:00
vvb2060
fef41f68c0
Update dependencies
2022-05-07 02:42:20 -07:00
topjohnwu
0ac19e3a4e
Fix app running without root
2022-05-07 01:16:55 -07:00
topjohnwu
2793d209a4
Allow requesting root from non app process
2022-05-07 00:46:23 -07:00
topjohnwu
71e9c044e6
Release new canary build
2022-05-06 01:57:24 -07:00
Kazurin Nanako
42e5f5150a
Fix "double install" caused by config changes
...
Configuration changes in FlashFragment may cause the installation process to be triggered twice. The simplest way to reproduce this behavior is to choose a module ZIP file in landscape mode (which is the default on some tablets).
This commit fixes the problem by ensuring `savedInstanceState == null` before starting installation.
2022-05-06 01:47:02 -07:00
topjohnwu
90545057e9
Always initialize module_list
...
Close #5712
2022-05-06 01:40:19 -07:00
vvb2060
cffd024e9e
Ignore the response until showDialog done
2022-05-06 01:04:28 -07:00
人工知能
8c858592c4
Update strings.xml
...
Update and fix translations.
2022-05-06 01:03:50 -07:00
canyie
4f1a1879e5
Misc QoL changes
...
- su: Preserve correct capacity to avoid vector reallocation
- su: Properly format code
- daemon: Remove useless `if`
- docs: Remove outdated info
2022-05-06 01:01:58 -07:00
JumbomanXDA
e88eed9a8d
Update util_functions.sh
2022-05-06 00:03:38 -07:00
RikkaW
9581ae8245
Use Locale.ROOT in JcaX509v3CertificateBuilder (X509v3CertificateBuilder)
...
Or in languages like Arabic, an "IllegalArgumentException: invalid date string" will be thrown.
Since JcaX509v3CertificateBuilder does not accepts Locales, we must switch to its super class, X509v3CertificateBuilder.
2022-05-06 00:03:01 -07:00
vvb2060
4202b7a9dc
Enable gms provider for stub
2022-05-06 00:00:41 -07:00
LoveSy
b4c398542a
Fix signboot signature
2022-05-06 00:00:20 -07:00
topjohnwu
081148b2d7
Update dependencies
2022-05-04 22:00:48 -07:00
topjohnwu
a32c4561ed
Release new canary build
2022-05-03 01:38:43 -07:00
topjohnwu
cc79a96fa3
Update libsu
2022-05-03 01:25:26 -07:00
topjohnwu
ff340ce3d8
Suppress verbose output to stderr
2022-04-29 04:57:28 -07:00
topjohnwu
134508193d
Mock selinuxfs load with regular file
...
The hijacked load node does not need to be a FIFO. A FIFO is only
required for blocking init's control flow, which is already achieved
by hijacking the enforce node.
2022-04-16 07:28:20 -07:00
topjohnwu
c2b74aa83e
Update avd_test.sh
2022-04-16 07:28:20 -07:00
topjohnwu
3358eab991
Switch to use ONDK
2022-04-15 12:20:18 -07:00
残页
a609e0aad4
Update tools.md
...
magiskpolicy is no longer an applet of magiskinit
2022-04-13 23:19:36 -07:00
vvb2060
f97866a961
Close stub fd
2022-04-13 23:19:14 -07:00
vvb2060
e1987c42c4
Cleanup SELinux mock files
2022-04-13 23:18:55 -07:00
canyie
18566715e1
Fix MAGISKTMP unmount for CLI
2022-04-10 01:44:16 -07:00
topjohnwu
79f0f3230c
Release new canary build
2022-04-08 02:51:25 -07:00
topjohnwu
63a89d9f04
Fix init dmesg logs
2022-04-08 02:38:30 -07:00
南宫雪珊
f639f39e79
More friendly info
2022-04-08 02:26:11 -07:00
canyie
b4099fc5f9
Support sepolicy.unlocked
...
Fix topjohnwu#4914
2022-04-08 02:24:20 -07:00
topjohnwu
ff2513e276
Use LD_PRELOAD to intercept sepolicy on 2SI init
2022-04-08 02:13:31 -07:00
topjohnwu
f24d52436b
Deduplicate logic
2022-04-08 00:20:21 -07:00
vvb2060
9de6e8846b
Dump stub app to MAGISKTMP/stub.apk
2022-04-07 23:20:42 -07:00
vvb2060
01a1213463
/data/adb/magisk/magisk.apk no longer exists
2022-04-07 23:20:42 -07:00
vvb2060
f0fbd9214a
Remove test key
2022-04-07 21:49:15 -07:00
hnliuzesen
c4f37c550f
Update internal details
2022-04-06 21:15:28 -07:00
canyie
448384af06
Guard su request IPC
...
Previously `read_string()` calls `std::string.resize()` with a int read from remote process. When I/O error occurs, -1 will be used for resizing the string, `std::bad_alloc` is thrown and since magisk is compiled with `-fno-exceptions`, it will crash the whole daemon process.
May fix topjohnwu#5681
2022-04-06 21:15:07 -07:00
canyie
3f840f53a0
Check device tree fstab entries are compatible
...
Fix topjohnwu#5664
2022-04-02 04:28:30 -07:00
Lishoo
d8718d8ac8
Update polish strings
2022-04-02 04:27:11 -07:00
vvb2060
2fb46a11dc
Check MAGISKBIN/magiskpolicy
2022-04-02 04:26:47 -07:00
vvb2060
9a11412719
Fix superuser snackbar text
2022-04-02 04:26:21 -07:00
topjohnwu
98874be171
Release new canary build
2022-03-30 01:58:36 -07:00
topjohnwu
704f91545e
Reorganize magiskpolicy source code
2022-03-29 22:26:38 -07:00
topjohnwu
efb3239cbd
Drop package_name column
2022-03-28 02:05:09 -07:00
topjohnwu
7e7ddeb9e2
Cleanup database migration code
2022-03-28 00:59:16 -07:00
LoveSy
9e8218089b
Only dlopen valid fd
2022-03-26 13:48:53 -07:00
VD $ VD171 @ Priv8
3f660a3963
Fix Portuguese & PT-Brazilian Translations
2022-03-26 13:48:23 -07:00
VD $ VD171 @ Priv8
daeb6711b0
Fix Portuguese & PT-Brazilian Translations
2022-03-26 13:48:23 -07:00
CDzungx
4e1aec28a0
Update Vietnamese Translation
...
Quick fix: Yes - "Đồng ý" -> "Có" to be more versatile.
2022-03-26 13:47:10 -07:00
vvb2060
5512917ec1
Hide incorrect "Factory data reset" message
2022-03-26 13:46:01 -07:00
vvb2060
cd1edc5d56
Use svc for reboot to recovery
2022-03-26 13:46:01 -07:00
topjohnwu
4f52587586
Support ADB shell if app shares its UID
2022-03-26 13:43:43 -07:00
topjohnwu
d7ee4ef5f5
Fix SQL command syntax
2022-03-26 00:36:01 -07:00
topjohnwu
31f88e0f05
Update UI for sharedUID support
2022-03-25 16:56:21 -07:00
topjohnwu
9f1740cc4f
Add preliminary shared UID app support
2022-03-25 13:08:13 -07:00
topjohnwu
f2c15c7701
Ensure RootService is launched
2022-03-23 18:44:05 -07:00
topjohnwu
e67d0678f9
Use viewModelScope instead of GlobalScope
2022-03-23 18:03:41 -07:00
topjohnwu
b1faa5eed4
Update BusyBox
...
Close #5620
2022-03-22 04:18:12 -07:00
LoveSy
7f1f0b9048
Proper support multiple modules adding same dir
2022-03-21 15:53:49 -07:00
LoveSy
183e5f2ecc
Fix xhook cannot hook app_process
...
Co-authored-by: canyie <31466456+canyie@users.noreply.github.com>
Co-authored-by: John Wu <topjohnwu@gmail.com>
2022-03-21 15:52:38 -07:00
topjohnwu
14efe4939a
Release new canary build
2022-03-21 00:35:25 -07:00
topjohnwu
3dc7d77ea9
Patch monolithic sepolicy only if not treble
2022-03-19 20:21:31 -07:00
残页
0f07bbb3e5
Device using split policy can still have monolithic sepolicy file
2022-03-19 12:37:48 -07:00
LoveSy
dd5a3416bf
Fix multiple modules adding the same subdirectory
2022-03-19 12:28:54 -07:00
LoveSy
2fb49ad780
Don't always mock selinux enforce as "0"
2022-03-19 12:28:32 -07:00
topjohnwu
92f0e53fee
Release new canary build
2022-03-18 05:05:17 -07:00
topjohnwu
876132694d
Make /dev always writable
2022-03-18 04:58:37 -07:00
topjohnwu
1257ba41c6
Add MagiskInit AVD automation test
2022-03-18 04:56:19 -07:00
topjohnwu
2cc71ac7ed
Release new canary build
2022-03-18 01:56:19 -07:00
topjohnwu
753808a4ce
Also hijack plat_file_contexts if necessary
...
Since Android 13, sepolicy are also loaded from APEX modules. Part
of the change is to run restorecon before SELinux is set to enforce.
In order to support this situation, we also hijack plat_file_contexts
if necessary to properly order our operations.
Original idea credits to @yujincheng08, close #5603
2022-03-18 00:46:34 -07:00
topjohnwu
32cd694ad5
SAR can also have monolithic sepolicy
2022-03-17 22:32:49 -07:00
topjohnwu
f008420891
Make magiskinit not magiskpolicy
2022-03-17 03:36:40 -07:00
topjohnwu
fa8900be65
Use standalone magiskpolicy
2022-03-17 03:15:39 -07:00
LoveSy
69c2f407d6
Log if failed to dlopen a zygisk module
2022-03-17 02:25:31 -07:00
topjohnwu
ffcd093db1
Fix #5589
...
Close #5598
2022-03-17 02:25:31 -07:00
topjohnwu
8dbf93750f
Reorganize magiskinit code
2022-03-16 21:41:20 -07:00
topjohnwu
e266a81167
Remove unused code
2022-03-16 21:31:22 -07:00
topjohnwu
e841aab9e7
Add hijack sepolicy support for rootfs devices
...
On older Android versions, pre-mounting selinuxfs will lead to errors,
so we have to use a different method to block init's control flow.
Since all devices that falls in this catagory must both:
1. Be Android 8.0 - 9.0
2. Have early mount fstab in its device tree
We can actually use the same FIFO trick, but this time not on selinuxfs,
but on the read-only device tree nodes in sysfs or procfs. By mocking
the fstab/compatible node in the device tree, we can block init when
it attempts to do early mount; at that point, we can then mock selinuxfs
as we normally would, successfully hijack and inject patched sepolicy.
2022-03-16 20:01:28 -07:00
topjohnwu
49f259065d
Introduce new sepolicy injection mechanism
...
In the current implementation, Magisk will either have to recreate
all early mount implementation (for legacy SAR and rootfs devices) or
delegate early mount to first stage init (for 2SI devices) to access
required partitions for loading sepolicy. It then has to recreate the
split sepolicy loading implementation in-house, apply patches, then
dump the compiled + patched policies into monolithic format somewhere.
Finally, it patches the original init to force it to load the sepolicy
file we just created.
With the increasing complexity involved in early mount and split
sepolicy (there is even APEX module involved in the future!),
it is about time to rethink Magisk's sepolicy strategy as rebuilding
init's functionality is not scalable and easy to maintain.
In this commit, instead of building sepolicy ourselves, we mock
selinuxfs with FIFO files connected to a pre-init daemon, waiting
for the actual init process to directly write the sepolicy file into
MagiskInit. We then patch the file and load it into the kernel. Some
FIFO tricks has to be used to hijack the original init process's
control flow and prevent race conditions, details are directly in the
comments in code.
At the moment, only system-as-root (read-only root) support is added.
Support for legacy rootfs devices will come with a follow up commit.
2022-03-16 00:31:55 -07:00
topjohnwu
b10379e700
Cleanup inheritance
2022-03-14 04:22:09 -07:00
topjohnwu
810d27a618
Use /data as tmpfs mount point in 2SI setup
...
Design credit to @yujincheng08
Close #5146 . Fix #5491 , fix #3752
Previously, Magisk changes the mount point from /system to /system_root
by patching fstab to prevent the original init from changing root.
The reason why we want to prevent the original init from switching the
root directory is because it will then be read-only, making patching
and injecting magiskinit into the boot chain difficult.
This commit (ab)uses the fact that the /data folder will never be part
of early mount (because it is handled very late in the boot by vold),
so that we can use it as the mount point of tmpfs to store files.
Some advantages of this method:
- No need to switch root manually
- No need to modify fstab, which significantly improves compatibility
e.g. avoid hacks for weird devices like those using oplus.fstab,
and avoid hacking init to bypass fstab in device trees
- Supports skip_mount.cfg
- Support DSU
2022-03-13 05:06:08 -07:00
topjohnwu
9b60c005c7
Support multiple CPIO concatenated
2022-03-13 04:23:00 -07:00
topjohnwu
cc6ca0bda2
Update README
2022-03-10 00:45:51 -08:00
topjohnwu
4512232637
Release new canary build
2022-03-10 00:44:42 -08:00
topjohnwu
2c092ffdef
Release Magisk v24.3
2022-03-10 00:32:07 -08:00
topjohnwu
66406227d6
Add v24.3 release notes
2022-03-10 00:24:02 -08:00
topjohnwu
a11d25bb44
Update libsu
2022-03-10 00:00:11 -08:00
VD $ VD171 @ Priv8
2e58d902b7
Update Portuguese Portugal Translation & Fix Portuguese Brazilian Translation by VD171
2022-03-09 20:44:33 -08:00
vvb2060
237794b05c
Add root install back
2022-03-09 20:44:11 -08:00
topjohnwu
563a587882
Initialize local variables
...
Fix #5542
2022-03-09 20:43:42 -08:00
canyie
24505cd111
Prevent destroyed activities from being reused
...
The adapter will cache a LayoutInflater which refers the current activity, and the ViewModel object will keep alive until activity finished. After activity recreates (e.g. split-screen), it will use the cached LayoutInflater which refers a destroyed activity and crashes. This also is a memory-leak, according to Google's official document, ViewModel shouldn't refer activity. See https://developer.android.com/topic/libraries/architecture/viewmodel
Fix topjohnwu#5413
2022-03-07 01:54:02 -08:00
topjohnwu
0c681cdab4
Check null before dereferencing fds_to_ignore
2022-03-03 21:34:53 -08:00
VD $ VD171 @ Priv8
13ef3058c6
Update Portuguese Brazilian Translation by VD171
...
Update Portuguese Brazilian Translation by VD171
2022-03-03 10:36:45 -08:00
vvb2060
50b159b43d
Add init_boot parition
2022-03-02 22:50:05 -08:00
Rom
8c6c328730
Update French translation
2022-03-02 22:48:24 -08:00
sn-o-w
c9812ddf08
Update Romanian
2022-03-02 22:48:07 -08:00
owen151128
2ef0449c2c
Update Korean translation
2022-03-02 22:33:52 -08:00
Ilya Kushnir
5edc750c47
Update RU strings
2022-03-02 22:33:21 -08:00
vvb2060
2f0e396d7f
Update gradle
2022-03-02 22:32:35 -08:00
vvb2060
000a163beb
Match components which are direct boot unaware
2022-03-02 22:32:35 -08:00
topjohnwu
80dd37ee31
Add missing specialize arguments
2022-03-02 22:01:35 -08:00
topjohnwu
e0b5645064
Revert "Directly use getrandom system call if possible"
...
This reverts commit e7c82f20e3
.
Fix #5516
2022-03-02 19:50:47 -08:00
topjohnwu
e51aacb0b7
Update README
2022-03-01 23:54:39 -08:00
topjohnwu
2d6af94aa0
Release new canary build
2022-03-01 23:53:39 -08:00
topjohnwu
7cfce9ff7a
Release Magisk v24.2
2022-03-01 23:35:56 -08:00
topjohnwu
7f088d6241
Add v24.2 release notes
2022-03-01 23:26:44 -08:00
vvb2060
d11038f3de
Directly stream apk into install session
2022-03-01 23:05:06 -08:00
vvb2060
6df42a4be7
Handle install failure
2022-03-01 23:05:06 -08:00
Francesco Saltori
7fd111b91f
Bring English strings changes to Italian translation
2022-03-01 22:51:07 -08:00
Sirichai Chulee
dd7dc2ec5a
Fix typo in thai translation
2022-03-01 22:50:37 -08:00
Vladimír Kubala
86c586d882
Update Slovak translation
2022-03-01 22:50:12 -08:00
Arbri çoçka
66ac6f72fc
update Albania translator
2022-03-01 22:49:44 -08:00
CDzungx
f21f448099
Update Vietnamese Translation
...
Fix, added some translations.
Added note for technicality word in case user don't know the word mean in English like "boot image", "image" is translated to "đĩa ảnh", I can't really understand it if I use Vietnamese lang 😂 .
2022-03-01 22:49:29 -08:00
topjohnwu
548d70f30c
Mount with original option
...
Fix #5481 , close #5486
2022-03-01 20:09:59 -08:00
topjohnwu
39e714c6d8
Release new canary build
2022-03-01 03:44:21 -08:00
topjohnwu
9968af0785
Move all permission check into daemon.cpp
2022-03-01 03:15:38 -08:00
topjohnwu
be7586137c
Reduce C++ wizardry
2022-03-01 03:15:38 -08:00
LoveSy
7999b66c3c
Refactor daemon connection
2022-03-01 03:15:38 -08:00
vvb2060
c82a46c1ee
Check property before switch mem cgroup
2022-02-28 23:27:23 -08:00
vvb2060
666ab1941f
Fix app request fifo wait
2022-02-28 23:26:59 -08:00
topjohnwu
71e37345b4
Update libsu
2022-02-28 20:14:58 -08:00
topjohnwu
e7c82f20e3
Directly use getrandom system call if possible
2022-02-16 23:57:28 -08:00
LoveSy
afa771a980
Set dlopen reserved size to unlimited
2022-02-16 23:05:17 -08:00
vvb2060
0d1de98cca
Update zh-rCN translation
2022-02-16 23:04:57 -08:00
vvb2060
02bf7dca01
Check apk before patch
2022-02-16 23:04:39 -08:00
vvb2060
8cc76b1d86
Fix restore dialog
2022-02-16 23:04:19 -08:00
vvb2060
77a275cbcd
Show notification when stub is updated to full
2022-02-16 23:04:03 -08:00
vvb2060
3956cbe2d2
ActivityTracker ignore SuRequestActivity
2022-02-16 23:03:42 -08:00
vvb2060
945de8d9a0
Directly stream APK into install session
2022-02-16 23:03:32 -08:00
vvb2060
6dabd3bb2d
Abandon unsuccessful session
2022-02-16 23:03:01 -08:00
topjohnwu
4c80808997
Check packages.xml inode to trigger app rescan
2022-02-14 02:57:33 -08:00
topjohnwu
5a39f7cdde
Reduce duplicate initialization
2022-02-14 02:28:48 -08:00
topjohnwu
5d400fbe90
Check REQUEST_INSTALL_PACKAGES before actions
2022-02-14 02:15:50 -08:00
topjohnwu
e36596470c
Minor adjustments
2022-02-13 20:16:23 -08:00
topjohnwu
668e549208
Refactor APKInstall
2022-02-13 19:54:59 -08:00
topjohnwu
256ff31d11
Show notification after app upgrade
2022-02-13 18:35:35 -08:00
topjohnwu
2414d5d7f5
Minor changes
2022-02-13 14:23:06 -08:00
topjohnwu
b7fc15d399
Code refactoring
2022-02-13 07:24:34 -08:00
topjohnwu
c09b4dabc4
Generate class mapping at runtime
2022-02-13 06:22:42 -08:00
topjohnwu
a4aa4a91a3
Refactor DynLoad
2022-02-13 03:32:11 -08:00
topjohnwu
8f0ea5925a
Relaunch process without second process
2022-02-13 02:58:55 -08:00
南宫雪珊
936ad1aa20
Handle download fail
...
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2022-02-13 02:30:09 -08:00
topjohnwu
d021bca6ef
Prevent app_process from setting umask
...
Fix #5435
2022-02-11 01:26:24 -08:00
topjohnwu
55ed6109c1
Use dynamic_bitset.emplace_back()
2022-02-11 01:10:26 -08:00
vvb2060
f6d765bf81
Su request activity has no affinity for any task
2022-02-11 01:08:04 -08:00
LoveSy
88e8f2bf83
Proper escape `:` and `\` when binding intent
2022-02-11 01:07:28 -08:00
LoveSy
c849759682
Use magiskboot to patch avd
...
Fix #5421
2022-02-11 00:25:07 -08:00
topjohnwu
605eae21bc
Remove unnecessary read/write
...
Close #5425
2022-02-11 00:24:12 -08:00
topjohnwu
93eb277a88
Update error messages
2022-02-11 00:01:51 -08:00
LoveSy
8edf556c9e
Fix lz4_lg compress
2022-02-10 23:50:19 -08:00
topjohnwu
7fcb63230f
Support lz4_legacy archive with multiple magic
...
Multiple lz4_legacy archives can be directly concatenated
2022-02-10 23:49:17 -08:00
LoveSy
12093a3dad
Update elf-cleaner
2022-02-08 00:53:02 -08:00
canyie
ebb0ec6c42
Make xmmap() returns nullptr when fails
...
In the constructor of mmap_data, there are two possible values when fails: nullptr if fstat() fails, and MAP_FAILED if mmap() fails, but mmap_data treated MAP_FAILED as valid address and crashes.
2022-02-08 00:49:47 -08:00
LoveSy
188546515c
Fix UID tracking
2022-02-08 00:49:22 -08:00
topjohnwu
c8990b0f68
Rewrite UID tracking
2022-02-07 02:46:47 -08:00
topjohnwu
7dced4b9d9
Update AGP
2022-02-07 00:19:36 -08:00
topjohnwu
3145e67feb
Update data structure
2022-02-07 00:17:07 -08:00
topjohnwu
e9348d9b6a
Release new canary build
2022-02-06 07:19:27 -08:00
topjohnwu
1a1b346c05
Fix #5377
2022-02-06 07:12:26 -08:00
Donatello
920d059837
Update italian translation
...
Added missing string.
Co-authored-by: Madis Otenurm <Madis0@users.noreply.github.com>
2022-02-06 06:51:49 -08:00
xDonatello
bef5c3bd1b
Update italian translation
2022-02-06 06:51:49 -08:00
Madis Otenurm
97037f7d03
Update strings.xml
2022-02-06 06:51:11 -08:00
topjohnwu
a7392ed3d7
Fix MULTIUSER_MODE_OWNER_MANAGED
2022-02-06 06:46:09 -08:00
Madis Otenurm
3eb1a7e384
Update Estonian
2022-02-06 05:59:09 -08:00
Arbri çoçka
1ecdc78c2f
fix translante in Albania language
2022-02-06 05:58:39 -08:00
孟武.尼德霍格.龍
d279dba37e
Update Traditional Chinese Strings
...
Co-authored-by: LoveSy <631499712@qq.com>
2022-02-06 05:58:03 -08:00
topjohnwu
a4f97fa151
Fix buffer overflow in connect.cpp
2022-02-06 05:52:11 -08:00
LoveSy
ff7ac582f0
Refactor Zygisk loading
...
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2022-02-06 00:27:31 -08:00
LoveSy
d2c2456fbe
Don't use `getmntent_r` from system's libc
...
Fix #5354
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2022-02-04 23:19:12 -08:00
LoveSy
e9f562a8b7
Fix abuse of `fdopendir`
...
After `fdopendir`, the fd is no longer usable. Should dup and
make use of RAII
Co-authored-by: 残页 <31466456+canyie@users.noreply.github.com>
2022-02-04 22:54:34 -08:00
topjohnwu
084e0a73dc
Cleanup DownloadService
2022-02-03 03:50:52 -08:00
topjohnwu
10f991b8d0
Directly stream APK into install session
2022-02-03 03:50:52 -08:00
残页
79620c97d1
Invalidate Samsung's persist.sys.zygote.early
...
Samsung FDE devices with the "persist.sys.zygote.early=true" property will cause Zygote to start before post-fs-data. According to Magisk's document, the post-fs-data phase should always happen before Zygote is started. Features assuming this behavior (like Zygisk and modules that need to control zygote) will not work. To avoid breaking existing modules, we simply invalidate this property to prevent this non-standard behavior from happening
Fix #5299 , fix #5328 , fix #5308
Co-authored-by: LoveSy <shana@zju.edu.cn>
2022-02-03 00:46:52 -08:00
topjohnwu
ffec9a4ddd
Minor changes
2022-02-02 05:06:12 -08:00
topjohnwu
9b18960bbd
Getting APK doesn't need ContentProvider
2022-02-02 04:58:31 -08:00
topjohnwu
a009fdbdc3
Fix root service on stub
2022-02-02 04:49:23 -08:00
topjohnwu
c1fc3f373c
Proper app relaunch for stub
2022-02-02 04:44:22 -08:00
topjohnwu
f4cf5dc0cd
Rename class
2022-02-02 02:50:27 -08:00
topjohnwu
355341f0ab
Use AppComponentFactory to replace ClassLoader
2022-02-01 22:43:44 -08:00
topjohnwu
7f65f7d3ca
Separate libc.a hacks into its own component
2022-01-31 02:09:08 -08:00
topjohnwu
9fa096c6f4
Add runtime FORTIFY support
...
Gingerbread libc.a missing symbols
2022-01-31 01:49:37 -08:00
LoveSy
70415a396a
Do not filter uid == 1000 for process info
2022-01-30 08:25:24 -08:00
canyie
c921964938
Make sure busybox can be executed recursively
...
Busybox will execute itself. On some older Samsung devices, when it is located in /data, it will not have rights to execute other programs including itself. We should also relocate busybox in this case to workaround Samsung bullshit.
See topjohnwu/ndk-busybox@bdc8655
Fix the "app doesn't detect installed Magisk" issue in topjohnwu#4174
2022-01-30 08:24:32 -08:00
topjohnwu
3bf47a6838
Update selinux
2022-01-30 08:18:04 -08:00
topjohnwu
d3d28f0623
Update to NDK r23b
...
Credits: @yujincheng08
Close #5193
2022-01-30 07:11:51 -08:00
topjohnwu
f880b57544
Update README
2022-01-28 04:02:57 -08:00
topjohnwu
32b7a26fa6
Release new canary build
2022-01-28 03:58:53 -08:00
topjohnwu
32fc34f922
Release Magisk v24.1
2022-01-28 03:43:42 -08:00
topjohnwu
b82a393692
Add v24.1 release notes
2022-01-28 03:37:00 -08:00
LoveSy
3c7e792167
Catch `PendingIntent.CanceledException` thrown from `send`
2022-01-27 05:29:32 -08:00
LoveSy
0ad66875ab
Fix crash when zip is malformat
...
Co-authored-by: 南宫雪珊 <vvb2060@gmail.com>
Co-authored-by: 残页 <31466456+canyie@users.noreply.github.com>
2022-01-27 05:26:31 -08:00
Arbri çoçka
1191ac2671
update Albania translation
2022-01-27 05:25:13 -08:00
topjohnwu
928b3425e3
Embed module installer in APK
2022-01-27 05:24:05 -08:00
topjohnwu
0726a00e3b
Fix download notifications
2022-01-27 05:17:52 -08:00
LoveSy
5a88984d34
Guard synchronizedList's iteration
...
It's needed to guard a synchronizedList when iterating it
2022-01-27 02:01:30 -08:00
LoveSy
18de60f68c
Fix NPE of `SuRequestViewModel`
...
countdown timer may have not initialized when backpressed
2022-01-27 02:01:04 -08:00
LoveSy
1893359142
Fix crash when fragment is detached from activity
2022-01-27 01:54:24 -08:00
topjohnwu
f5e5ab2436
Update Android Studio
2022-01-27 01:46:00 -08:00
topjohnwu
ff5ea1a70d
Clarify what 64-bit only means
2022-01-26 04:39:14 -08:00
topjohnwu
54ee63a409
Minor install guide changes
2022-01-26 02:55:25 -08:00
topjohnwu
f095606b50
Release new canary build
2022-01-26 02:41:46 -08:00
topjohnwu
e8f31c78d7
Update README
2022-01-26 02:33:22 -08:00
topjohnwu
b34c477d5e
Release Magisk v24.0
2022-01-26 02:21:22 -08:00
topjohnwu
28611304f7
Add v24.0 release notes
2022-01-26 02:08:49 -08:00
CISZEK Anthony
76af9e6e1f
Update French translations
2022-01-26 00:56:39 -08:00
topjohnwu
7b3b965ed7
Fix some typos
2022-01-26 00:52:51 -08:00
topjohnwu
567b905ef1
Update install guides
2022-01-26 00:48:16 -08:00
topjohnwu
a94268329c
Update developer guide
2022-01-25 23:05:03 -08:00
Oliver Cervera
a11a18686a
Update italian translation
...
Contains last changes, it is also synced with the main file.
2022-01-25 21:56:04 -08:00
AndroPlus
c58e3a99ee
Update Japanese translation
2022-01-25 21:55:50 -08:00
topjohnwu
b166663e89
Release new canary build
2022-01-25 05:03:34 -08:00
topjohnwu
ac13ac14f6
Remove deploy.md
2022-01-25 04:26:59 -08:00
topjohnwu
06531f6d06
Add annotations to suppress warnings
2022-01-25 04:16:14 -08:00
topjohnwu
f6274d94f6
Add setprop warnings
2022-01-25 03:52:46 -08:00
topjohnwu
2b303a7e23
Add a missing busybox patch back
...
Hopefully, fix #4174
2022-01-25 03:37:59 -08:00
topjohnwu
2bb074a5ad
Update developer guides
2022-01-25 03:04:23 -08:00
topjohnwu
3b2db56243
Update documentation
2022-01-25 02:32:52 -08:00
topjohnwu
45483fde74
Update CLI usages
2022-01-25 02:04:15 -08:00
topjohnwu
d742cfa48f
Label Zygisk as beta
2022-01-25 01:41:51 -08:00
topjohnwu
95353ce9eb
Fix language settings
2022-01-25 01:31:15 -08:00
topjohnwu
ab2cc72814
Remove unnecessary root service connection wait
2022-01-25 01:21:21 -08:00
topjohnwu
5c54a2c008
Update version check logic
2022-01-25 01:10:17 -08:00
topjohnwu
2fe3082518
Update busybox
2022-01-24 23:20:36 -08:00
topjohnwu
5a889d28c8
Pick a more reasonable zopfli config
...
Close #4980
2022-01-24 23:07:49 -08:00
Vlad
45e7c1c030
Update RU strings
2022-01-24 22:30:53 -08:00
topjohnwu
c6dcff0ae7
Minor dynamic_bitset changes
2022-01-24 22:30:19 -08:00
Hen Ry
b791dc5e1a
Update de translation
2022-01-24 21:32:07 -08:00
DanGLES3
46db281006
Update pt-BR strings
2022-01-24 21:31:48 -08:00
vvb2060
636479b15b
Fix dynLoad
2022-01-24 21:31:27 -08:00
vvb2060
dcbb4eabb5
Fix string
2022-01-24 21:27:17 -08:00
vvb2060
068cedaa84
Update zh-rCN translation
2022-01-24 03:05:45 -08:00
LoveSy
02dd962601
Don't load zygisk module for magisk app
2022-01-24 03:05:12 -08:00
topjohnwu
256d715648
Release new canary build
2022-01-23 07:07:21 -08:00
topjohnwu
cbe97cdfde
Fix dynamic_bitset implementation
2022-01-23 04:39:00 -08:00
topjohnwu
407dfc7547
Always write 0 to fd
2022-01-23 04:19:07 -08:00
Arbri çoçka
a8e4e077ec
Update Albania translator
2022-01-23 02:45:18 -08:00
vvb2060
3d06ba1878
Use WindowCompat
2022-01-23 02:44:59 -08:00
topjohnwu
8a23d1da58
Do not run setMarkdown on I/O thread
2022-01-23 02:41:56 -08:00
topjohnwu
d3eb61e0e4
Fix string resources
2022-01-23 02:41:56 -08:00
vvb2060
7cdf2d244d
Cleanup su handler
2022-01-23 01:38:17 -08:00
topjohnwu
c59a41a607
Minor code refactoring
2022-01-23 01:08:09 -08:00
topjohnwu
e0410b6f10
TLS only on release builds
2022-01-22 22:57:34 -08:00
topjohnwu
8eac6c0b48
Cleanup arch classes
2022-01-22 14:44:46 -08:00
vvb2060
bf8b74e996
Module json add changelog
2022-01-22 14:44:37 -08:00
kubalav
691e41e22e
Update Slovak translation
2022-01-22 05:31:28 -08:00
AioiLight
15e91d42ee
Update strings.xml
2022-01-22 05:31:14 -08:00
vvb2060
5e8e94fd0f
Remove emoji compat
2022-01-22 05:30:59 -08:00
topjohnwu
5313a46aa2
Overhaul SettingsItem
...
Close #5021
2022-01-22 05:25:36 -08:00
topjohnwu
761a8dde65
Slightly change update UI logic
2022-01-21 05:37:47 -08:00
topjohnwu
a73acfb9c2
Show unloaded Zygisk modules in UI
2022-01-21 05:37:47 -08:00
topjohnwu
fbe17dde03
Add flag for unloaded Zygisk modules
2022-01-21 05:37:47 -08:00
vvb2060
a01a3404fe
Ignore duplicate clicks on BottomNavigationView
...
Co-authored-by: RikkaW <rikka@shizuku.moe>
2022-01-21 02:12:41 -08:00
canyie
454e5dfc5d
Show confirmation dialog before restore app
2022-01-21 01:35:11 -08:00
topjohnwu
47545b45b8
Clean up MagiskDialog
2022-01-21 00:50:02 -08:00
topjohnwu
7c9908d953
Release new canary build
2022-01-20 03:58:16 -08:00
canyie
5f4cd50cc4
Properly prevent fix env dialog from constantly showing
...
ViewModel has been reconstructed when switching fragment so we lost previous state.
2022-01-20 03:38:28 -08:00
canyie
b0fba6ce5b
Optimize navigation back stack
...
Fix topjohnwu#4333
Co-authored-by: LoveSy <shana@zju.edu.cn>
2022-01-20 03:38:00 -08:00
canyie
1f5992f2c2
Fix classloader when restoring bottom nav state
2022-01-20 03:36:31 -08:00
topjohnwu
abfd3c3e5d
Remove unused resources
2022-01-20 03:32:08 -08:00
LoveSy
97da7f9691
Do not trust format of 3rd party json
2022-01-20 02:02:39 -08:00
Ilya Kushnir
2752083d29
Update RU strings
2022-01-20 01:59:33 -08:00
John Wu
c826318da4
Update CLI usage text
2022-01-20 01:59:01 -08:00
LoveSy
6582a4abd9
Make magiskpolicy supports multiple --apply
2022-01-20 01:59:01 -08:00
topjohnwu
a699dab5b3
Add option to skip building for AVD commands
2022-01-20 01:42:41 -08:00
topjohnwu
21c8ad5b9e
Fix up some AVD scripts
2022-01-20 01:33:59 -08:00
topjohnwu
195d885887
Reduce log spamming
2022-01-20 00:18:46 -08:00
topjohnwu
519bd2f30f
Disable AVD hacks by default
2022-01-19 20:28:01 -08:00
topjohnwu
20ef724fad
Add new build command avd_patch
2022-01-19 05:12:11 -08:00
vvb2060
f443cbaa2b
Revert "Always run non disabled module post-fs-data scripts"
...
This reverts commit 4dfb193d10
.
2022-01-18 04:48:47 -08:00
vvb2060
dbf45da8ab
Avoid constantly check env
2022-01-18 04:47:53 -08:00
topjohnwu
6b67902d53
Uninstalled app su requests should still show in logs
2022-01-18 04:44:11 -08:00
topjohnwu
0ad0ef485c
Bump min Magisk version to v21.0
...
Close #5220
2022-01-18 04:27:40 -08:00
topjohnwu
7dfe3e53d5
Optimize imports
2022-01-18 03:58:47 -08:00
vvb2060
5be3bd1e64
Show User-Agent
2022-01-18 02:02:41 -08:00
vvb2060
bc0c1980db
Support modules update
2022-01-18 02:02:41 -08:00
vvb2060
2997258fd0
Cleanup code
2022-01-18 02:02:41 -08:00
vvb2060
11600fc116
Use libs instead of copy code
2022-01-18 02:02:41 -08:00
vvb2060
a8640f52ef
Merge into one file
2022-01-18 02:02:41 -08:00
Arbri çoçka
0f4e44c38f
Update values-sq
2022-01-18 00:35:55 -08:00
capntrips
053f4d481d
disable virtualAB check for noSecondSlot
2022-01-18 00:35:38 -08:00
capntrips
f466c27da9
disable pixel check for noSecondSlot
2022-01-18 00:35:38 -08:00
RikkaW
bfe6bc3095
Fix bottom nav sometimes not hide correctly
...
Replace homemade animation with StateListAnimator
2022-01-18 00:24:16 -08:00
vvb2060
ff8f3e766e
Update zh-rCN translation
2022-01-18 00:23:40 -08:00
vvb2060
6635ea3e29
Allow offline hide manager
2022-01-18 00:20:49 -08:00
LoveSy
591788c0df
Fix an NPE
...
java.lang.NullPointerException: Attempt to invoke virtual method 'int android.text.Layout.getEllipsisCount(int)' on a null object reference
2022-01-17 22:55:44 -08:00
vvb2060
571b8986a4
Don't assume installed version matches app
2022-01-17 20:29:11 -08:00
topjohnwu
bb7a74e4b4
Add Zygisk API getFlags()
2022-01-17 19:54:33 -08:00
topjohnwu
76ddfeb93a
Allow modifying denylist without enforcement
2022-01-15 23:46:22 -08:00
LoveSy
c38b826abf
Skip overlayfs for post-fs-data mount
...
adb remount will introduce overlayfs for /system and /vendor, we should
skip mounting as overlayfs. This also helps us support overlayfs Magisk
later.
2022-01-14 03:42:37 -08:00
topjohnwu
21d7db0959
Add new Zygisk API to get module dir
2022-01-14 03:10:02 -08:00
topjohnwu
d7b51d2807
Update dependencies
2022-01-14 00:07:19 -08:00
topjohnwu
a7af8b5722
Add DoH back
...
JSDelivr is no longer China friendly
2022-01-13 03:50:29 -08:00
topjohnwu
9c93fe6003
Update bootctl
...
Close #5134
2022-01-13 02:24:02 -08:00
topjohnwu
21505a7470
Update scripts for PATCHVBMETAFLAG
2022-01-12 02:29:34 -08:00
topjohnwu
ba6e6cc15a
Update vbmeta option hiding criteria
...
Hide when Samsung, A/B, or vbmeta partition exists
2022-01-12 02:29:34 -08:00
vvb2060
fd7bf2bc3a
Support PATCHVBMETAFLAG env variable
2022-01-12 02:29:34 -08:00
LoveSy
b2cd24ed1b
Fix an UB when cil compile error
2022-01-11 03:01:27 -08:00
vvb2060
66cf2c984a
Don't fix env when patch boot
2022-01-11 02:50:12 -08:00
残页
de1b2b19b0
Only store sepolicy rules into partitions in ext4 format
...
Fix topjohnwu#5013
When installing from recovery, previous implementation may select f2fs partitions to store sepolicy rules, but magiskinit won't mount them and unable to load sepolicy rules.
2022-01-11 02:25:34 -08:00
LoveSy
e31583485d
Don't prefetch env to avoid deadlock
...
Fix #5178
2022-01-11 00:47:06 -08:00
topjohnwu
490e51c1d7
Don't set RECOVERYMODE if recovery_dtbo exists
...
Apparently some boot images with ramdisk still have recovery_dtbo,
so this assumption is no longer safe to do. Expect the user to
set this option properly themselves in the app.
Fix #4976 , close #5070 , close #5184
2022-01-11 00:17:47 -08:00
RikkaW
1df2a04713
Find suitable anchor view for SnackBar
...
This will fix the SnackBar position if BottomNav or FAB is visible.
Fix #5163
Fix #5135
2022-01-10 23:10:42 -08:00
vvb2060
42804d5314
Fix stub clean task
2022-01-10 23:02:51 -08:00
vvb2060
558710bbdd
Fix gradle task dependencies
2022-01-02 16:10:44 -08:00
topjohnwu
f4926cb822
Small refactoring
2022-01-02 16:09:03 -08:00
topjohnwu
1e77e0862a
Separate fstab finding to its own function
2022-01-02 15:49:12 -08:00
topjohnwu
8c696cb8ca
Minor code refactoring
2021-12-28 23:37:06 -08:00
LoveSy
62ef8ade8f
Skip loading Magisk when detecting DSU
...
Fix #4402
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2021-12-28 21:04:09 -08:00
LoveSy
3d88dd3123
Update dtc to fix a UB
...
See https://github.com/dgibson/dtc/pull/65
2021-12-28 17:18:32 -08:00
残页
880b348ce6
Add an old cgroup path
...
Fix topjohnwu#5125
cgroup root path might be mem cgroup instead of acct, especially on low-ram devices.
bc131c3244
%5E%21/#F0
2021-12-28 17:12:15 -08:00
残页
31fe3a1cd8
Java keywords cannot be used as package/class name
2021-12-28 17:11:38 -08:00
LoveSy
19182ffddf
If dt fstab contains error, fallback to default fstab
...
See https://cs.android.com/android/platform/superproject/+/master:system/core/init/first_stage_mount.cpp;drc=master;l=155
From the source of `FirstStageMount`, dt fstab can fail gracefully and
if any error occurs it will fall back to default fstab. Magisk now
replaces the default fstab and dt fstab unconditionally, bringing potential
errors to the default fstab and causing init fails to load partitions.
2021-12-28 17:10:52 -08:00
vvb2060
afcc60066e
Fix toast
2021-12-27 12:17:35 -08:00
vvb2060
d3ade06421
Use InputStream transfer
2021-12-27 12:17:35 -08:00
topjohnwu
f1a3ef9590
Update dependencies
2021-12-27 12:17:09 -08:00
Arbri çoçka
d1d73f11a5
fix same text in Albania
2021-12-27 12:01:05 -08:00
topjohnwu
05697372f8
Remove issues action
...
Handled by external MagiskBot
2021-12-25 17:26:03 -08:00
topjohnwu
0c1f68816e
Release new canary build
2021-12-14 21:40:40 -08:00
kubalav
92546e8a74
Update Slovak translation
2021-12-14 21:25:58 -08:00
John Wu
a4faa3f392
Update stub strings.xml path
2021-12-14 05:31:12 -08:00
南宫雪珊
df191cd2b5
Use AGP to compile resources
2021-12-14 05:30:15 -08:00
南宫雪珊
baa19f0ccf
Rewrite app installation
...
Fix #4960
2021-12-14 05:20:29 -08:00
vvb2060
5a49bd3ac9
Add OkHttp cache
2021-12-14 05:01:12 -08:00
LoveSy
b37d7e0500
Use default icon when failed to get app icon
...
Fix #5051
2021-12-14 04:58:18 -08:00
topjohnwu
f4ed6274a4
Invert vbmeta header patching config
...
vbmeta header should not be patched in most cases
2021-12-14 04:52:25 -08:00
LoveSy
56eb1a1cf9
Load fstab from system/etc
...
Caused by this commit: e98afa2687
Fix #5057
2021-12-14 03:51:55 -08:00
LoveSy
a7c156a9e3
Further fix `oplus.fstab` support
...
* Further fix `oplus.fstab` support
In some oneplus devices, `oplus.fstab` does exists but `init` never
loaded it and those entries in `oplus.fstab` are written directly to
`fstab.qcom`. Previous implementation will introduce duplicate entries
to `fstab.qcom` and brick the device. This commit filters those entries
from `oplus.fstab` that are already in `fstab.qcom` and further filters
duplicated entries in `oplus.fstab` (keep only the last entry).
Fix #5016
* Fix UB
Since we moved entry, we need to explicitly copy its member.
For c++23 we can use `auto{}`.
2021-12-14 03:40:23 -08:00
南宫雪珊
d81ca77231
Update gradle/wrapper/gradle-wrapper.properties
2021-12-14 03:36:01 -08:00
南宫雪珊
bf013f6ebb
Fix Build
2021-12-14 03:36:01 -08:00
vvb2060
dd8116e285
Update Dependencies
2021-12-14 03:36:01 -08:00
残页
b5d80a88d1
Only care about mount namespace isolating
2021-12-14 03:08:55 -08:00
vvb2060
7f4f95cf83
Fix certificate start time
2021-12-14 03:07:38 -08:00
LoveSy
87c2f6ad14
xhook_clear after xhook_refresh
2021-12-14 03:06:57 -08:00
topjohnwu
ad47dba064
Rename magiskVersion* -> version*
2021-12-14 03:01:11 -08:00
LoveSy
41b701846f
ensureEnv even if getRemote fails
...
Co-authored-by: vvb2060 <vvb2060@gmail.com>
2021-12-14 02:57:58 -08:00
xz-dev
5c42830328
l10n: Fix typo of chinese Simplified translations
2021-12-14 02:52:38 -08:00
Allan Nordhøy
69617309f8
English language string fixes
2021-12-14 02:51:54 -08:00
topjohnwu
48e2d6a8da
Simplify several hacks
2021-12-13 19:48:17 -08:00
topjohnwu
b4120cddfb
IODispatcherExecutor -> DispatcherExecutor
2021-12-13 04:05:42 -08:00
topjohnwu
54e3f1998a
Support RootService on stub APKs
2021-12-13 04:05:42 -08:00
topjohnwu
edcf9f1b0c
Introduce RootServices to the app
2021-12-13 04:05:42 -08:00
topjohnwu
de3747d65e
Copy APK from external storage in stub
...
Much faster and easier development
2021-12-13 04:05:42 -08:00
vvb2060
b76a3614da
Fix isolated process comparisons
2021-12-10 04:35:38 -08:00
topjohnwu
94cc64c51b
Update dependencies
2021-12-10 04:32:16 -08:00
HeroBuxx
0f71edee96
magisk: README: Correct string path for stub
...
Signed-off-by: HeroBuxx <herobuxx@conqueros.co>
2021-12-01 21:20:24 -08:00
topjohnwu
e097c097fe
Rename persist_properties.cpp -> persist.cpp
2021-11-30 01:58:31 -08:00
topjohnwu
1443a5b175
Use mmap_data more widely
2021-11-30 01:50:55 -08:00
topjohnwu
2d82ad93dd
Macro -> template
2021-11-29 19:56:37 -08:00
vvb2060
384c257a74
Disable CompatVectorFromResources
2021-11-29 00:06:28 -08:00
vvb2060
49dfa2c3a0
Fix update from notification will fail
2021-11-29 00:05:54 -08:00
vvb2060
7bd3e768db
Remove bytecode compatibility workaround
2021-11-29 00:05:20 -08:00
vvb2060
65224ed22b
Fix NPE when apk could not be parsed
2021-11-29 00:04:51 -08:00
topjohnwu
0a28dfe1e2
AVB blobs expect to be 4096-byte aligned
2021-11-28 13:21:05 -08:00
topjohnwu
1c8ebfacb0
Release new canary build
2021-11-23 22:39:15 -08:00
HuskyDG
5d6d241791
Update VN strings.xml
2021-11-23 22:24:51 -08:00
jontaix
4f116d15b9
Fix PT-rBR translation
...
Some translation fixes.
2021-11-23 22:24:22 -08:00
topjohnwu
228570640e
Introduce KEEPVBMETAFLAG env variable
...
Close #4447 , close #4906 , close #4901 , close #4964
2021-11-23 22:14:12 -08:00
topjohnwu
65a79610aa
Fix crash and warnings
2021-11-23 18:46:06 -08:00
topjohnwu
24984ea4f2
Optimize stream for full-file writes
2021-11-23 18:08:14 -08:00
topjohnwu
048b2af0fc
Improve zopfli encoder
...
Write in chunks for CLI compression
2021-11-23 16:50:08 -08:00
topjohnwu
449989ddd9
Always use zopfli for zImage compression
2021-11-23 14:24:05 -08:00
topjohnwu
01ebe5724a
Cleanup zImage parsing code
2021-11-23 13:39:15 -08:00
topjohnwu
95fb230b8c
Update to BusyBox 1.34.1
2021-11-22 19:46:52 -08:00
topjohnwu
632971af15
Properly support v4 image headers
2021-11-21 06:07:21 -08:00
topjohnwu
5787aa1078
Stream should always write all bytes
2021-11-21 06:05:59 -08:00
topjohnwu
d8b9265484
Pull out buffer-chunk logic into separate class
2021-11-21 06:05:55 -08:00
topjohnwu
9ea3169ca9
Do not allow modifying page sizes
2021-11-20 22:51:22 -08:00
topjohnwu
aebf2672cd
Fix unpacking vendor boot images
2021-11-20 22:44:38 -08:00
osm0sis
68ac409bfd
Scripts fixes and improvements
...
- ensure all scripts use $NVBASE $MAGISKBIN $POSTFSDATAD and $SERVICED where appropriate
- simplify new grep_cmdline() using xargs and more sed
- show correct active sepolicy $RULESDIR on devices with no encryption
- add support for Android 12 .capex (compressed apex) files
2021-11-20 14:17:02 -08:00
topjohnwu
fef44bd24f
Allow boot scripts to know Zygisk status
2021-11-20 13:05:15 -08:00
HuskyDG
e4a7617dde
Update VN strings.xml
2021-11-16 21:31:21 -08:00
topjohnwu
4dfb193d10
Always run non disabled module post-fs-data scripts
2021-11-16 21:29:13 -08:00
dark-basic
c248d94995
Update strings.xml
2021-11-16 21:15:02 -08:00
vvb2060
d4ac458d17
Ignore zygisk modules when zygisk is not enabled
2021-11-16 21:14:35 -08:00
Ilya Kushnir
93e443c4ad
Update RU strings
2021-11-16 21:14:11 -08:00
DanGLES3
4b3988cef9
Update pt-BR translation
2021-11-16 21:13:50 -08:00
Rom
4eb5ee17b4
Fix typo in French translation
2021-11-16 21:13:13 -08:00
topjohnwu
e1b63d7dec
Initialize mt19937 statically in function
...
This reduces startup time
2021-11-16 03:20:07 -08:00
topjohnwu
4b5651bd6f
Revert logging after pre specialize
2021-11-16 03:12:01 -08:00
topjohnwu
50515d9128
Close unclosed fds from modules
2021-11-16 01:59:45 -08:00
RikkaW
28b5faab0c
Visual changes
2021-11-14 03:58:35 -08:00
topjohnwu
82a01c22d3
Cleanup resources
2021-11-14 00:45:39 -08:00
LoveSy
be9b0c2e8f
Move flow.concurrentMap to ktx
2021-11-13 11:28:11 -08:00
LoveSy
b6affe06a5
Fix flow parallel
2021-11-13 11:28:11 -08:00
topjohnwu
1e05f8c646
Release new canary build
2021-11-12 03:14:56 -08:00
topjohnwu
7e9d4512b6
Update zh-rTW
2021-11-12 03:07:18 -08:00
RikkaW
5fa127c415
Disable modules section if Magisk is not active
...
Fix #4925
2021-11-12 03:02:26 -08:00
kubalav
ac26681fe7
Update Slovak translation
2021-11-12 03:01:49 -08:00
残页
3c62636133
Update zh-rCN translation
2021-11-12 03:01:30 -08:00
Arbri çoçka
ca874fa12c
Update Albania translation
2021-11-12 03:00:55 -08:00
Rom
c3508bbb99
Update French translation
2021-11-12 03:00:37 -08:00
topjohnwu
6935033db5
Prevent dangling pointers
2021-11-12 02:02:05 -08:00
topjohnwu
421277d730
Prevent race conditions in connect_companion
2021-11-12 01:55:55 -08:00
topjohnwu
56988944b5
No need to dup fd
2021-11-12 01:54:48 -08:00
topjohnwu
528601d25a
Fix integer overflow and workaround seccomp
...
- Use ftruncate64 instead of ftruncate to workaround seccomp
- Cast uint32_t to off64_t before making it negative
Note: Using ftruncate with a modern NDK libc should actually be
fine as the syscall wrapper in bionic will use ftruncate64 internally.
However, since we are using the libc.a from r10e built for Gingerbread,
seccomp wasn't a thing back then, and also the ftruncate64 symbol is
missing; we have to create our own wrapper and call it instead on
32-bit ABIs.
Props to @jnotuo for discovering the overflow bug and seccomp issue
Fix #3703 , close #4915
2021-11-10 03:07:20 -08:00
topjohnwu
ddd153c00d
Show module suspend notice
...
Close #4862
2021-11-09 23:59:37 -08:00
topjohnwu
b8c1588284
Always unload zygisk after specialize
2021-11-07 13:05:44 -08:00
LoveSy
4dac9e40bd
Support bootconfig on `util_functions.sh`
...
Close #4869
2021-11-07 11:22:21 -08:00
Arbri çoçka
def1811d48
Fix strings in sq
2021-11-07 11:03:28 -08:00
孟武.尼德霍格.龍
c53e507713
Update Traditional Chinese Language
2021-11-07 11:03:15 -08:00
LoveSy
e0ea777249
Use `ProcessCompat`
...
Fix #4895
2021-11-07 11:02:58 -08:00
topjohnwu
4c1962f3c7
Release new canary build
2021-11-06 23:56:50 -07:00
Chris Renshaw
258e89c964
Fix script typo for Sony init.real support
...
- though may still be broken on magiskinit side, see #4885
2021-11-06 23:44:43 -07:00
topjohnwu
3d3bfb42e5
Don't copy ApplicationInfo
2021-11-06 23:34:46 -07:00
topjohnwu
6dbd8baa7e
Cleanup DownloadService
2021-11-06 17:45:41 -07:00
topjohnwu
e660fabc57
Remove BaseDownloader
2021-11-06 04:37:06 -07:00
topjohnwu
2115bcd8b0
Relaunch and recreate is slightly different
2021-11-05 16:05:12 -07:00
topjohnwu
1bdd6e1a9d
Migrate to Activity Result APIs
2021-11-05 15:53:34 -07:00
topjohnwu
98deec232b
Minor adjustments
2021-11-05 13:55:18 -07:00
topjohnwu
022c217cfe
Migrate to SplashScreen API
2021-11-05 04:16:58 -07:00
topjohnwu
81f57949ed
Remove WorkManager as a dependency
2021-11-04 23:39:35 -07:00
topjohnwu
fca5eb083f
Always show checked app in list
2021-11-04 20:09:19 -07:00
topjohnwu
a3695cc66b
Use Kotlin coroutine instead of Java parallelStream
2021-11-04 20:09:19 -07:00
topjohnwu
6723d20616
Cleanup AppProcessInfo
2021-11-04 20:09:19 -07:00
RikkaW
627ec91687
Fix visual issues for ActionBar
2021-11-04 20:09:19 -07:00
vvb2060
9126cf0c73
Rewrite deny list UI
2021-11-04 20:09:19 -07:00
Chaosmaster
16322ab30c
Use full gzip-signature to find gzip-data.
...
Fall back to raw image if gzip is not found.
Fixes #4849
2021-11-03 22:23:21 -07:00
Chaosmaster
5682917356
Speed up zopfli compression
...
See #4810 for example
2021-11-03 22:22:29 -07:00
LoveSy
c91ccc8b4e
Fix UB on dtb
...
`operator==` of string_view will create a tmp `string_view`.
It's an UB if the `const char *` is a nullptr.
`fdt_get_name` however will return a nullptr.
2021-11-03 22:21:48 -07:00
topjohnwu
63f670fc36
Move first stage unload before fork
2021-11-02 21:53:33 -07:00
LoveSy
e20b07fa24
Fix #4853
2021-11-02 19:31:17 -07:00
topjohnwu
472656517f
Release new canary build
2021-11-02 04:18:30 -07:00
topjohnwu
d232cba02d
Fix first stage unload
2021-11-02 04:12:56 -07:00
vvb2060
e49d29a914
Fix fragments lifecycleOwner
2021-11-02 03:10:29 -07:00
RikkaW
3aa1a68cdc
Fix activity relaunches constantly on WSA
...
It's magic 💢 since change configuration should not trigger activity relaunch.
2021-11-02 03:09:06 -07:00
Hen Ry
f94452083f
German Update
2021-11-02 03:08:32 -07:00
Arbri çoçka
ce1ee5cb9d
Fix strings in stub Albania
2021-11-02 03:07:44 -07:00
topjohnwu
48df6b8485
Use memmem instead of strstr
...
It might not be null terminated
2021-10-31 11:46:56 -07:00
topjohnwu
ae23ae2d37
Remove code in scripts that should be removed
2021-10-31 11:30:48 -07:00
Nullptr
e34e04af04
Make Api functions inline
...
Make Api functions inline to avoid duplicate symbols when including api.hpp in multiple cpps
2021-10-31 10:55:41 -07:00
osm0sis
ff3f377911
scripts: touch up print_title
...
- stars aren't pounds, let's just call it a title bar :P
2021-10-31 10:53:55 -07:00
osm0sis
18065826b9
scripts: improve basic module setup
...
- expand utility of the basic module setup (zip without customize.sh) by setting more default perms, since really it couldn't do any simple binary files additions correctly withonly 0755 0644
- ensure CON stays local
2021-10-31 10:53:55 -07:00
topjohnwu
84e19ceef0
Tidy up bootimg.h
...
Close #4796
2021-10-31 10:52:12 -07:00
Chris Renshaw
59161efd08
Support Samsung 2SI with skip_initramfs in dtb cmdline
...
Samsung Galaxy A21S and Galaxy M12, probably others, are hdr_v2 boot.img with 2SI judging by the ramdisk contents, but the dtb contains an extra cmdline with skip_initramfs present, even though this shouldn't exist on 2SI and the kernel apparently doesn't even contain a skip_initramfs function
I can't find examples of other devices where skip_initramfs is present in the dtb other than these so patch it out like we do the kernel
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2021-10-30 21:20:10 -07:00
Chris Renshaw
6663fd3526
Support custom legacy Sony devices with init.real setup
...
Custom ROM bring-ups of legacy Sony devices contain the following:
/init (symlink to /bin/init_sony)
/init.real (the "real" Android init)
/bin/init_sony (this was /sbin/init_sony on Android <11)
Kernel loads the ramdisk and starts /init -> /bin/init_sony
/bin/init_sony does low-level device setup (see: https://github.com/LineageOS/android_device_sony_common/blob/lineage-18.1/init/init_main.cpp )
/bin/init_sony unlinks /init and renames /init.real to /init
/bin/init_sony starts /init
Since init_sony needs to run first magiskinit needs to replace init.real instead, so add workarounds based on detection of init.real to boot patcher and uninstaller
Thanks @115ek and @bleckdeth
Fixes #3636
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2021-10-30 18:59:20 -07:00
topjohnwu
2c44e1bb93
Update rules again
2021-10-29 03:37:14 -07:00
残页
e3f6399473
Don't use xwrite() when patching legacy rootfs init
...
Fix topjohnwu#4810
> [ 2.927463] [1: init: 1] magiskinit: Replace [/system/etc/selinux/plat_sepolicy.cil] -> [xxx]
[ 2.936801] [1: init: 1] magiskinit: write failed with 14: Bad address
Since topjohnwu#4596, magisk fails to patch `/init`, xwrite() fails with EFAULT, break the original `/init` file and make the device unbootable. Reverting this commit for legacy rootfs devices fixes the problem. I think this is a Samsung kernel magic since currently I can't reproduce this on other devices or find something special in the log currently we have.
2021-10-29 03:23:34 -07:00
残页
89c2c21774
Fix init.rc path detection
...
Fix #4319
Some devices store init.rc into the new path but still have the legacy /init.rc file
2021-10-29 03:21:20 -07:00
vvb2060
2954eb4bdc
Remove CustomTab
2021-10-29 03:17:11 -07:00
vvb2060
e08de91666
Clean sent proguard rules
2021-10-29 03:15:31 -07:00
残页
a170acb9d7
Fix compilation when init debug toggle enabled
2021-10-29 03:15:16 -07:00
vvb2060
6a086bb222
Load *_compat_cil_file from system_ext
...
https://android-review.googlesource.com/c/platform/system/core/+/1650271
2021-10-29 03:14:26 -07:00
vvb2060
b2f152e641
realpath /proc/pid/cwd
...
prevent cross mount namespace
2021-10-29 03:13:20 -07:00
topjohnwu
6c5b261804
Update spolicy rules
2021-10-29 03:12:48 -07:00
topjohnwu
8bd0c44e83
Replace module fd with memfd if possible
2021-10-28 00:26:18 -07:00
topjohnwu
34c36984e9
Stop extreme verbose logging
2021-10-27 04:00:40 -07:00
topjohnwu
8bd6aca0dd
DenyList unmount without magiskd
2021-10-27 04:00:40 -07:00
topjohnwu
983b74be77
Pass MAGISKTMP over to zygote
2021-10-27 03:25:54 -07:00
topjohnwu
a3eafdd2c6
Release new canary build
2021-10-27 02:37:18 -07:00
topjohnwu
ea75a09f95
Make zygisk survive zygote restarts
...
Close #4777
2021-10-27 01:53:16 -07:00
LoveSy
4c747c4148
Add rule: `allow * magisk_file lnk_file { * }`
2021-10-26 00:41:04 -07:00
LoveSy
49abfcafed
Fix nullptr dereference when env abnormal
2021-10-26 00:40:00 -07:00
topjohnwu
50710c72ad
Cleanup magiskinit code
2021-10-26 00:35:55 -07:00
vvb2060
2e299b3814
Add an old cgroup v2 path
...
https://android-review.googlesource.com/c/platform/system/core/+/1324649
2021-10-25 20:54:19 -07:00
topjohnwu
43d11d877d
Release new canary build
2021-10-24 00:22:13 -07:00
Arbri çoçka
d7e7df3bd9
Add translate Albania in stub
2021-10-23 23:55:57 -07:00
0purple
8d8ba11221
Update strings.xml
2021-10-23 23:55:38 -07:00
Ilya Kushnir
2536a18c00
Update RU strings
2021-10-23 23:55:09 -07:00
sn-o-w
11728b2b15
Update Romanian
2021-10-23 23:54:15 -07:00
green1052
627501b9ba
Update Korean translation
2021-10-23 23:53:53 -07:00
vvb2060
3599384b38
Allow fallback to /dev/pts
2021-10-23 23:31:44 -07:00
topjohnwu
4b307cad2c
Random minor changes
2021-10-23 22:20:07 -07:00
topjohnwu
7496d51580
Make zygiskd ABI aware
2021-10-23 14:38:30 -07:00
topjohnwu
4194ac894c
Support setting more options
2021-10-21 03:20:04 -07:00
topjohnwu
ffb5d9ea9c
Update libcxx
2021-10-21 02:08:13 -07:00
topjohnwu
770b28ca30
Build on API 21 headers
2021-10-20 03:17:42 -07:00
topjohnwu
62e464f706
Upgrade Android Studio
2021-10-20 01:43:33 -07:00
topjohnwu
8d0dc37ec0
Use SO_PEERSEC to get client secontext
2021-10-19 23:46:38 -07:00
topjohnwu
fe41df87bb
pthread_cond_signal might wake multiple threads
...
Close #4759
2021-10-19 21:32:37 -07:00
topjohnwu
8276a0775d
Fix API doc
2021-10-17 05:42:33 -07:00
LoveSy
abfb3bb3bb
Fix always log hook fails
2021-10-17 05:00:31 -07:00
LoveSy
e184eb4a23
Fix UB of loading modules
...
- The lambda here infers its return type as `std::string`,
and since `info` is `const`, the labmda copies `info.name`
and returns a `std::string&&`. After captured by the
`std::string_view`, the `std::string&&` return value
deconstructs and makes `std::string_view` refers to a
dangling pointer.
2021-10-17 04:38:56 -07:00
topjohnwu
d0fc372ecd
Implement Zygisk companion process
2021-10-17 04:36:18 -07:00
topjohnwu
6f54c57647
Allow fork in thread pool
2021-10-17 04:24:25 -07:00
topjohnwu
e8ae103d5f
Update jni hooks
2021-10-14 02:43:56 -07:00
topjohnwu
b0198dab6c
Update Zygisk logging
2021-10-14 02:13:23 -07:00
topjohnwu
b75ec09998
Load Zygisk modules even if no magic mount is needed
...
Close #4767
2021-10-14 01:35:29 -07:00
topjohnwu
c8ac6c07b0
Load Zygisk modules
2021-10-13 04:52:02 -07:00
topjohnwu
27814e3015
Minor Zygisk API changes
2021-10-09 11:53:40 -07:00
topjohnwu
f59309a445
Minor changes
2021-10-09 11:36:01 -07:00
vvb2060
b0292d7319
Add execmem to allow hook
2021-10-09 02:59:03 -07:00
topjohnwu
7f18616cc0
Prune unused nodes from trie
2021-10-09 02:15:03 -07:00
topjohnwu
2fef98a5af
Wipe out prop_info data after delete
2021-10-09 00:27:11 -07:00
topjohnwu
36765caedc
Fix thread pool implementation
...
Close #4759
2021-10-08 23:28:14 -07:00
topjohnwu
f7aed10ea2
Fix friend template function
2021-10-08 19:17:31 -07:00
topjohnwu
410bbb8285
Update Zygisk APIs
2021-10-05 22:42:55 -07:00
topjohnwu
f56ea52932
Add public Zygisk API
...
Still WIP
2021-10-05 03:53:22 -07:00
vvb2060
cb4361b7b7
Fix terminal on android 8
...
No need to handle untrusted_app_all_devpts on modern devices, but devpts policy is different for older devices.
2021-09-25 12:08:35 -07:00
vvb2060
ecd332c573
Close fd
2021-09-25 12:07:52 -07:00
StoyanDimitrov
a0fe78a728
Update Bulgarian translation
...
Small fixes.
2021-09-24 01:30:37 -07:00
Aryan Sinha
49cc9c529e
Magisk: values-hi: Update Hindi Translation
...
* Fix Some Grammatical Mistakes
* Simplify Some Words
2021-09-24 01:29:42 -07:00
Arbri çoçka
7635b2c33f
Update and fix some bugs in values-sq
2021-09-24 01:28:51 -07:00
Ilya Kushnir
50c26d33ab
Update RU strings
2021-09-24 01:28:30 -07:00
topjohnwu
f642fb3b99
Properly handle child zygote
...
Close #4720
2021-09-24 01:23:58 -07:00
topjohnwu
e68dd866a3
Only create app_id_map if necessary
2021-09-24 00:22:19 -07:00
topjohnwu
73d36fdff0
Riru and its modules are not compatible with zygisk
2021-09-23 23:54:46 -07:00
vvb2060
5561cd3c77
Update zh-rCN translation
2021-09-23 02:45:02 -07:00
usrDottik
32a9acb913
Updated values-es strings
...
Added DenyList and Zygisk translations
2021-09-23 02:44:47 -07:00
DanGLES3
f7f23c6e77
Update Brazilian Portugues translation
2021-09-23 02:44:29 -07:00
Arbri çoçka
3d4edbd9dc
Update strings-sq
2021-09-23 02:43:45 -07:00
kubalav
bdf385f374
Update Slovak translation
2021-09-23 02:43:01 -07:00
Rom
9f78c3e64b
Update French translation
2021-09-23 02:42:44 -07:00
taras
f370052815
Update Ukrainian translation
2021-09-23 02:42:20 -07:00
Oliver Cervera
9df4b10067
Update Italian translation
2021-09-23 02:41:53 -07:00
vvb2060
d20517483e
Prevent multiple mounts of devpts
2021-09-23 02:40:24 -07:00
Thonsi
713ce4719b
Cleanup unused code
2021-09-23 02:39:48 -07:00
topjohnwu
f3d39e7515
Update BusyBox
...
Fix #4657 , close #4602
2021-09-23 02:31:42 -07:00
残页
61783ffc82
Prevent original libselinux.so to be unmounted
...
libselinux.so will be unmounted when magiskd starts. If magiskd restarts (like it died before boot completed), the files we want to unmount is the original files because the modified files is unmounted in previous start, which will causes many crashes due to missing libselinux.so.
2021-09-22 19:34:44 -07:00
topjohnwu
05c4ad01d5
Move first stage unload into second stage
2021-09-22 19:33:08 -07:00
topjohnwu
12647dcf30
Improve memory map tricks
...
- In `unmap_all`, replace readable pages atomically with mmap + mremap
- Create new function `remap_all` to replace pages with equivalent
anonymous copies to prevent simple maps name scanning
2021-09-22 19:14:05 -07:00
topjohnwu
da38f59e62
Only run destructor if necessary
2021-09-22 02:52:33 -07:00
topjohnwu
cf4ef54dc5
Unload first stage on main thread
2021-09-22 02:46:07 -07:00
topjohnwu
12e9873514
Update zygisk entry implementation
2021-09-22 00:14:22 -07:00
RikkaW
f7c0e407ca
Fix downgrade database
2021-09-20 05:50:34 -07:00
topjohnwu
82c7662cdf
Cache Magisk app ID for performance
2021-09-20 05:47:15 -07:00
topjohnwu
4f0bced53e
Track app ID instead of UID
2021-09-20 05:08:25 -07:00
topjohnwu
f1b6c9f4aa
Refresh uid_map on package.xml change
2021-09-20 04:42:06 -07:00
topjohnwu
0ab31ab0df
Fix log writer
2021-09-19 13:41:45 -07:00
topjohnwu
46e8f0779f
Move denylist code into zygisk
2021-09-18 14:50:11 -07:00
topjohnwu
3fb72a4d20
Support polling on multiple fds
2021-09-18 14:40:12 -07:00
topjohnwu
db20f65d7c
On denylist != do unmount
2021-09-18 12:44:42 -07:00
topjohnwu
63cfe7b47b
Make sanitize_environ work properly
2021-09-18 05:11:10 -07:00
topjohnwu
db590091b3
Propagate Zygisk state to Magisk app
2021-09-18 02:38:53 -07:00
topjohnwu
7b25e74418
Simplify get manager app info logic
2021-09-17 02:07:32 -07:00
vvb2060
82f303e1c6
Allow save app log when not activated
...
may be useful for patch boot.
2021-09-16 19:44:45 -07:00
Vladimír Kubala
c038683b54
Update Slovak translation
2021-09-16 19:41:43 -07:00
vvb2060
3a37ed6b60
Update zh-rCN translation
2021-09-16 19:41:19 -07:00
topjohnwu
706a492218
Update denylist config implementation
2021-09-16 05:27:34 -07:00
topjohnwu
c0be5383de
Support enable/disable Zygisk
2021-09-15 02:49:54 -07:00
topjohnwu
3b8ce85092
Enable Zygisk
2021-09-15 01:59:43 -07:00
topjohnwu
b6298f8602
Remove more code
2021-09-13 02:00:04 -07:00
topjohnwu
abfec57972
Move files around
2021-09-13 01:47:36 -07:00
topjohnwu
470fc97d1f
Remove SafetyNet check
2021-09-13 01:41:31 -07:00
topjohnwu
8d59caf635
Cleanup unused code
2021-09-13 01:06:43 -07:00
topjohnwu
acf25aa4d3
Remove DoH
2021-09-13 00:44:49 -07:00
topjohnwu
16de4674ec
Move denylist fragment to settings
2021-09-13 00:33:36 -07:00
topjohnwu
65b0ea792e
MagiskHide is no more
2021-09-12 12:40:34 -07:00
topjohnwu
fc6b02f607
Move denylist fragment to its own section
2021-09-12 00:39:24 -07:00
topjohnwu
136d8c39d9
Move more code into buildSrc
2021-09-09 20:19:49 -07:00
topjohnwu
24a8b41182
Fix indentation
2021-09-09 01:37:49 -07:00
vvb2060
810cf4dee8
Move config to buildSrc
2021-09-09 01:37:20 -07:00
LoveSy
9bf835e810
Fix ccache
2021-09-08 08:53:51 -07:00
topjohnwu
eca37bce38
Separate dependency and build cache
2021-09-08 01:16:26 -07:00
topjohnwu
3ee6a2baf2
Enable ccache for faster builds
2021-09-08 01:13:36 -07:00
topjohnwu
69fa7f238d
Don't cache NDK
2021-09-08 01:13:36 -07:00
topjohnwu
de2306bd12
Proper incremental builds
...
Auto generate flag.h for precise rebuilding
2021-09-07 19:35:28 -07:00
topjohnwu
714feeb9a7
Support building on case insensitive filesystems
...
Fix #4643 , close #4641
2021-09-07 04:02:29 -07:00
topjohnwu
ca99808fd2
Update AVD support
...
- Support arm64 AVD images
- Support setup on Windows
Close #4637
2021-09-07 03:03:02 -07:00
topjohnwu
f8f8c28fec
Switch zopfli to official repo
2021-09-03 10:39:23 -07:00
vvb2060
f497867ba5
Update submodules
2021-09-03 10:24:33 -07:00
RikkaW
383192784d
Use standard BottomNav & Remove hide on scroll for AppBar and BottomNav
2021-09-03 10:22:46 -07:00
vvb2060
605189bc6e
Hide overlay windows
2021-09-02 23:17:01 -07:00
残页
c0a2e3674c
Reset file context from adb_data_file
...
In some cases (like weird ROMs that allow init to relabel context from system_file), module files will have an incorrent context, which will causes module not working properly.
See https://github.com/RikkaApps/Riru/wiki/Explanation-about-incorrect-SELinux-rules-from-third-party-ROMs-cause-Riru-not-working
2021-09-02 21:55:08 -07:00
vvb2060
76f0602684
Make busybox cflag stable
2021-09-02 21:48:38 -07:00
vvb2060
477ff12cde
print sepolicy rules dir
2021-09-02 21:46:43 -07:00
topjohnwu
9c09ad3b62
Open source fully obfuscated stub
2021-09-02 21:31:33 -07:00
topjohnwu
a967afc629
Update macOS JAVA_HOME path
2021-09-02 02:27:05 -07:00
vvb2060
dcc1fd3ee4
Use PACKAGE_FULLY_REMOVED for magiskhide
...
Remove from magiskhide only if pkg fully deleted
2021-09-02 02:15:25 -07:00
vvb2060
933f020b3c
Show dialog when hide or restore app
2021-09-02 02:13:31 -07:00
vvb2060
f5c02be5bf
Add new targetSdk domain
...
https://android-review.googlesource.com/c/platform/system/sepolicy/+/1752122
2021-09-02 01:48:25 -07:00
vvb2060
68fbdd474c
Target SDK 31
2021-09-02 01:39:34 -07:00
vvb2060
2cbc048352
Add mount info to log file
2021-09-02 00:48:44 -07:00
Wang Han
e990ffd4a0
Remove leftover DISABLE_ZYGISK flag
2021-09-01 20:14:53 -07:00
topjohnwu
743c7c9326
App code reorganization
2021-09-01 01:17:27 -07:00
topjohnwu
067248da75
Cleanup RvItems
2021-09-01 01:17:27 -07:00
topjohnwu
f5c982355a
Remove online section in modules fragment
2021-09-01 01:17:27 -07:00
vvb2060
f98c68a280
Clean up unneeded rules
2021-08-29 13:03:50 -07:00
vvb2060
773bf0c6bc
Do not use glob in the system's unzip parameter
...
https://android.googlesource.com/platform/system/core/+/refs/tags/android-10.0.0_r47/libziparchive/unzip.cpp#57 unzip did not support glob before Android 11
2021-08-29 13:03:41 -07:00
Arbri çoçka
080ab6032c
update and fix some text in strings-sq
2021-08-29 11:36:07 -07:00
vvb2060
350144df29
Do not allow remove the module to be updated
2021-08-29 11:35:46 -07:00
Antikruk
9ac0f11d9a
Update Belarusian translation
2021-08-29 03:27:57 -07:00
LoveSy
8079d456ab
Use std::map instead
2021-08-29 03:27:15 -07:00
vvb2060
acf166cf9d
Support oplus.fstab
2021-08-29 03:27:15 -07:00
vvb2060
439d497a13
boot image header v4
2021-08-29 03:14:23 -07:00
Allan Nordhøy
0580932610
Norwegian Bokmål translation
2021-08-29 03:10:39 -07:00
Arbri çoçka
85399f609c
Fix and update strings-sq
2021-08-29 03:10:01 -07:00
LoveSy
4bcfee397b
Remove unnecessary umount
2021-08-29 02:45:49 -07:00
vvb2060
34bcb1dd26
Fix line editing on Android 8.0+
2021-08-29 02:45:49 -07:00
LoveSy
117d1ed080
Fix always enter safe mode
...
`getprop("persist.sys.safemode", true) == "1"` -> `getprop("persist.sys.safemode", true) == ""`
2021-08-29 02:45:49 -07:00
vvb2060
f324252681
Use isolated devpts if kernel support
...
kernel version >= 4.7 or CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
2021-08-29 02:45:49 -07:00
LoveSy
0dad06cdfe
Fix meizu compatibility
2021-08-28 21:03:12 -07:00
vvb2060
9396288ca2
Check util_functions.sh version
2021-08-28 20:52:05 -07:00
LoveSy
f89f08833e
Generic parsing methods
2021-08-28 20:50:17 -07:00
vvb2060
79e8962854
Support bootconfig
...
https://android-review.googlesource.com/c/platform/system/core/+/1615298
2021-08-28 20:50:17 -07:00
topjohnwu
34e5a7cd24
Zopfli is not always smaller
2021-08-28 17:16:20 -07:00
topjohnwu
7343c195b7
Cleanup compress.cpp
2021-08-28 17:01:08 -07:00
topjohnwu
0af041b54e
Cleanup magiskboot code
2021-08-28 14:07:34 -07:00
Chaosmaster
92a8a3e91f
Add zopfli gzip encoder for better compression
2021-08-28 11:00:30 -07:00
Chaosmaster
f41575d8b0
Add support for legacy ARM32 zImage
2021-08-28 10:53:45 -07:00
topjohnwu
d93c4a5103
Update README
2021-08-28 10:45:32 -07:00
topjohnwu
6fe9b69aad
Cleanup module.cpp
2021-08-28 10:27:45 -07:00
topjohnwu
5d162f81c4
Modernize db.hpp
2021-08-27 01:06:03 -07:00
topjohnwu
4771c2810b
Significantly better AVD support
2021-08-26 03:09:56 -07:00
topjohnwu
0cd99712fa
Implement cached thread pool
2021-08-24 02:39:54 -07:00
topjohnwu
b591af7803
Minor bug fixes
2021-08-22 03:26:48 -07:00
topjohnwu
171d68ca72
Connect to magiskd log daemon
2021-08-22 03:26:48 -07:00
topjohnwu
bade4f2c6a
Make xhook log as Magisk
2021-08-22 03:26:48 -07:00
topjohnwu
5754782a4e
Generalize gen_jni_hooks.py
2021-08-22 03:26:48 -07:00
topjohnwu
decdd54c19
Hook up denylist IPC routines
2021-08-22 03:26:48 -07:00
topjohnwu
ffe47300a1
Update recv/send fd function
2021-08-22 03:26:48 -07:00
topjohnwu
6f9c3c4ff3
Refactor hook.cpp
2021-08-19 01:54:12 -07:00
topjohnwu
9b3efffba9
Use magiskd to setup files
2021-08-18 03:44:32 -07:00
topjohnwu
003fea52b1
Remove all non-Magisk hiding code
...
Magisk no longer interferes with any signals/info that were not created
or caused by Magisk itself.
2021-08-18 02:01:54 -07:00
topjohnwu
2b17c77195
Make Zygisk 1st class citizen
2021-08-17 23:57:49 -07:00
topjohnwu
c252a50fd7
The name is Zygisk
2021-08-17 23:38:40 -07:00
topjohnwu
cf8f042a20
Cleanup magiskboot cpio code
2021-08-13 04:53:11 -07:00
topjohnwu
844bc2d808
Remove unused code
2021-08-13 03:30:58 -07:00
topjohnwu
27f7fa7153
Extend stream support
2021-08-13 02:08:56 -07:00
topjohnwu
b325aa4555
Fix log file writing
2021-08-13 00:13:44 -07:00
topjohnwu
c2c3bf0ba4
Don't depend on vtable ABI layout
2021-08-12 06:41:59 -07:00
topjohnwu
0d977b54f7
Revise logging code
2021-08-12 03:26:54 -07:00
topjohnwu
20860da4b4
Cleaner daemon handlers
2021-08-11 22:57:08 -07:00
topjohnwu
3ea10b7cf9
Reorganize injection code
2021-08-11 22:56:18 -07:00
topjohnwu
1ec33863bc
Android 5.0 is actually supported
2021-08-11 17:14:22 -07:00
topjohnwu
a260e99090
Support code injection on Android 12
2021-08-11 00:00:21 -07:00
topjohnwu
25efdd3d6f
Use code generator for jni_hooks
2021-08-02 03:20:19 -07:00
topjohnwu
00a1e18959
Store all native JNI methods in data structures
2021-08-01 14:35:16 -07:00
topjohnwu
c59f8adc4a
Update Android Studio
2021-07-30 14:23:20 -07:00
topjohnwu
1eb83ad812
Update Android Studio
2021-05-16 01:26:54 -07:00
topjohnwu
7717f0a6b0
Support Android S AVD
2021-05-13 04:45:13 -07:00
topjohnwu
5e1fba3603
Build a single APK for all ABIs
2021-05-13 00:21:04 -07:00
vvb2060
66cc9bc545
Pure 64bit support
2021-05-12 16:38:34 -07:00
vvb2060
12aa5838d9
Stop gradle daemon
2021-05-12 16:38:34 -07:00
topjohnwu
4f73534837
Update installation instructions
2021-05-12 02:14:41 -07:00
topjohnwu
c4d145835c
Release new canary build
2021-05-11 22:40:40 -07:00
topjohnwu
f822ca5b23
Update changelogs
2021-05-11 22:31:12 -07:00
topjohnwu
8aaa45c62a
Release Magisk v23.0
2021-05-11 22:15:52 -07:00
topjohnwu
2f4f257070
Publish v23.0 docs
2021-05-11 22:08:02 -07:00
topjohnwu
97c1e181c5
Remove unused file
2021-05-11 21:47:46 -07:00
topjohnwu
ea80cddd57
Switch to official snet.jar link
2021-05-11 21:42:58 -07:00
topjohnwu
09a294c219
Fix release builds
2021-05-11 18:40:45 -07:00
bela333
408399eae0
Update install.md
2021-05-11 11:46:23 -07:00
Davy Defaud
391852a102
Various fixes in the French translation
2021-05-11 11:45:31 -07:00
topjohnwu
5b37de8fe5
Build our own zlib
2021-05-10 18:46:03 -07:00
topjohnwu
7df23ceb74
Prevent undefined behavior in magiskboot
2021-05-10 18:38:30 -07:00
topjohnwu
6099f3b015
Always resolve to canonical path
2021-05-10 01:14:53 -07:00
topjohnwu
a5cc31783c
Release new canary build
2021-05-10 00:02:07 -07:00
topjohnwu
6b34ec3ab9
Fix #4194
2021-05-09 22:56:54 -07:00
topjohnwu
5c333dec33
Minor changes
2021-05-09 20:45:53 -07:00
topjohnwu
775d095b3c
Update busybox
...
Fix #4225
2021-05-08 16:45:31 -07:00
GithubUser699
7679b5d516
Removed two "the"
...
At least I couldn't find a Magisk app named "The magisk app", so I removed the two "the".
2021-05-06 19:03:34 -07:00
topjohnwu
7702094053
Update dependencies
2021-05-06 11:37:21 -07:00
Wang Han
3798d50457
Kill processes with SIGKILL rather than SIGTERM
2021-05-04 22:14:46 -07:00
Shaka Huang
95e1e57407
Fix #4140
2021-05-04 22:12:18 -07:00
vvb2060
93ba4cca68
Fix copy sepolicy rules when install module
2021-05-04 22:11:10 -07:00
jenslody
fe4981da21
Fix strings fallback in find_manager_apk
...
There is no preceding character (at least on some devices).
This regex should work in any cases, with and without preceding character.
2021-04-23 18:10:02 -07:00
jenslody
e4f94c4c52
Adapt find_magisk_apk for A11
...
Add a fallback for Android 11's new app location.
2021-04-23 18:10:02 -07:00
vvb2060
708fe514f8
Always use mirror path
2021-04-23 16:56:23 -07:00
vvb2060
11c882380f
Add warning for custom recovery users
2021-04-23 16:56:23 -07:00
vvb2060
fb93af665d
Remove obsolete SDK_INT check
2021-04-23 16:56:23 -07:00
topjohnwu
0db405f2cc
Release new canary build
2021-04-20 03:45:40 -07:00
topjohnwu
fb8000b58b
Handle invalid SafetyNet results
...
Fix #4253
2021-04-20 03:39:47 -07:00
topjohnwu
1b9d8e068a
Remove/move unused files
2021-04-18 05:04:14 -07:00
topjohnwu
038f73a5f7
Remove Koin
...
Non static DI is bad
2021-04-18 04:46:11 -07:00
topjohnwu
649b49ff45
Don't hold resources in Settings objects
2021-04-18 04:14:43 -07:00
topjohnwu
1418bc454d
Don't hold resources in ViewModels
2021-04-18 02:12:53 -07:00
vvb2060
29cc372bfa
Fix proguard rules
2021-04-17 23:44:19 -07:00
vvb2060
69b00d3782
Update dependencies
...
Jcenter will sunset
2021-04-17 23:44:19 -07:00
topjohnwu
a328e2bf3c
Hide annoying stack traces when hidden
2021-04-17 22:35:36 -07:00
topjohnwu
4c1ea0e421
Update stub implementation
...
Prevent some potential issues
2021-04-17 22:14:54 -07:00
topjohnwu
7e01f9c95e
Minor changes
2021-04-17 19:57:47 -07:00
topjohnwu
8b28baabd7
Release new canary build
2021-04-15 23:58:38 -07:00
Clement
f49966d86e
Update french translations
2021-04-15 23:09:45 -07:00
vvb2060
f4ac7c8e7c
Ignore validating class name of isolated process name
...
Fix #4176
Co-authored-by: topjohnwu <topjohnwu@gmail.com>
2021-04-15 23:08:51 -07:00
Arbri çoçka
2b65e1ffc2
Update strings-sq
2021-04-15 05:02:12 -07:00
tzagim
c81a3fa286
Update HE translation
2021-04-15 05:01:39 -07:00
Wang Han
44f005077d
Don't copy sepolicy.rule to /persist on boot
...
* This seems to be a logic that has been abandoned for a
long time. Now we automatically choose which partition
to store sepolicy.rule. Furthermore, touching /persist is
what we should avoid doing whenever possible.
2021-04-15 05:01:03 -07:00
LoveSy
013b6e68ec
Fix perfect forwarding
2021-04-15 04:58:30 -07:00
LoveSy
95c964673d
Initialized `_root` properly
...
Fix #4204
`_root` is uninitialized for non-root nodes. And it will cause `module_node::mount` fail because it uses `root()`. Once the bug is triggered, signal 11 is received but Magisk catch all signals and therefore stuck forever.
2021-04-15 04:58:30 -07:00
topjohnwu
94ec11db58
Update snet.jar extension
...
The existing API key was revoked for some reason.
Release an updated extension jar with a new API key.
In addition, add some offline signature verification and change how
results are parsed to workaround some dumbass Xposed module "faking"
success results, since many users really don't know better.
2021-04-15 04:47:57 -07:00
topjohnwu
c4e8dda37c
Release new canary build
2021-04-09 21:47:58 -07:00
Wang Han
e136fb3a4f
Remove outdated sepolicies
...
* Support deodexed ROM: This should not be done and dexpreopt is mandatory since P
Xposed: Xposed handles them just fine, at least in the latest version 89.3
suMiscL6: For whatever audio mods, a leftover of phh time
Liveboot and suBackL6: Was for CF.lumen and LiveBoot, not needed now
* Also cleanup binder sepolicies since we allow all binder transactions.
2021-04-09 21:34:51 -07:00
topjohnwu
01b985eded
Remove more pre SDK 21 stuffs
2021-04-09 21:29:42 -07:00
topjohnwu
1f0a35f073
Set minSdkVersion to 21
2021-04-09 20:01:32 -07:00
topjohnwu
2b9b019093
It's 2021 already
2021-04-09 03:51:54 -07:00
vvb2060
10186a9e3d
Refresh flag
2021-04-09 03:30:55 -07:00
topjohnwu
89d8fea7d2
Release new canary build
2021-04-09 03:28:13 -07:00
topjohnwu
f623b98858
Update README
2021-04-09 03:23:52 -07:00
topjohnwu
632cee1613
Release Magisk v22.1
2021-04-09 03:05:57 -07:00
topjohnwu
c0f2164bc5
Magisk v22.1 release notes
2021-04-09 02:50:41 -07:00
Wang Han
f6e4a27fdd
Don't export $API when initializing shell
...
* This becomes meanless after 9c0e189
.
2021-04-09 01:47:52 -07:00
topjohnwu
257ceb99f7
SDK < 21 is EOL
2021-04-09 01:40:08 -07:00
topjohnwu
706d53065b
Rename TransitiveText
2021-04-09 01:32:37 -07:00
topjohnwu
0f95a7babe
Do not hold resources in SuperuserViewModel
2021-04-09 01:00:26 -07:00
topjohnwu
7cb2806878
Release new canary build
2021-04-06 04:13:41 -07:00
topjohnwu
9c0e18975c
Fallback to getprop when reading system props
...
Close #4153
2021-04-06 03:56:49 -07:00
Shaka Huang
3da318b48e
Fix random return value of faccessat() in x86
...
faccessat() should return 0 when success, but it returns random number with errno == 0 in x86 platform.
It’s a side effect of commit bf80b08b5f
when magisk binaries ‘corretly’ linked with library of API16 .. lol
Co-authored-by: John Wu <topjohnwu@gmail.com>
2021-04-04 03:04:09 -07:00
Shaka Huang
dfe1f2c108
Call freecon() when fgetfilecon() succeeds
2021-04-04 01:58:59 -07:00
Thomas Bertels
f42a87b51a
Fix spelling in French translation
2021-03-29 09:15:23 -07:00
ahmouse15
ab25857176
Update docs to use the Magisk Manager's revised name
2021-03-29 09:14:21 -07:00
topjohnwu
7da36079c1
Always delete existing ro props at setprop
...
Close #4113
2021-03-29 04:16:18 -07:00
topjohnwu
2bef967af1
Make systemproperties more match AOSP
2021-03-29 03:46:07 -07:00
topjohnwu
7e4194418a
Update libcxx
2021-03-28 04:55:56 -07:00
topjohnwu
aa02057895
Do not use -f flag for readlink
...
Close #4104 , fix #4098
2021-03-28 04:47:13 -07:00
topjohnwu
fb8dc07599
Release new canary build
2021-03-25 02:09:51 -07:00
topjohnwu
66e30a7723
Build libc++ ourselves
2021-03-25 01:00:10 -07:00
vvb2060
0298ab99c4
Update AGP
2021-03-24 04:43:45 -07:00
vvb2060
d11358671e
Fix isolated process display
2021-03-24 04:43:45 -07:00
vvb2060
8b5cb4c7b0
Fix #3735
2021-03-24 04:43:45 -07:00
vvb2060
aad52ae743
Fix UID removed action
2021-03-24 04:43:45 -07:00
vvb2060
8ddab84745
Don't auto hide microG
...
close #3559
2021-03-24 04:43:45 -07:00
vvb2060
6865652125
Fix process name in MagiskHide
...
close #3997
2021-03-24 04:43:45 -07:00
topjohnwu
ed4d0867e8
Make sure navigation happens on main thread
...
Fix #4044
2021-03-24 03:23:11 -07:00
Kazuki H
1c71e02454
Update Japanese translations
2021-03-24 03:10:21 -07:00
Matthew Mirvish
f332e87cab
Ensure the installer knows the API version when running from addon.d
2021-03-24 03:08:59 -07:00
osm0sis
023dbc6cb5
scripts: fix empty module cleanup
...
- should be sufficient for all basic modules, see https://github.com/topjohnwu/Magisk/issues/3119#issuecomment-704000783 for ideas for fixing it further on the daemon module-processing side
Fixes #3119
2021-03-24 03:06:57 -07:00
osm0sis
4dd3f55407
App: add versionCode to magisk_patched.img filenames
2021-03-24 03:06:57 -07:00
osm0sis
7b9a71c9af
scripts: improve boot_patch 64bit detection
...
- use existing api_level_arch_detect function
Fixes #3961
2021-03-24 03:06:57 -07:00
osm0sis
901d22cdfa
scripts: add boot_patch unpack error catching
...
- failure to unpack wasn't being caught so boot_patch would continue to build a new cpio out of nothing and attempt to repack it (identified in #4049 )
2021-03-24 03:06:57 -07:00
osm0sis
93e1266ee7
scripts: fix find_boot_image using wrong partition list on non-slot
...
- revert logic changes introduced by ec8fffe61c
which break find_boot_image on NAND devices and any others using non-standard naming supported by the A-only device boot partition name list
- despite being accepted equivalents in modern shells -n does not work on Android in some shell/env scenarios where ! -z always does
2021-03-24 03:06:57 -07:00
osm0sis
0a4e7eea41
scripts: clean up remaining Manager references
2021-03-24 03:06:57 -07:00
Shaka Huang
e3801d6965
Fix overflow
...
`totalsize` might be a big (invalid) number so instead of checking the end address we check the size of the image.
Fix #4049
2021-03-24 03:02:46 -07:00
topjohnwu
336f1687c1
Be more careful with signals
...
Fix #4040
2021-03-18 03:28:02 -07:00
topjohnwu
d4e2f2df6e
Release new canary build
2021-03-16 05:47:29 -07:00
topjohnwu
f152b4c26e
Make LiveData nullable
2021-03-16 05:34:54 -07:00
topjohnwu
bd935b0553
Cleanup fragment navigations
2021-03-16 04:58:02 -07:00
topjohnwu
a9b3b7a359
Update dependencies
2021-03-16 03:44:25 -07:00
vvb2060
7a007b342a
Correct comment
...
For file-based encryption, /data/adb is always required to encrypt
https://android.googlesource.com/platform/system/extras/+/refs/tags/android-7.0.0_r36/ext4_utils/ext4_crypt_init_extensions.cpp
68258e8444
%5E%21/
2021-03-13 21:10:02 -08:00
vvb2060
0783f3d5b6
Fix mount rules dir
...
close #4006
2021-03-13 21:10:02 -08:00
Rikka
afe3c2bc1b
Fix "rm_rf" in build.py on Windows
...
prebuilt/windows-x86_64/bin/libpython2.7.dll
prebuilt/windows-x86_64/lib/python2.7/config/libpython2.7.dll.a
These two files in NDK has read-only attribute on Windows, remove these files with Python will get "WindowsError: [Error 5] Access is denied". It will finally make "build.py ndk" unable to remove the "magisk" folder.
This commit add a onerror callback for "shutil.rmtree" which clear the "read-only" attribute and retry.
2021-03-13 17:51:39 -08:00
topjohnwu
82f8948fd4
Separate setting log functions and starting log daemon
2021-03-13 17:50:48 -08:00
Shaka Huang
b9cdc755d1
Returned fds[0] in socketpair() might be STDOUT
...
* There will be garbage output when executing `su` (#4016 )
* Failed to check root status and showing N/A in status (#4005 )
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2021-03-13 17:50:48 -08:00
topjohnwu
a6f81c66e5
Bypass stdio
2021-03-13 16:17:28 -08:00
topjohnwu
1ff45ac5f5
Proper pattern matching
...
Fix #3998
2021-03-09 04:08:34 -08:00
Alexandru Scurtu
48bde7375f
uninstaller: consistency improvements
...
since there's no more "Magisk Manager"
2021-03-09 03:05:47 -08:00
topjohnwu
0601fa3b3d
Release new canary build
2021-03-09 02:59:07 -08:00
vvb2060
d0d3c8dbfd
Disable blank issues
2021-03-09 02:51:20 -08:00
vvb2060
8057de1973
Auto close issues
2021-03-09 02:51:20 -08:00
topjohnwu
43c1105d62
Use dedicated thread for writing logfile
2021-03-09 02:40:12 -08:00
topjohnwu
6adf516b30
Release new canary build
2021-03-07 04:39:47 -08:00
topjohnwu
bf80b08b5f
Fix build script
2021-03-07 04:34:06 -08:00
topjohnwu
3e0b1df46d
Update README
2021-03-07 04:12:32 -08:00
topjohnwu
84811c80b6
Release new canary build
2021-03-07 02:51:10 -08:00
LLZN
45e0df9c57
Update strings.xml
2021-03-07 01:56:02 -08:00
vvb2060
bc51ce7c7b
Fix reboot menu
2021-03-07 01:55:19 -08:00
vvb2060
b693d13b93
Proper implementation of cgroup migration
...
https://www.kernel.org/doc/Documentation/admin-guide/cgroup-v1/cgroups.rst
https://www.kernel.org/doc/Documentation/admin-guide/cgroup-v2.rst
2021-03-07 01:55:19 -08:00
topjohnwu
39982d57ef
Fix logging implementation
...
- Block signals in logging routine (fix #3976 )
- Prevent possible deadlock after fork (stdio locks internally)
by creating a new FILE pointer per logging call (thread/stack local)
2021-03-06 13:55:30 -08:00
topjohnwu
15e27e54fb
Migrate to new endpoints
2021-03-05 05:09:25 -08:00
topjohnwu
851404205b
Update NDK to r21e
2021-03-02 23:18:44 -08:00
topjohnwu
117ae71025
Use custom class instead of std::map
2021-03-02 23:16:10 -08:00
topjohnwu
027ec70262
Patch AVB structures
...
Disable vbmeta verification in flags
2021-03-02 20:37:37 -08:00
topjohnwu
55fdee4d65
Use memmem for searching byte patterns
2021-02-28 14:37:12 -08:00
topjohnwu
0d42f937dd
Refactor magiskboot
2021-02-28 14:37:12 -08:00
vvb2060
ac8372dd26
Add cgroup2 path
...
https://android-review.googlesource.com/c/platform/system/core/+/1585101
2021-02-26 21:36:58 -08:00
vvb2060
5e56a6bbee
Fix isolated process name before Android 10
2021-02-26 21:36:58 -08:00
etmatrix
3c6c409df0
Fix #3916
2021-02-25 21:25:21 -08:00
vvb2060
d05408c89f
Delete outdated policies when refresh
2021-02-25 20:08:42 -08:00
vvb2060
ee0ec3fbfa
Use UID_REMOVED action for multi-user and shared user id compatibility
2021-02-25 20:08:42 -08:00
vvb2060
122a73e086
Always show hidden apps
2021-02-25 20:08:42 -08:00
omerakgoz34
29a9b18c4c
Update Turkish translation
2021-02-25 19:56:05 -08:00
孟武.尼德霍格.龍
1561272109
更新繁體中文
...
更新並改善繁體中文的翻譯
2021-02-25 19:55:25 -08:00
Ilya Kushnir
3e61ab0d25
Update RU strings
2021-02-25 19:54:58 -08:00
Francesco Saltori
a49dc6ccb7
Update Italian translation
2021-02-25 19:54:21 -08:00
topjohnwu
60f3d62f00
Proper synchronization
2021-02-24 02:50:55 -08:00
topjohnwu
e613855a4f
Do not check PXA header signatures
...
Fix #3876
2021-02-24 02:27:42 -08:00
sn-o-w
22662d7e03
Update Romanian
2021-02-24 02:08:46 -08:00
Arbri çoçka
6e7e5be1a2
Update values-sq
2021-02-24 02:06:42 -08:00
vvb2060
8b2ab778c9
Fix show canary channel on stable build
2021-02-24 02:06:20 -08:00
vvb2060
35f3766ecf
Update zh-rCN translation
2021-02-24 02:05:33 -08:00
Rom
995304dabb
Update French translation
2021-02-24 02:05:16 -08:00
topjohnwu
803982a271
Prevent multiple installation sessions running in parallel
2021-02-24 01:45:10 -08:00
topjohnwu
9164bf22c2
Update terminology
2021-02-23 23:56:58 -08:00
topjohnwu
911a576893
Publish new canary build
2021-02-23 04:36:49 -08:00
topjohnwu
79ee85c0f9
Update README
2021-02-23 04:22:32 -08:00
topjohnwu
483dbcdc40
Release v22.0
2021-02-23 04:09:26 -08:00
topjohnwu
a1096b5bf0
Do not run pm install on main thread
2021-02-23 04:09:13 -08:00
Chris Renshaw
5ac0e64edb
Update guides.md for system_ext
2021-02-23 03:27:36 -08:00
Lishoo
60b2624607
Update polish translations
...
Add missing strings
2021-02-23 03:26:47 -08:00
topjohnwu
d2e2847b03
Fix stub
2021-02-23 03:24:51 -08:00
topjohnwu
b9669f54f7
Update docs
2021-02-23 03:06:00 -08:00
topjohnwu
8c7bd77d33
Do not wrap twice
2021-02-23 01:49:15 -08:00
Shaka Huang
ba1ce16b8b
Fix error in pure 64-bit environment
...
In Android S preview, there’s no 32-bit libraries in x86_64 system image for emulator.
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2021-02-22 03:28:54 -08:00
topjohnwu
68090943f4
Several changes
...
- Change error message strings
- Move non-root stub error to SplashActivity
- Skip shell init in non-root stub
2021-02-22 03:28:19 -08:00
vvb2060
a4fb1297b0
Fix crash in pure 64-bit devices
2021-02-22 03:08:51 -08:00
vvb2060
860a05abf2
Simplify UpdateChannel
2021-02-22 03:08:51 -08:00
vvb2060
8bb2f356c0
Allow offline restore app
2021-02-22 03:08:51 -08:00
vvb2060
4950020635
Prevent dot in the first position again
2021-02-22 03:08:51 -08:00
vvb2060
0a6140c6eb
Try install with root first
2021-02-22 03:08:51 -08:00
vvb2060
bba2ac8817
Add unsupport env check
2021-02-22 03:08:51 -08:00
topjohnwu
331b1f542f
Use standard Android APIs for install and launch
2021-02-20 20:12:35 -08:00
topjohnwu
ccb55205e6
Fix pre 21 support
2021-02-20 03:38:39 -08:00
topjohnwu
9cc91b30b3
Fix #3871
2021-02-20 02:49:43 -08:00
grmasa
e836caf31e
Update Greek translation
2021-02-20 01:51:39 -08:00
Lishoo
beaa1e5be2
Add missing strings and small updates.
2021-02-20 01:51:02 -08:00
Lishoo
ea545bae26
Update polish translations
2021-02-20 01:50:44 -08:00
topjohnwu
1c9ec2df45
Publish new canary build
2021-02-14 13:43:24 -08:00
vvb2060
b76c80e2ce
Fix apex path
2021-02-14 13:37:38 -08:00
topjohnwu
236990f4a3
Fix stub app crashing
2021-02-14 13:37:13 -08:00
topjohnwu
1ed32df20d
Publish new canary build
2021-02-13 17:26:53 -08:00
topjohnwu
8476eb9f4b
Avoid patching vendor_boot.img
2021-02-13 17:15:04 -08:00
JoanVC100
735af7843b
Add new ca-strings
2021-02-13 17:09:46 -08:00
MC Naveen
ded73e958b
✨ Added Tamil Translation
2021-02-13 17:09:28 -08:00
Ooggle
6dcb84d4f4
French translation of newest commit
2021-02-13 17:08:53 -08:00
topjohnwu
501bc9f438
Restore init from backup rather than symlink
...
Because of course Samsung don't follow AOSP norms.
I mean, why would they?
2021-02-13 16:43:06 -08:00
topjohnwu
f88e812b63
Move behavior to XML
2021-02-13 15:26:32 -08:00
Tornike Khintibidze
be6386c410
Updated Georgian translation
2021-02-12 03:59:35 -08:00
Didgeridoohan
2af4fd17c4
Minor fixes and changes to Swedish transaltions
2021-02-12 03:59:07 -08:00
Mikael Bjurström
f870418bd0
Update Swedish translation
2021-02-12 00:07:40 -08:00
vvb2060
00659e4795
Hide OTA option on virtual A/B devices
2021-02-12 00:07:15 -08:00
Jose Manuel Estrada-Nora Muñoz
cdda10207e
Spanish strings
2021-02-11 23:32:24 -08:00
Ilya Kushnir
701700279f
Update RU strings
2021-02-11 23:32:04 -08:00
alex26052005
a9d804724a
Update strings.xml
...
Updated German language
2021-02-11 23:31:04 -08:00
DanGLES3
e033a9ab47
Update Portugues Brazilian translation
2021-02-11 23:30:35 -08:00
kubalav
059e5fb8aa
Update Slovak translation
2021-02-11 23:28:49 -08:00
vvb2060
a78f255928
Update zh-rCN translation
2021-02-11 23:25:24 -08:00
AndroPlus
1d10e69288
Update Japanese translation
2021-02-11 23:23:36 -08:00
topjohnwu
63590d379c
Update hide icon strategy
2021-02-11 22:38:41 -08:00
topjohnwu
5f63e88984
Hide icons when things don't fit
2021-02-11 05:08:40 -08:00
topjohnwu
75584e2b19
App string resources overhaul
2021-02-11 02:34:27 -08:00
vvb2060
1426ee2ebd
Fix Android build version sdk in script
2021-02-10 22:22:50 -08:00
topjohnwu
b6643b7bfc
Publish new canary build
2021-02-07 21:39:00 -08:00
Hen Ry
721dfdf553
Added translation of new strings
2021-02-07 17:42:33 -08:00
topjohnwu
2963747d14
Fix LZ4_LG format decompression
...
Fix #3802 , fix #3722 , fix #3770 , fix #3635 , fix #3787 , close #3812
2021-02-07 17:40:59 -08:00
topjohnwu
e7350d5041
Fix unable to patch images when app is hidden
2021-02-07 06:42:06 -08:00
topjohnwu
f37e8f4ca8
Fix boot image patching
2021-02-07 01:54:08 -08:00
topjohnwu
594c2accc0
Update dependencies
2021-02-05 04:41:01 -08:00
topjohnwu
7acfac6a91
Publish new canary build
2021-01-30 12:54:51 -08:00
Laz M
0646f48e14
[README] Warn users that the official website is github
...
Google puts a number of cheeky looking websites in the results for Magisk.
I only found out they were unofficial is though issue #3435 . This deserves to be shown more prominently.
2021-01-30 11:59:39 -08:00
tzagim
37565fd067
Fix TYPOs
2021-01-30 11:58:43 -08:00
vvb2060
26b2e7dc5d
Care version code changes
2021-01-30 11:58:10 -08:00
vvb2060
c3313623e4
Fix release build
2021-01-30 11:58:10 -08:00
topjohnwu
2089223690
Fix #3785
2021-01-30 11:51:15 -08:00
topjohnwu
52e1b84d41
Symlink pre API 21
2021-01-30 01:12:49 -08:00
topjohnwu
8794141b7f
Support super old emulators
2021-01-30 00:56:16 -08:00
topjohnwu
f6126dd20e
Support Shortcuts pre API 26
...
Close #3778
2021-01-29 23:16:09 -08:00
topjohnwu
18acfda99b
Remove Windows NDK symlink
...
https://github.com/actions/virtual-environments/pull/2343
2021-01-29 05:43:41 -08:00
topjohnwu
bec5edca84
Avoiding using shell I/O
2021-01-29 05:15:22 -08:00
topjohnwu
6fb20b3ee5
Proper proguard rules
2021-01-27 04:56:39 -08:00
topjohnwu
eaf4d8064b
Also download to external storage
2021-01-27 04:09:07 -08:00
topjohnwu
2a5f5b1bba
Workaround zip extraction bug on older devices
2021-01-27 03:00:09 -08:00
topjohnwu
c538a77937
Tweak build configs and scripts
2021-01-27 02:36:32 -08:00
sominn
aa9e7b1ed1
Update strings.xml
...
CS string update
2021-01-27 01:00:10 -08:00
Arbri çoçka
a3066eddab
Fix string in values-sq
2021-01-27 00:59:49 -08:00
Arbri çoçka
d1729fa787
Fix string in values-sq
2021-01-27 00:59:49 -08:00
vvb2060
93961dde2c
Fix version on continuous build
2021-01-27 00:54:11 -08:00
topjohnwu
1024e68eb6
Remove class mapping in full APK
2021-01-26 07:27:35 -08:00
topjohnwu
6ae2c9387d
Use stub APK hiding method for Android 5.0+
...
At the same time, disable app hiding on devices lower than 5.0
to simplify the logic in the app. By doing so, a hidden app always
implies running as stub.
2021-01-26 07:27:35 -08:00
topjohnwu
fba83e2330
Support stub APK loading down to Android 5.0
2021-01-26 07:27:35 -08:00
topjohnwu
f1295cb7d6
Fix root on Android 7.0 and lower
2021-01-26 02:16:11 -08:00
topjohnwu
dc61dfbde6
Cache update check results
2021-01-25 04:13:08 -08:00
topjohnwu
21466426da
Some code cleanup
2021-01-25 03:44:38 -08:00
topjohnwu
3f0136362b
Move nand flash handling into boot_patch.sh
2021-01-25 03:37:41 -08:00
topjohnwu
e92d77bbec
Some optimizations
2021-01-25 03:02:43 -08:00
topjohnwu
07bd36c94b
Fix patching files
...
Fix #3765
2021-01-25 02:24:12 -08:00
topjohnwu
b1dbbdef12
Remove unneeded busybox redirection
2021-01-25 00:23:42 -08:00
topjohnwu
3e479726ec
Fix legacy rootfs devices
2021-01-25 00:19:10 -08:00
vvb2060
4cc41eccb3
Skip download notes when loading notes url
2021-01-24 21:02:51 -08:00
vvb2060
8f08ae59ac
Fix permission
2021-01-24 21:02:43 -08:00
vvb2060
e8d4e492d6
Fix CHANGELOG_URL
2021-01-24 21:02:37 -08:00
topjohnwu
b8090a8e18
Ensure cwd is writable in module scripts
...
Close #3763
2021-01-24 20:58:30 -08:00
topjohnwu
c609a01e55
Proper shortcut name
2021-01-24 08:00:17 -08:00
Wagg13
c97fb385cd
New update values-pt-rBR
...
update brazilian strings.xml
2021-01-24 07:36:07 -08:00
LLZN
da6c57750e
correction czech translat
...
change and fix some strings after trying a new version of the application (v8.0.6)
2021-01-24 07:35:49 -08:00
topjohnwu
6951d926f7
Rename app name to just Magisk
2021-01-24 07:35:00 -08:00
topjohnwu
6623195bd5
Cleanup scripts
2021-01-24 07:24:13 -08:00
topjohnwu
ec31bb9a82
Rename scripts
2021-01-24 07:18:14 -08:00
vvb2060
8618cc383a
Fix install modules
...
Fix #3759
2021-01-24 07:03:19 -08:00
vvb2060
4b01e3a3c7
Cleanup more kotlin stuffs
2021-01-24 07:03:06 -08:00
vvb2060
7f748c23c1
Use Java debugger
2021-01-24 07:02:44 -08:00
vvb2060
963d248cc7
Rename apk to be uninstaller
2021-01-24 07:02:36 -08:00
topjohnwu
657056e636
Cache changelog files
2021-01-24 06:55:43 -08:00
topjohnwu
9d5efea66e
Remove ManagerJson
...
Everything is now Magisk
2021-01-24 05:14:46 -08:00
topjohnwu
658d74e026
Update home fragment
2021-01-24 00:02:49 -08:00
vvb2060
5113f6d375
Fix stop magiskhide
2021-01-23 18:13:15 -08:00
vvb2060
96405c26d0
writeTo has closed InputStream
2021-01-23 18:12:19 -08:00
vvb2060
4ea5f34bf3
Remove unused action
2021-01-23 18:11:08 -08:00
vvb2060
dbd13a2019
Clean code
2021-01-23 18:10:26 -08:00
vvb2060
06773235da
Fix Windows build
2021-01-23 18:06:01 -08:00
vvb2060
e57556a8af
Use ro.kernel.qemu to check emulator
2021-01-23 18:05:38 -08:00
vvb2060
b54b78c29d
Fix prevent dot in the first position
2021-01-23 17:31:18 -08:00
vvb2060
317336f771
Add isolated processes log
2021-01-23 17:31:11 -08:00
topjohnwu
b4e52f6135
Better development workflow
2021-01-23 16:50:55 -08:00
topjohnwu
f2ca042915
Fix script for handling .apex files
2021-01-23 16:09:30 -08:00
topjohnwu
1060dd2906
Random refactoring
2021-01-23 13:26:28 -08:00
topjohnwu
2e0f7a82fa
More complete stub sources
2021-01-22 20:45:37 -08:00
topjohnwu
5798536559
Remove unnecessary hacks
2021-01-22 20:25:37 -08:00
topjohnwu
ab9a83c82f
Bump target SDK to 30
2021-01-22 05:03:33 -08:00
topjohnwu
c87fdbea0f
Fix erroneous stream close
2021-01-22 03:07:39 -08:00
topjohnwu
ec8fffe61c
Merge Magisk install zip into Magisk Manager
...
Distribute Magisk directly with Magisk Manager APK. The APK will
contain all required binaries and scripts for installation and
uninstallation. App versions will now align with Magisk releases.
Extra effort is spent to make the APK itself also a flashable zip that
can be used in custom recoveries, so those still prefer to install
Magisk with recoveries will not be affected with this change.
As a bonus, this makes the whole installation and uninstallation
process 100% offline. The existing Magisk Manager was not really
functional without an Internet connection, as the installation process
was highly tied to zips hosted on the server.
An additional bonus: since all binaries are now shipped as "native
libraries" of the APK, we can finally bump the target SDK version
higher than 28. The target SDK version was stuck at 28 for a long time
because newer SELinux restricts running executables from internal
storage. More details can be found here: https://github.com/termux/termux-app/issues/1072
The target SDK bump will be addressed in a future commit.
Co-authored with @vvb2060
2021-01-22 02:29:54 -08:00
topjohnwu
61d52991f1
Update BusyBox
2021-01-21 00:35:22 -08:00
topjohnwu
9100186dce
Make emulator direct install env fix
2021-01-18 13:32:10 -08:00
topjohnwu
d2bc2cfcf8
Install both 32 and 64 bit binaries
2021-01-18 12:37:08 -08:00
topjohnwu
5a71998b4e
Stop embedding magisk in magiskinit
2021-01-18 04:25:26 -08:00
topjohnwu
42278f12ff
Fix typo in init daemon
2021-01-18 04:13:54 -08:00
topjohnwu
f5593e051c
Update README
2021-01-17 06:19:56 -08:00
topjohnwu
a27e30cf54
Update release notes
2021-01-17 06:08:15 -08:00
topjohnwu
79140c7636
Proper xxread and xwrite implementation
2021-01-17 01:42:45 -08:00
topjohnwu
1f4c595cd3
Revert to old `su -c` behavior
2021-01-16 23:59:31 -08:00
topjohnwu
b5b62e03af
Fix copySepolicyRules logic
2021-01-16 21:45:45 -08:00
topjohnwu
67e2a4720e
Fix xxread false negatives
...
Fix #3710
2021-01-16 21:43:53 -08:00
topjohnwu
f5c2d72429
Also log pid and tid
2021-01-16 16:10:47 -08:00
topjohnwu
2f5331ab48
Update README
2021-01-16 05:02:39 -08:00
topjohnwu
7f8257152f
Add v21.3 release notes
2021-01-16 04:55:44 -08:00
topjohnwu
0cd80f2556
Update app changelog
2021-01-16 04:42:14 -08:00
rydwhelchel
1717387876
Grammatical changes to the install docs
2021-01-15 21:32:29 -08:00
Mspy1
109363ebf6
Fixed typo
2021-01-15 21:31:58 -08:00
LLZN
716c4fa386
new update values-cs
...
update czech strings.xml
2021-01-15 21:31:17 -08:00
Arbri çoçka
9a09b4eb20
fix strings-sq
2021-01-15 21:29:53 -08:00
Rikka
95a5b57265
Remove "Flashing" overlay
...
Fix #3579 , fix #3250
2021-01-15 21:28:59 -08:00
topjohnwu
13fbf397d1
Isolated processes might still be hide-able
2021-01-15 20:22:49 -08:00
vvb2060
20be99ec8a
Restore mistakenly deleted codes
2021-01-15 19:59:55 -08:00
topjohnwu
04c53c3578
Legacy SAR: use a simpler method to detect is_two_stage
2021-01-15 02:44:40 -08:00
topjohnwu
51bc27a869
Avoid F2FS like a plague
2021-01-15 02:24:11 -08:00
topjohnwu
71b083794c
Maintain global mount list
2021-01-14 21:14:54 -08:00
topjohnwu
b100d0c503
Revert DTB fstab changes
2021-01-14 19:48:00 -08:00
topjohnwu
76061296c9
Let MagiskBoot handle dtb fstab patching
2021-01-14 06:20:12 -08:00
topjohnwu
bb303d2da1
Remove old unused code
2021-01-14 05:59:53 -08:00
topjohnwu
c91c070343
Re-enable DTB table rebuilding
2021-01-14 05:45:05 -08:00
topjohnwu
aec06a6f61
Get proper total image size
2021-01-14 03:55:27 -08:00
topjohnwu
e8ba671fc2
Guard all injection features behind a global flag
2021-01-13 20:07:23 -08:00
topjohnwu
1860e5d133
Dynamically find libselinux.so path
2021-01-13 19:41:57 -08:00
topjohnwu
f2cb3c38fe
Update mmap implementation
...
Always map memory as writable, but private when read-only
2021-01-12 22:50:55 -08:00
topjohnwu
9a28dd4f6e
Implement MagiskHide through code injection
2021-01-12 03:28:00 -08:00
topjohnwu
d2acd59ea8
Minor code refactoring
2021-01-12 00:07:48 -08:00
topjohnwu
79dfdb29e7
Minor tweaks for patching tar files
2021-01-11 19:47:36 -08:00
topjohnwu
eb21c8b42e
Code cleanups
2021-01-11 02:19:10 -08:00
topjohnwu
541bb53553
Update links in README
2021-01-10 20:36:58 -08:00
Hen Ry
fe8997efae
Fix
2021-01-10 20:17:20 -08:00
Arbri çoçka
23455c722c
fix in Values-sq
2021-01-10 20:16:57 -08:00
topjohnwu
5ce29c30d2
Fix sepolicy copying
2021-01-10 20:16:02 -08:00
topjohnwu
70d67728fd
Add global toggle for ptrace monitor
2021-01-10 19:27:54 -08:00
topjohnwu
e546884b08
Remove isolated process handling in ptrace
...
Impossible to achieve only through ptrace
2021-01-10 17:18:42 -08:00
topjohnwu
b36e6d987d
Reorganize MagiskHide code
...
Prepare for zygote injection hiding
2021-01-10 17:11:00 -08:00
topjohnwu
53c3dd5e8b
Auto track JNI method hooks
2021-01-10 05:07:17 -08:00
topjohnwu
da723b207a
Allow 3rd party code to load pre-specializing
...
Magisk's policy is to never allow 3rd party code to be loaded in the
zygote daemon process so we have 100% control over injection and hiding.
However, this makes it impossible for 3rd party modules to run anything
before process specialization, which includes the ability to modify the
arguments being sent to these original nativeForkAndXXX methods.
The trick here is to fork before calling the original nativeForkAndXXX
methods, and hook `fork` in libandroid_runtime.so to skip the next
invocation; basically, we're moving the responsibility of process
forking to our own hands.
2021-01-10 01:25:30 -08:00
topjohnwu
e050f77198
Don't hook SystemProperties#set
...
Doesn't seem necessary
2021-01-09 20:39:59 -08:00
topjohnwu
540b4b7ea9
Update pre/post hooks implementation
2021-01-09 17:41:25 -08:00
topjohnwu
bbef22daf7
More macro magic to automate more code
2021-01-09 04:28:26 -08:00
topjohnwu
9ed110c91b
Add JNI hooks to critical methods
2021-01-08 05:25:44 -08:00
topjohnwu
a30d510eb1
Use xHook to hook functions in PLT
2021-01-08 00:53:24 -08:00
topjohnwu
ef98eaed8f
Proper injection entry and unloading
2021-01-06 23:59:05 -08:00
topjohnwu
2a257f327c
Sanitize /proc/PID/environ
2021-01-06 23:41:37 -08:00
topjohnwu
4060c2107c
Add preliminary zygote code injection support
...
Prototyping the injection setup and a clean "self unloading" mechanism.
2021-01-06 22:21:17 -08:00
topjohnwu
cd23d27048
Fix remote_write implementation
2021-01-06 21:56:29 -08:00
topjohnwu
18b86e4fd2
Update Android.mk for test binary
...
Make Android Studio happy
2021-01-05 00:01:02 -08:00
topjohnwu
5f2e22a259
Support remote function call with ptrace
...
End up not used for anything, but keep it for good
2021-01-02 21:29:45 -08:00
topjohnwu
4e97b18977
Move libsystemproperties to external
2020-12-31 15:06:19 -08:00
topjohnwu
f9bde347bc
Convert indentation to spaces
...
The tab war is lost
2020-12-30 22:11:24 -08:00
Billy Laws
947a7d6a2f
Support rootwait cmdline parameter on legacy SAR
...
On devices where the primary storage is slow to probe it makes sense to
wait forever for the system partition to mount, this emulates the
kernel's behaviour when waiting for rootfs on SAR if the rootwait
parameter is supplied.
This issue was encountered with some SD cards on the Nintendo Switch.
2020-12-30 16:43:28 -08:00
Björn Engel
872ab2e99b
Change translation for next
...
Nächste sounds a little bit strange.
2020-12-30 16:41:22 -08:00
kubalav
90b8813bb7
Fixed typo
2020-12-30 16:41:01 -08:00
Arbri çoçka
88d0f63294
Fix text in strings_sq
2020-12-30 16:40:47 -08:00
topjohnwu
79fa0d3a90
Hide selection improvements
2020-12-30 16:40:22 -08:00
topjohnwu
8e61080a4a
Preparation for hiding isolated processes
2020-12-30 15:55:53 -08:00
topjohnwu
3f9a64417b
Disable gradle daemon on Windows CI
2020-12-29 02:46:57 -08:00
topjohnwu
eb959379e8
Prevent resource ID clash
2020-12-29 02:39:47 -08:00
topjohnwu
41a644afb9
Open source stub APK loader
...
Close #3537
2020-12-29 01:44:02 -08:00
topjohnwu
6b42db943d
Better bug report details
2020-12-28 17:03:20 -08:00
topjohnwu
1c325459eb
Only run CI when it matters
2020-12-28 16:38:25 -08:00
John Wu
6d88d8ad95
Add issue templates
2020-12-28 16:26:10 -08:00
topjohnwu
246997f273
Update links
2020-12-28 15:58:53 -08:00
topjohnwu
b6144ae582
Add v21.2 release notes
2020-12-28 15:35:09 -08:00
Arbri çoçka
afe17c73b4
Update strings.xml
...
Fix same text in Values-sq
2020-12-28 15:29:27 -08:00
topjohnwu
b51b884fc7
Fix module installs in recovery
...
Close #3494
2020-12-28 00:25:01 -08:00
topjohnwu
d3e4b29e62
Update README.md
2020-12-27 22:36:03 -08:00
dark-basic
24059e7403
Update Stub-es version
2020-12-27 22:09:03 -08:00
dark-basic
107a2a6682
Update String-es
2020-12-27 22:08:34 -08:00
Arbri çoçka
56b4ab6672
Fix any text in strings sq
2020-12-27 22:07:44 -08:00
topjohnwu
4662454938
More attempts to fix gradle cache on Windows
2020-12-27 20:13:50 -08:00
topjohnwu
db4f78d463
Unblock signals before executing commands
2020-12-27 15:05:39 -08:00
topjohnwu
880de21596
Update Github Actions
...
Disable gradle daemon on Windows and always upload artifacts
2020-12-27 04:02:20 -08:00
topjohnwu
622dd84c9e
Fix uninstaller zip
2020-12-26 22:45:05 -08:00
topjohnwu
f983bfc883
Embed keys into dex files
2020-12-26 21:33:30 -08:00
topjohnwu
45cdb3fdb0
Update dependencies
2020-12-26 17:05:12 -08:00
topjohnwu
9a707236b8
Move signing code into main app sources
2020-12-26 17:03:10 -08:00
topjohnwu
e9e6ad3bb0
Sign zips with apksigner
2020-12-26 16:04:41 -08:00
topjohnwu
ab78a81d15
Fix GitHub actions
2020-12-25 15:54:47 -08:00
John Wu
18340099b7
Add GitHub actions
...
Enable GitHub actions to run CI on all 3 platforms
2020-12-25 15:01:02 -08:00
topjohnwu
a013696a41
Default to config.prop in buildSrc
2020-12-25 13:03:25 -08:00
topjohnwu
8a2a6d9232
Make versionCode unconfigurable
2020-12-25 05:34:15 -08:00
topjohnwu
12aa6d86e4
Make config.prop optional
2020-12-24 04:46:31 -08:00
topjohnwu
7d08969d28
Fix strings
2020-12-23 01:33:46 -08:00
Fs00
dda4aa8488
Translate missing Italian strings
2020-12-22 23:33:20 -08:00
binarynoise
cdaef3d801
Update install.md
...
I wanted to share my experiences with rooting my S10e.
2020-12-22 23:32:53 -08:00
amninder singh
9159166128
Update strings.xml
...
Updating strings.xml
regarding #3566 adding punjabi translation
2020-12-22 23:32:01 -08:00
Arbri çoçka
dc0882e043
fixing some errors in sq strings
2020-12-22 23:31:40 -08:00
amninder singh
c811f015ef
Added Punjabi Translation
...
- Written in Gurmukhi Script containing different foreign punctuations both inscript and Phonetic
2020-12-22 23:31:12 -08:00
nkh0472
d8f0b66fe1
Improve Correctness and Clarity of guides.md
2020-12-22 23:30:37 -08:00
Mohd Faraz
dc3d57deba
utils_functions: Added a check for the system_root
...
now on addon while flashing recovery usign mount point /system_root by which this is causing a flashing error.
Let's first check and unmount /system_root if mounted
Signed-off-by: Mohd Faraz <androiabledroid@gmail.com>
2020-12-22 23:30:14 -08:00
topjohnwu
d089698475
Don't use root for logging getprop
...
Might contain sensitive info that shouldn't be shared
2020-12-19 23:09:36 -08:00
vvb2060
8ed2dd6687
Skip query for log files and patched boot file
2020-12-19 22:26:10 -08:00
vvb2060
50305ca1fe
Support save manager log
2020-12-19 22:25:44 -08:00
vvb2060
3e91567636
Add a suffix to magisk_patched.img
...
prevent it from being used as input file
2020-12-19 21:53:16 -08:00
vvb2060
0b4dd63d36
Stub module always use release build
2020-12-19 21:02:05 -08:00
vvb2060
38d0f85deb
Avoid unnecessary builds
2020-12-19 15:57:11 -08:00
vvb2060
c5b452f369
Get boot config properly
...
https://android.googlesource.com/platform/system/core/+/refs/tags/android-11.0.0_r16/fs_mgr/fs_mgr_boot_config.cpp#93
2020-12-19 15:55:33 -08:00
vvb2060
6ce9225f52
Check block dev ro status
...
magisk is shared object, use static busybox instead
2020-12-19 14:12:12 -08:00
vvb2060
13a8820603
Double check $DATA_DE
2020-12-19 14:08:32 -08:00
vvb2060
503997a09a
Trim out \r
2020-12-19 14:08:06 -08:00
vvb2060
17efdff134
remove_system_su only on recovery mode
...
We may mount su to /system/bin/su
2020-12-19 13:59:08 -08:00
vvb2060
984f32f994
Move copy_sepolicy_rules to manager
...
We don’t need it when patch boot
2020-12-19 13:58:53 -08:00
topjohnwu
eee7f097e3
Make post-fs-data scripts block at most 35 secs
2020-12-17 16:54:53 -08:00
topjohnwu
086059ec30
Make sure boot stages are mutually exclusive
2020-12-15 03:40:37 -08:00
topjohnwu
7ff22c68c7
Only try to install APK when no manager is active
2020-12-09 02:15:16 -08:00
topjohnwu
1232113772
Update preference migration implementation
...
Only try to read preference through content provider when the app
is fresh install and a previous package ID is set. Also catch all
Exceptions to prevent crashing the app.
This prevents malicious settings injection and crashes when multiple
manager is installed.
Fix #3542
2020-12-09 02:07:58 -08:00
vvb2060
039d4936cb
Disable superuser fragment properly
2020-12-09 01:16:30 -08:00
topjohnwu
784dd80965
Update MediaStoreUtils
2020-12-09 01:15:56 -08:00
vvb2060
1ffe9bd83b
Fix update channel without description on release build
2020-12-09 00:40:33 -08:00
topjohnwu
0c28b23224
Fix install_module command
2020-12-09 00:37:15 -08:00
vvb2060
ec1af9dc1e
Delete useless arrays
2020-12-09 00:17:58 -08:00
vvb2060
ff4cea229a
Check environment on emulator
...
We need to test modules on emulator.
2020-12-09 00:16:27 -08:00
vvb2060
3f81f9371f
Disable installation while downloading metadata
2020-12-09 00:16:13 -08:00
vvb2060
60e89a7d22
Ignore manager not installed state
2020-12-09 00:15:58 -08:00
vvb2060
c50daa5c9e
Allow restore boot when no network
2020-12-09 00:15:41 -08:00
topjohnwu
58d00ab863
Remove some warnings
2020-12-07 00:06:02 -08:00
topjohnwu
ce916459c5
Fix strings
2020-12-07 00:04:41 -08:00
Antikruk
4094d560ab
Belarusian update
2020-12-06 23:50:33 -08:00
RikkaW
4dbf7eb04b
Fix spacing in module filter list
2020-12-06 23:49:23 -08:00
RikkaW
a39577c44d
Fix extra spacing in module list
2020-12-06 23:49:23 -08:00
osm0sis
125ee46685
scripts: fix find_manager_apk
...
- the strings fallback was broken when the preceding character changed from 5 to ! recently, this new regex should cover any preceding character going forward
2020-12-06 23:49:03 -08:00
osm0sis
ce84f1762c
scripts: fix sloppy/unpredictable `cmd && this || that` statements
...
- be a bit more POSIX to avoid any potential issues when full shell stdout/err are redirected
- actual logic chains remain unchanged
2020-12-06 23:48:43 -08:00
Hafitz Setya
a687d1347b
Tidying up IN
2020-12-06 23:48:01 -08:00
Arbri çoçka
6d9db20614
Create strings.xml
2020-12-06 23:46:18 -08:00
topjohnwu
c62dfc1bcc
Make logging less error prone
2020-12-06 23:09:24 -08:00
topjohnwu
aabe2696fe
Cleanup implementations
2020-12-06 03:07:47 -08:00
topjohnwu
ae0d605310
Make sure patch_rootdir does not cause crashes
2020-12-06 02:19:57 -08:00
topjohnwu
2a694596b5
Better error handling and logging
2020-12-05 10:23:49 -08:00
topjohnwu
ff0a76606e
Detect 2SI after system_root mount on legacy SAR
2020-12-04 03:06:21 -08:00
topjohnwu
dead74801d
Setup log file when manually starting daemon
2020-12-04 01:07:47 -08:00
topjohnwu
ab207a1bb3
va_list cannot be reused on x86
2020-12-03 20:53:19 -08:00
topjohnwu
f152e8c33d
Directly log to log file
2020-12-03 20:15:18 -08:00
topjohnwu
797ba4fbf4
Make sure all logging ends with newline
2020-12-02 00:55:22 -08:00
topjohnwu
a848f10bba
Update Kotlin
2020-11-23 12:35:24 -08:00
topjohnwu
552ec1eb35
Header v3 does not have name entry
2020-11-20 22:52:09 -08:00
topjohnwu
1385d2a4f4
Fix strings
2020-11-19 23:34:02 -08:00
RikkaW
3b5c9abf7a
Remove filterTouchesWhenObscured in Magisk dialog
...
Fix #3363
2020-11-19 23:32:23 -08:00
tzagim
e0fa032bd3
Update HE strings and fix typos
2020-11-19 23:29:47 -08:00
omerakgoz34
7b69650fcd
app: Update Turkish translations
2020-11-19 23:27:54 -08:00
kubalav
08a8df489f
Slovak language formating
2020-11-19 23:27:07 -08:00
cristisilaghi
9f35a8a520
Update Romanian
2020-11-19 23:26:38 -08:00
RikkaW
0df891b336
Handle window insets with a new way
...
For example, switching pages in home should only have scale and alpha animations, but a "translate y" animation shows. This is because Data Binding is triggered later (like "in the next frame"), causing the animation runs before view attribute changes.
This commit introduces WindowInsetsHelper class and use it to handle all window insets. With the help of LayoutInflaterFactory from the previous commit, we can control insets behavior by adding our attributes to the XML and anything is done by WindowInsetsHelper class.
As changes are highly coupling, this commit also contains new ItemDecoration for lists, replacing the random combination of padding and empty drawable. And "fixEdgeEffect" extension for RecyclerView, making edge effects respect padding.
2020-11-19 23:24:39 -08:00
RikkaW
385853a290
Introduce LayoutInflaterFactory
...
This add the ability touch layout XML instantiates process. And most importantly, we can access AttributeSet, making custom view attribute possible.
Some other changes requires this.
2020-11-19 23:24:39 -08:00
RikkaW
fa3ef8a1c1
Significantly simplify MagiskDialog layout
...
The goal of original implementation, wrap view again and again, seems to be use the shadow and customizable round corners from MaterialCardView. But this can be done with use MaterialShapeDrawable which used in MaterialCardView directly. This will significantly simplify the layout and MagiskDialog class.
2020-11-19 23:21:36 -08:00
RikkaW
c93ada03c7
Implement Edge-to-edge with newer APIs
...
The implementation adds a "Base" family styles, making creating themes across multiple API versions more clearer and easier.
2020-11-19 23:21:36 -08:00
topjohnwu
0064b01ae0
Trim out \r from string
...
Fix #3490
2020-11-15 06:30:29 -08:00
topjohnwu
1469b82aa2
Update README
2020-11-13 04:38:17 -08:00
topjohnwu
2d5cf8a6fe
Push release notes
2020-11-13 04:32:20 -08:00
topjohnwu
290959f74c
Fix strings resources
2020-11-13 04:22:06 -08:00
Ilya Kushnir
4d9f58ee72
Update RU strings & tidying up EN
2020-11-13 03:03:35 -08:00
topjohnwu
9241246de6
Only use MediaStore APIs on Android 11+
...
Fix #3428
2020-11-13 02:53:30 -08:00
Heimen Stoffels
58a5d52b78
Updated Dutch translation
2020-11-13 02:34:49 -08:00
Rom
2906178ac3
Update French translation
2020-11-13 02:34:21 -08:00
topjohnwu
e0afbb647b
Minor changes
2020-11-13 02:31:54 -08:00
topjohnwu
50be50cf6a
Update dependencies
2020-11-13 00:58:41 -08:00
topjohnwu
77a9d3a5bc
Upgrade AGP
2020-11-12 23:29:07 -08:00
topjohnwu
f9c7a4c933
Redirect /data/adb/magisk/busybox
...
Workaround some stupid Samsung kernel restrictions
2020-11-11 02:26:07 -08:00
topjohnwu
2b759b84b0
Properly reset string
2020-11-09 21:17:21 -08:00
topjohnwu
1e45c63ea5
Scan for zygote periodically
...
Fix #3417
2020-11-08 03:44:43 -08:00
topjohnwu
b14a260827
Offset pid_set by 1
...
PID starts at 1, not 0
2020-11-08 02:12:35 -08:00
topjohnwu
ade1597e03
Support hiding apps not installed in main user
...
Fix #2181 , close #1840
2020-11-08 01:53:18 -08:00
topjohnwu
2739d3cb67
Update PayPal link
2020-11-07 15:10:10 -08:00
cheese1
dc5e78e142
Fix German Translation Typo
2020-11-07 14:48:22 -08:00
vvb2060
e9759a5868
Update HideViewModel
2020-11-07 14:47:44 -08:00
AdiityaAndre
e7ab802498
Update Indonesian translation
2020-11-07 14:43:46 -08:00
kubalav
42672c2e27
Update Slovak translation
2020-11-07 14:43:21 -08:00
孟武.尼德霍格.龍
e65d61d313
更新繁體中文字串
...
更新繁體中文字串
2020-11-07 14:42:48 -08:00
Taras
076da5c7c4
Update Ukrainian translation
2020-11-07 14:42:11 -08:00
vvb2060
9deaf2507c
Update zh-rCN translation
2020-11-07 14:41:32 -08:00
kam821
5c114c67de
Update Polish translation
...
- Add missing strings
- Small corrections.
- Changed "Magisk Manager" translation to form which better reflects the original meaning in Polish.
2020-11-07 14:40:56 -08:00
programminghoch10
d904cb0441
Updated german translations
2020-11-07 14:40:02 -08:00
pablomh
bd1dd9d863
Fix ensure_bb by assigning the arguments propery
...
If we assign the execution output directly it will fail (tested on Android 11):
pdx201:/ # INSTALLER=/data/adb/magisk_install /data/adb/magisk_install/flash_script.sh
/data/adb/magisk_install/flash_script.sh[31]: typeset: -o: is not an identifier
Because:
local cmds=$($bb sh -o standalone -c "
for arg in \$(tr '\0' '\n' < /proc/$$/cmdline); do
if [ -z \"\$cmds\" ]; then
# Skip the first argument as we want to change the interpreter
cmds=\"sh -o standalone\"
else
cmds=\"\$cmds '\$arg'\"
fi
done
echo \$cmds")
/system/bin/sh: typeset: -o: is not an identifier
Signed-off-by: Pablo Mendez Hernandez <pablomh@gmail.com>
2020-11-07 14:39:03 -08:00
topjohnwu
afebe734b8
Fix several things regarding scripting
2020-11-07 14:36:13 -08:00
topjohnwu
e21a78164e
Properly handle factory resets
...
Close #3345
2020-11-04 04:50:04 -08:00
topjohnwu
1e0f96d0fd
Prefer platform implementation over internal
2020-11-04 04:42:02 -08:00
topjohnwu
bf650332d8
Update nanopb
2020-11-04 01:56:49 -08:00
topjohnwu
f32e0af830
Update resetprop help msg
2020-11-03 01:21:05 -08:00
topjohnwu
4c94f90e5d
Templatize function callbacks
2020-11-03 01:16:55 -08:00
topjohnwu
ffb4224640
Don't use reserved symbols
2020-11-03 01:12:33 -08:00
topjohnwu
89fff4830b
Mount proper system_root mirror in magiskd
2020-11-03 00:37:08 -08:00
topjohnwu
16e4c67992
Significantly broaden sepolicy.rule compatibility
...
Previously, Magisk uses persist or cache for storing modules' custom
sepolicy rules. In this commit, we significantly broaden its
compatibility and also prevent mounting errors.
The persist partition is non-standard and also critical for Snapdragon
devices, so we prefer not to use it by default.
We will go through the following logic to find the best suitable
non-volatile, writable location to store and load sepolicy.rule files:
Unencrypted data -> FBE data unencrypted dir -> cache -> metadata -> persist
This should cover almost all possible cases: very old devices have
cache partitions; newer devices will use FBE; latest devices will use
metadata FBE (which guarantees a metadata parition); and finally,
all Snapdragon devices have the persist partition (as a last resort).
Fix #3179
2020-11-02 23:20:38 -08:00
topjohnwu
cf47214ee4
Require Magisk v20.4 for modules
...
It has been long enough
2020-10-28 05:13:39 -07:00
topjohnwu
0feab753fb
Fix coding errors and minor changes
2020-10-28 04:17:34 -07:00
Leorize
d0b6318b90
init/mount: support for dm-verity verified root
...
This commit adds support for kernel initialized dm-verity on legacy SAR
devices.
Tested on a Pixel 2 XL with a kernel patch to initialize mappings
specified via the `dm=` kernel parameter even when an initramfs is used.
2020-10-27 03:47:50 -07:00
topjohnwu
966e23b846
magiskinit code tidy-up
2020-10-26 20:46:15 -07:00
topjohnwu
5b8a1fc2a7
Minor renames
2020-10-25 21:41:14 -07:00
topjohnwu
02ea3ca525
Headers doesn't always occupy 1 page
2020-10-25 06:25:42 -07:00
topjohnwu
0632b146b8
Add vendor boot image support to magiskboot
2020-10-25 06:09:36 -07:00
topjohnwu
1b0b180761
Fix COMPRESSED macro
...
Fix #3383
2020-10-25 05:10:19 -07:00
topjohnwu
0d11f73a1d
Handle unexpected exceptions
...
Fix #3276
2020-10-22 03:09:05 -07:00
vvb2060
533cb8eb58
Tapjacking protection
2020-10-22 02:40:47 -07:00
loading
8ac1181e9a
Update Hindi translations
2020-10-21 00:43:15 -07:00
Ilya Kushnir
5ca1892eb0
Update RU strings
2020-10-21 00:42:09 -07:00
MASVA
e32db6a0e8
Update croatian language
2020-10-21 00:41:48 -07:00
kubalav
82fff615d6
Update Slovak translation
2020-10-21 00:40:36 -07:00
Rom
24a8f0808d
Update French translation
2020-10-21 00:40:08 -07:00
vvb2060
4a7c3c06bc
Disable hide/restore when no remote info
2020-10-20 23:56:44 -07:00
vvb2060
da93bbc1fe
Fix network
2020-10-20 23:56:21 -07:00
topjohnwu
fa2dbe981e
Handle retrofit errors
2020-10-20 03:03:40 -07:00
vvb2060
ce6cceae8b
Smaller stub
2020-10-17 06:55:24 -07:00
topjohnwu
7b26e8b818
Update dependencies
2020-10-17 06:46:36 -07:00
topjohnwu
2da5fcb00b
ANDROID_HOME is deprecated
2020-10-17 06:42:34 -07:00
topjohnwu
a079966f97
Migrate to AGP 4.1.0
2020-10-17 06:32:49 -07:00
vvb2060
468796c23d
Add option to show OS apps
2020-10-17 05:57:43 -07:00
vvb2060
5833aadef5
Silence kotlin warnings
2020-10-17 05:57:35 -07:00
vvb2060
eb261c8026
Fix antlr warning
...
https://issuetracker.google.com/issues/150106190
2020-10-17 05:57:20 -07:00
vvb2060
a4c48847d1
Cancel vibration to sync with notification channel
2020-10-17 05:56:07 -07:00
vvb2060
43288be091
Prevent dot in the first position
2020-10-17 05:55:58 -07:00
vvb2060
1ad7a6fe93
Update activity display when download fails
2020-10-17 05:54:34 -07:00
topjohnwu
4e0a3f5e72
Fix compile errors
2020-10-17 04:28:20 -07:00
Davy Defaud
d7c33f647d
Fix a typo and use the proper Unicode characters
...
- fix a French typo: raccourcis → raccourci
- French orthotypography: use a thin space before a question mark, and a true (non breaking) hyphen instead of a dash.
2020-10-17 04:18:00 -07:00
topjohnwu
9087207dc0
Minor changes
2020-10-17 04:14:12 -07:00
vvb2060
2760f37e6b
Add userspace reboot
2020-10-17 03:54:51 -07:00
Miguel Cruces
3fa3426032
Spanish translations update
2020-10-17 03:54:17 -07:00
topjohnwu
2e4dc91b96
Better stub hiding experience
2020-10-17 03:40:43 -07:00
topjohnwu
aaaaa3d044
Minor refactoring
2020-10-15 00:19:11 -07:00
topjohnwu
1edc4449d5
Update lz4 to v1.9.2
...
Close #3334
2020-10-15 00:04:48 -07:00
topjohnwu
f3cd4da026
Make lz4_lg an exception of lz4_legacy
2020-10-14 23:45:06 -07:00
vvb2060
872c55207c
Add com.android.i18n to apex path
2020-10-12 01:59:41 -07:00
topjohnwu
339ca6d666
Improve magiskboot info logging
2020-10-12 01:55:33 -07:00
topjohnwu
4aeac3b8f4
Support header_version 3
2020-10-12 01:06:42 -07:00
topjohnwu
d625beb7f3
Update `--remove-modules` implementation
2020-10-11 18:30:03 -07:00
topjohnwu
735b65c50c
Update DoH implementation
2020-10-11 15:19:19 -07:00
topjohnwu
efb1eab327
Silence some warnings
2020-10-11 05:47:47 -07:00
topjohnwu
49d4785da0
Fix strings
2020-10-11 05:26:50 -07:00
RoySchutte
28e65ce383
Update strings.xml
...
I don't know who else is translating Magisk Manager, but I noticed some weird translations. Fixed a couple of them in this update.
2020-10-11 05:24:16 -07:00
Antikruk
c3b6a48373
belarusian
2020-10-11 05:23:51 -07:00
omerakgoz34
a42ebd429b
Update Turkish(TR) Translation
2020-10-11 05:22:01 -07:00
MASVA
8f89010752
Update croatian language
2020-10-11 05:20:34 -07:00
GrepItAll
105a18f719
Temporary note about OTA update no longer working
...
Added temporary note about OTA update no longer working, as this option has been disabled in newer Magisk Manager versions
2020-10-11 05:19:38 -07:00
topjohnwu
eb04ca4c4a
Make provider boot aware
...
Close #3322
2020-10-11 05:19:05 -07:00
topjohnwu
6092d7ca88
Minor cleanups
2020-10-11 05:10:02 -07:00
topjohnwu
66cad101c0
Support new canary links
2020-10-11 03:37:03 -07:00
topjohnwu
0a14f43f9c
Refactor class names
2020-10-10 22:40:57 -07:00
topjohnwu
311c1f0dfd
Switch to new repo format
2020-10-10 14:31:30 -07:00
topjohnwu
0499588107
Support androidboot.fstab_suffix cmdline flag
...
Fix #3187
2020-10-08 03:04:12 -07:00
topjohnwu
d4d837a562
Update docs and README
2020-10-08 01:13:00 -07:00
topjohnwu
fbcbb20178
Update app changelog
2020-10-08 01:06:37 -07:00
topjohnwu
0914700fc6
Fix string resources
2020-10-08 00:50:21 -07:00
vvb2060
eeced2fb5b
Only care about the main process when not expanded
2020-10-08 00:30:34 -07:00
topjohnwu
6509e3d4f5
Use ProgressDialog when restoring images
...
Close #3287
2020-10-08 00:27:16 -07:00
AdiityaAndre
317052604b
Translation: Update and improve Indonesian strings
...
* Added new strings
* Decapitalized wording
2020-10-08 00:16:29 -07:00
Wagg13
5538f7168c
Update PT-BR translation
2020-10-08 00:15:56 -07:00
vvb2060
dcb9e4cd93
Update zh-rCN translation
2020-10-08 00:15:29 -07:00
topjohnwu
d9382f59bf
Fix logical error
2020-10-08 00:14:51 -07:00
topjohnwu
403a0c770a
Fix typo
2020-10-07 20:15:23 -07:00
topjohnwu
f0f1cdc501
Disable LoggingInterceptor
2020-10-07 04:01:50 -07:00
topjohnwu
4e272b70ef
Download GitHub files through CDN
2020-10-07 04:01:03 -07:00
topjohnwu
8dc62a0232
Update docs and README
2020-10-06 05:10:19 -07:00
topjohnwu
9225b47568
Tidy up network services
...
Add jsdelivr CDN for several files
2020-10-06 04:58:46 -07:00
topjohnwu
d462873e74
Prevent UI loop on low memory device
...
Fix #3215 , close #3216
2020-10-06 02:21:57 -07:00
topjohnwu
fc19b50290
Cleanup ActivityResult callbacks
2020-10-06 02:04:19 -07:00
JoanVC100
333fe6da0e
Update catalan
2020-10-06 00:45:17 -07:00
Madis Otenurm
75fcda9f81
Estonian update
2020-10-06 00:43:31 -07:00
kam821
44ba2a9903
Update Polish translation
...
Added missing strings.
2020-10-06 00:42:48 -07:00
Fs00
2fceb1ad96
Improve accuracy and correctness of Italian translation
2020-10-06 00:41:59 -07:00
vvb2060
bacb5fa462
Truncate existing file when openOutputStream
2020-10-06 00:41:21 -07:00
topjohnwu
67f8dc494e
Properly patch vbmeta.img
...
Close #3241
2020-10-06 00:40:57 -07:00
topjohnwu
3e4caabecb
Update FAQ
2020-10-03 14:02:19 -07:00
Linus Groh
dcd5183b24
Fix two typos in v21.0 release notes
2020-10-03 04:32:08 -07:00
topjohnwu
d80c6b42a6
Update README
2020-10-03 04:28:43 -07:00
topjohnwu
64effe9385
Add v21.0 release notes
2020-10-03 03:30:22 -07:00
topjohnwu
96dd24e91d
Add changelogs and release notes
2020-10-03 02:53:10 -07:00
topjohnwu
fbb4f85ef0
Update documentation
2020-10-03 02:53:10 -07:00
topjohnwu
716f06846b
Use GitHub pages URLs for public channel JSONs
2020-10-03 02:51:51 -07:00
topjohnwu
241f2656fa
Prepare for public release
2020-10-03 02:42:02 -07:00
Jarl-Penguin
e973d49517
Fix Korean translation typo
2020-10-03 02:41:47 -07:00
Taewan Park
c3bf9a095b
Update korean translation
...
Update Magisk Manager app translation
- Korean translation updated
(Translation based on "en" strings.xml)
2020-10-03 02:03:24 -07:00
cristisilaghi
abfc28db32
Update Romanian
2020-10-03 02:02:58 -07:00
topjohnwu
8b5652ced5
Skip image padding on Pixel C
2020-09-29 02:49:10 -07:00
Vladimír Kubala
d6dbab53cd
Update Slovak translation
2020-09-28 04:47:23 -07:00
topjohnwu
46de1ed968
Better handling of data encryption
2020-09-28 04:45:56 -07:00
topjohnwu
9bebe07d5a
Better network connection observing
2020-09-27 21:21:38 -07:00
topjohnwu
ee4db43136
Update proguard rules
...
Fix #3190
2020-09-27 04:49:49 -07:00
topjohnwu
efac220998
Fix strings
2020-09-27 04:40:07 -07:00
Ludovico Latini
31026b43f4
Update strings.xml
2020-09-27 04:35:05 -07:00
Rikka
bc3fbe09f5
Update several colors in themes
...
* Change color for Mew theme
The original color looks like disabled color.
* Change color for Zapdos theme
The original colors have extremely poor readability. For yellow colors, it is difficult to balance readability and beauty, maybe remove it is a better choice?
* Change colors
- Use original colors for dark themes
- Adjust light colors
* Change colorError for dark themes
2020-09-27 04:34:38 -07:00
vvb2060
7ac55068db
Catch ActivityNotFoundException
2020-09-27 04:33:46 -07:00
topjohnwu
6abd9aa8a4
Add new --install-module command
...
Close #2253
2020-09-26 16:50:41 -07:00
topjohnwu
c91ebfbcc1
Pad images to original sizes with zero
...
Close #2005
2020-09-26 14:36:57 -07:00
topjohnwu
2f232fc670
Support modern Samsung AP.tar patching
2020-09-26 13:32:51 -07:00
topjohnwu
41f5c8d96c
Magisk Manager always have to be upgraded first
2020-09-24 03:16:43 -07:00
topjohnwu
4fd04e62af
Remove compressed ramdisk support
...
It is causing more issues than it addresses
2020-09-24 02:49:09 -07:00
Viktor De Pasquale
63a9a7d643
Fixed bottom bar not hiding on device without root
2020-09-24 00:51:08 -07:00
vvb2060
a63d6c03fd
Update dependencies
2020-09-23 20:57:19 -07:00
vvb2060
fd552e68a9
Don't hide app with uid < 10000
2020-09-23 20:57:19 -07:00
vvb2060
de4e26b488
Allow download modules when Magisk is not installed
2020-09-23 20:57:19 -07:00
vvb2060
fa3865e962
Check command result
2020-09-23 20:57:19 -07:00
vvb2060
a6950b8aca
Add failed state
2020-09-23 20:57:19 -07:00
vvb2060
8df96ff664
Fix string
2020-09-23 20:57:19 -07:00
Ilya Kushnir
8b29267ad6
Update RU strings
2020-09-23 05:08:05 -07:00
topjohnwu
0ef92a4866
Hide OTA option on Pixel devices
2020-09-23 04:49:38 -07:00
topjohnwu
85bef8fa96
Fix install fragment changelog
2020-09-23 04:49:38 -07:00
topjohnwu
ca9f9fee9a
Update device state detection
2020-09-23 04:49:38 -07:00
Viktor De Pasquale
b59e05c63e
Added a check against view being initialized in its behavior
...
The view will be simply hidden if not
2020-09-22 20:40:28 -07:00
Viktor De Pasquale
3c0630bfc0
Added forced checks on view being attached to window before performing hiding on it
2020-09-22 20:40:28 -07:00
Viktor De Pasquale
bf84dd6518
Added hiding bottom bar when magisk is not active
2020-09-22 20:40:28 -07:00
nikk
f575155a41
Fix focus on main elements in Modern UI
...
Co-authored-by: John Wu <topjohnwu@gmail.com>
2020-09-21 03:27:29 -07:00
AdiityaAndre
bd240ba48c
Update Indonesian translations
2020-09-21 03:18:29 -07:00
孟武.尼德霍格.龍
106a2bb7df
更新繁體字串
...
新增部分字串
修正部分字串標點符號
2020-09-21 03:17:52 -07:00
Rom
82bbbe05b2
Update French translation
...
According to 765b51285a
2020-09-21 03:17:08 -07:00
Vladimír Kubala
9956dc0995
Update Slovak translation
2020-09-21 03:16:44 -07:00
RikkaW
fc76673802
Black splash screen background for dark theme
2020-09-21 03:15:59 -07:00
topjohnwu
17b5291bbb
Fix Android 8.0 selinux rules
2020-09-20 14:39:11 -07:00
topjohnwu
9908dfd79a
Hide MagiskHide entry when disabled
2020-09-20 14:30:57 -07:00
topjohnwu
2dbaf9595c
Remove strokes from most cards
2020-09-17 02:27:43 -07:00
topjohnwu
9a16ab1bd7
Always show install button
...
Fix #3172
2020-09-16 23:55:50 -07:00
topjohnwu
9e5cb6cb91
Proper way to setup attr colors
2020-09-16 22:16:28 -07:00
vvb2060
8c19654d20
Update zh-rCN translation
2020-09-13 15:13:33 -07:00
RikkaW
d5a7a75d9d
Set android:windowContentOverlay to null so that there will be not "shadow" on pre-21
2020-09-13 12:40:40 -07:00
topjohnwu
851b676077
Remove custom fonts
2020-09-13 06:51:17 -07:00
topjohnwu
765b51285a
Add settings to disable DoH
...
Close #3130
2020-09-13 04:34:00 -07:00
topjohnwu
8a338de696
Hide MagiskHide pre Kitkat
2020-09-13 03:55:12 -07:00
topjohnwu
8a61ae621d
Disable DoH upon failure
2020-09-13 03:46:06 -07:00
topjohnwu
60e1e07e87
Proper SafetyNet UI databinding
2020-09-13 00:23:23 -07:00
topjohnwu
e51a3dacb9
Support theme switching pre SDK 21
2020-09-12 18:42:05 -07:00
topjohnwu
9a8a27dbb9
Do not access color attributes in background
...
Workaround with ImageView tints
2020-09-12 03:17:21 -07:00
topjohnwu
2eb001876a
Code cleanup
2020-09-11 03:17:43 -07:00
topjohnwu
b510dc51ac
Fix su request auto response
2020-09-11 03:09:01 -07:00
topjohnwu
d7f7508fa2
Move setContentView out of onCreate
2020-09-11 02:31:41 -07:00
Rom
e66b0bf3b2
Little French translation update
2020-09-10 01:13:20 -07:00
AioiLight
0555b73a19
Update strings.xml
2020-09-10 01:12:52 -07:00
RoySchutte
877a297de4
Update strings.xml
...
Fixed 1 grammatical error, and changed a string to the proper translation.
2020-09-10 01:12:17 -07:00
vvb2060
49559ec0ec
try root if adb install fail
2020-09-10 01:02:50 -07:00
topjohnwu
30e45f863d
Remove unnecessary workaround
2020-09-10 01:01:51 -07:00
topjohnwu
434efec860
Use FIFO for su request communication
...
Fix #3159
2020-09-10 00:38:29 -07:00
topjohnwu
5022f00a55
Cleanup homescreen
2020-09-08 23:40:44 -07:00
topjohnwu
8aac373ca3
Fix network status detection
2020-09-08 21:55:43 -07:00
topjohnwu
c3586fe0a5
Upstream external/selinux
...
Fix #2645
2020-09-04 19:20:08 -07:00
topjohnwu
11f254e5e5
Fix SELinux support for Android 8.0 - 10
...
Fix #3139
2020-09-04 14:42:09 -07:00
topjohnwu
c61ec2465f
Rename function to be more descriptive
2020-09-04 06:21:25 -07:00
topjohnwu
fd5ad91d26
Proper 2SI detection
2020-09-04 06:06:03 -07:00
topjohnwu
5c4c391f94
Fix typo causing rootfs device bootloops
...
Fix #3134
2020-09-04 04:43:46 -07:00
topjohnwu
4dacffd7a1
Fix some issues with selinux rules
2020-09-04 00:03:24 -07:00
topjohnwu
61599059d5
Fix typo for SAR first stage init
2020-09-03 19:17:25 -07:00
topjohnwu
f32a29911b
Properly detect 2SI init
...
Fix #2994
2020-09-02 21:20:15 -07:00
topjohnwu
b73d5753f2
Minor code cleanups
2020-09-02 02:49:32 -07:00
Simon Shi
2eee335b5f
Track more sepolicy cil files.
...
Reference: https://android.googlesource.com/platform/system/core/+/refs/tags/android-r-beta-3/init/selinux.cpp
2020-08-31 21:38:55 -07:00
topjohnwu
013a2e1336
Minor code changes
2020-08-31 04:02:47 -07:00
topjohnwu
fbaf2bded6
Patch AndroidManifest.xml properly
...
Parse and rebuild the string pool of the AXML format for patching
string in AndroidManifest.xml
2020-08-31 03:39:20 -07:00
o4x
38a34a7eeb
Add persian language
2020-08-30 12:57:03 -07:00
vvb2060
70174e093b
Optimize network status display
2020-08-30 12:56:36 -07:00
vvb2060
0333e82e86
Fix string
2020-08-30 12:46:22 -07:00
peter9811
36a8839cf8
Update strings.xml
2020-08-30 12:46:03 -07:00
peter9811
d0ed6e7fe3
Update spanish
2020-08-30 12:46:03 -07:00
孟武.尼德霍格.龍
72dfbf5e44
更新繁體中文字串
...
更新繁體字串到適用v295的版本及以後
2020-08-30 12:45:19 -07:00
topjohnwu
114a3c037f
Some minor UI tweaks
2020-08-29 22:55:18 -07:00
topjohnwu
782adc9a9f
Cleanup some styles
2020-08-29 21:42:05 -07:00
vvb2060
e0642b018d
Update zh-rCN translation
2020-08-28 04:54:32 -07:00
topjohnwu
6bd4006652
Rename method
2020-08-28 04:50:46 -07:00
topjohnwu
01efe7a4ea
100% functional manager self upgrade
...
Fix #2929
2020-08-28 04:46:05 -07:00
topjohnwu
7e133b0cf4
UI tweaks for pre API 21
2020-08-27 05:46:41 -07:00
topjohnwu
fd808bd51e
Use the correct handler
2020-08-27 04:17:21 -07:00
topjohnwu
b4e8860ee4
Only make navbar and status bar transparent on 21+
...
There is no easy way to handle insets pre 21, forget about it
2020-08-27 04:07:34 -07:00
topjohnwu
fb3f8605fd
Change to a more recognizable icon
2020-08-27 03:10:25 -07:00
topjohnwu
e394445f1b
Properly handle dialog dismiss for SafetyNet
...
Fix #3103
2020-08-26 18:54:38 -07:00
topjohnwu
ca1b0bf1ce
Fix strings
2020-08-26 18:51:22 -07:00
topjohnwu
bf5798190d
Fix dialog when toggling keyboard multiple times
2020-08-26 06:39:59 -07:00
AdiityaAndre
ca5030a646
Updated stub translation
...
* small derp in main translation
2020-08-26 06:00:00 -07:00
AdiityaAndre
e22324e434
Update and improve Indonesian translation
2020-08-26 06:00:00 -07:00
JoanVC100
e46d4ecd3e
Corrections and update ca-strings
2020-08-26 05:58:10 -07:00
topjohnwu
84f92bd661
Cleanup hide fragment code
2020-08-26 05:46:37 -07:00
vvb2060
b44dcc2da0
Fix SafetyNet
2020-08-24 06:27:05 -07:00
topjohnwu
d6062944f1
Update snet extension to prevent crashes on release builds
2020-08-24 06:24:58 -07:00
Ilya Kushnir
79f549795b
Update main RU strings
2020-08-24 04:14:03 -07:00
Ilya Kushnir
eaf7c3c486
Update stub RU strings
2020-08-24 04:14:03 -07:00
Rom
1ac379c17a
Update French translation
2020-08-24 04:12:58 -07:00
kubalav
51a4dbf263
Update strings.xml
2020-08-24 04:08:30 -07:00
kubalav
2d91bfd9e6
Update Slovak translation
2020-08-24 04:08:30 -07:00
topjohnwu
e437ffdbae
Improvements to the installation UI
...
- No longer show irrelevant options to the user
- No longer require an additional button press to start installation
2020-08-24 04:04:52 -07:00
topjohnwu
ccde8b73a2
Cleanup install screen layout
2020-08-24 00:19:08 -07:00
topjohnwu
65f88e4ae2
Remove unnecessary permissions
2020-08-23 04:36:22 -07:00
topjohnwu
354440ee8a
Fix hide manager dialog
2020-08-23 04:24:06 -07:00
topjohnwu
59106e4f52
Make sure app relaunching works after upgrade
2020-08-23 03:47:05 -07:00
topjohnwu
d76c266fbc
Add strings that will be used in stub
2020-08-23 00:12:58 -07:00
topjohnwu
31681c9c5f
Remove ProcessPhoenix
2020-08-23 00:12:58 -07:00
topjohnwu
0e5a32b476
Close streams
2020-08-22 20:33:50 -07:00
topjohnwu
a22a1dd284
Only offer shortcuts when running as stub
2020-08-22 10:51:32 -07:00
topjohnwu
27c59dbb65
Disable animations in toolbar
...
Fix #2907
2020-08-22 05:52:57 -07:00
topjohnwu
fb04e32480
Bypass external rw check in the proper location
2020-08-22 05:27:30 -07:00
topjohnwu
14a2f63b8b
Several changes for using MediaStore
...
- Change config key name so default downloads to folder 'Download'
- Always use getFile as we do not need existing file deleted
- Fallback to use File based I/O pre API 29 as officially MediaStore
APIs do not support general purpose usage. And also, it was working
fine on all devices before. If it ain't broke, don't fix it
- Show full download path in settings to make it more clear to the user
- Close streams after using them
2020-08-22 04:38:51 -07:00
vvb2060
9e81db8692
Support scoped storage
2020-08-22 04:38:51 -07:00
topjohnwu
1ed67eed35
Rename classes and fields
2020-08-21 06:45:40 -07:00
topjohnwu
abc5457136
Cleanup DownloadService
2020-08-21 06:27:13 -07:00
topjohnwu
4b238a9cd0
Add feature to create launch shortcuts
2020-08-21 03:36:12 -07:00
topjohnwu
f200d472ef
Move icon resources out of stubs
2020-08-20 06:02:22 -07:00
topjohnwu
105b2fc114
Ensure SplashActivity is ran before MainActivity
2020-08-19 05:19:24 -07:00
topjohnwu
5ed4071f74
Change ActivityExecutor signature
2020-08-19 05:19:24 -07:00
topjohnwu
551a478fdc
Fix occasional broken animation
2020-08-19 05:19:24 -07:00
topjohnwu
7c319f5fc3
Moar refactoring
2020-08-19 05:19:24 -07:00
topjohnwu
1fcf35ebeb
Do not hardcode appcompat widget classes
...
They should be handled by the theme
2020-08-19 05:19:24 -07:00
osm0sis
6d749a58c6
scripts: fix addon.d using $TMPDIR
...
/data/adb/magisk/addon.d.sh: cd: line 73: can't cd to /dev/tmp: no such file or directory
2020-08-19 02:05:58 -07:00
topjohnwu
34450cdddd
More refactoring
...
Cleanups, move classes to sane locations, etc.
2020-08-19 02:05:23 -07:00
topjohnwu
846bbb4da1
Reorganize app source code
2020-08-18 06:31:15 -07:00
topjohnwu
d7a26dbf27
Tidy up ViewEvents
2020-08-18 06:03:12 -07:00
topjohnwu
a86d5b3e61
Remove unnecessary abstractions
2020-08-18 05:03:56 -07:00
topjohnwu
b2bece9ef6
Fix resources
2020-08-18 02:53:47 -07:00
topjohnwu
f9cbf883ac
Update Kotlin
2020-08-18 01:52:05 -07:00
topjohnwu
7f225b3973
Minor MarkwonImagePlugin updates
2020-08-15 23:20:49 -07:00
孟武.尼德霍格.龍
72e7605fce
更新繁體中文字串
...
同上
2020-08-15 22:16:43 -07:00
vvb2060
a4c1ddd9f2
Use uid 2000 to install patched apk
2020-08-15 22:16:15 -07:00
cristisilaghi
ddd513110f
Update Romanian
2020-08-15 22:07:35 -07:00
topjohnwu
e33d623d40
Update dependencies
2020-08-15 05:43:28 -07:00
Rom
eec19ba9af
Update French translation
...
It should contain all new strings.
2020-08-14 03:24:07 -07:00
Mevlüt TOPÇU
413b3f394b
Update strings.xml
...
Hi,
Update Turkish language
Merge please
Thanks
2020-08-14 03:20:58 -07:00
Ilya Kushnir
88cee1212b
Update RU strings
2020-08-14 03:20:02 -07:00
vvb2060
cf25fa8ed8
Update build.gradle
2020-08-14 03:18:45 -07:00
topjohnwu
3f053b8547
Minor code changes
2020-08-14 03:17:10 -07:00
Viktor De Pasquale
79aa261ca2
Fixed manager beginning to hide immediately on field change
...
Bug was caused by lenient usage of "value" property defined in the "line item" in settings. Developer error allowed to use the internal value, that was not properly protected, in a way that did not conform with the latest "Observer" rewrite.
Additional comments were added to hopefully prevent bugs of this kind in the future. The property is now properly protected so it gives away clues that this access is considered "not cool".
2020-08-14 02:23:03 -07:00
topjohnwu
ac2a9da4c4
Fix Markdown rendering
...
Close #3074
2020-08-14 02:00:06 -07:00
Viktor De Pasquale
d8b1d79879
Fixed first title being partially obscured by toolbar
2020-08-12 04:33:00 -07:00
topjohnwu
feb0f4b7b5
Fix MagiskDialog
2020-08-12 03:33:19 -07:00
topjohnwu
6c8fe46590
Remove unused resources
2020-08-11 04:33:07 -07:00
Taras
5e3c9e5022
Update Ukrainian translation
2020-08-11 03:39:29 -07:00
Vladimír Kubala
f7f821b93c
Update Slovak translation
2020-08-11 03:39:01 -07:00
topjohnwu
36a70e995f
Remote -> Online
2020-08-11 03:36:41 -07:00
topjohnwu
537ae1a315
Cleanup setting items
2020-08-11 03:30:00 -07:00
topjohnwu
87b6bf2c26
Remove strip in settings item
2020-08-11 00:54:19 -07:00
topjohnwu
9df6b0618a
Update MagiskHide list
2020-08-10 07:05:07 -07:00
topjohnwu
c7e30ac63e
Update superuser list
2020-08-10 02:33:44 -07:00
topjohnwu
f5e547944a
Do not toggle when clicking cards
2020-08-09 22:30:38 -07:00
topjohnwu
d10680187d
Nest CardView with alpha in another FrameLayout
...
RecyclerView animator will mess with alpha when animating
Check this StackOverflow question for more info:
https://stackoverflow.com/questions/40942116/setalpha-on-onbindview-in-recyclerview-doesnt-work-on-first-display
2020-08-09 22:04:09 -07:00
topjohnwu
f5aa6a3cf8
Update module fragment
...
Update UI and logic for loading modules
2020-08-09 21:41:23 -07:00
topjohnwu
c944277e78
Use switches with 2 way binding instead of custom ImageView
2020-08-09 14:50:16 -07:00
topjohnwu
2e5402d741
Disable scroll effect for icon links
2020-08-09 13:29:18 -07:00
topjohnwu
24f6024383
More homescreen UI improvements
2020-08-09 06:52:02 -07:00
topjohnwu
15b1215972
Only show SafetyNet when GMS exists
2020-08-09 04:39:12 -07:00
topjohnwu
11222c89d4
Update SafetyNet icon
2020-08-09 03:37:34 -07:00
topjohnwu
893a8ec8d9
Strip out most StaggeredGridLayoutManager in code
2020-08-09 03:30:00 -07:00
topjohnwu
da2b00de59
Several home screen changes
2020-08-09 02:32:13 -07:00
RoySchutte
1276c28e03
Update strings.xml
2020-08-08 05:26:21 -07:00
vvb2060
e458215f27
Let isolation namespace base on app namespace
2020-08-08 05:21:03 -07:00
vvb2060
fee4031d0f
Keep disable file when module update
2020-08-08 05:19:41 -07:00
topjohnwu
0835ff88b2
Update zipsigner version
2020-08-08 05:12:02 -07:00
vvb2060
2e95d9f07e
Update to APK Signature Scheme v2
2020-08-08 05:12:02 -07:00
topjohnwu
fe2388394d
Update dependencies
2020-08-08 04:12:08 -07:00
topjohnwu
7fc9b908d4
Update Android 11 emulator support
2020-07-27 03:33:11 -07:00
classic-gentleman
0ed524f173
Test for NVIDIA/Tegra partition naming scheme first
...
Fixes https://github.com/topjohnwu/Magisk/issues/3014
2020-07-24 00:26:51 -07:00
topjohnwu
aed3ab994e
Update libsu
2020-07-24 00:26:21 -07:00
topjohnwu
5347cedfa6
Disable Jetifier
...
Jetifier does not support multi-release JARs
2020-07-23 23:12:38 -07:00
topjohnwu
5b28a713e0
Move functions around
2020-07-23 22:43:25 -07:00
topjohnwu
f1fb7404c2
Catch exceptions when loading remote modules
...
Fix #3004
2020-07-20 22:35:50 -07:00
topjohnwu
fc67c0195f
Workaround bug in AOSP code
...
Fix #2983 , https://issuetracker.google.com/issues/36984866
2020-07-20 22:22:57 -07:00
topjohnwu
2f02f9a580
Update libsu
2020-07-20 21:58:23 -07:00
topjohnwu
07f712a1ce
Always show hidden apps
2020-07-17 06:05:38 -07:00
topjohnwu
c7044b0d20
Remember show system app toggle in MagiskHide list
2020-07-17 05:32:08 -07:00
topjohnwu
15866cfba9
Fix incorrect command
...
Fix #2992
2020-07-17 05:28:18 -07:00
topjohnwu
4c2570628d
Make SettingsItems make much more sense
2020-07-17 03:02:58 -07:00
topjohnwu
113eec59f9
Request storage rw for saving logs
...
Fix #2993
2020-07-17 01:27:52 -07:00
topjohnwu
f7abc03dac
Move copy util_functions.sh from Python scripts to gradle
2020-07-17 00:44:51 -07:00
antikruk
ef3f188a2c
bel
2020-07-17 00:16:32 -07:00
topjohnwu
dd62fe89f7
Use CallbackList for collecting STDOUT in flash screen
...
Fix #2988
2020-07-17 00:13:18 -07:00
topjohnwu
ec2d7d77eb
Reduce usage of ObservableField
2020-07-15 02:52:15 -07:00
topjohnwu
6c6368fd81
Reduce usage of delegation
2020-07-15 01:21:57 -07:00
topjohnwu
ba31c6b625
Use coroutines instead of raw executors
2020-07-14 02:37:52 -07:00
topjohnwu
cad189d2dc
Remove unnecessary indirection
2020-07-12 14:37:07 -07:00
topjohnwu
7cf3da1b3b
Update implementation to use new methods
2020-07-12 14:35:21 -07:00
topjohnwu
45fabf8e03
Update SettingsItems
2020-07-12 06:15:32 -07:00
topjohnwu
2c12fe6eb2
More efficient databinding
2020-07-12 03:17:50 -07:00
topjohnwu
b41b2283f4
Rename package
2020-07-11 05:36:31 -07:00
topjohnwu
e8e7cd5008
Simply redirect isConnected ObservableField
2020-07-11 03:22:17 -07:00
topjohnwu
7873433977
Remove RxJava as dependency
2020-07-10 23:12:09 -07:00
topjohnwu
52d19d3ea2
Roll our own NetworkObserver
2020-07-10 23:12:09 -07:00
topjohnwu
6348d0a6fb
Remove more code using RxJava
2020-07-10 04:19:18 -07:00
topjohnwu
f7a650b9a4
Clear up RxJava from ViewModels
2020-07-09 05:15:53 -07:00
topjohnwu
a97d278bcd
Remove RxBus
2020-07-09 05:13:24 -07:00
topjohnwu
8647ba4729
Remove more RxJava
2020-07-09 04:49:14 -07:00
topjohnwu
4631077c49
Call the correct constructor
2020-07-09 04:40:07 -07:00
topjohnwu
18dab28c32
Remove usage of KObservableField
2020-07-08 06:14:32 -07:00
topjohnwu
8ffbffddb3
Update SuRequest handler
2020-07-08 03:13:01 -07:00
topjohnwu
f191db2fe0
Allow ViewModel to opt-out RxJava
...
Transition period
2020-07-08 01:50:28 -07:00
topjohnwu
dc8f0f6feb
Bug fixes in modules fragment
...
- Progress is not updated in upgradable modules (and can cause crash)
- EndlessRecyclerScrollListener is not reset on new query
2020-07-08 01:40:08 -07:00
topjohnwu
01a43b03bd
De-Rx ModuleViewModel
2020-07-08 01:26:45 -07:00
topjohnwu
86db0cd2cd
Load installed modules with coroutine
2020-07-07 03:37:53 -07:00
topjohnwu
ae6dd50ccd
Fix RepoUpdater force refresh bug
2020-07-07 03:18:01 -07:00
topjohnwu
77032eced1
Load repos with coroutine
2020-07-07 01:57:56 -07:00
topjohnwu
820427e93b
Have some fun with Kotlin Coroutines
2020-07-06 22:30:21 -07:00
topjohnwu
89e11c9cc8
Minor changes in flash viewmodel
2020-07-06 21:05:43 -07:00
topjohnwu
05cf53fe6f
Merge files
2020-07-06 15:40:05 -07:00
topjohnwu
97b72a5941
Revert to old SElinux rules on pre 8.0 devices
...
Fix #2910
2020-07-06 01:13:50 -07:00
topjohnwu
7922f65243
Welcome Gradle Kotlin DSL
2020-07-04 06:54:53 -07:00
topjohnwu
67f7935421
Restructure project
2020-07-04 04:09:19 -07:00
topjohnwu
9348c5bad9
Fix build script
2020-07-04 03:50:39 -07:00
topjohnwu
0f7caa66fb
Remove usage of grid layouts
2020-07-04 03:28:21 -07:00
Mexit
bd14994eb9
Update Polish translation
2020-07-04 03:01:55 -07:00
vvb2060
08818e8542
Remove force_pm_install
...
gms package verifier only checks the `notBefore` value of the certificate
2020-07-04 03:00:51 -07:00
topjohnwu
706eba329d
Add release notes to the install fragment
2020-07-04 02:55:19 -07:00
topjohnwu
f6a2b1c882
Minor gradle script changes
2020-07-02 05:01:55 -07:00
topjohnwu
c2e6622016
Update README
...
Recommend Android Studio embedded JDK again
2020-07-02 04:16:02 -07:00
topjohnwu
53904b0627
Use gradle magic to optimize resources
2020-07-02 04:02:20 -07:00
waffshappen
cef14d4576
Fix release build XLint error for translations
...
Due to the accidental safety>N<et the release build would fail with XLint complaining about a missing default translation. Correcting this to be in line with the actual translation fixes the build error.
Xlint Error in Question:
```res/values-in/strings.xml:106: Error: "safetyNet_api_error" is translated here but not found in default locale [ExtraTranslation]
<string name="safetyNet_api_error">Kesalahan API SafetyNet</string>```
2020-07-01 09:56:14 -07:00
topjohnwu
73203a55ca
Use fancy NestedScrollView for Magisk logs
2020-06-30 04:14:23 -07:00
topjohnwu
397f7326a3
Update SafetyNet UI to show evalType
2020-06-30 03:56:41 -07:00
topjohnwu
4bbd7989dd
Update snet extension
...
Receive full snet payload from extension
2020-06-30 02:24:58 -07:00
topjohnwu
a0b47f3ca3
Precompute TextView in I/O thread for performance
2020-06-29 05:26:07 -07:00
topjohnwu
89e9e7c176
Simplify UI code for Magisk logs
...
We have all texts, no need to go through recyclerview
2020-06-29 05:22:16 -07:00
topjohnwu
ddc2f317ab
Update dependencies
2020-06-29 03:58:19 -07:00
topjohnwu
867bab8513
Restart activity with fresh intent
...
Fix #2706
2020-06-29 03:30:23 -07:00
topjohnwu
b1e0c5ff38
Export MAGISKTMP so it survives exec
...
Fix #2926
2020-06-29 03:24:53 -07:00
Shaka Huang
6dbd9bfb12
Place pthread_mutex_init() before init_list()
...
Fix crash in #2900
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2020-06-28 07:06:19 -07:00
topjohnwu
3c78344812
Refactor version handling
2020-06-28 06:52:02 -07:00
Ilya Kushnir
594f268885
Update RU strings
2020-06-27 13:23:45 -07:00
Fox2Code
93d5716414
Disable Volumes keys on flash
...
- Thank Diareuse for helping me
2020-06-27 13:22:09 -07:00
Shaka Huang
4b8e92f00a
compile options should be set after evaulation process
...
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2020-06-27 04:58:08 -07:00
vvb2060
fc6ef7dd57
Show magisk update notification only when magisk is installed
2020-06-27 04:54:58 -07:00
mustafairaqi8
c881fd4964
Updated Arabic Translation
2020-06-25 10:02:15 -07:00
Viktor De Pasquale
4bcc2b2f03
Added bottom padding to hide screen
...
Close #2903
2020-06-25 10:01:37 -07:00
topjohnwu
6150055a05
Update BusyBox
2020-06-25 04:34:16 -07:00
topjohnwu
23a33b4351
Remove core only mode
...
Replaced by native safe mode
2020-06-21 15:59:06 -07:00
topjohnwu
e02386a6ac
Move install module button to the top
2020-06-21 12:53:31 -07:00
topjohnwu
099e703834
Build compatible bytecode with newer JDKs
...
Fix #2898 , close #2899
2020-06-21 02:43:32 -07:00
YFdyh000
1ededc637e
l10n: Update Chinese Simplified translations
2020-06-20 12:12:40 -07:00
topjohnwu
0850bca9d3
Update README
2020-06-20 04:58:54 -07:00
topjohnwu
6d2fd480bf
Upgrade gradle wrapper
2020-06-20 04:41:54 -07:00
vvb2060
ddf0c379be
Fix build
2020-06-20 03:03:46 -07:00
topjohnwu
45b5e89912
Remove canary debug channel
...
All canary builds will be debug only
2020-06-20 02:45:02 -07:00
Albert I
a748d5291a
app: l10n: Update Indonesian translations
...
Signed-off-by: Albert I <kras@raphielgang.org>
2020-06-20 01:37:47 -07:00
Peter Meiser
f5131fae56
Update German translation
2020-06-20 01:37:27 -07:00
Chris Renshaw
f79a40a67a
scripts: uninstaller fixes
...
- LOS Recovery can't decrypt or even mount /data, thus the installer can't do everything it needs to do and must abort, so also suggest uninstall via Manager at that point
- fix removal of addon.d script when uninstall is run via Manager on SAR
- fix removal of addon.d with dynamic/logical partitions via mapper
2020-06-20 01:37:06 -07:00
topjohnwu
43146b8316
Update su request process
...
Due to changes in ec3705f2ed
, the app can
no longer communicate with the dameon through a socket opened on the
daemon side due to SELinux restrictions. The workaround here is to have
the daemon decide a socket name, send it to the app, have the app create
the socket server, then finally the daemon connects to the app through
the socket.
2020-06-19 03:52:25 -07:00
topjohnwu
b71b4bd4e5
Fix colors in su request dialog
2020-06-19 03:14:23 -07:00
topjohnwu
44895a86b8
Fix compilation of single applets
2020-06-19 02:45:57 -07:00
topjohnwu
eecb66f4f1
Create ForegroundTracker
2020-06-17 04:07:31 -07:00
topjohnwu
e7f1c03151
Cleanup code for su request
2020-06-17 03:47:12 -07:00
topjohnwu
56602cb9a3
Update gradle files
2020-06-17 02:33:33 -07:00
topjohnwu
1e2f776b83
Move logging.hpp
2020-06-17 01:17:28 -07:00
topjohnwu
ec3705f2ed
Redesign of MagiskSU's sepolicy model
...
Introduce new domain `magisk_client` and new file type `magisk_exec`.
Connection to magiskd's always-on socket is restricted to magisk_client
only. Whitelisted process domains can transit to magisk_client through
executing files labelled magisk_exec. The main magisk binary shall be
the only file labelled as magisk_exec throughout the whole system.
All processes thus are no longer allowed to connect to magiskd directly
without going through the proper magisk binary.
Connection failures are silenced from audit logs with dontaudit rules,
so crazy processes which traverse through all unix domain sockets to try
connection can no longer check logcat to know the actual reason behind
EACCES, leaking the denied process policy (which is u:r:magisk:s0).
This also allows us to remove many rules that open up holes in
untrusted_app domains that were used to make remote shell work properly.
Since all processes establishing the remote shell are now restricted to
the magisk_client domain, all these rules are moved to magisk_client.
This makes Magisk require fewer compromises in Android's security model.
Note: as of this commit, requesting new root access via Magisk Manager
will stop working as Magisk Manager can no longer communicate with
magiskd directly. This will be addressed in a future commit that
involves changes in both native and application side.
2020-06-03 23:29:42 -07:00
topjohnwu
ae0dcabf43
Fix typo in sepolicy.cpp
2020-06-03 03:11:10 -07:00
topjohnwu
6030b00ee2
Remove excessive logging
2020-06-03 01:28:50 -07:00
topjohnwu
a17908f6e1
Only resolve via DoH for specific hostnames
2020-06-03 01:15:05 -07:00
topjohnwu
cb7148a24c
Switch to debug logging in modules
2020-06-01 04:22:57 -07:00
topjohnwu
2f824f59dc
Better logging system
...
Use C++ magic to strip out debug logs at compile time
2020-06-01 04:15:37 -07:00
Chris Renshaw
ad94f10205
Fix direct install on NAND devices
...
Co-authored-by: John Wu <topjohnwu@gmail.com>
2020-06-01 02:08:13 -07:00
Shaka Huang
02b2290b16
Correct path of x86 libraries
...
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2020-05-31 05:33:35 -07:00
Ilya Kushnir
f8a814a588
Fix RU strings
2020-05-31 05:32:18 -07:00
topjohnwu
4c4338cc02
Adapt to AGP 4.0
2020-05-30 13:06:03 -07:00
Facundo Montero
5675a1ae7d
app/stub: values-es: update to provide more consistency.
...
This update aims to provide better consistency to the Spanish
translation by properly separating each possible pronoun.
Other small grammar errors have also been corrected.
2020-05-30 12:56:37 -07:00
AioiLight
0952224c3d
Update JA strings
2020-05-30 12:56:02 -07:00
JoanVC100
4e26c10287
Fix CA strings
2020-05-30 12:55:26 -07:00
vvb2060
f3e82b9ef1
Add DoH using cloudflare-dns
2020-05-30 12:53:46 -07:00
osm0sis
e50295d337
magiskboot: add support for lz4 compressed dt (extra)
...
- legacy devices brought up to Android 10 may now use a compressed dt in a hdr_v0 AOSP dt variant extra section, so detect, decompress and recompress this
- so far these have only been done using lz4 compression (latest format revision magic), e.g. LOS 17.1 victara (Moto X)
2020-05-30 12:52:15 -07:00
topjohnwu
fde78be2b4
Update Android Studio
2020-05-30 12:50:08 -07:00
topjohnwu
c071ac8973
Remove unused code
2020-05-29 10:41:52 -07:00
topjohnwu
599ee57d39
Simplify sepolicy rules
2020-05-25 02:30:39 -07:00
topjohnwu
4499cebcd9
Support new sepolicy rules
...
Support declare new type with attribute and declare new attributes
2020-05-25 02:09:43 -07:00
topjohnwu
cd6eca1dc2
Optimize match-all-type rules
...
For match-all-type rules (e.g. "allow magisk * * *" used in Magisk),
we used to iterate and apply rules on all existing types. However, this
is actually unnecessary as all selinux types should have at least 1
attributes assigned to it (process types "domain", file context types
"file_type" etc.). This means in order to create rules that applies to
all types, we actually only need to create rules for all attributes.
This optimization SIGNIFICANTLY reduces the patched sepolicy that is
loaded into the kernel when running Magisk. For example on Pixel 4 XL
running Android R DP4, the sepolicy sizes are
patched (before) : 3455948
patched (after) : 843176
stock : 630229
The active sepolicy size actually impacts the performance of every single
operation in the operating system, because the larger the policies gets,
the longer it takes for the kernel to lookup and match rules.
2020-05-24 05:41:19 -07:00
topjohnwu
951273f8ef
Cleanup some implementations
2020-05-24 04:16:40 -07:00
vvb2060
51eeb89f67
Allow consecutive points
2020-05-23 14:58:17 -07:00
topjohnwu
0efa73d96c
Update selinux libs
2020-05-23 05:02:26 -07:00
topjohnwu
63512b39b2
Update NDK to r21b
2020-05-23 00:48:49 -07:00
topjohnwu
f392ade78d
Rewrite sepolicy.c in C++
2020-05-23 00:18:25 -07:00
topjohnwu
0236ab887e
Several statement parsing improvements
...
- Update help message to match the spec
- Make tokenization not seg fault in certain conditions
- Moar template + macro magic to reduce boilerplate
2020-05-22 14:05:56 -07:00
topjohnwu
d4baae411b
Modernize magiskpolicy
2020-05-21 06:48:02 -07:00
topjohnwu
e02e46d0fc
Detect volume down key combo for safe mode
...
It is possible that a module is breaking the device so bad that zygote
cannot even be started. In this case, system_server cannot start and
detect the safe mode key combo, set the persist property, and reboot.
Also on old Android versions, the system directly goes to safe mode
after detecting a key combo without rebooting, defeating the purpose of
Magisk's safe mode protection if we only check for the persist property.
Directly adding key combo check natively in magiskd allows us to enter
Magisk safe mode before the system is even aware of it.
2020-05-19 04:57:47 -07:00
Chris Renshaw
3c04dab472
magiskhide: fix late_prop_key setprop, reorganize props slightly
2020-05-18 23:31:22 -07:00
topjohnwu
fc1844b4df
Update policy for handling /data/adb
2020-05-18 23:29:26 -07:00
topjohnwu
99ef20627a
Remove unused code
2020-05-18 05:45:08 -07:00
topjohnwu
4497e0aaca
Don't expose module_list
2020-05-18 05:36:02 -07:00
topjohnwu
c3e045e367
Use daemon state to determine late prop hiding
2020-05-18 05:21:47 -07:00
topjohnwu
501d3e6c32
Maintain global daemon status
2020-05-18 05:18:49 -07:00
topjohnwu
b27b9c1d18
Minor code changes
2020-05-18 04:56:51 -07:00
topjohnwu
f7d3d1eeaf
Increase post-fs-data mode to 40 secs
2020-05-18 04:56:51 -07:00
topjohnwu
0d72a4c8ba
Fix compile error
2020-05-18 04:56:51 -07:00
topjohnwu
dbdb0a2560
Move late props to boot complete
2020-05-18 03:51:41 -07:00
Tornike Khintibidze
18a09703de
Updated Georgian translation
2020-05-17 15:09:51 -07:00
topjohnwu
bc6a14d30f
Remove property ro.build.selinux
2020-05-17 15:01:37 -07:00
topjohnwu
97db49a57b
Move vendor property manipulation to late start
2020-05-17 15:01:37 -07:00
topjohnwu
eca2168685
Guard magiskhide state with mutexes
2020-05-17 15:01:37 -07:00
Hen Ry
1bcef38739
Fix German translation
2020-05-16 22:29:26 -07:00
topjohnwu
aac6ad73da
Fix collect modules
2020-05-16 13:45:22 -07:00
topjohnwu
122b4d66b6
Move Android logging out of libutils
2020-05-10 00:48:41 -07:00
topjohnwu
0f8f4e361b
Update collect log logic
2020-05-10 00:30:11 -07:00
Chris Renshaw
3733b589ac
native: fix slower build on non-Windows platforms
2020-05-09 04:41:07 -07:00
Chris Renshaw
6a2e781db2
magiskhide: add vendor.* props
2020-05-09 04:40:55 -07:00
vvb2060
c6569ce022
Fix service scripts
2020-05-09 04:40:05 -07:00
topjohnwu
a62bdc58cb
Use env variables to enable standalone mode
2020-05-08 04:09:58 -07:00
topjohnwu
912009494d
Revert accidental build script change
2020-05-08 01:44:10 -07:00
topjohnwu
a5d7c41d20
Support Safe Mode detection
...
When detecting device is booting as Safe Mode, disable all modules and
MagiskHide and skip all operations. The only thing that'll be available
in this state is root (Magisk Manager will also be disabled by system).
Since the next normal boot will also have all modules disabled, this can
be used to rescue a device in the case when a rogue module causes
bootloop and no custom recovery is available (or recoveries without
the ability to decrypt data).
2020-05-08 00:45:11 -07:00
topjohnwu
232ae2a189
Update resetprop to partially use system impl
2020-05-07 23:54:00 -07:00
topjohnwu
aa8b23105f
Modernize resetprop with fancy C++
2020-05-07 06:08:30 -07:00
topjohnwu
c113f854a2
Fix overlay.d on SAR again
2020-05-07 02:30:43 -07:00
topjohnwu
87de0e7a0e
Force remove AVB for 2SI since it may bootloop some devices
2020-05-05 03:29:36 -07:00
topjohnwu
85755e3022
Tone down our DTB patching
...
- Do not attempt to patch DTB anywhere outside of boot images as they
are no longer essential. This makes Magisk installation to only modify
strictly boot/recovery partitions again.
- The only required patch for DTB is to strip verity out of partitions
2020-05-05 03:29:36 -07:00
topjohnwu
02dc1172be
Revert DTB patches to in-place binary patches
...
Since we no longer need to add new properties in the device tree, and
all the patches we do removes strings, we can just directly patch
the flat device tree in-place, ignoring basically all the higher level
DTB structure and format to accomplish 100% compatibility.
2020-05-05 01:03:09 -07:00
topjohnwu
dbf8c41209
Force init to load fstab from file in 2SI
...
Patching DTBs is proven to be difficult and problematic as there are
tons of different formats out there. Adding support for all the formats
in magiskboot has been quite an headache in the past year, and it still
definitely does not cover all possible cases of them out there.
There is another issue: fake dt fstabs. Some super old devices do not
have device trees in their boot images, so some custom ROM developers
had came up with a "genius" solution: hardcode fstab entries directly
in the kernel source code and create fake device tree nodes even if
Android 10+ init can graciously take fstab files instead (-_-) 。。。
And there is YET another issue: DTBs are not always in boot images!
Google is crazy enough to litter DTBs all over the place, it is like
they cannot make up their minds (duh). This means the dt fstabs can be
either concatnated after the kernel (1), in the DTB partition (2), in
the DTBO partition (3), in the recovery_dtbo section in boot images (4),
or in the dtb section in boot images (5). FIVE f**king places, how can
anyone keep up with that!
With Android 10+ that uses 2 stage inits, it is crutual for Magisk to
be able to modify fstab mount points in order to let the original init
mount partitions for us, but NOT switch root and continue booting. For
devices using dt for early mount fstab, we used to patch the DTB at
install time with magiskboot. However these changes are permanent and
cannot be restored back at reinstallation.
With this commit, Magisk will read dt fstabs and write them to ramdisk
at boot time. And in that case, the init binary will also be patched
to force it to NEVER use fstabs in device-tree. By doing so, we can
unify ramdisk based 2SI fstab patching as basically we are just patching
fstab files. This also means we can manipulate fstab whatever Magisk
needs in the future without the need to going through the headache that
is patching DTBs at installation.
2020-05-04 02:21:51 -07:00
topjohnwu
8c4fd759c6
Strip Huawei specific logic
...
Users should manually switch to recovery mode instead
2020-05-03 23:07:40 -07:00
Chris Renshaw
23dc19ad94
scripts: don't abort if /vendor fails to mount
...
- /vendor is used only on some older devices for recovery AVBv1 signing so is not critical if fails
- this fixes installation in Lineage Recovery on some older devices where /vendor is actually by-name partitions like oem, cust (or even cache), which likely also don't require the AVBv1 signing
2020-05-03 23:06:16 -07:00
topjohnwu
0c99c4d93f
More complete support for fstab in dt
2020-05-03 22:49:54 -07:00
topjohnwu
8ab045331b
Workaround realpath FORTIFY crashes
2020-05-03 22:11:39 -07:00
topjohnwu
a8d0936e04
Update BusyBox
2020-05-02 03:42:42 -07:00
topjohnwu
4e349acb50
Build libselinux without ANDROID defined
2020-05-01 00:45:23 -07:00
topjohnwu
947e3b06b4
Use template to get lambda for RAII
2020-04-30 01:27:48 -07:00
topjohnwu
5fd574a14f
Fix --remove-modules command
2020-04-30 01:27:48 -07:00
osm0sis
03c1053871
scripts: fix persist out-of-space copying sepolicy.rule
...
- bugged TWRPs were filling persist with recovery logs, so clean those as a potential workaround
- abort module install if sepolicy.rule fails to copy, since 99% of the time the module wouldn't include it if it could function without it
Closes #2461
2020-04-29 20:25:18 -07:00
topjohnwu
c7ed0ef5eb
Fix SAR support for overlay.d
2020-04-25 23:19:36 -07:00
osm0sis
2aede97754
scripts: fix find_block false positives /dev/log/kernel and /dev/BOOT
...
- try /dev/block first with full depth to catch all platform/soc variations to the by-name directory, and the new dynamic partition /dev/block/mapper
- next try uevent for block devices as before
- lastly try /dev with maxdepth 1 (immediate directory) to find /dev/bootimg, /dev/recovery, etc. while avoiding /dev/log/kernel
- move bootimg higher in the list than boot so /dev/bootimg gets found first and avoids /dev/BOOT
- recovery_a/_b now also exists
- minor touch-ups for readability and consistency
Fixes #2720
2020-04-24 02:24:36 -07:00
osm0sis
9b8a5e9bf3
scripts: add author name back to module install banner print
2020-04-24 02:24:36 -07:00
osm0sis
0f910f2d40
scripts: ensure system is able to be mounted rw before attempting
...
- this is needed for installations on Lineage 17.1 Recovery (AOSP Q) for logical partition devices, which uses /dev/block/mapper to stage the partitions
Thanks LuK1337 & erfanoabdi @ Lineage
2020-04-24 02:24:36 -07:00
topjohnwu
15f155100c
Rewrite skel_node mounting and construction logic
...
Close #2725
2020-04-24 02:07:46 -07:00
topjohnwu
2468f5a6c4
Fix custom sepolicy patches
2020-04-22 23:01:11 -07:00
topjohnwu
945a52a99f
Handle extremely rare edge case
2020-04-22 05:07:50 -07:00
topjohnwu
486b2c82a7
Disable kmsg rate limiting
2020-04-22 05:07:50 -07:00
topjohnwu
800b7f4370
Bump min module Magisk version to v20.0
...
It has been over half an year now, time for an update!
2020-04-21 01:14:14 -07:00
topjohnwu
8ca5a048d6
Support system_ext
2020-04-20 23:57:29 -07:00
topjohnwu
44b7a3c3f1
Only run bootsigner on Android 5.0+
...
Close #2712
2020-04-20 22:12:14 -07:00
topjohnwu
554ebe7206
Skel dest could not exist
...
Close #2713
2020-04-20 22:04:57 -07:00
vvb2060
d7b87fcb8e
Add untrusted_app_29 for Android 11
2020-04-20 21:50:52 -07:00
topjohnwu
c94f9e1cc9
Use a binary that exists on all devices for hijacking
2020-04-20 04:41:11 -07:00
vvb2060
68532fade3
Update SAR detection method for Android 11
2020-04-20 04:41:11 -07:00
topjohnwu
e219867cdf
Hijack another binary for 2nd stage
...
Instead of using ptrace hacks, use another hack instead :D
2020-04-19 22:15:12 -07:00
topjohnwu
765d5d9729
Small magiskinit cleanup
2020-04-19 04:57:18 -07:00
topjohnwu
43029f37b1
Cleanup our tracks
2020-04-19 04:57:18 -07:00
voodik
7188462c55
fix Magisk install on ODROID-N2/C4
...
add /dev/block/dtbs support
2020-04-19 02:51:05 -07:00
topjohnwu
f9ff814955
Update gradle files
2020-04-19 02:47:22 -07:00
topjohnwu
dfbd1305b3
Android 11 support 🎉
2020-04-19 02:47:22 -07:00
topjohnwu
c9255ab31b
Remove legacy migration
...
It has been quite a long time ago...
2020-04-18 23:46:56 -07:00
topjohnwu
1e714af3cf
Support MagiskHide when /sbin does not exist
2020-04-18 23:45:00 -07:00
topjohnwu
4c959cd983
Support cases when /sbin does not exist
2020-04-18 23:19:19 -07:00
topjohnwu
d959c35723
Make cleaner mount info
2020-04-18 18:50:25 -07:00
topjohnwu
69a9d7485b
Support injecting magisk bins
2020-04-18 05:15:59 -07:00
topjohnwu
dcf07ad8c7
Directly filter '.' and '..' in xreaddir
2020-04-18 04:20:21 -07:00
topjohnwu
ed6cdb2eb4
Rename file
2020-04-18 04:10:19 -07:00
topjohnwu
a73e7e9f99
Introduce new module mount implementation
...
Rewrite the whole module mounting logic from scratch.
Even the algorithm is different compared to the old one.
This new design focuses on a few key points:
- Modular: Custom nodes can be injected into the mount tree.
It's the main reason for starting the rewrite (needed for Android 11)
- Efficient: Compared to the existing implementation, this is the most
efficient (both in terms of computation and memory usage) design I
currently can come up with.
- Accurate: The old mounting logic relies on handling specifically every
edge case I can think of. During this rewrite I actually found some
cases that the old design does not handle properly. This new design is
architected in a way (node types and its rankings) that it should
handle edge cases all by itself when constructing mount trees.
2020-04-18 02:00:48 -07:00
topjohnwu
ab853e1fcf
Update dir traversal code
2020-04-12 13:38:57 -07:00
topjohnwu
37d38b62b1
Fix strings
2020-04-12 05:53:23 -07:00
Ilya Kushnir
f9bb517142
Update RU strings
2020-04-12 05:50:58 -07:00
tzagim
efe9b867d5
Add Hebrew Translation
2020-04-12 05:49:22 -07:00
Viktor De Pasquale
d9cf33d1ba
Fixed shortcuts
...
This has been broken due to recent transition to navigation components
2020-04-12 05:40:19 -07:00
Viktor De Pasquale
ee3028e67d
Updated layout of modules screen
...
The modules will show updates at the top, active modules in the middle and finally remote modules at the bottom. The modules "install" button will be at the top of the "active" list.
This is done over usability concerns, as updates are more important than a list of installed modules.
2020-04-12 05:40:19 -07:00
Viktor De Pasquale
d810e6c82d
Fixed modules screen crashing on load
...
This commit fixes the issue of adding single-span items in between full-span items whilst using `StaggeredGridLayoutManager` on recycler view.
Adding such items results in:
```
java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 13
at java.util.Arrays.rangeCheck(Arrays.java:123)
at java.util.Arrays.fill(Arrays.java:2828)
at androidx.recyclerview.widget.StaggeredGridLayoutManager$LazySpanLookup.invalidateAfter(StaggeredGridLayoutManager.java:2876)
at androidx.recyclerview.widget.StaggeredGridLayoutManager.handleUpdate(StaggeredGridLayoutManager.java:1548)
at androidx.recyclerview.widget.StaggeredGridLayoutManager.onItemsUpdated(StaggeredGridLayoutManager.java:1524)
at androidx.recyclerview.widget.RecyclerView$6.dispatchUpdate(RecyclerView.java:1021)
at androidx.recyclerview.widget.RecyclerView$6.onDispatchSecondPass(RecyclerView.java:1032)
at androidx.recyclerview.widget.AdapterHelper.consumePostponedUpdates(AdapterHelper.java:121)
at androidx.recyclerview.widget.AdapterHelper.consumeUpdatesInOnePass(AdapterHelper.java:557)
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4128)
at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
...and more
```
Affects versions including and prior to androidx.recyclerview:recyclerview:1.2.0-alpha02 (at the time of this commit) and possibly more after that.
This bug is caused by a single fact and that is - array inside of `LazySpanLookup` is not being invalidated and resized correctly when non-full-span item is being added in between of two full-span items. The invalidation however passes on some (high performance) devices so it doesn't necessarily cause issues for _some_ users; others keep getting the same crash over and over again.
Possible fix for anyone reading this, in the hope of fixing the same error, is to copy-paste the `StaggeredGridLayoutManager` and fix the array length before calling `Arrays.fill()`. There's no fix from user's perspective if you need to keep the UI as-is.
We however don't need the UI as-is, so we're instead opting to use LinearLayoutManager until is the issue resolved.
Continues tracking at https://issuetracker.google.com/issues/37034096
Close #2631
2020-04-12 05:40:19 -07:00
topjohnwu
e0a281583d
Preparation for dynamic tmpfs path
2020-04-12 05:34:56 -07:00
topjohnwu
d739dcac2b
Remove dependency on magisk.hpp in libutils
2020-04-11 04:40:40 -07:00
topjohnwu
cdd4cb8ec2
Update BusyBox to build on latest NDK
2020-04-11 04:05:58 -07:00
topjohnwu
93ef90cd24
Fix FORTIFY crashes
2020-04-11 04:05:34 -07:00
topjohnwu
e165a1e65c
Use BusyBox standalone mode if available
2020-04-11 02:21:47 -07:00
topjohnwu
4066e5bf14
Update Makefiles
2020-04-06 22:45:08 -07:00
topjohnwu
4729514a22
Remove snet module from Magisk
2020-04-05 02:13:53 -07:00
topjohnwu
93aedcfeb7
Update all hardcode paths in app and script
2020-04-05 01:27:07 -07:00
topjohnwu
47d18bb896
Fix typo of boot methods
2020-04-04 01:48:28 -07:00
topjohnwu
61dafbe06e
Fix LV for Boot Method C
2020-04-04 01:27:27 -07:00
topjohnwu
474325da68
Add 'Android Booting Shenanigans' to docs
2020-04-04 01:17:50 -07:00
topjohnwu
9317401d57
Update Windows instruction for Python
2020-04-03 16:52:28 -07:00
topjohnwu
67d746a62c
Let build.py setup NDK
2020-04-03 03:34:07 -07:00
topjohnwu
2f1f68f12f
Prepare compilation for NDK r21
2020-04-03 02:58:39 -07:00
Chris Renshaw
2742edd73f
scripts: only show addon.d error once on failures
2020-04-02 20:54:56 -07:00
Shaka Huang
834561a5de
Content in dt_fstab is not null terminated in emulator
...
Value of <dt>/fstab/<partition>/dev and <dt>/fstab/<partition>/type in official Android emulator ends with newline instead of \0, Magisk won’t be able to patch sepolicy and crash the system.
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2020-04-02 20:54:41 -07:00
Chris Renshaw
11102b4dd6
scripts: fix finding nand/mtd boot on some devices
...
Fixes #2619
2020-04-02 20:52:46 -07:00
zivmc
fef2da3c0b
Fix bug in compiling elf_cleaner with g++
...
Signed-off-by: zivmc <zivmc@users.noreply.github.com>
2020-04-02 20:52:18 -07:00
topjohnwu
9820296e92
Update files.cpp in libutils
2020-04-02 02:17:45 -07:00
topjohnwu
dbfde74c1e
Clean rootfs in switch_root
2020-04-01 23:37:11 -07:00
topjohnwu
b28668e18d
Prevent possible race condition
2020-04-01 22:40:59 -07:00
topjohnwu
5f1174de27
Introduce new boot flow to handle SAR 2SI
...
The existing method for handling legacy SAR is:
1. Mount /sbin tmpfs overlay
2. Dump all patched/new files into /sbin
3. Magic mount root dir and re-exec patched stock init
With Android 11 removing the /sbin folder, it is quite obvious that
things completely break down right in step 1.
To overcome this issue, we have to find a way to swap out the init
binary AFTER we re-exec stock init. This is where 2SI comes to rescue!
2SI normal boot procedure is:
1st stage -> Load sepolicy -> 2nd stage -> boot continue...
2SI Magisk boot procedure is:
MagiskInit 1st stage -> Stock 1st stage -> MagiskInit 2nd Stage ->
-> Stock init load sepolicy -> Stock 2nd stage -> boot continue...
As you can see, the trick is to make stock 1st stage init re-exec back
into MagiskInit so we can do our setup. This is possible by manipulating
some ramdisk files on initramfs based 2SI devices (old ass non SAR
devices AND super modern devices like Pixel 3/4), but not possible
on device that are stuck using legacy SAR (device that are not that
modern but not too old, like Pixel 1/2. Fucking Google logic!!)
This commit introduces a new way to intercept stock init re-exec flow:
ptrace init with forked tracer, monitor PTRACE_EVENT_EXEC, then swap
out the init file with bind mounts right before execv returns!
Going through this flow however will lose some necessary backup files,
so some bookkeeping has to be done by making the tracer hold these
files in memory and act as a daemon. 2nd stage MagiskInit will ack the
daemon to release these files at the correct time.
It just works™ ¯\_(ツ)_/¯
2020-04-01 04:39:28 -07:00
topjohnwu
543ce937ec
Don't need to find system_dev
2020-03-31 22:41:25 -07:00
topjohnwu
5537b083a8
Move surequest out of legacy
2020-03-30 23:53:21 -07:00
Viktor De Pasquale
6b0854749f
Added setting resetting state on install screen
...
It will additionally show that download is complete rather than being stuck on loading.
2020-03-30 21:58:26 -07:00
Viktor De Pasquale
09ba4772b8
Fixed using wrong argument for flashing order
2020-03-30 21:58:26 -07:00
topjohnwu
06a1d08465
Replace ellipsis with recommended characters
2020-03-30 04:50:10 -07:00
fessmm
d510ead877
fix letters
2020-03-30 04:47:10 -07:00
topjohnwu
2968a1559e
Get rid of the final Java file in app
2020-03-30 04:41:54 -07:00
topjohnwu
cba26eedb5
Move several stuffs out of shared
2020-03-30 04:25:42 -07:00
topjohnwu
23e74b2781
Prevent showing empty screen in stealth mode
2020-03-30 04:03:56 -07:00
topjohnwu
ef0277d10e
Properly set themes for dialogs in stub
2020-03-30 04:03:33 -07:00
topjohnwu
a623a5b7cc
Set proper component name in FlashFragment
2020-03-29 23:11:09 -07:00
Davy Defaud
be8479fdba
French translation update
2020-03-29 06:13:28 -07:00
Taras
e97e6d467c
Update Ukrainian strings
2020-03-29 06:12:56 -07:00
JoanVC100
75ec890d46
module_permission_declined string
2020-03-29 06:12:27 -07:00
Vladimír Kubala
871a9c29c8
Update strings.xml
2020-03-29 06:12:10 -07:00
dark-basic
a4f903d947
Update strings.xml
...
Add new line.
2020-03-29 06:11:55 -07:00
Viktor De Pasquale
1920a52829
Added progressbar indicating content loading on modules screen
2020-03-29 06:10:19 -07:00
Viktor De Pasquale
6e14a727b1
Fixed modules screen not offering reboot when local modules change
2020-03-29 06:10:19 -07:00
Viktor De Pasquale
ea855837df
Fixed melting UI on pre A10 devices
2020-03-29 06:10:19 -07:00
Chris Renshaw
d05ed0e59c
Manager: remove v from download names
...
- now that Canaries are only commit hashes for the version string, the v is unnecessary/confusing, so the simplest solution is to just remove the v from the filename for all Manager-based downloads of Magisk and Manager
2020-03-28 22:53:38 -07:00
topjohnwu
a9eb443072
Ignore existing attributes in manifest
...
Close #2595
2020-03-28 21:42:31 -07:00
topjohnwu
d382b00efd
Accept all paths in FileProvider
...
Get rid of file_paths.xml
2020-03-28 01:27:41 -07:00
topjohnwu
ef9d077c7f
Update build.py
2020-03-27 23:23:26 -07:00
topjohnwu
e4b20abf8e
Update gradle files
2020-03-27 22:42:02 -07:00
John Wu
e9f0a10175
Update stable release badges
2020-03-27 21:43:52 -07:00
topjohnwu
c3968a26cf
Remove dynamic loading code
...
All these code are moved into a private repo. The stub is actually
just a stub now; mixing dynamic load and stub is confusing.
2020-03-27 01:25:05 -07:00
topjohnwu
9371515ecc
Disable animations in superuser fragment
2020-03-27 00:53:38 -07:00
topjohnwu
a83e055b19
Fix strings
2020-03-27 00:53:13 -07:00
Viktor De Pasquale
6907651756
Updated flash screen so it's a fragment
...
The FlashActivity has been removed and all of it's functionality has been transferred to the FlashFragment.
The FlashFragment needs to be however launched in a different way than the activity using the MainActivity's stub and so seemingly massive changes had to be made.
Notably the RemoteFileService didn't seem to be calling Service.startForeground(), which has been crashing the application due to the system requirements, so that's been fixed.
2020-03-26 03:42:52 -07:00
Viktor De Pasquale
fc2d0246e6
Added requesting navigation being hidden when showing alternative view
2020-03-26 03:42:52 -07:00
Viktor De Pasquale
bb9c362bab
Added back button for ModuleFragment when displaying filter
2020-03-26 03:42:52 -07:00
Viktor De Pasquale
51402e68d2
Fixed log not displaying back button when alternative view is shown
2020-03-26 03:42:52 -07:00
Viktor De Pasquale
1b8813228b
Updated the app to use navigation components instead of custom solution
...
Welcome to mid 2018.
2020-03-26 03:42:52 -07:00
Viktor De Pasquale
922e36cfb0
Updated the width of bottom navigation
2020-03-26 03:42:52 -07:00
Viktor De Pasquale
edff094626
Added log as primary fragment
2020-03-26 03:42:52 -07:00
Chris Renshaw
aa72a080b0
core: clean up /data/adb/magisk.img, etc. as well
...
- now that magisk.img -> /data/adb/modules migration is no longer taking place make sure all magisk.img locations get cleaned up
2020-03-26 03:39:49 -07:00
John Wu
2a93d1c652
Update shields.io URL for caching
2020-03-25 09:08:10 -07:00
topjohnwu
6b2f23712c
Add live download counts
2020-03-25 04:00:21 -07:00
topjohnwu
375ab93ee3
Update logo.png
2020-03-23 05:12:30 -07:00
topjohnwu
d5962e9d71
Update README.MD
2020-03-23 04:45:06 -07:00
topjohnwu
ffaa264bd3
Update documentation
2020-03-23 04:24:20 -07:00
topjohnwu
ba7cb47383
Make version reporting consistent
2020-03-23 01:17:13 -07:00
topjohnwu
48d417f9af
Add symlink for backwards compatibility
...
The native code has to run with an old verison of Magisk Manager,
add this back so things will work properly.
2020-03-22 21:00:40 -07:00
Heimen Stoffels
df4db6bf6b
Added Dutch translation for stub
2020-03-22 13:45:26 -07:00
Heimen Stoffels
b8ef491bc7
Updated Dutch translation
2020-03-22 13:45:26 -07:00
kam821
ea1ebb8d00
Polish translation - fix missing string
...
Add previously deleted string, due incorrent (duplicated) variable name.
Described in: 31142180cb
2020-03-22 13:45:02 -07:00
osm0sis
91b6d2852a
scripts: add nand/mtd support to uninstaller
2020-03-22 13:43:13 -07:00
Zackptg5
d7cd1b37f8
add missing flags
2020-03-22 13:41:55 -07:00
topjohnwu
160ff7bb07
Update abort function to cleanup module installs
...
CLose #2373
2020-03-22 00:08:04 -07:00
topjohnwu
31142180cb
Fix strings
2020-03-21 13:13:26 -07:00
Vladimír Kubala
38b0fa04a8
Small translation fix
2020-03-21 13:10:04 -07:00
fessmm
29817245ba
update de strings
2020-03-21 13:09:37 -07:00
Ilya Kushnir
925fe6f152
Update RU strings
2020-03-21 04:34:45 -07:00
孟武.尼德霍格.龍
93fd574b75
更新繁體中文字串
...
更新繁體中文字串(適用278版)
2020-03-21 04:34:09 -07:00
kam821
0de88bcbb9
Polish translation - add missing strings, small improvements.
2020-03-21 04:33:43 -07:00
osm0sis
0b70bd2b60
scripts: make remaining header/section dividers uniform
...
- match other recent formatting updates from topjohnwu
2020-03-21 04:32:20 -07:00
osm0sis
84ecba4629
scripts: fix addon.d again by ensuring all arguments get passed
...
- /proc/$$/cmdline is \0 terminated argument strings except for the last argument which has no terminus, so the last argument was being dropped by `while read` which requires input to be \n terminated
- switch to a for loop, which will use the \n delimiter but also read the last argument; all arguments are still protected by quoting
- clean up potentially breaking recovery env since $OLD_PATH no longer exists
2020-03-20 10:51:55 -07:00
topjohnwu
f7142e69b6
Fix module install in util_functions.sh
2020-03-19 03:53:15 -07:00
topjohnwu
ed7e560849
Fix ensure_bb implementation
...
Close #2549 , close #2560
2020-03-19 03:53:15 -07:00
osm0sis
47e50e8511
scripts: add nand/mtd support to installer
...
- Magisk's busybox now has nanddump, flash_eraseall and nandwrite, so use these to support character devices
Closes #1526
2020-03-15 12:37:19 -07:00
topjohnwu
72f6770d61
Fix string resources
2020-03-15 00:39:56 -07:00
topjohnwu
7da35e5468
Extract full module installation logic
2020-03-15 00:23:07 -07:00
Simon Shi
7768274b2f
Fix build issue
2020-03-14 11:17:51 -07:00
topjohnwu
33f006655d
Update README
2020-03-13 02:12:35 -07:00
topjohnwu
612b51d48f
Disable MagiskHide by default
...
Since SafetyNet CTS is impossible to achieve, leaving MagiskHide on
by default no longer serves a purpose.
For more details regarding the latest SafetyNet changes, please check:
https://twitter.com/topjohnwu/status/1237656703929180160
https://twitter.com/topjohnwu/status/1237830555523149824
MagiskHide's functionality will continue to exist within the Magisk
project as it is still extremely effective to hide modifications in
userspace (including SafetyNet's basicIntegrity check).
Future MagiskHide improvements _may_ come, but since the holy grail
has been taken, any form of improvement is now a very low priority.
2020-03-13 01:48:14 -07:00
topjohnwu
8101f3f67d
Set proper permissions
2020-03-12 00:51:46 -07:00
GaryOderNichts
e3c8d723e3
Add linebrake notice for module.prop
...
This made some trouble when creating a module.prop on Windows. The file could not be read properly by magisk manager and my module folder had an \r at the end which made it unremovable through Magisk Manager.
2020-03-12 00:34:56 -07:00
Tornike Khintibidze
4579825758
Updated Georgian strings
2020-03-12 00:33:04 -07:00
Ilya Kushnir
ef91c33f55
Update RU strings
2020-03-12 00:31:55 -07:00
dark-basic
511d5993df
Update Strings-es.xml
2020-03-12 00:31:34 -07:00
Viktor De Pasquale
9f4958e869
Updated safetynet success color to primary
2020-03-12 00:30:00 -07:00
Fox2Code
c07775f5e3
Add missing ro.vendor(.boot).warranty_bit props
...
Co-authored-by: John Wu <topjohnwu@gmail.com>
2020-03-12 00:28:43 -07:00
topjohnwu
e261579e72
Use standalone mode in boot scripts
2020-03-11 00:11:15 -07:00
topjohnwu
cf54cad3ce
deleteprop -> delprop
2020-03-09 02:05:24 -07:00
topjohnwu
a0998009c1
Small native code reorganization
2020-03-09 01:50:30 -07:00
topjohnwu
d6fdbfe9b7
Utilize standalone mode for emulator.sh
2020-03-08 23:27:06 -07:00
Vladimír Kubala
07228279a3
Update Slovak translation
2020-03-08 23:26:08 -07:00
JoanVC100
6877ef790f
Add strings
2020-03-08 23:25:25 -07:00
cristisilaghi
a3809648dd
Update Romanian
2020-03-08 23:25:05 -07:00
YU-YEN HSU
df15606b00
prop compare fix
2020-03-08 22:58:37 -07:00
YU-YEN HSU
4dc0d13688
Xiaomi cross region flash hacks
2020-03-08 22:58:37 -07:00
topjohnwu
541fa5cb1f
Update dependencies
2020-03-08 22:54:14 -07:00
Alessandro Astone
ab9442d4ae
Fixup mounting system on Lineage Recovery
...
* Lineage Recovery 17.1, like AOSP Q recovery, has '/' as a shared
mount point, causing `mount --move` to fail.
If it fails, directly mount system to /system_root via
/dev/block/ symlinks, like AnyKernel and OpenGapps
Co-authored-by: John Wu <topjohnwu@gmail.com>
2020-03-08 22:38:47 -07:00
osm0sis
f5c099e9a7
scripts: fix addon.d after merge to trampoline
...
- pass addon.d arguments through trampoline or nothing will happen
- exit immediately after handing over from trampoline
- better grep for recovery OUTFD which should work in all cases
- output to logcat when booted and no binaries are found
- use /postinstall/tmp path to call functions from addon.d-v2 in progress
- remove unnecessary check for $MAGISKBIN since we're already executing from within it
- make sure we're not in $TMPDIR again before we delete it
- use $MAGISKBIN wherever possible in case it ever needs to be changed
2020-03-08 22:33:19 -07:00
Shaka Huang
9582379e1b
Fix error patching boot.img
...
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2020-03-08 22:27:18 -07:00
topjohnwu
db9a4b31f9
Update scripts to use BusyBox standalone mode
2020-03-08 22:25:06 -07:00
Viktor De Pasquale
409cb06ea0
Fixed layout not reacting to nested scroll on su screen
2020-03-04 23:51:06 -08:00
Viktor De Pasquale
88d917b662
Added permission check for installing/downloading modules
2020-03-04 23:50:50 -08:00
topjohnwu
faf077b494
Min ver is 19.0, don't need legacy commands
2020-02-29 15:41:15 -08:00
topjohnwu
ee1f45aa91
Add new commandline option to get tmpfs root
2020-02-29 15:33:11 -08:00
topjohnwu
915fd3020b
Small string resource reorganization
...
Close #2454
2020-02-29 14:49:06 -08:00
micheleberrettis1
642788abec
Typo fix.
...
Fixed two typos in the Italian translation.
2020-02-29 02:09:08 -08:00
Vladimír Kubala
3cd11dd9a0
Update Slovak translation
2020-02-29 02:08:52 -08:00
kam821
bf2c5ce368
Updated Polish translation
...
Synced with latest strings file, some minor fixes.
2020-02-29 02:08:36 -08:00
cristisilaghi
65c510a211
Update Romanian strings
2020-02-29 02:08:23 -08:00
topjohnwu
6fbc38d764
Add more notice/messages
2020-02-29 02:04:31 -08:00
topjohnwu
200bf993d8
Show unsupported message when running low versions
2020-02-28 21:09:52 -08:00
topjohnwu
38af82e152
Update AS
2020-02-28 17:49:19 -08:00
topjohnwu
fc05f377fb
Update env fix handling logic
2020-02-28 17:44:03 -08:00
topjohnwu
5c0e86383c
Add test button toggle in code
2020-02-28 11:53:25 -08:00
topjohnwu
64f5ff5475
Use global A/B detection
2020-02-28 10:30:53 -08:00
topjohnwu
758777111a
Improve application startup
2020-02-27 12:54:42 -08:00
topjohnwu
b90e0430f8
Don't do layered cards
2020-02-27 01:43:00 -08:00
topjohnwu
0ce7da1bf6
Upgrade AGP
2020-02-25 15:14:24 -08:00
Viktor De Pasquale
e6464c5c7f
Fixed module filter list not respecting single column layout
2020-02-25 15:03:31 -08:00
topjohnwu
c6b3f06b95
Cleanup stuffs
2020-02-22 01:28:33 -08:00
topjohnwu
581419b6a3
Update dependencies
2020-02-21 23:40:20 -08:00
topjohnwu
696ab677be
New pre-init magic mount implementation
2020-02-21 00:49:58 -08:00
topjohnwu
0d229dac3b
Support Android 11 SELinux paths
...
This is NOT proper Android 11 support
2020-02-21 00:49:33 -08:00
topjohnwu
3b8ea599f0
Fix switch_root implementation
2020-02-20 21:08:59 -08:00
topjohnwu
3e70a61e33
Fix strings
2020-02-18 16:14:11 -08:00
dark-basic
76f35d02b7
Update strings-es
2020-02-18 16:00:40 -08:00
Ilya Kushnir
356b417a04
Update RU strings
2020-02-18 16:00:23 -08:00
Tornike Khintibidze
56147a80b5
Updated Translations
2020-02-18 16:00:09 -08:00
dark-basic
91728991d7
Update Strings-es STUB version
...
Little change.
----
For translators of other languages, simply modify a sentence. There is nothing new to translate in this sector.
2020-02-18 15:59:38 -08:00
JoanVC100
0f7e59d288
Update + Fixes ca-strings
2020-02-18 15:59:01 -08:00
Gozzwip
f33028c645
some changes
2020-02-18 15:58:47 -08:00
Davy Defaud
f9149ad433
French translation
2020-02-18 15:58:17 -08:00
topjohnwu
0d7474cc88
Fix all locale issues
2020-02-18 14:02:08 -08:00
topjohnwu
1e7e06d1cc
Proper canary version detection
2020-02-17 22:05:32 -08:00
topjohnwu
8453282fa6
Improve flash console screen
2020-02-16 19:04:26 -08:00
topjohnwu
40f971d18a
Add entrypoint for testing
...
Should do it with proper unit test, but duh
2020-02-15 21:57:03 -08:00
topjohnwu
ce7cb1eeae
Remove device section
2020-02-12 13:26:10 -08:00
Viktor De Pasquale
d2701616da
Fixed bottom navigation colors so it doesn't blend together with the misused layout underneath
2020-02-12 10:48:24 -08:00
Fox2Code
10eb159e1b
Disable Grant Button for 1 seconds after popup display
2020-02-11 21:45:10 -08:00
topjohnwu
36897ceb19
Add slight stroke to navigation card
2020-02-11 21:32:44 -08:00
topjohnwu
9a8274130b
Manually set referenced resource ID for barriers
2020-02-11 20:54:23 -08:00
topjohnwu
c8d050c3e3
Fix strings resources
2020-02-11 20:05:17 -08:00
孟武.尼德霍格.龍
a46cd63c9d
更新繁體中文字串
...
更新繁體中文字串到 740559e3bc
基準
2020-02-11 20:00:53 -08:00
zrq8
e9e6eaf079
Update Simplified Chinese Translation
2020-02-11 20:00:40 -08:00
Mevlüt TOPÇU
cb5897af93
Update Turkish translation
...
Hi,
Merge please.
Thanks
2020-02-11 20:00:31 -08:00
Vladimír Kubala
d701d6eb82
Update Slovak translation
2020-02-11 19:59:52 -08:00
Ilya Kushnir
470ebb54e2
Update RU strings
2020-02-11 19:58:51 -08:00
dark-basic
632cab398e
ReFormat Strings
2020-02-11 19:58:38 -08:00
Taras
189c4cc9d8
Update UK strings
2020-02-11 19:58:23 -08:00
topjohnwu
70d5e2dee8
Remove board info from home screen
2020-02-11 19:57:33 -08:00
topjohnwu
c586106e51
Remove confusing scrambled "Manager" text
2020-02-11 19:55:21 -08:00
topjohnwu
ffa85a616a
Update home screen layout (yet again)
2020-02-11 19:46:29 -08:00
Viktor De Pasquale
e5ea3e4a43
Fixed button text color on flash screen
2020-02-11 10:42:17 -08:00
Viktor De Pasquale
0492e63862
Added unified switches to install screen
2020-02-11 10:42:05 -08:00
Viktor De Pasquale
9952387356
Updated layouts to fit new widget that should visually represent a switch
...
The switch is not actually a switch, but a representation of internal state, the layouts continue to accept touch events as beforehand.
2020-02-11 10:42:05 -08:00
Viktor De Pasquale
d7653e6e42
Cleaned up unused resources
2020-02-11 10:42:05 -08:00
Viktor De Pasquale
e9fc40d285
Removed grid scale gestures and reverted back to * simple list as a default
...
* disgusting (:
2020-02-11 10:42:05 -08:00
topjohnwu
740559e3bc
Fix int detection in scripts
2020-02-10 16:45:44 -08:00
topjohnwu
9471577b3b
Properly detect advanced device info
2020-02-10 16:33:58 -08:00
topjohnwu
e85d5e54e2
Update root shell preparation
2020-02-10 16:31:41 -08:00
topjohnwu
5fb071d80b
Merge app scripts
2020-02-10 03:36:28 -08:00
Fox2Code
022151fefd
Prevent fake clicks on SuRequest
2020-02-10 02:08:53 -08:00
topjohnwu
3b8d2fe8b7
Add ramdisk detection
2020-02-10 01:56:34 -08:00
topjohnwu
d51d549a28
Refactor string resources
2020-02-10 01:43:28 -08:00
topjohnwu
b5ac24f239
Fix strings
2020-02-09 21:11:27 -08:00
dark-basic
3ca99005f8
Update strings.xml
...
New lines added.
2020-02-09 21:06:47 -08:00
Ilya Kushnir
0b9f2921d2
Update RU strings
2020-02-09 21:06:34 -08:00
kam821
389501ad0c
Polish translation - Added missing strings
2020-02-09 21:06:20 -08:00
Hen Ry
082e4eb05c
Update strings.xml
...
Fix
2020-02-09 21:06:06 -08:00
Oliver Cervera
47f885a566
Update Italian translation
2020-02-09 21:05:52 -08:00
Taras
bc964b8588
Update Ukrainian (UK) translation
2020-02-09 21:05:36 -08:00
zrq8
b57b3313e4
Update Simplified Chinese Translation
2020-02-09 21:05:21 -08:00
JoanVC100
f185cefa11
Missing string
2020-02-09 21:05:09 -08:00
cristisilaghi
9d256e02d7
Add missing string for Romanian
2020-02-09 21:04:58 -08:00
Vladimír Kubala
086c64c0be
Update Slovak translation
2020-02-09 21:04:43 -08:00
Tornike Khintibidze
798fe57025
Update Georgian translation
2020-02-09 21:04:26 -08:00
Eun Gang Ku
a03f744648
Update strings.xml
...
Add new strings
2020-02-09 21:03:57 -08:00
topjohnwu
64f35744c4
Reorganize home screen layout
2020-02-09 17:03:05 -08:00
Viktor De Pasquale
b512528148
Updated toolbar layout to match the new aesthetic
2020-02-09 03:20:38 -08:00
Viktor De Pasquale
fdfa037dca
Added very slight hint of the card being selectable
2020-02-09 03:20:28 -08:00
Viktor De Pasquale
db4ef1443d
Removed unnecessary code
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
810468c279
Added offline states for magisk and manager sections
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
8146d0830d
Fixed wrong horizontal bias
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
7e946b040c
Updated uninstall button to match aesthetic
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
97d24a7d4d
Removed single-use reboot menu
...
This addition will be used in modules as soon as the homepage gets merged
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
f8bea66313
Fixed menu inflating unnecessarily on every click
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
dd9129017f
Added a condition to hide reboot button when no root is available
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
cbe3602cb7
Fixed views hiding the view below with them
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
1d831d65f3
Added overflow menu for reboot
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
c35d020731
Added uninstall button to magisk details
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
c18db555a4
Updated sections' title colors
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
373092af16
Updated homepage layout
...
The updated layout has extended features such as reboot (not implemented yet), more details with not text ellipsis and easy extendability with further parameters, detail or whatever
More improvements to homescreen to come in upcoming commits.
2020-02-09 03:20:14 -08:00
topjohnwu
1a2e157cda
4000th commit! 🎉
...
Just for celebration, empty commit
2020-02-09 03:08:39 -08:00
topjohnwu
b3bc1a3907
Merge addon.d scripts
2020-02-09 03:07:49 -08:00
topjohnwu
4dd8d75cc0
Update scripts
2020-02-08 03:26:39 -08:00
topjohnwu
e5f50bb7e0
Update busybox
2020-02-07 21:57:26 -08:00
osm0sis
45d5b4bea6
scripts: recovery addon.d-v2 and env fixes
...
- recovery addon.d-v2 requires /system and /system_root stay mounted
- find OUTFD from recovery update_engine for addon.d-v2 output
- fix finding OUTFD on addon.d failure with toybox ps
- simplify heredoc creation
- update to longer apex BOOTCLASSPATH
- save and restore any mountpoint symlinks encountered
Closes #2284
2020-02-07 21:56:28 -08:00
zrq8
ed58cf953a
Add missing string resources
2020-02-03 13:25:29 +08:00
cristisilaghi
ec26bc5ab7
Corrections for Romanian
2020-02-03 13:25:11 +08:00
topjohnwu
84e4bd3d41
Move readlinkat fix into xwrap
2020-02-03 13:24:02 +08:00
Shaka Huang
0ecfb63cd6
Fix crash during boot in x86 platform
...
readlinkat() may return random value instead of the number of bytes placed in buf and crashing the system in two ways:
1. segmentation fault (buf[-7633350] = ‘\0’)
2. wrong link of watchdogd, resulting dog timeout
Confirmed working in ZenFone 2 x86 series, may fix #2247 and #2356
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2020-02-03 13:02:30 +08:00
topjohnwu
ebdd6ec40c
Fallback to getprop to get SDK_INT
...
Close #2274 , close #2279
2020-02-03 12:58:59 +08:00
kam821
0586760347
Polish translation - Minor corrections/improvements
2020-02-02 16:06:36 +08:00
Tornike Khintibidze
d535f244ad
Corrected translation
2020-02-02 16:06:12 +08:00
Mevlüt TOPÇU
613d46824d
Update
...
Hi
Update Turkish language translations
Merge please
Thanks
2020-02-02 16:05:35 +08:00
Wagg13
041355f182
Final Language Update PT-BR
2020-02-02 16:04:54 +08:00
Viktor De Pasquale
6977dc082f
Fixed texts being incorrect if injected from context
2020-02-02 16:01:50 +08:00
Viktor De Pasquale
d3dffe8165
Updated legacy theme to match error color instead of having separate secondary color
2020-02-02 16:00:15 +08:00
Viktor De Pasquale
6812f9d202
Updated su request dialog to match overall app theme
2020-02-02 16:00:04 +08:00
Viktor De Pasquale
555e7cc907
Fixed dialog not being centered
...
Close #2369
2020-02-02 15:59:44 +08:00
topjohnwu
6180558068
Add support for genfscon sepolicy rules
...
Close #2367
2020-02-02 01:16:42 +08:00
Shaka Huang
cf589f8c64
Fix error loading libsqlite.so
...
Vendors are always adding “extra libraries” in /vendor/lib* for their own sake, in this case AS*S loaded with customized `libicuuc.so` for Zenf*ne 5z and led to the failure of dynamic loading libsqlite.so:
<quote>
db: dlopen failed: cannot locate symbol "UCNV_FROM_U_CALLBACK_ESCAPE_63" referenced by "/apex/com.android.runtime/lib64/libandroidicu.so"...
</quote>
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
* Minor optimizations
Co-authored-by: John Wu <topjohnwu@gmail.com>
2020-02-01 14:36:34 +08:00
topjohnwu
e864919c0b
Jellybean supports modules
2020-02-01 14:22:31 +08:00
topjohnwu
c72d83b637
Update docs
2020-02-01 01:42:40 +08:00
osm0sis
f2d2f28e23
scripts: fixes for Tegra partition naming + bootsigner on Android 10
...
- adjust mount scripts to support SOS, APP and CAC Tegra partition naming (vendor is still vendor, oddly)
- -Xnodex2oat is removed on Android 10 in AOSP (despite it still erroneously showing in dalvikvm --help); older devices will still run safely without it
- Android 10 dynamically linked binaries need APEX mounts and variables so add this to recovery_actions/cleanup (thanks @Zackptg5)
- clean up known systemless root leftovers because we're helpful
2020-02-01 01:09:12 +08:00
osm0sis
a7435dad6d
magiskboot: fix lzop detection
2020-02-01 01:09:12 +08:00
osm0sis
793f0b605c
init: fix Tegra "APP" /system partition mounting
...
- thanks rootfan in https://github.com/topjohnwu/Magisk/issues/2063#issuecomment-573232567
Closes #2243
2020-02-01 01:09:12 +08:00
topjohnwu
5b56ca7ffc
Use MAX_FDT_GROWTH instead of hardcode value
2020-02-01 00:58:33 +08:00
topjohnwu
5c988510b3
Preserve fdt paddings
...
Some Motorola devices (Qualcomm kernel with CONFIG_MMI_DEVICE_DTBS
configuration enabled) need 1k of padding to the DTBs to allow for
environment variables to be runtime added by the bootloader.
Those extra paddings will be removed during the process of dtb patch,
devices won’t be able to boot-up and return to fastboot mode immediately
after flashed the flawed boot.img.
Credits to @shakalaca, close #2273
2020-02-01 00:48:21 +08:00
topjohnwu
290624844b
Reorganize dtb code
2020-02-01 00:15:52 +08:00
topjohnwu
497efc9f5e
Make scrambled text prettier
2020-01-31 04:48:02 +08:00
topjohnwu
19d76b635c
Fix de strings
2020-01-31 04:29:06 +08:00
Davy Defaud
4875def31c
Complete and improve French translation
...
- fix some typos
- translate the two last strings
- fit French orthotypographic rules (use true apostrophes and hyphens…)
2020-01-31 04:24:10 +08:00
Vladimír Kubala
155c0e3609
Update Slovak language
2020-01-31 04:22:34 +08:00
kam821
00ea15dc19
Update and fix Polish language
...
- Added missing strings.
- Fixed some incorrect translations
- Improved grammar.
Many lines rewritten to keep original (EN) meaning as much as possible.
2020-01-31 04:20:06 +08:00
Hen Ry
f04c4cb78a
Update de strings
2020-01-31 04:19:40 +08:00
topjohnwu
6e4777692e
Change recreate logic
...
Although this new behavior is a little more annoying, at least
it properly kills the activity and restarts it with updated configs.
2020-01-31 04:17:17 +08:00
Viktor De Pasquale
4638fdf2d7
Fixed dialog content being squished unnecessarily
...
...by updating constraint layout
...lol
2020-01-31 04:13:08 +08:00
wiki de pasquale
0783d385d5
Removed security note
...
Note, and the backdrop, has been removed, since users which have chosen device that doesn't receive security updates in, at least 2 months, are getting triggered by their own choices (:
2020-01-31 04:12:49 +08:00
Viktor De Pasquale
cf918e7df8
Updated text "variant" transparency
2020-01-31 04:09:45 +08:00
Viktor De Pasquale
1ba9faf35b
Added legacy theme (Fraxure)
...
Theme is, in color, identical to legacy colors.
2020-01-31 04:09:45 +08:00
Viktor De Pasquale
6e48294f2a
Removed unnecessary files and merged styles
2020-01-31 04:09:45 +08:00
topjohnwu
dea607b148
Small SignAPK improvements
2020-01-31 04:07:12 +08:00
topjohnwu
e938e717b0
Refactor PatchAPK code
2020-01-31 03:37:39 +08:00
topjohnwu
2eed09ef1b
Upgrade AS
2020-01-30 22:04:31 +08:00
topjohnwu
8a6b3644be
Strip only debug and verbose logging
2020-01-29 22:16:53 +08:00
topjohnwu
1d89fe503b
Fix manager hiding
...
Workaround bizarre optimization bugs
2020-01-29 20:55:20 +08:00
topjohnwu
788db036fd
Don't use Zopfli
2020-01-29 17:38:36 +08:00
topjohnwu
c38c473e11
Fix compile error
2020-01-29 17:38:36 +08:00
Eun Gang Ku
aef1f8f701
Update strings.xml
2020-01-29 13:35:01 +08:00
Eun Gang Ku
83f9767254
Update strings.xml
...
Add small corrections.
2020-01-29 13:34:49 +08:00
JoanVC100
3e0352eee6
Update strings + Corrections
2020-01-29 01:51:17 +08:00
Rom
28faff6425
Fix French translation
2020-01-29 01:51:07 +08:00
topjohnwu
d0112f989c
Cleanup classes
2020-01-29 01:49:59 +08:00
Viktor De Pasquale
9c4c310f46
Fixed messages on modules screen replicating indefinitely
2020-01-29 01:12:48 +08:00
Viktor De Pasquale
7bf7bfb9c6
Updated Flash / SuRequest activities with app themes
...
CompatActivity/Fragment logic has been moved to respective BaseUI. Some deprecated and unused styles have been removed in favor or newer themes.
2020-01-29 01:12:21 +08:00
Mevlüt TOPÇU
fbe776db0b
Update Turkish language
...
Hi
Update Turkish language
Merge please
Thanks
2020-01-27 21:54:44 +08:00
topjohnwu
1e2de1bb14
Preserve everything in package 'a'
...
Close #2301
2020-01-27 21:25:41 +08:00
topjohnwu
e395c9442f
Upstream system_properties
2020-01-27 19:50:03 +08:00
Tornike Khintibidze
30286f0ea5
Fixed translations
2020-01-27 18:24:26 +08:00
cristisilaghi
60ee742855
Update RO strings
2020-01-27 18:23:52 +08:00
Rom
a913ede48f
French translation update
2020-01-27 18:23:43 +08:00
Wagg13
9592583783
Language update PT-BR
...
Minor improvements and some corrections that better match words in the language.
I adapt it as I test it.
2020-01-27 18:23:34 +08:00
zrq8
ad49d3ad26
Update Simplified Chinese Translation
2020-01-27 18:23:17 +08:00
dark-basic
21ee73c2a3
Translation Correction
2020-01-27 18:23:02 +08:00
Viktor De Pasquale
f5d0cc9f32
Updated helper lists so they are lazily populated
2020-01-27 18:22:29 +08:00
vvb2060
b90c65370e
Fix build on Windows
2020-01-26 12:27:07 +08:00
John Wu
88920e0546
Merge pull request #2320 from Displax/RU
...
Update RU strings
2020-01-26 12:19:58 +08:00
dark-basic
d27773de03
Add missing string-es resources
2020-01-26 12:19:43 +08:00
Tornike Khintibidze
8abdaeb044
Translated newest string
2020-01-26 12:19:22 +08:00
孟武.尼德霍格.龍
9682d2f84a
更新繁體中文字串
...
新增一處字串
2020-01-26 12:18:57 +08:00
Ilya Kushnir
a86b9e81e9
Update RU strings
2020-01-25 17:30:59 +02:00
topjohnwu
a8bb7c68a3
Add missing string resources
2020-01-25 23:03:39 +08:00
topjohnwu
bdad29adab
Fix pt-rBR strings
2020-01-25 23:03:14 +08:00
Tornike Khintibidze
fadcfe5f7a
Added new Georgian (ქართული) translation
2020-01-25 22:56:40 +08:00
Wagg13
fbd83b5ff3
Update language Portuguese (pt-br)
2020-01-25 22:56:22 +08:00
Ilya Kushnir
c351174fa4
Preliminary Russian translation refactoring
2020-01-25 22:56:00 +08:00
zrq8
cc4f99fe28
Update Simplified Chinese Translation
2020-01-25 22:55:41 +08:00
dark-basic
b2a9b88fe5
Updated Spanish translations
2020-01-25 22:55:27 +08:00
孟武.尼德霍格.龍
da06e0ec76
更新繁體中文字串
...
-針對 v7.5.2(270)以後的 Manager 進行翻譯的增補
-祝您新年快樂
2020-01-25 22:55:01 +08:00
Viktor De Pasquale
851ee81486
Updated removing of "empty list" messages
...
Before this commit, the loader removed messages _after_ it updated the
list. Coincidentally the list updating mechanism is asynchronous to
some extent and so slower devices might've had the message removed
after changes have been dispatched which confused the recyclerview and
caused the crash.
Now, the loader is stripped of the responsibility update the list
holding helper messages. The responsibility is for the user itself to
notify listeners and then clear the helper list. This should hopefully
delay the removal to the point where choreographer had enough time to
traverse through the hierarchy.
Stupid recycler view / layout managers. Literally unnecessary crash.
2020-01-25 22:31:19 +08:00
topjohnwu
0dc9f5c324
Rename some string IDs
2020-01-23 02:34:18 +08:00
topjohnwu
36513c2301
Don't direct reference R id
2020-01-23 02:23:42 +08:00
topjohnwu
3a10597aed
Remove unused resources
2020-01-23 02:14:00 +08:00
topjohnwu
2291be5d26
Merge string resources
2020-01-23 01:40:36 +08:00
topjohnwu
345c3ef15e
Remove old settings page
2020-01-23 00:57:32 +08:00
topjohnwu
c1dad11cb3
Merge branch 'md2'
2020-01-22 14:55:06 +08:00
jjhitel
12b219e7b2
Update Korean translation
2020-01-22 14:50:33 +08:00
孟武.尼德霍格.龍
f8b48cf18d
更新繁體中文字串
...
更新繁體中文字串的顯示
2020-01-22 14:50:16 +08:00
topjohnwu
12a9792c7d
Remove old install dialog
2020-01-22 14:49:46 +08:00
topjohnwu
ba55e2bc32
Backup proper magiskinit in A-only 2SI
2020-01-22 05:12:04 +08:00
Viktor De Pasquale
c5e5b70e08
Added safe mode notice to modules
2020-01-21 22:01:55 +01:00
Viktor De Pasquale
327b186240
Fixed theme mode title
2020-01-21 21:50:13 +01:00
Viktor De Pasquale
5c1417e276
Updated home layout
2020-01-21 21:47:57 +01:00
topjohnwu
0a2c99f1dc
Use __LP64__ to detect 64 bit
2020-01-22 01:20:14 +08:00
topjohnwu
836bfbdd02
Wrapper is no longer needed
2020-01-22 01:17:30 +08:00
topjohnwu
b13a35057a
Support building standalone resetprop
2020-01-21 00:48:52 +08:00
topjohnwu
c3e77b1ec1
Add BusyBox SELinux support
...
Close #1523
2020-01-20 20:48:05 +08:00
topjohnwu
fb60bea659
Update external/selinux
2020-01-20 18:36:16 +08:00
topjohnwu
b2ddba4cbf
Proper repo fetching behavior
2020-01-19 03:15:51 +08:00
topjohnwu
053251d566
Merge ViewModel Koin modules
2020-01-18 04:07:15 +08:00
topjohnwu
cf161a5dd9
Show url dialog only if necessary
2020-01-18 03:59:02 +08:00
topjohnwu
e4bcdbd0c4
Make settings page more reasonable
2020-01-18 03:06:33 +08:00
topjohnwu
cae43b26f4
Improve settings item code
2020-01-18 01:34:46 +08:00
topjohnwu
b95cf9b9a3
Show detail descriptions in settings
2020-01-17 17:02:40 +08:00
topjohnwu
e6f443cb24
More backwards compatibility
2020-01-17 00:40:16 +08:00
topjohnwu
087ccd69c9
Cleanup resources
2020-01-16 00:07:40 +08:00
topjohnwu
7532477a2f
Make release builds work
2020-01-15 00:51:27 +08:00
topjohnwu
433ae89e53
Make things run on API 17
2020-01-15 00:05:44 +08:00
topjohnwu
de853a2651
Fix crash when manually refresh repo db
2020-01-14 22:03:29 +08:00
topjohnwu
47c3045980
Log full stack trace for unhandled exception
2020-01-14 20:14:20 +08:00
topjohnwu
dd50c19ba3
Consolidate stubs
2020-01-13 23:10:17 +08:00
topjohnwu
707d7b3342
Separate core components
2020-01-13 22:01:46 +08:00
topjohnwu
ba1a2fbce4
Remove deprecate APIs
2020-01-13 04:00:35 +08:00
topjohnwu
84f1e78660
Consolidate base viewmodel implementation
2020-01-13 03:56:03 +08:00
topjohnwu
3490ba0a56
Redesign is now the new norm
2020-01-13 00:43:09 +08:00
topjohnwu
1449486958
Replace old design with redesign (p3)
2020-01-12 21:52:32 +08:00
topjohnwu
9094cf7ce3
Replace old design with redesign (p2)
2020-01-12 16:07:30 +08:00
topjohnwu
df0a5b59f8
Replace old design with redesign (p1)
2020-01-12 15:00:49 +08:00
topjohnwu
0827044caf
Make Room incremental
2020-01-12 04:54:20 +08:00
topjohnwu
342ae7c8cd
Update AS
2020-01-12 04:51:52 +08:00
topjohnwu
fc690b9f02
Update dependencies
2020-01-12 03:50:12 +08:00
topjohnwu
22c9d836e0
Merge branch 'master' into feature/redesign
2020-01-12 03:02:03 +08:00
topjohnwu
984997e73b
Update paths
...
Close #2244
2020-01-11 12:37:08 +08:00
topjohnwu
b39f407596
Load libsqlite dynamically
2020-01-11 03:20:59 +08:00
osm0sis
615ad0cc5a
core: remove remaining legacy workarounds/leftovers
2020-01-10 23:31:43 +08:00
topjohnwu
0b41cd8564
Fix sk strings
2020-01-10 01:55:23 +08:00
topjohnwu
7db523071d
Update changelog
2020-01-10 01:41:39 +08:00
JoanVC100
974ee58b9c
New string added
2020-01-10 01:37:32 +08:00
Kamil Kras
1e88f2c382
Updated polish translation
...
Added translation for:
unsupport_magisk_msg
settings_su_biometric_title
settings_su_biometric_summary
no_biometric
2020-01-10 01:37:20 +08:00
Vladimír Kubala
0bdcfcaaf5
Update Slovak translation
2020-01-10 01:37:05 +08:00
Albert I
5f9c78d04f
app: l10n: Update Indonesian translations
...
Signed-off-by: Albert I <kras@raphielgang.org>
2020-01-10 01:36:55 +08:00
Viktor De Pasquale
afa178fdec
Fixed the checkbox being wrongly recognized as clickable
2020-01-09 18:06:30 +01:00
topjohnwu
3a0e3c98f7
Minor adjustments to prevent crashes
2020-01-09 23:42:27 +08:00
topjohnwu
fafa92d44b
Simplify rootfs persist mount
2020-01-08 22:42:54 +08:00
Viktor De Pasquale
fcedd06e72
Added grid column count settings
...
*Cough, cough* Use pinch to zoom gesture instead, not a fan of this.
2020-01-06 20:00:33 +01:00
Viktor De Pasquale
6a2acbe929
Added tiny hint that magisk can be uninstalled using the icon
2020-01-06 19:31:06 +01:00
Viktor De Pasquale
4cfff40475
Updated special chars to their full-width variants
...
Close #2219
2020-01-06 19:06:19 +01:00
Viktor De Pasquale
904948dc7d
Added empty states for all remaining screens
...
Fixed some issues in the process as the MergeObservableList doesn't support additions or deletions, duh...
2020-01-06 19:03:36 +01:00
Viktor De Pasquale
7342509b2e
Added resetting state of the recyclerview scroll listener
...
In some edge-cases the listener can still think that the content is loading.
2020-01-06 18:37:45 +01:00
Viktor De Pasquale
ed837ba26f
Updated the logic that refreshes the modules
...
Also added empty states for installed and made updatable modules visible all the time to avoid unnecessary transitions
2020-01-06 17:46:08 +01:00
Viktor De Pasquale
13262fdb18
Fixed the dialog not being actually closed on click outside
...
Misplaced methods ftw
2020-01-06 16:41:44 +01:00
Viktor De Pasquale
baf18a8762
Fixed cardview resizing itself idiotically in constraint layout
2020-01-06 16:33:55 +01:00
Viktor De Pasquale
c0b56b927f
Updated the material library back to alpha03 version
...
The aforementioned fragment has fixed issue with layouts being oversized on API21 (maybe a bit lower and higher as well, did not test) which was notable on homepage.
Unfortunately it deprecated most of the logic behind hiding of the top action view. Since it inherited and overridden the functionality from HideBottomViewOnScrollBehavior it no longer called the old methods and so the whole class was rendered _useless_. Fortunately we didn't need the whole backing implementation so the parent class was changed to the bare minimum. Hopefully this incident will not repeat.
Thanks goes to material team for introducing breaking changes in feature update.
2020-01-06 16:24:27 +01:00
topjohnwu
242e64d72f
Make write return something sane
2020-01-06 17:09:09 +08:00
topjohnwu
2262af728e
Eliminate undefined behavior
2020-01-06 05:31:38 +08:00
topjohnwu
ea9947081f
Use widgets from AndroidX
2020-01-05 16:27:28 +08:00
topjohnwu
e04f943980
Backwards support back to API 21
...
Things still crash pre-21
2020-01-05 16:05:22 +08:00
topjohnwu
b38e940088
Fix font files
2020-01-05 14:24:36 +08:00
Viktor De Pasquale
bc0bb92f7a
Updated indication of whether the module is enabled
2020-01-04 16:46:13 +01:00
Viktor De Pasquale
8737be2623
Updated policy (apps) layout to be more compact
...
Added pinch in to increase list span count / out to decrease
The setting will be remembered across the whole app (every list that uses Staggered Grid)
Updated indication of whether the policy has root access enabled permitted or not
Displays crossed out app logo if not permitted
2020-01-04 16:07:53 +01:00
Viktor De Pasquale
eb929160b3
Reverted updating material library
2020-01-04 13:30:33 +01:00
Viktor De Pasquale
b8b0f257db
Updated navigation behavior to be consistent and easily manageable
2020-01-04 13:30:21 +01:00
Viktor De Pasquale
67b5f39df2
Updated device info view to be expanded by default
2020-01-04 11:52:29 +01:00
topjohnwu
7e9b3f1a60
Merge components
2020-01-04 04:48:13 +08:00
topjohnwu
bce777d7c6
Set stub version in stub
2020-01-03 02:19:10 +08:00
topjohnwu
465aaeff82
Remove dexter dependency
2020-01-03 02:06:53 +08:00
topjohnwu
40c64d50d5
Merge branch 'master' into feature/redesign
2020-01-02 14:52:50 +08:00
topjohnwu
15bd2da824
Update magiskboot docs
2020-01-02 13:46:59 +08:00
topjohnwu
bd438ca288
Update docs
2020-01-02 13:45:08 +08:00
topjohnwu
e0d02a61a9
Add v7.5.0 changelog
2020-01-02 12:09:36 +08:00
topjohnwu
b3328a0ec2
Make sure shell command won't block
2020-01-02 02:19:56 +08:00
nikk gitanes
3c2041933f
Remote focus fixes (classic UI)
2020-01-01 15:06:24 +08:00
孟武.尼德霍格.龍
e88b1cc443
繁體中文字串更新
2020-01-01 15:05:07 +08:00
Davy Defaud
71b05b18a0
Spelling, typographical and wording fixes
...
- spelling fixes
- typographical fixes : thin spaces before exclamation and interrogation marks, true apostrophes instead of single quotes, non-breaking spaces to avoid orphan words, etc.
- rewording for a better French translation
- fix various misinterpretation
2020-01-01 15:04:34 +08:00
Davy Defaud
b07b528e2a
Add missing translation for "dling" string
2020-01-01 15:04:34 +08:00
Davy Defaud
1aeb6315ff
Spelling & typographical fixes
...
- spelling fixes : complête → complète
- typographical fixes : thin spaces before exclamation and interrogation marks
- rewording for a better French translation
2020-01-01 15:04:34 +08:00
topjohnwu
1b4a3d2d9f
More precise env detection in non-root
2020-01-01 14:19:24 +08:00
topjohnwu
3049a81c3b
Update several scripts
...
- Update backup format as we might be patching multiple partitions
- Update uninstaller to remove files in persist (sepolicy.rule)
- Better handling for dtb/dtbo partition patching
2020-01-01 14:02:44 +08:00
topjohnwu
2db1e5cb74
Minor module related fixes
2019-12-30 13:21:39 +08:00
topjohnwu
78c64d39ec
Add split command to magiskboot
...
Allow splitting image.*-dtb files to kernel and dtb
2019-12-30 13:04:39 +08:00
topjohnwu
46ba726232
Match exact "SKIPUNZIP=1" to prevent confusion
2019-12-29 15:16:04 +08:00
topjohnwu
eb26e62889
Update documentation
2019-12-29 03:28:03 +08:00
topjohnwu
7f667fed18
Allow customize.sh to skip unzip
...
Close #2184
2019-12-29 00:45:49 +08:00
topjohnwu
b2cb2b8b75
Reduce socket name length
...
Some detectors simply ban long abstract sockets
2019-12-28 21:27:55 +08:00
Zackptg5
d19f65ce4a
Ignore twrp fstabs
2019-12-28 13:47:05 +08:00
topjohnwu
025b060506
Exclude META-INF in unzip
2019-12-28 02:33:35 +08:00
topjohnwu
7fa2625a03
Fix strings
2019-12-27 20:37:33 +08:00
topjohnwu
33d62d7f21
Handle sepolicy.rule when disable/remove in app
2019-12-27 19:03:45 +08:00
topjohnwu
b336655a79
Brand new module installer script
...
The new module installer script completely changes the way how module
installer zips are structured. More info will come later in docs.
The new installer script also supports installing sepolicy.rule to
persist partitions in order to make the module work on the next boot.
2019-12-27 17:53:27 +08:00
topjohnwu
3beffd84d6
Copy sepolicy rules to persist every boot
2019-12-22 03:44:07 -05:00
topjohnwu
02761f5f35
Fix French resources
...
Close #2169
2019-12-21 06:01:18 -05:00
topjohnwu
3b9f7885e0
Stop using chdir
2019-12-21 05:29:38 -05:00
topjohnwu
7668e45890
Cleanup legacy code
2019-12-17 17:15:31 -05:00
topjohnwu
695c8bc5d0
Detect package name for copying binaries
...
Close #2152
2019-12-17 16:38:12 -05:00
topjohnwu
06c42d05c3
Drop image based Magisk support
2019-12-15 21:01:12 -05:00
JoanVC100
404104208f
Update ca-strings + Fixes
2019-12-15 19:49:12 -05:00
Rom
b4d0ad9713
Update French translation
2019-12-15 19:49:05 -05:00
Viktor De Pasquale
89b1fa341b
Added assigning repo to installed modules to show readme
...
Close #1089
2019-12-13 15:19:56 +01:00
Viktor De Pasquale
3bda7cb26b
Removed exclusive usage of 29 level API
2019-12-13 14:41:49 +01:00
topjohnwu
4f4f54a059
Remove unused code
2019-12-13 08:31:24 -05:00
topjohnwu
12fda29280
Add support for pre-init custom sepolicy patches
...
Close #1685
2019-12-13 06:05:12 -05:00
topjohnwu
af060b3132
General QoL changes
2019-12-13 00:37:06 -05:00
topjohnwu
8c500709e4
Remove SAR compatibility mode
2019-12-12 03:25:48 -05:00
topjohnwu
490e6a6f23
Add new API to load sepolicy rule file
2019-12-09 04:14:30 -05:00
topjohnwu
08177c3dd8
Mount persist partition mirror pre-init
2019-12-09 04:09:23 -05:00
topjohnwu
d22b9c26b6
Pull out common logic
2019-12-06 15:31:49 -05:00
Viktor De Pasquale
85a350b6c8
Fixed minor RTL issues
2019-12-06 20:53:22 +01:00
Viktor De Pasquale
eae4eff92f
Fixed custom dialog behaving oddly while displaying scrollable content
2019-12-06 20:34:25 +01:00
Viktor De Pasquale
848be8f806
Fixed rtl for reveal animations
2019-12-06 18:06:59 +01:00
topjohnwu
4bb8ad19cf
Small init refactoring
2019-12-06 12:02:34 -05:00
Viktor De Pasquale
c79b79b37e
Cleaned up extensions and utilities in redesign
2019-12-06 16:28:41 +01:00
Viktor De Pasquale
8a03c366b8
Updated settings item location >in code<
2019-12-06 15:39:12 +01:00
Viktor De Pasquale
37677f389c
Finished rebranding core-only mode to safe mode
...
In compliance with #2131
Mentioned features are not contained within this commit
2019-12-06 15:00:55 +01:00
topjohnwu
3e275b7dba
Update a bunch of stuffs
2019-12-06 00:30:00 -05:00
topjohnwu
11b7076a43
Fix broken getxattr calls
2019-12-05 17:34:50 -05:00
Mevlüt TOPÇU
291c718ba2
Update Turkish language
...
Hi,
Update Turkish language
Merge please
Thanks
2019-12-05 17:21:42 -05:00
Hen Ry
fcd6071c57
Update de strings
2019-12-05 17:21:31 -05:00
topjohnwu
476b61c4c9
Support system_root with NVIDIA partition names
...
Fix #2063
2019-12-05 17:20:32 -05:00
topjohnwu
8cc5f096a2
Some minor changes
2019-12-05 17:20:32 -05:00
Alvin Wong
474d65207e
Fix MagiskHide unmounting paths under /product
...
Fixes #2107
2019-12-03 05:42:10 -05:00
topjohnwu
03428329ef
Add new verity and encryption patterns
...
Close #2118
2019-12-03 05:39:39 -05:00
Viktor De Pasquale
2692234b8c
Updated hide items to follow suit with the rest of scrollable content
2019-12-02 18:53:55 +01:00
Viktor De Pasquale
bfb5d7e5ac
Reverted tinting headlines
2019-12-02 18:51:22 +01:00
Viktor De Pasquale
8c818e707f
Updated homepage to be less aggressive
2019-12-02 18:39:22 +01:00
Viktor De Pasquale
3efea47ca8
Updated settings to level functionality with the legacy
2019-12-02 18:35:48 +01:00
topjohnwu
8d21988656
Support patching DTB/DTBO partition format
2019-12-02 04:34:21 -05:00
Viktor De Pasquale
89da45f9ac
Fixed state not being propagated correctly on startup
2019-11-29 21:04:47 +01:00
Viktor De Pasquale
34a0a00e3c
Updated constraint layout to fix layout issue in dialog
2019-11-29 21:04:32 +01:00
Viktor De Pasquale
dec1094a59
Added "input" settings item, that opens custom input dialog
...
Updated order of some items in settings
2019-11-29 20:22:24 +01:00
Viktor De Pasquale
02e323133d
Updated selector "selection" design
2019-11-29 14:49:41 +01:00
Viktor De Pasquale
cb96b536a2
Added fair amount of settings implemented from the UI side
...
Updated dialog to create recycler as it behaves better than regular listview
2019-11-28 21:53:31 +01:00
Viktor De Pasquale
627b40799c
Fixed checkbox (switch) colors
2019-11-28 18:58:04 +01:00
Viktor De Pasquale
73c4b21285
Added (partially) settings screen
...
Most importantly added design and functionality backing for these items
2019-11-27 19:47:20 +01:00
Viktor De Pasquale
78d7c45be3
Merge remote-tracking branch 'john/master' into feature/redesign
2019-11-26 14:34:38 +01:00
topjohnwu
72edbfc455
Some platforms do not like null Bundles
2019-11-25 19:09:54 -05:00
topjohnwu
276535dad6
Fix incorrect kmsg path
...
/proc/kmsg -> /dev/kmsg
2019-11-25 19:09:02 -05:00
topjohnwu
e373e59661
Make sure file descriptors are setup properly
2019-11-25 19:07:06 -05:00
Viktor De Pasquale
ac5ecf222e
Fixed style for announcement card
2019-11-25 17:54:04 +01:00
Viktor De Pasquale
a20594ed48
Added emphasis on support section
2019-11-25 17:25:49 +01:00
Viktor De Pasquale
cb59cc92a3
Updated action cards to be more colorful
2019-11-25 16:58:57 +01:00
topjohnwu
34bb18448c
Fix compile errors
2019-11-23 17:18:55 -05:00
topjohnwu
01253f050a
Use smart pointers
2019-11-23 04:57:52 -05:00
Viktor De Pasquale
cc7e47bbb6
Added themes
...
All files (that used styles) were refactored to use styles directly so themes can only actually adjust colors
- Elaborate themes would be super hard to maintain and would certainly break over time
2019-11-22 19:29:53 +01:00
topjohnwu
5bee1c56a9
Properly use RAII to reduce complication
2019-11-22 03:01:49 -05:00
Lennoard
474cc7d56d
Updated pt-BR strings (based on current
...
values/strings.xml)
2019-11-21 17:44:27 -05:00
topjohnwu
bffdedddb4
Fix fwrite/fread params
2019-11-21 17:43:31 -05:00
topjohnwu
fd72f658c0
Fix SQL command when creating magiskdb
2019-11-21 14:40:12 -05:00
Viktor De Pasquale
42606162b2
Fixed text color in logs not changing with theme
2019-11-21 18:21:08 +01:00
Viktor De Pasquale
e82bc1b7bc
Fixed issues after merge
2019-11-21 18:07:13 +01:00
Viktor De Pasquale
4f0e1c6c61
Merge remote-tracking branch 'john/master' into feature/redesign
...
# Conflicts:
# app/build.gradle
# app/src/main/java/com/topjohnwu/magisk/Hacks.kt
# app/src/main/java/com/topjohnwu/magisk/data/database/RepoDatabase.kt
# app/src/main/java/com/topjohnwu/magisk/data/repository/LogRepository.kt
# app/src/main/java/com/topjohnwu/magisk/di/DatabaseModule.kt
# app/src/main/java/com/topjohnwu/magisk/extensions/RxJava.kt
# app/src/main/java/com/topjohnwu/magisk/extensions/XAndroid.kt
# app/src/main/java/com/topjohnwu/magisk/extensions/XJava.kt
# app/src/main/java/com/topjohnwu/magisk/model/download/RemoteFileService.kt
# app/src/main/java/com/topjohnwu/magisk/model/entity/recycler/LogRvItem.kt
# app/src/main/java/com/topjohnwu/magisk/model/events/ViewEvents.kt
# app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt
# app/src/main/res/xml/app_settings.xml
2019-11-21 17:46:59 +01:00
Viktor De Pasquale
550f6aff7e
Updated showing / hiding filters
2019-11-21 17:35:29 +01:00
Viktor De Pasquale
67c50d7504
Added magisk log screen
2019-11-21 17:31:37 +01:00
Viktor De Pasquale
94f0c61619
Added ignoring emulators for env_fix dialog
2019-11-21 14:30:12 +01:00
Viktor De Pasquale
8a86b30fd1
Fixed core UI elements not behaving properly after recreating
2019-11-21 14:24:14 +01:00
topjohnwu
d3b5cf82d8
Small adjustments
2019-11-21 06:17:28 -05:00
topjohnwu
d26d804cc2
Migrate to generic stream implementation
2019-11-21 06:08:02 -05:00
topjohnwu
4f9a25ee89
Create generic streams on top of stdio
...
WIP
2019-11-20 21:48:49 -05:00
Viktor De Pasquale
6379108a75
Added new log screen
2019-11-20 22:42:44 +01:00
topjohnwu
bb9ce0e897
Make sepolicy dump more efficient
2019-11-20 03:47:15 -05:00
Viktor De Pasquale
fbeaad077f
Updated themes so they are separated from styles
2019-11-19 18:53:50 +01:00
Viktor De Pasquale
8918113a31
Added colored borderless ripple effect
2019-11-19 17:56:32 +01:00
Viktor De Pasquale
c5385b5b4c
Added custom markdown window for redesign
2019-11-19 17:41:24 +01:00
Viktor De Pasquale
35475e1d25
Added option to include simple view to MagiskDialog
2019-11-19 17:41:09 +01:00
Viktor De Pasquale
fb2c292f35
Updated dialog base to handle large content
2019-11-19 17:40:42 +01:00
Viktor De Pasquale
afc3fb10c7
Updated icon padding for all buttons
2019-11-19 17:16:07 +01:00
Viktor De Pasquale
0a239c2fef
Added QOL improvements
...
- fast scroll in module/filter list
- auto closing keyboard on scroll
2019-11-19 17:15:44 +01:00
Viktor De Pasquale
f5342a09d3
Added back safe mode notice
2019-11-19 16:07:19 +01:00
Viktor De Pasquale
f72de687c5
Fixed module lists not being strictly typed in builder
2019-11-19 15:56:10 +01:00
topjohnwu
d6fb9868bf
Small sepolicy refactor and fixes
2019-11-19 05:20:18 -05:00
topjohnwu
9aff1a57d3
Cleanup headers
2019-11-19 02:04:47 -05:00
topjohnwu
7681fde4d0
Record mounts to be cleaned up in a vector
2019-11-19 00:16:20 -05:00
topjohnwu
d3b7b41927
Fix kmsg logging in magiskinit
2019-11-18 17:18:56 -05:00
Viktor De Pasquale
833269fd0a
Updated install from storage button to be more expressive
2019-11-18 17:49:03 +01:00
Viktor De Pasquale
332c1a6c59
Removed overcomplicated updates loading
...
The mechanism was replaced by loading updated directly by id to the initial list. There are two factors why yesterday-me was dumb:
1) By asynchronously loading update state, you have no control over it - hence no search
2) It's incredibly wasteful; running that hardcore search on every query? Not cool
...and from UX stand-point having updates inlined right under installed modules is by far better than nitpicking it from the list or in the search
2019-11-18 17:21:23 +01:00
Viktor De Pasquale
0f1f43057e
Updated handling queries so first query is always instant
2019-11-18 16:29:27 +01:00
Viktor De Pasquale
784a7a7f24
Added back press closing filters in hide and module screens
2019-11-17 13:53:41 +01:00
Viktor De Pasquale
8e34baa59f
Fixed bottom padding being too small
2019-11-17 13:48:52 +01:00
Viktor De Pasquale
2926772bba
Added checks for updatable state on remote repos
2019-11-17 13:46:56 +01:00
topjohnwu
da159e4655
Better environment status detection
2019-11-16 17:38:10 -05:00
Viktor De Pasquale
a7f4496db7
Added info dialog for repos
2019-11-16 20:51:56 +01:00
Viktor De Pasquale
f972f02fff
Fixed clipping version string so it better shows the update's impact
...
Incremental canary bugfix will be:
b4b2c4 > f5d2e6
Version bump will be always:
20.2 > 20.3 (regardless of canary/beta/stable)
2019-11-16 20:21:09 +01:00
Viktor De Pasquale
1c77e26c05
Added sorting order to modules
2019-11-16 20:07:59 +01:00
Viktor De Pasquale
59c5363933
Updated colors and styles
...
Namely added secondary button
2019-11-16 20:07:35 +01:00
Viktor De Pasquale
b744bb0a5a
Fixed loading showing in incorrect view-states
2019-11-16 19:20:44 +01:00
Viktor De Pasquale
0f140b408c
Added installing external modules from storage
2019-11-16 19:16:59 +01:00
osm0sis
7f6a6016d6
magiskboot: add simple workaround for Samsung offset header variant
...
- some Samsung devices (e.g. Galaxy S5 SMG-900H) use a slightly different AOSP bootimg.h variant with `#define BOOT_NAME_SIZE 20` instead of 16
- since all known examples of these device images do not have anything in the NAME or CMDLINE fields, and the bootloader also accepts standard AOSP images, simply offset the SHA1/SHA256 detection by 4 bytes to avoid false positives from these images, remain an equally effective detection shortcut, and ensure a proper SHA1 checksum on repack
aosp-dtbhdt2-4offhash-seandroid-256sig-samsung_gs5-smg900h-boot.img
UNPACK CHECKSUM [00000000b11580f7d20f70297cdc31e02626def0356c82b90000000000000000]
REPACK CHECKSUM [73b18751202e56c433f89dfd1902c290eaf4eef3e167fcf03b814b59a5e984b6]
AIK CHECKSUM [b11580f7d20f70297cdc31e02626def0356c82b9000000000000000000000000]
This patch should result in a `magiskboot unpack -n boot.img; magiskboot repack boot.img` new-boot.img matching the AIK CHECKSUM above.
2019-11-16 03:23:49 -05:00
Nick
44ed0a3279
Update RU strings
...
Minor improvements and fixes
2019-11-16 03:23:32 -05:00
dark-basic
9964e1bb8e
Update strings.xml
2019-11-16 03:23:20 -05:00
Viktor De Pasquale
8b8f725499
Fixed log items not being refreshed
...
Close #2079
2019-11-16 03:20:43 -05:00
topjohnwu
bab856bce2
Move biometric settings higher in the list
2019-11-16 03:19:25 -05:00
Viktor De Pasquale
711799b194
Added forced loading per user's demand
...
Added reselecting action (scroll up real fast)
2019-11-15 22:26:00 +01:00
topjohnwu
3d285b91c6
Use ContextCompat
2019-11-15 11:01:39 -05:00
vvb2060
1dc531930d
Update zh-rCN translation
2019-11-15 10:55:51 -05:00
Ilya Kushnir
3d3345acac
Update RU strings
2019-11-15 10:55:41 -05:00
Viktor De Pasquale
2105cacce3
Fixed fab background color in dark mode
...
Now it's recognizable from the background
2019-11-14 19:10:49 +01:00
Viktor De Pasquale
9d1d1710eb
Added new search functionality to module screen
2019-11-14 18:56:03 +01:00
Viktor De Pasquale
c69dcf3e20
Added hiding keyboard when "done" button pressed
2019-11-14 15:19:48 +01:00
Viktor De Pasquale
eec5b37da1
Fixed inconsistent animations in hide
2019-11-14 15:12:53 +01:00
topjohnwu
b29f0ca4d1
Support using BiometricPrompt
2019-11-14 05:42:39 -05:00
topjohnwu
576efbdc1b
Move su logs out of magiskdb
2019-11-14 00:01:06 -05:00
topjohnwu
a7f0510a3e
Update build.gradle
2019-11-13 17:17:21 -05:00
topjohnwu
2ef088cb60
Update RepoDao
2019-11-13 13:23:58 -05:00
topjohnwu
7c320b6fc4
Reformat RxJava extensions
2019-11-13 13:22:51 -05:00
Viktor De Pasquale
e1bda4ee8b
Added new filter for hide section
...
Parts of which will be reused in modules down the line
2019-11-13 18:29:30 +01:00
topjohnwu
5a4c82b860
Bump stub version
2019-11-13 03:01:38 -05:00
孟武.尼德霍格.龍
9b297b752e
Update strings.xml
2019-11-13 02:37:35 -05:00
vvb2060
1d6ba58ccd
Update zh-rCN translation
2019-11-13 02:37:10 -05:00
topjohnwu
1542447822
Reuse buffer
2019-11-13 02:36:45 -05:00
topjohnwu
a6f0aff659
Only store UID for current user
2019-11-13 02:36:34 -05:00
Viktor De Pasquale
54930024f5
Added biometric dialog instead of fingerprint one
2019-11-12 18:01:24 +01:00
Viktor De Pasquale
c5f2f63458
Fixed slow scrolling and list updates on hide screen
2019-11-12 17:23:27 +01:00
Viktor De Pasquale
b2b81a5d0f
Fixed "enabled" state for download action button
2019-11-12 16:45:28 +01:00
Viktor De Pasquale
265dca3723
Removed intermediate loading item
...
- adding intermediate items causes recyclerview renderer to display artifacts (copies of some views)
2019-11-12 15:58:32 +01:00
topjohnwu
171ddab32b
Reorganize code handling su requests
2019-11-12 03:20:07 -05:00
topjohnwu
2aee0b0be0
Refactor code for handling MagiskDB
2019-11-11 15:46:02 -05:00
vvb2060
817cdf7113
fix multiuser owner_managed mode
2019-11-11 14:12:26 -05:00
Viktor De Pasquale
495e734428
Updated module sections so it looks more consistent
2019-11-11 19:36:40 +01:00
Viktor De Pasquale
82120cf47f
Added processing of the download states
2019-11-11 18:01:23 +01:00
Viktor De Pasquale
027a5695f2
Added progressbars to repo items
2019-11-11 18:00:36 +01:00
Viktor De Pasquale
d6d82edff5
Fixed file service not broadcasting indeterminate states
2019-11-11 17:59:44 +01:00
Viktor De Pasquale
a12eb3fc6f
Fixed incorrect indeterminate progressbar color
2019-11-11 17:59:09 +01:00
Viktor De Pasquale
6c84574366
Added loading item to modules
2019-11-11 16:22:33 +01:00
topjohnwu
1a38f25bd9
Properly invoke method
2019-11-10 14:59:19 -05:00
topjohnwu
ad40e53349
Update hacks
2019-11-09 18:17:16 -05:00
topjohnwu
a2ddf362d8
Make a.a not extend AppComponentFactory
...
Fix #2053
2019-11-09 16:13:15 -05:00
Ilya Kushnir
65eca31635
Updating RU translation
2019-11-09 04:40:10 -05:00
osm0sis
8b0b4a2c39
SignBoot: also catch empty streamed signature as indicating not signed
...
- compare against new byte[] array as a quick tell, since when streaming from a partition with an unsigned image "signature" would of course read without issue but then remain filled by zero padding, resulting in the following:
java.io.IOException: unexpected end-of-contents marker
at org.bouncycastle.asn1.ASN1InputStream.readObject(Unknown Source:14)
at com.topjohnwu.signing.SignBoot$BootSignature.<init>(SignBoot.java:235)
at com.topjohnwu.signing.SignBoot.verifySignature(SignBoot.java:144)
at com.topjohnwu.signing.BootSigner.main(BootSigner.java:15)
at a.a.main(a.java:20)
2019-11-09 04:39:41 -05:00
Viktor De Pasquale
bc5cbe9fba
Updated module item design to follow suit with the rest of the app
2019-11-08 19:19:19 +01:00
Viktor De Pasquale
f83f92d3fa
Updated modules screen so it displays all the content in one recyclerview
...
Added "endless" scrolling support
- this is done in order to display everything very swiftly and load as user needs it
- for the most part we'll download only ~10 items and load the rest as scroll progresses, this accomplishes the illusion that whole list is being populated
Added sections and updated repo view
2019-11-08 19:04:30 +01:00
topjohnwu
c0216c0653
Get XMLs directly
2019-11-08 02:59:09 -05:00
topjohnwu
61de63a518
Cleanup manifest
2019-11-08 02:15:30 -05:00
topjohnwu
d952cc2327
Properly solve the connection problem
2019-11-07 17:41:59 -05:00
Viktor De Pasquale
19fd4dd89c
Partially reverted removing "moveToState"
2019-11-06 18:52:58 +01:00
Viktor De Pasquale
f941f5c0b0
Fixed observer not being called immediately
2019-11-06 18:37:11 +01:00
Viktor De Pasquale
c7cad7e4aa
Updated modules so they are properly arranged to respective sections
...
Small updates to module UI
2019-11-06 17:22:26 +01:00
Viktor De Pasquale
1c8988d3f7
Updated "night" style of elevated card
2019-11-05 19:39:06 +01:00
Viktor De Pasquale
70a3dbe2b0
Added primitive implementation of modules screen
2019-11-05 19:38:02 +01:00
Viktor De Pasquale
efbb3ab25f
Fixed red tint regarding system security not being spanned across the whole card
2019-11-05 16:19:41 +01:00
topjohnwu
46447f7cfd
Proper string buffer size
2019-11-05 01:46:46 -05:00
topjohnwu
a6e62e07a2
Sort modules ignore case
...
Close #2024
2019-11-04 17:14:18 -05:00
topjohnwu
b1d25e0503
Reuse ALPHANUM
2019-11-04 15:42:40 -05:00
topjohnwu
25c557248c
Use ContentProvider call method for communication
...
Previously, we use either BroadcastReceivers or Activities to receive
messages from our native daemon, but both have their own downsides.
Some OEMs blocks broadcasts if the app is not running in the background,
regardless of who the caller is. Activities on the other hand, despite
working 100% of the time, will steal the focus of the current foreground
app, even though we are just doing some logging and showing a toast.
In addition, since stubs for hiding Magisk Manager is introduced, our
only communication method is left with the broadcast option, as
only broadcasting allows targeting a specific package name, not a
component name (which will be obfuscated in the case of stubs).
To make sure root requests will work on all devices, Magisk had to do
some experiments every boot to test whether broadcast is deliverable or
not. This makes the whole thing even more complicated then ever.
So lets take a look at another kind of component in Android apps:
ContentProviders. It is a vital part of Android's ecosystem, and as far
as I know no OEMs will block requests to ContentProviders (or else
tons of functionality will break catastrophically). Starting at API 11,
the system supports calling a specific method in ContentProviders,
optionally sending extra data along with the method call. This is
perfect for the native daemon to start a communication with Magisk
Manager. Another cool thing is that we no longer need to know the
component name of the reciever, as ContentProviders identify themselves
with an "authority" name, which in Magisk Manager's case is tied to the
package name. We already have a mechanism to keep track of our current
manager package name, so this works out of the box.
So yay! No more flaky broadcast tests, no more stupid OEMs blocking
broadcasts for some bizzare reasons. This method should in theory
work on almost all devices and situations.
2019-11-04 14:32:28 -05:00
Viktor De Pasquale
b0e7c65504
Added icon for "all processes hidden" state
2019-11-04 17:40:13 +01:00
Viktor De Pasquale
b18b044b63
Updated filter card to be more compact
2019-11-04 17:39:51 +01:00
Viktor De Pasquale
8f5f8db717
Fixed dark mode colors
2019-11-04 17:39:17 +01:00
Viktor De Pasquale
016e28383b
Added animated progressbar
2019-11-04 16:58:39 +01:00
Viktor De Pasquale
f1427e9279
Updated hide item layout
2019-11-04 16:45:54 +01:00
Viktor De Pasquale
169e9ab5ad
Updated hide fragment layout and design of the filter window
2019-11-04 16:02:23 +01:00
topjohnwu
472cde29b8
Allow non supported Magisk to use Magisk Manager
...
Close #1576
2019-11-04 03:24:27 -05:00
linar10
73525d19e9
Update strings.xml
2019-11-03 17:15:17 -05:00
topjohnwu
26618f8d73
Don't do broadcast tests from app
...
Running broadcast tests from the app does not accurately verifies
whether the broadcasts can be delivered when the app is not running in
the foreground, which is why we are running the test.
The only sane way to verify broadcasts is to trigger the broadcast test
directly from the daemon on boot complete. If it is not deliverable,
then activity mode shall be chosen.
In the meantime, cleanup AndroidManifest.xml
2019-11-03 17:01:09 -05:00
topjohnwu
6f7c13b814
Refactor JarMap
2019-11-03 04:45:35 -05:00
osm0sis
e7d668502c
SignBoot: improve error catching/reporting
...
- `!= remain` shouldn't indicate "not signed", it should indicate a read error as with `!= hdr.length`
- attempt to catch unsigned images at signature read, before they make it to `BootSignature bootsig = new BootSignature(signature);` and result in the following:
java.io.IOException: unexpected end-of-contents marker
at org.bouncycastle.asn1.ASN1InputStream.readObject(Unknown Source:14)
at com.topjohnwu.signing.SignBoot$BootSignature.<init>(SignBoot.java:230)
at com.topjohnwu.signing.SignBoot.verifySignature(SignBoot.java:139)
at com.topjohnwu.signing.BootSigner.main(BootSigner.java:15)
at a.a.main(a.java:20)
2019-11-03 04:22:21 -05:00
osm0sis
6fd357962f
scripts: fix signing in recovery with addon.d-v1
...
- change to $TMPDIR in addon.d.sh since recovery addon.d-v1 backup + restore leaves you in /tmp/addon.d which the restore then deletes, which would break $BOOTSIGNER execution with the following:
libc: Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 1078 (main), pid 1078 (main)
Segmentation fault
- also move $BOOTSIGNER execution to after `cd $MAGISKBIN` to ensure it's in a working directory in all cases
- addon.d.sh data mount wasn't doing anything since /data has to already be mounted for the script to be running, so move it into /system/addon.d/99-magisk.sh stub script where it might be useful on recoveries that don't mount /data initially
Fixes #2013
2019-11-03 03:00:08 -05:00
topjohnwu
0c9feedb37
Support restarting app when obfuscated
2019-11-03 02:55:22 -05:00
Viktor De Pasquale
dad52724db
Updated hide fragment with more robust filtering UI
2019-11-02 18:31:20 +01:00
Vladimír Kubala
14ba002cbc
Update Slovak translation
2019-11-02 11:59:20 -04:00
Viktor De Pasquale
d48e9d5d72
Removed button patterns defying MD
2019-11-02 15:59:07 +01:00
topjohnwu
7da97489cc
Add v7.4.0 release notes
2019-11-02 01:24:56 -04:00
topjohnwu
a9f11b28c8
Fix busybox scripts again
2019-11-02 01:16:54 -04:00
topjohnwu
b31d986c8d
Update scripts
2019-11-02 00:41:51 -04:00
Oliver Cervera
2dad751889
Update Italian translation
...
- updated existing strings based on english updates
- added new strings
2019-11-02 00:28:07 -04:00
osm0sis
c85b1c56af
signing: fixes for bootimg hdr_v1 and hdr_v2
...
- increase SignBoot bootimg header version maximum from 4 to 8 (upstream AOSP is already at 3) and make a variable for future ease
- hdr read size of 1024 bytes was too small as hdr_v1 and hdr_v2 have increased the used header page areas to 1632 and 1648 bytes, respectively, so raise this to the minimum page size of 2048 and also make a variable for future ease
- do not return "not signed" for all caught exceptions, show StackTrace for future debugging then still return false for script purposes
- correct "test keys" boot image signing strings (scripts and app) to "verity keys"
2019-11-02 00:27:56 -04:00
osm0sis
6dd34aec47
scripts: refactor and major addon.d fixes
...
- remove redundant addon.d.sh script bits that were covered elsewhere ($TMPDIR in util_functions.sh, find_dtbo_image in patch_dtbo_image)
- refactor addon.d.sh and flash_script.sh for simplicity and readability, and put common flashing script in util_functions.sh (as patch_boot_image), which should greatly help avoid them getting out of sync going forward and fixes compressing ramdisk support and post-patch cleanup for addon.d
- add check_data to addon.d.sh since moving stock_boot* and stock_dtbo* backups depend on it and so weren't occuring with addon.d
- fix find_manager_apk with working fallback for recovery addon.d execution (where `magisk --sqlite` will not work for hidden Manager), Manager DynAPK hiding, and print a useful log warning if an APK can't be found
2019-11-02 00:27:56 -04:00
topjohnwu
4cd154675f
Random dname
2019-11-01 18:52:37 -04:00
Viktor De Pasquale
24e2c3a5e9
Removed unused icons
2019-11-01 21:30:29 +01:00
Viktor De Pasquale
064523ef25
Updated checkbox height
2019-11-01 21:15:02 +01:00
Viktor De Pasquale
85f293a44e
Updated policy colors and internal ids
2019-11-01 21:10:00 +01:00
Viktor De Pasquale
8e412bee5f
Updated radio button sizes
2019-11-01 19:15:05 +01:00
Viktor De Pasquale
7d5555f82e
Added safety notice and support section description
2019-11-01 19:02:30 +01:00
Viktor De Pasquale
6720725d27
Added clarifying tooltips and captions
2019-11-01 18:12:52 +01:00
Viktor De Pasquale
fe5c65d798
Fixed use of RxBus for toggling policies
2019-11-01 17:58:42 +01:00
Viktor De Pasquale
253f3cf1ba
Fixed inconsistent icon sizes
2019-11-01 17:55:25 +01:00
Viktor De Pasquale
d8d72f92b3
Fixed policy toggle being impossible to cancel
2019-11-01 14:47:59 +01:00
topjohnwu
a30f5b175f
Fix busybox makefiles
2019-11-01 09:38:01 -04:00
topjohnwu
8277896ca1
Make sure uninstall.sh is executed on remove
2019-11-01 03:07:12 -04:00
topjohnwu
493068c073
Attempt to rescan zygote multiple times
...
Close #1654
2019-11-01 02:12:28 -04:00
topjohnwu
f4299fbea8
Update BusyBox to 1.31.1
2019-10-31 18:11:10 -04:00
topjohnwu
10ce11d671
Fix config/locale issues
...
Close #1977
2019-10-31 17:13:06 -04:00
Viktor De Pasquale
db2e48b49f
Added manager mode recognition
2019-10-31 20:58:17 +01:00
Viktor De Pasquale
5e089451af
Added loaders to superuser and hide
2019-10-31 20:53:57 +01:00
Viktor De Pasquale
6aa22267f4
Updated Hide screen to be fully functioning
...
...although still misses search :(
2019-10-31 20:34:07 +01:00
topjohnwu
0f34457a10
Directly store strings in viewmodel
2019-10-31 15:33:13 -04:00
topjohnwu
34c65e13bc
Fix strings
...
Close #2012
2019-10-31 12:39:54 -04:00
John Wu
17a77e2577
Shortcut booleans
2019-10-31 02:44:25 -04:00
John Wu
0f219e5ae6
Better argument parsing logic
2019-10-31 02:44:25 -04:00
osm0sis
353c3c7d81
magiskboot: add unpack -n to help with repack validity tests
...
- support unpack without decompression to allow easy testing of magiskboot's header, structure and hashing handling by comparing repack checksum versus origbootimg
- make -n first to match repack
2019-10-31 02:44:25 -04:00
Rom
0a89edf3b0
Update French translation
2019-10-31 02:04:00 -04:00
topjohnwu
e7155837d7
Make sure magisk daemon won't get killed by init
...
According to this comment in #1880 :
https://github.com/topjohnwu/Magisk/issues/1880#issuecomment-546657588
If Linux recycled our PPID, and coincidentally the process that reused
the PPID is root, AND init wants to kill the whole process group,
magiskd will get killed as a result.
There is no real way to block a SIGKILL signal, so we simply make sure
our daemon PID is the process group leader by renaming the directory.
Close #1880
2019-10-31 01:57:47 -04:00
Viktor De Pasquale
f76c020dd7
Added implementation of hide screen
...
Very much wip and doesn't work at all
2019-10-30 21:58:42 +01:00
Viktor De Pasquale
722fba7805
Updated bottom nav width to not spread useless spaces
2019-10-30 21:09:00 +01:00
Viktor De Pasquale
86551909fc
Added safe mode notice to modules screen
2019-10-30 17:59:03 +01:00
Viktor De Pasquale
588e94c11d
Updated locations of certain elements
...
Settings are now only on home screen as it directly relates to what user might want to do. It is highly unlikely that they would jump from any other screen to settings.
Log is no longer main destination as it's not used very widely; it's been moved to Superuser screen. This screen now encapsulates all root-related stuff.
Home screen is now strictly info-based, except install buttons, of course.
2019-10-30 17:11:42 +01:00
topjohnwu
31e003bda5
Fix bug in version detection
2019-10-30 05:24:22 -04:00
topjohnwu
490e4d3180
Target the proper channel in stub
2019-10-30 05:00:52 -04:00
topjohnwu
dc9f69bab0
Minor changes
2019-10-30 04:15:53 -04:00
topjohnwu
fdf04f77f2
Send bitmap to notifications and shortcuts
...
On API 23+, the platform unifies the way to handle drawable
resources across processes: all drawables can be passed via Icon.
This allows us to send raw bitmap to the system without the need to
specify a resource ID. This means that we are allowed to NOT include
these drawable resources within our stub APK, since our full APK can
draw the images programmatically and send raw bitmaps to the system.
2019-10-30 01:02:53 -04:00
Viktor De Pasquale
9e66310c28
Updated fragment container
2019-10-29 16:58:46 +01:00
Viktor De Pasquale
93c422dce6
Added post-merge fixes
2019-10-29 16:52:42 +01:00
Viktor De Pasquale
7d6eebdae3
Fixed unreasonable change resulting in major breakage all around the app
2019-10-29 16:50:01 +01:00
Viktor De Pasquale
f11bb609c9
Merge remote-tracking branch 'john/master' into feature/redesign
...
# Conflicts:
# app/build.gradle
# app/src/main/java/com/topjohnwu/magisk/ClassMap.kt
# app/src/main/java/com/topjohnwu/magisk/Info.kt
# app/src/main/java/com/topjohnwu/magisk/extensions/XAndroid.kt
# app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt
# app/src/main/java/com/topjohnwu/magisk/ui/settings/SettingsFragment.kt
# app/src/main/java/com/topjohnwu/magisk/utils/DataBindingAdapters.kt
2019-10-29 15:53:53 +01:00
topjohnwu
5e87483f34
Move addAssetPath to shared
2019-10-29 07:37:19 -04:00
topjohnwu
f7aa451591
Update strings
2019-10-29 07:36:50 -04:00
topjohnwu
321d11c2c6
Move Mapping class
2019-10-29 07:21:14 -04:00
Viktor De Pasquale
b910a92731
Fixed ui issues in unrooted state
2019-10-27 11:00:16 +01:00
topjohnwu
ee447bc4ce
Improve Keygen yet again
2019-10-26 21:11:32 -04:00
Nathan Muccino
31153e4366
Minor grammatical changes
...
The plural form of the words 'documentation' and 'following' are used very rarely if ever and I don't believe that they should be used in this particular context.
2019-10-26 19:26:27 -04:00
topjohnwu
7693024c29
Replace general resources with platform
2019-10-26 19:23:57 -04:00
Mevlüt TOPÇU
9628700a2f
Update Turkish language
...
Hi,
Merge please
Thanks
2019-10-26 19:03:52 -04:00
Taras
38576173cb
Update Ukrainian translation
2019-10-26 19:03:37 -04:00
topjohnwu
19a769c12e
Update dependencies
2019-10-26 19:02:11 -04:00
topjohnwu
3c1db7d2f7
Fix some A/B devices unable to boot into recovery
...
Some newer recovery ramdisk no longer have /sbin/recovery.
Add /system/bin/recovery as an additional indication for recovery.
Close #1920
2019-10-26 17:12:35 -04:00
topjohnwu
626507093a
Don't need to wrap another layer of context
2019-10-26 15:37:12 -04:00
Viktor De Pasquale
ee7d297ca8
Partially reverted developer section changes
2019-10-26 21:14:01 +02:00
Viktor De Pasquale
a70c0174e1
Added device info card
2019-10-26 21:03:25 +02:00
Viktor De Pasquale
da707afa3f
Updated install ui to better fit app's theme
2019-10-26 17:40:29 +02:00
Viktor De Pasquale
a41597431c
Added more information to magisk/manager cards
2019-10-26 17:33:27 +02:00
Viktor De Pasquale
d0b817381e
Added "caching" of the safetynet response
2019-10-26 16:03:07 +02:00
Viktor De Pasquale
60a2e9b5dc
Updated home info cards to be more compressed
2019-10-26 15:14:20 +02:00
Viktor De Pasquale
df3a37b0a3
Updated developer section to be horizontally scrollable instead of vertically
...
In order to make room for more information
2019-10-26 12:41:34 +02:00
Viktor De Pasquale
5f4718cd13
Added string resources for install screen
2019-10-25 19:17:13 +02:00
Viktor De Pasquale
3cc5cb3123
Updated the install flow
...
Now the binary is downloaded after user selects a method. It also shows download progress as the file's being downloaded
2019-10-25 19:13:54 +02:00
Viktor De Pasquale
8a2872afa4
Removed pre-download while installing magisk
2019-10-25 17:46:20 +02:00
Viktor De Pasquale
85941c4729
Removed lol code
2019-10-25 15:40:46 +02:00
topjohnwu
588b3d14a3
Fix typo
2019-10-24 15:37:32 -04:00
vvb2060
815efa7791
Update zh-rCN translation
2019-10-24 13:04:36 -04:00
topjohnwu
97a691ce2f
Improve keygen for signing repackaged manager
2019-10-24 13:04:15 -04:00
Viktor De Pasquale
82eeefb544
Added system version to the details section for safetynet checks
2019-10-24 18:40:15 +02:00
topjohnwu
9d948f2c2b
Temporary disable verification when hiding app
...
For some reason, Google Play Protect randomly blocks our self-signed
repackaged Magisk Manager APKs. Since we are root, the sky is our
limit, so yeah, disable package verification temporarily when installing
patched APKs, LOLz
Close #1979
2019-10-24 12:23:03 -04:00
Viktor De Pasquale
f6061ba00e
Fixed bottom navigation popping up when it shouldn't
2019-10-24 18:07:36 +02:00
Viktor De Pasquale
9e3afcfe7a
Added safetynet implementation
2019-10-24 18:00:51 +02:00
topjohnwu
0b87108174
Move things around
2019-10-24 05:21:42 -04:00
topjohnwu
7fc7809cfc
More precise channel targeting
2019-10-24 04:25:05 -04:00
topjohnwu
c30be20e49
Minor CachedValue fix
2019-10-24 04:02:01 -04:00
topjohnwu
25c64db0a1
Treat outdated stub as outdated manager
2019-10-24 03:54:16 -04:00
topjohnwu
676e9c6593
Provide upgrade path for stubs
2019-10-24 02:47:40 -04:00
topjohnwu
d459859361
Show stub version
2019-10-24 00:54:40 -04:00
topjohnwu
2be0cef446
Add proper intent filters to stub
2019-10-23 17:55:26 -04:00
topjohnwu
294db93fde
Copy instead of move
...
We might be copying from CE to DE storage, which cannot be moved
2019-10-23 17:20:55 -04:00
Viktor De Pasquale
21f2f86cb8
Added safetynet implementation
...
The implementation itself was moved from fragment to self contained event. The result resolution might be moved to the event as well
2019-10-23 21:17:53 +02:00
Viktor De Pasquale
04576ca828
Added install implementation
2019-10-23 19:14:39 +02:00
Viktor De Pasquale
067cb0cd9d
Fixed magisk button states
2019-10-23 16:20:01 +02:00
topjohnwu
7f971f7173
Make sure our constructor is preserved
2019-10-23 07:51:32 -04:00
topjohnwu
5c7b59524d
Fix strings
2019-10-23 07:15:28 -04:00
topjohnwu
5133e5910e
Don't relaunch app immediately
2019-10-23 07:12:00 -04:00
osm0sis
1512c350df
magiskboot: add SPRD dt support
...
- per https://github.com/USA-RedDragon/sprd-mkbootimg-tools/blob/master/dtbtool.c
- touch up hdr and table naming to be more uniform
2019-10-23 06:58:31 -04:00
あきと ミズキト
a5fc7891a6
build: Addressed file not found
2019-10-23 06:57:47 -04:00
Abhishek Dubey
3eb9633231
Add Hindi Translation
2019-10-23 06:53:46 -04:00
onevt
ac67b48247
Fix swedish translation typo
2019-10-23 06:53:07 -04:00
topjohnwu
81b65ea646
Exclude stub id mappings from git
2019-10-23 06:45:47 -04:00
topjohnwu
45c1f6bc27
Fix restore manager when running as stub
2019-10-23 06:43:08 -04:00
topjohnwu
0d31e5c8b1
Properly migrate update channels when repackaging
2019-10-23 06:41:25 -04:00
topjohnwu
6378abf454
Make stub support directBootAware
2019-10-23 05:52:32 -04:00
topjohnwu
f8fcaadb5b
Hide manager with stub if feasible
2019-10-23 05:50:06 -04:00
topjohnwu
0b5fd3ee76
Only allow hide/restore app if connected
2019-10-23 05:43:01 -04:00
topjohnwu
d010cb7e42
Update stub
2019-10-23 05:19:54 -04:00
topjohnwu
71136d7347
Manually trigger broadcast tests if necessary
2019-10-22 16:04:20 -04:00
topjohnwu
a18c552ddf
Guard env state behind cached objects
2019-10-22 15:37:55 -04:00
Viktor De Pasquale
17fb8f2298
Added new magisk install flow
2019-10-22 20:46:09 +02:00
Viktor De Pasquale
fbfc4e72ca
Updated appbar design to be more android-like
2019-10-22 18:09:26 +02:00
Viktor De Pasquale
d2e171eabc
Added a way to listen to download service from homepage and behave accordingly
2019-10-22 17:29:45 +02:00
Viktor De Pasquale
e50094af80
Added install fragment
2019-10-22 16:29:01 +02:00
Viktor De Pasquale
93edf72993
Rationalize download failure
2019-10-22 16:26:28 +02:00
Viktor De Pasquale
a230d63cf9
Fixed having an error doesn't inform external listeners
2019-10-22 16:22:28 +02:00
topjohnwu
9656878ef3
Actually apply the input name
2019-10-22 05:06:17 -04:00
Viktor De Pasquale
7ded7de39a
Added custom dialog for setting app's name after repackaging
2019-10-22 04:52:19 -04:00
topjohnwu
0f74e89b44
Introduce component agnostic communication
...
Usually, the communication between native and the app is done via
sending intents to either broadcast or activity. These communication
channels are for launching root requests dialogs, sending root request
notifications (the toast you see when an app gained root access), and
root request logging.
Sending intents by am (activity manager) usually requires specifying
the component name in the format of <pkg>/<class name>. This means parts
of Magisk Manager cannot be randomized or else the native daemon is
unable to know where to send data to the app.
On modern Android (not sure which API is it introduced), it is possible
to send broadcasts to a package, not a specific component. Which
component will receive the intent depends on the intent filter declared
in AndroidManifest.xml. Since we already have a mechanism in native code
to keep track of the package name of Magisk Manager, this makes it
perfect to pass intents to Magisk Manager that have components being
randomly obfuscated (stub APKs).
There are a few caveats though. Although this broadcasting method works
perfectly fine on AOSP and most systems, there are OEMs out there
shipping ROMs blocking broadcasts unexpectedly. In order to make sure
Magisk works in all kinds of scenarios, we run actual tests every boot
to determine which communication method should be used.
We have 3 methods in total, ordered in preference:
1. Broadcasting to a package
2. Broadcasting to a specific component
3. Starting a specific activity component
Method 3 will always work on any device, but the downside is anytime
a communication happens, Magisk Manager will steal foreground focus
regardless of whether UI is drawn. Method 1 is the only way to support
obfuscated stub APKs. The communication test will test method 1 and 2,
and if Magisk Manager is able to receive the messages, it will then
update the daemon configuration to use whichever is preferable. If none
of the broadcasts can be delivered, then the fallback method 3 will be
used.
2019-10-21 13:59:04 -04:00
topjohnwu
953c40b083
Allow upgrade Magisk daemon in emulator
2019-10-21 13:58:57 -04:00
Viktor De Pasquale
2bb39bee2f
Updated redesign button design
2019-10-21 19:30:14 +02:00
Viktor De Pasquale
ce2ca5446a
Fixed checkbox's theme implementation in dark mode
2019-10-21 19:22:56 +02:00
Viktor De Pasquale
8a014ff786
Added most of the remaining functionality for Magisk install dialog
2019-10-21 19:22:16 +02:00
topjohnwu
271b0287d8
Pass in stub version just in case
2019-10-20 17:47:55 -04:00
topjohnwu
96a8a2a8b8
Make SuRequest default to Translucent.NoTitleBar
...
Close #1959
2019-10-20 17:35:38 -04:00
Viktor De Pasquale
dc09ec7598
Added theme mode picker dialog
...
Redesigned settings' selector for dark mode a bit
2019-10-20 17:28:18 +02:00
Viktor De Pasquale
27fb0474d5
Added more standard night-mode system
2019-10-20 17:27:39 +02:00
Viktor De Pasquale
7f0a87742a
Fixed design issues in dialogs
...
Dark theme not being properly implemented
Icons were not set
2019-10-20 17:26:00 +02:00
Viktor De Pasquale
47e236788c
Added uninstall dialog
2019-10-20 16:47:02 +02:00
topjohnwu
75306f658f
Revert "Drop API 17 (Android 4.2) support"
...
Turns out that we cannot use AndroidKeystore anyways, so we don't
actually need to drop API 17. Revert this change.
2019-10-20 07:13:03 -04:00
topjohnwu
325d9a0b86
Generate keys for signing hidden Magisk Manager
2019-10-20 06:56:33 -04:00
Viktor De Pasquale
236ad57608
Added showing download progress in the home ui
2019-10-20 12:40:50 +02:00
Viktor De Pasquale
6d03798314
Added internal download pseudo broadcasts
2019-10-20 12:40:26 +02:00
Viktor De Pasquale
c954a4f7bc
Updated icons and texts for magisk hide and safetynet
2019-10-20 11:29:04 +02:00
Viktor De Pasquale
ba588d1097
Updated position of quick links on superuser screen
2019-10-20 11:24:45 +02:00
Viktor De Pasquale
44f7c9a545
Added animations for toolbar transitions
2019-10-20 11:14:49 +02:00
Viktor De Pasquale
b910db322b
Fixed snackbar behavior in contrast with bottom navigation
2019-10-20 10:57:29 +02:00
Viktor De Pasquale
c44a942fb7
Added entry for safetynet attestation
2019-10-19 22:28:01 +02:00
Viktor De Pasquale
d713ad3499
Added "advanced" install options for installing magisk
2019-10-19 22:14:23 +02:00
Viktor De Pasquale
ddf40df649
Updated colors and elevation to be less distracting
2019-10-19 21:12:30 +02:00
Viktor De Pasquale
7c6d85221d
Updated policy items design
2019-10-19 21:07:06 +02:00
Viktor De Pasquale
b66b82a6e9
Added logic to superuser screen
2019-10-19 20:51:28 +02:00
Viktor De Pasquale
c44b85ea87
Fixed paddings on su screen
2019-10-19 18:29:48 +02:00
topjohnwu
a02493fbaa
Workaround R8 bug
2019-10-19 05:44:56 -04:00
topjohnwu
9c27d691dd
Drop API 17 (Android 4.2) support
2019-10-19 03:11:54 -04:00
Viktor De Pasquale
fcbf56e93a
Added superuser screen implementation
...
* partially
2019-10-18 19:38:55 +02:00
Viktor De Pasquale
a539ffb188
Updated styles due to low accessibility
2019-10-18 18:15:22 +02:00
Viktor De Pasquale
512f533a80
Added hide fragment for future use
2019-10-18 17:04:41 +02:00
Viktor De Pasquale
96ef9cdbee
Fixed insets not being implicitly asked for by the framework resulting in no coverage for other than main fragments
2019-10-18 16:39:08 +02:00
topjohnwu
935bd01f59
Post process release APKs
2019-10-17 18:02:31 -04:00
topjohnwu
eeb5d669f6
Assign signing keystore location in config
2019-10-17 16:20:01 -04:00
Viktor De Pasquale
28fcbbcf7b
Added basic preferences to settings
2019-10-17 19:26:35 +02:00
Viktor De Pasquale
0f4326151f
Added titles
2019-10-17 19:26:25 +02:00
Viktor De Pasquale
e0e27774ad
Added remaining stubs for the redesign
2019-10-17 18:57:00 +02:00
Viktor De Pasquale
1223b48b2c
Fixed dialog automatically dismissing itself
2019-10-17 15:52:52 +02:00
Viktor De Pasquale
d8338f0b48
Fixed event duplication
2019-10-17 15:47:11 +02:00
Viktor De Pasquale
38019f7f42
Added env check to homepage
2019-10-17 15:37:10 +02:00
topjohnwu
78daa2eb62
Do not use string resources for app label
...
This not only simplifies hiding stub APKs (no resource IDs involved),
but also opens the opportunity to allow users to customize whatever
app name they want after it is hidden.
2019-10-17 04:47:46 -04:00
topjohnwu
40eda05a30
Make main app fully independent from the stub
...
- Skip 0x7f01XXXX - 0x7f05XXXX resource IDs in the main app; they are
reserved for stub resources
- Support sending additional data from host to guest
- Use resource mapping passed from host when they are being sent
to the system framework (notifications and shortcuts)
2019-10-17 02:55:42 -04:00
topjohnwu
9f9de8c43b
Obfuscate WorkManager components
...
Remove unused components and hack the context sent into WorkManager
2019-10-16 17:03:55 -04:00
Viktor De Pasquale
23978ef4d2
Updated bottom padding for home fragment
2019-10-16 19:04:37 +02:00
Viktor De Pasquale
3b4cb23112
Fixed error in navigation implementation
2019-10-16 18:53:38 +02:00
Viktor De Pasquale
974cb1167f
Added post-merge fixes
2019-10-16 17:53:35 +02:00
Viktor De Pasquale
6ccbc272c6
Merge remote-tracking branch 'john/master' into feature/redesign
...
# Conflicts:
# app/build.gradle
# app/src/main/AndroidManifest.xml
# app/src/main/java/com/topjohnwu/magisk/model/events/ViewEvents.kt
# app/src/main/java/com/topjohnwu/magisk/model/navigation/MagiskNavigationEvent.kt
# app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt
# app/src/main/java/com/topjohnwu/magisk/ui/settings/SettingsFragment.kt
# app/src/main/java/com/topjohnwu/magisk/view/MagiskDialog.kt
# app/src/main/res/layout/dialog_magisk_base.xml
2019-10-16 17:33:54 +02:00
Viktor De Pasquale
0eb28c3265
Added navigation delegation to bypass default one
...
By making a delegate like such we protect ourselves against intrusions in views' logic
2019-10-16 17:27:11 +02:00
Viktor De Pasquale
2daa131fb2
Added layout behavior to dismiss toolbars when scrolling
2019-10-16 16:08:07 +02:00
Viktor De Pasquale
51247d36c5
Added disabled state for sections where unrooted user shouldn't have access
2019-10-16 15:47:41 +02:00
topjohnwu
a910c8ccd8
Support stub APK upgrades
2019-10-16 05:07:29 -04:00
topjohnwu
43bda2d4a4
Allow component classname obfuscation
2019-10-16 04:38:31 -04:00
topjohnwu
c7033dd757
Allow injecting custom channel URL for debug
2019-10-16 01:54:59 -04:00
topjohnwu
5673a9bace
Move system accessible resources to shared
2019-10-15 05:49:23 -04:00
topjohnwu
34ff764515
Stabilize resource IDs
2019-10-15 04:37:12 -04:00
topjohnwu
1b3a009da7
Remove unused WorkManager components
2019-10-15 04:36:09 -04:00
topjohnwu
a49002bb2c
Reorganize string resources
2019-10-15 03:33:22 -04:00
Omar Kharrab
7342fc2307
Update Arabic translation
2019-10-15 02:57:43 -04:00
topjohnwu
9867a3bd60
Pedantic boot_img_hdr multi-version support
2019-10-15 01:46:29 -04:00
topjohnwu
5ffb9eaa5b
Support loading Magisk Manager from stub on 9.0+
...
In the effort of preventing apps from crawling APK contents across the
whole installed app list to detect Magisk Manager, the solution here
is to NOT install the actual APK into the system, but instead
dynamically load the full app at runtime by a stub app. The full APK
will be stored in the application's private internal data where
non-root processes cannot read or scan.
The basis of this implementation is the class "AppComponentFactory"
that is introduced in API 28. If assigned, the system framework will
delegate app component instantiation to our custom implementation,
which allows us to do all sorts of crazy stuffs, in our case dynamically
load classes and create objects that does not exist in our APK.
There are a few challenges to achieve our goal though. First, Java
ClassLoaders follow the "delegation pattern", which means class loading
resolution will first be delegated to the parent loader before we get
a chance to do anything. This includes DexClassLoader, which is what
we will be using to load DEX files at runtime. This is a problem
because our stub app and full app share quite a lot of class names.
A custom ClassLoader, DynamicClassLoader, is created to overcome this
issue: it will always load classes in its current dex path before
delegating it to the parent.
Second, all app components (with the exception of runtime
BroadcastReceivers) are required to be declared in AndroidManifest.xml.
The full Magisk Manager has quite a lot of components (including
those from WorkManager and Room). The solution is to copy the complete
AndroidManifest.xml from the full app to the stub, and our
AppComponentFactory is responsible to construct the proper objects or
return dummy implementations in case the full APK isn't downloaded yet.
Third, other than classes, all resources required to run the full app
are also not bundled with the stub APK. We have to call an internal API
`AssetManager.addAssetPath(String)` to add our downloaded full APK into
AssetManager in order to access resources within our full app. That
internal API has existed forever, and is whitelisted from restricted
API access on modern Android versions, so it is pretty safe to use.
Fourth, on the subject of resources, some resources are not just being
used by our app at runtime. Resources such as the app icon, app label,
launch theme, basically everything referred in AndroidManifest.xml,
are used by the system to display the app properly. The system get these
resources via resource IDs and direct loading from the installed APK.
This subset of resources would have to be copied into the stub to make
the app work properly.
Fifth, resource IDs are used all over the place in XMLs and Java code.
The resource IDs in the stub and full app cannot missmatch, or
somewhere, either it be the system or AssetManager, will refer to the
incorrect resource. The full app will have to include all resources in
the stub, and all of them have to be assigned to the exact same IDs in
both APKs. To achieve this, we use AAPT2's "--emit-ids" option to dump
the resource ID mapping when building the stub, and "--stable-ids" when
building the full APK to make sure all overlapping resources in full
and stub are always assigned to the same ID.
Finally, both stub and full app have to work properly independently.
On 9.0+, the stub will have to first launch an Activity to download
the full APK before it can relaunch into the full app. On pre-9.0, the
stub should behave as it always did: download and prompt installation
to upgrade itself to full Magisk Manager. In the full app, the goal
is to introduce minimal intrusion to the code base to make sure this
whole thing is maintainable in the future. Fortunately, the solution
ends up pretty slick: all ContextWrappers in the app will be injected
with custom Contexts. The custom Contexts will return our patched
Resources object and the ClassLoader that loads itself, which will be
DynamicClassLoader in the case of running as a delegate app.
By directly patching the base Context of ContextWrappers (which covers
tons of app components) and in the Koin DI, the effect propagates deep
into every aspect of the code, making this change basically fully
transparent to almost every piece of code in full Magisk Manager.
After this commit, the stub app is able to properly download and launch
the full app, with most basic functionalities working just fine.
Do not expect Magisk Manager upgrades and hiding (repackaging) to
work properly, and some other minor issues might pop up.
This feature is still in the early WIP stages.
2019-10-14 03:49:17 -04:00
Viktor De Pasquale
37fa227fb5
Added refreshing upon connection restore
2019-10-12 16:30:18 +02:00
Viktor De Pasquale
9dd272b357
Fixed main cards collapsing on themselves
2019-10-12 16:22:12 +02:00
Viktor De Pasquale
277298feae
Updated night style for elevated cards
2019-10-12 16:11:05 +02:00
Viktor De Pasquale
ff24bc0b68
Updated card design on homepage
2019-10-12 16:10:44 +02:00
topjohnwu
b05b688267
Fix issues in stub APK
2019-10-12 03:58:45 -04:00
Simon Shi
f3d7f85063
Fix incorrect link path for /sbin/.core
2019-10-12 01:00:15 -04:00
topjohnwu
de969a9dab
Downgrade recyclerview
2019-10-12 00:53:04 -04:00
Viktor De Pasquale
700c51f95c
Added animated home icons
2019-10-10 22:00:39 +02:00
Viktor De Pasquale
659914afbe
Updated navigation icons
2019-10-10 19:08:15 +02:00
Viktor De Pasquale
ee06aed94b
Updated toolbar and bottom bar design implementation
...
TBD:
Both toolbars should move away from the screen when scrolling
2019-10-10 17:34:06 +02:00
Viktor De Pasquale
af1f5d5ab2
Fixed showing magisk version when not installed
2019-10-10 16:51:20 +02:00
Viktor De Pasquale
4292ddd0ae
Added custom install dialogs
2019-10-08 20:29:55 +02:00
Viktor De Pasquale
4a68fd65b6
Updated UI so magisk cannot be updated unless latest manager is installed
2019-10-08 18:51:31 +02:00
Viktor De Pasquale
0e33632e79
Added package name when it differs from the default one
2019-10-08 18:30:23 +02:00
Viktor De Pasquale
a9b20dae33
Fixed showing update information
2019-10-08 18:29:58 +02:00
Viktor De Pasquale
e595937740
Added versions to home screen
...
To overview (when updatable)
- It is very hard to spot a difference in versions so versions are now regarded as commit messages (after dash [-]) when applicable
- This will result in more clear, understandable text
- Bleeding edge (canary) user would see:
ffed229 > ffe02ed or 19.4 > ffe02ed
as opposed to:
19.4-ffed229 (19404)
19.5-ffe02ed (19501)
- Regular beta+ user would see:
19.4 > 19.5
To bottom of the screen
- This change is with respect to regular user. They don't care which version they run as long as they know that "up-to-date" is a gold standard
- It takes tons of real-estate on the screen which takes away the glance-ability from the overview.
2019-10-07 20:09:12 +02:00
Viktor De Pasquale
72eb584e65
Fixed fonts for the thousandth time
2019-10-07 19:23:57 +02:00
Viktor De Pasquale
8999a57f06
Added in-app settings shortcut from system settings
2019-10-06 12:20:05 +02:00
Viktor De Pasquale
8024089bde
Added indication of whether the manager is hidden
2019-10-06 12:06:31 +02:00
Viktor De Pasquale
5e01f785ae
Added handling for state with no connection
2019-10-06 12:06:09 +02:00
Viktor De Pasquale
d35d1b8860
Added more styles to be used on top of primary color
2019-10-06 11:14:11 +02:00
Viktor De Pasquale
88027f2151
Fixed fonts
2019-10-05 23:31:05 +02:00
Viktor De Pasquale
cd41e7108b
Fixed fonts
2019-10-05 23:13:17 +02:00
Viktor De Pasquale
6da566faff
Fixed overlay color for home item
2019-10-05 22:59:28 +02:00
Viktor De Pasquale
df7a866617
Fixed widget order
...
Content mustn't overlay appbar
2019-10-05 22:59:04 +02:00
Viktor De Pasquale
1cc8f13d54
Added section icons
2019-10-05 22:20:57 +02:00
Viktor De Pasquale
086ce63c6c
Updated material library
2019-10-05 22:04:34 +02:00
Viktor De Pasquale
f1dcecc6cf
Added link opening on homepage
2019-10-05 22:04:03 +02:00
Viktor De Pasquale
fe1ce08a6c
Added self-handling event types
2019-10-05 21:53:33 +02:00
Viktor De Pasquale
1d64ddb7f5
Fixed dimensions and padding throughout the homescreen
2019-10-05 12:53:40 +02:00
Viktor De Pasquale
823b121cc7
Added support section content
2019-10-05 12:42:27 +02:00
Viktor De Pasquale
149d35c687
Updated strings
2019-10-05 11:39:33 +02:00
Viktor De Pasquale
3a18e68751
Updated arrangement of manager/magisk sections
2019-10-04 19:57:27 +02:00
Viktor De Pasquale
6afcc83955
Added logic to redesigned home
...
(partially)
2019-10-04 19:36:26 +02:00
Viktor De Pasquale
277d8773f2
Added automated loading to new compat-based redesign
2019-10-04 19:35:22 +02:00
Viktor De Pasquale
f161cf8b0a
Removed no-root state
2019-10-04 18:56:35 +02:00
Viktor De Pasquale
dc62ae95a6
Added icons for navigation
2019-10-04 18:25:06 +02:00
Viktor De Pasquale
f4ecc315d0
Replaced temporary id names
2019-10-04 18:03:06 +02:00
Viktor De Pasquale
cb2a1e57fe
Added text switchers for descriptions
2019-10-04 17:56:30 +02:00
Viktor De Pasquale
1396faf433
Added animated icon for magisk (and its uninstall)
2019-10-04 17:12:28 +02:00
Viktor De Pasquale
dc8d2ae683
Added basic navigation
2019-10-03 19:38:57 +02:00
Viktor De Pasquale
191c7c50b6
Added night theme colors
2019-10-03 19:17:11 +02:00
Viktor De Pasquale
c6725b0518
Added icons for magisk/manager
2019-10-03 19:08:35 +02:00
Viktor De Pasquale
4820a6e01c
Updated toolbar to look more android-like
2019-10-03 18:41:04 +02:00
Viktor De Pasquale
57a9b5bc0c
Added home screen
2019-10-03 17:31:45 +02:00
Viktor De Pasquale
8c224da5d5
Added compat layer for activities and fragments
...
This change is made so logic is not placed within the "old" base substrate. Changes made in the redesign could potentially affect the already working part which we obviously do not want.
2019-10-03 16:42:47 +02:00
Viktor De Pasquale
14e49f3c80
Added redesign base
...
... also basic switching to redesign was added, haha
2019-10-02 19:42:38 +02:00
Viktor De Pasquale
cc8f1adca3
Added more styles regarding homescreen
2019-10-02 18:15:16 +02:00
Viktor De Pasquale
122e2f7a8e
Updated styles and simplified dimension usage
2019-09-30 19:37:57 +02:00
Viktor De Pasquale
b4e1585e2b
Added custom font
2019-09-30 19:36:51 +02:00
Viktor De Pasquale
a5830599c4
Added initial load of styles and attributes
...
Required for creating basic screens
2019-09-24 20:29:35 +02:00