topjohnwu
78f7fa348e
Release Magisk v30.1
...
[skip ci]
2025-07-03 03:10:10 -07:00
pndwal
d8c448b99d
Update faq.md
...
Add information on restoring Magisk App functionality when stub and full apps conflict.
2025-07-03 02:51:01 -07:00
topjohnwu
d4b83b6a44
Fix app compilation
2025-07-03 02:42:08 -07:00
vvb2060
e5d36d1d24
app: support config restrict policy
2025-07-03 02:42:08 -07:00
vvb2060
ff18cb8e70
su: support drop capabilities
2025-07-03 02:42:08 -07:00
topjohnwu
37a9724a54
Apply clippy fix
2025-07-02 21:20:14 -07:00
topjohnwu
d660401063
Treat magisk symlinks differently
2025-07-02 21:20:14 -07:00
topjohnwu
88541d6f49
Fix file attribute copy in module mounting logic
...
Due to various reasons, we cannot directly mount module files in /data
into the real paths. Instead we bind mount the module root directory and
remount this mirror with specific mount-point flags. Relevant to this
bug, the module mount is mounted as read-only, which means the file
attribute copy operation could fail in certain configurations.
The fix here is to always copy file attributes into writable locations,
so either in the tmpfs worker directory, or in the module directory
under /data.
A new test case is added to make sure this regression will no longer
happen again in the future.
Fix #9139
2025-07-02 19:23:46 -07:00
topjohnwu
ecd6129fe5
Add systemless hosts test
2025-07-02 19:23:46 -07:00
topjohnwu
6dfe9df9e2
Run cargo fmt
2025-07-02 19:23:46 -07:00
topjohnwu
e81de7ec36
Release Magisk v30.0
...
[skip ci]
2025-07-01 10:14:43 -07:00
topjohnwu
c78da1ce24
Update v30.0 changelog
2025-07-01 10:00:38 -07:00
Wang Han
7b2d40987c
Refactor magisk bins injection logic
...
Magisk binary mounting logic is not very clear now. In this commit, it
is rewritten in a more robust way. Now it has following cases in mind:
1) Device has a su binary, magisk need to overlay it
2) Choose the PATH with least files to reduce bind mount
3) Filter path which is not suitable
2025-07-01 02:16:16 -07:00
Wang Han
3a37e8c9c5
Don't clone attributes for magisk symlinks
...
This avoids use existing attributes for su, which will obviously break
magisk functions.
2025-07-01 02:16:16 -07:00
igor
58b405bce1
Update portuguese/english translation
2025-07-01 01:32:36 -07:00
Wang Han
810174ef73
Ignore set_context() error if magisktmp is /sbin
...
recreate_sbin() will bind mount original files in /sbin to tmpfs /sbin,
so we have no choice but just log here to let the loop continue.
2025-06-30 17:39:54 -07:00
topjohnwu
690a5ac033
Update to ONDK r28.5
2025-06-30 12:15:43 -07:00
topjohnwu
89aad31f7e
Update gradle dependencies
2025-06-26 09:35:18 -07:00
topjohnwu
7124db98e3
Stop involving JSON in release script
2025-06-20 00:59:38 -07:00
topjohnwu
0860e859f7
Stop updating README for each release
2025-06-20 00:32:11 -07:00
topjohnwu
04008949b8
Deprecate canary channel
2025-06-20 00:22:17 -07:00
Wang Han
39f2940bd1
Skip symlink in restore_tmpcon()
...
If magisktmp is /sbin, there may exist files which is symlink to files in
root dir. As root is RO, setcontext will fail and break iterating loop.
2025-06-16 11:09:33 -07:00
topjohnwu
1460317ebd
Cleanup C++ headers
2025-06-16 02:25:38 -07:00
topjohnwu
12340c9bd5
Update gradle version
2025-06-16 02:17:29 -07:00
topjohnwu
c4590fe2ba
Reorganize buildSrc
2025-06-10 16:51:31 -07:00
topjohnwu
b36066bbcd
Run clippy fix
2025-06-10 16:34:38 -07:00
topjohnwu
65d1c5827c
Update dependencies
2025-06-10 16:33:06 -07:00
AshiVered
1d675c8b2e
Update strings.xml
...
Improve Hebrew translations
2025-06-06 17:08:51 -07:00
Wang Han
0b494ed7df
Avoid throwing error if chmod a symlink
...
It is possible that we want to clone attributes of a regular file to a
symlink. In this case, we don't need to error out if chmod fails. Just
skip it.
2025-06-06 17:08:34 -07:00
topjohnwu
48d9fc24eb
Update release.sh
2025-06-05 11:00:27 -07:00
topjohnwu
83426f7f36
Update check update logic
2025-06-04 12:50:19 -07:00
Wang Han
0e86d4dbcb
Fix file pointer leak on error path
2025-06-03 00:34:52 -07:00
Wang Han
5e050d7456
Check binary existence before injecting zygisk bins
2025-06-03 00:33:40 -07:00
topjohnwu
898580bf90
Update dependencies
2025-06-02 19:51:12 -07:00
topjohnwu
86621a4c46
Fix gradle cache
2025-05-30 11:11:53 -07:00
topjohnwu
a834e72b71
Use sccache for clippy
2025-05-30 11:11:45 -07:00
topjohnwu
d8cf42af16
Reduce unstable feature usage
2025-05-30 11:11:36 -07:00
topjohnwu
8c79d66b7b
Update ONDK r28.4
2025-05-30 01:53:26 -07:00
Wang Han
fada8b148a
Ensure manager can always bypass su access policy
...
This fixes https://github.com/topjohnwu/Magisk/issues/9050 .
2025-05-21 16:14:46 -07:00
topjohnwu
dc0acea47c
Remove C++ I/O streams
2025-05-20 03:26:00 -07:00
topjohnwu
78d1200608
Migrate all compression code to Rust
2025-05-20 03:26:00 -07:00
topjohnwu
527bbc0368
Migrate module mounting to Rust
2025-05-20 03:24:43 -07:00
topjohnwu
4c89c7e2b3
Directly use MagiskJson
2025-05-19 10:40:58 -07:00
topjohnwu
adbea7e313
Improve update check code
2025-05-19 10:23:15 -07:00
vvb2060
76962f965e
app: use github api to check updates
2025-05-19 10:23:15 -07:00
topjohnwu
a4b8c5e46b
Update app dependencies
2025-05-18 22:24:44 -07:00
The Ali Dev
83c707439c
Add Urdu Translation
2025-05-18 22:21:05 -07:00
Radoš Milićev
25dd6121f4
Add author for Serbian translations to .xml files
2025-05-18 21:54:24 -07:00
Radoš Milićev
67f35ad027
Add Serbian latin (values-b+sr+Latn)
2025-05-18 21:54:24 -07:00
topjohnwu
0c4b8afbc5
Simplify JNI hooking code
2025-05-17 02:05:21 -07:00