topjohnwu
3cb18d6c1e
Disable Kotlin for stub
...
We need to do it after switching to built-in Kotlin
2026-03-27 08:40:46 +00:00
topjohnwu
d5476e1321
Switch over to use composite build-logic
...
Using buildSrc comes with too many caveats, switch over to a composite
build-logic solves a lot of buildSrc's issue.
2026-03-27 08:40:46 +00:00
topjohnwu
6f93f74f80
app-ng: Fix several compile warnings
2026-03-21 06:57:09 +00:00
topjohnwu
3021ef46ee
Redesign status card
...
Assist-by: Gemini
2026-03-20 19:38:34 +00:00
topjohnwu
945c83f4af
Update gradle dependencies
2026-03-20 19:38:34 +00:00
topjohnwu
b9d64bfdf9
Remove all legacy themes and AppCompatActivity
2026-03-20 19:38:34 +00:00
topjohnwu
a59e651269
Manual UI tweaking
2026-03-20 19:38:34 +00:00
topjohnwu
4eba69c892
Redesign the home screen
...
Assist-by: Gemini
2026-03-20 19:38:34 +00:00
topjohnwu
e2a437ebfc
Switch to Google Material 3 library
...
Made-with: Gemini
2026-03-20 19:38:34 +00:00
topjohnwu
9035a94804
Make build.py generate flags.prop for app projects
...
Reduce logic duplication in build.py and app/buildSrc. The ground truth
is always build.py, so dump all information into a file so the gradle
projects are always in sync with the rest of the project.
2026-03-18 01:49:38 -07:00
topjohnwu
2be3caa7c3
Update GitHub actions
2026-03-17 20:13:53 -07:00
topjohnwu
5cb025e7cc
Setup CI for app-ng
2026-03-17 20:04:47 -07:00
topjohnwu
e4f4239f5c
Re-integrate old app implementation into project
2026-03-16 03:36:43 -07:00
topjohnwu
debf1800d8
Merge next generation app impl into master
2026-03-16 03:35:08 -07:00
topjohnwu
7008c563e8
Rename apk to preserve history after future merge
2026-03-16 03:34:32 -07:00
topjohnwu
62c6ab8c0a
Move apk module to apk-ng
...
In preparation to preserve the existing old apk module codebase so
that the old implementation can live side-by-side the next generation.
2026-03-16 03:25:47 -07:00
topjohnwu
6242a605f5
Optimize imports
2026-03-16 02:56:03 -07:00
topjohnwu
925ed577e7
Move plugins to its own section in version catalog
2026-03-16 02:46:57 -07:00
topjohnwu
6bb48df712
Go through rustup proxy if possible
2026-03-11 00:43:18 -07:00
topjohnwu
e8a58776f1
Release Magisk v30.7
...
[skip ci]
2026-02-23 00:02:33 -08:00
topjohnwu
07e92948c8
Add CI tests for Android 17
2026-02-22 23:26:10 -08:00
topjohnwu
74ead75ce8
Update cargo dependencies
2026-02-22 14:39:46 -08:00
topjohnwu
bb082e703c
Update app dependencies
2026-02-22 14:22:54 -08:00
topjohnwu
9ee6a6b3d7
Update to ONDK r29.5
2026-02-06 16:32:25 -08:00
topjohnwu
dd3798905f
Update libsepol to upstream Android 16 QPR2
2026-02-05 12:51:21 -08:00
topjohnwu
4dd6e3c252
Minor changes for app
2026-02-05 00:56:10 -08:00
topjohnwu
18c1347bd3
Update to AGP 9.0
2026-01-19 23:29:02 +08:00
topjohnwu
0bbc736051
Properly set abiList with config.prop for APK
2025-12-16 02:38:27 -08:00
topjohnwu
01cb75eaef
Code cleanup
2025-12-13 22:12:30 -08:00
topjohnwu
33eaa7c5eb
Update cargo dependencies
2025-12-12 11:42:45 -08:00
topjohnwu
8734423cb0
Update to ONDK r29.4
2025-12-12 11:42:45 -08:00
topjohnwu
da9e72b2a2
Update gradle dependencies
2025-12-12 11:42:45 -08:00
topjohnwu
ff4ca74cfe
Ban all unwrap usage in codebase
2025-12-08 23:31:04 -08:00
topjohnwu
200665c48a
Make jni_hooks.hpp a normal C++ header
...
[skip ci]
2025-12-07 02:44:19 -08:00
topjohnwu
dd42aa99ea
Refactor gen_jni_hooks.py
...
[skip ci]
2025-12-07 02:25:50 -08:00
topjohnwu
871643dce2
Enable CI for API 36.1
2025-12-07 00:18:50 -08:00
topjohnwu
a510554b21
Disable Zygisk upon incomplete JNI hook
...
Do not enable Zygisk unless ALL replacements are hooked properly.
This allow Zygisk tests to fail when new signature is introduced.
2025-12-07 00:18:50 -08:00
topjohnwu
64752f38e8
Do not unwrap when getting decoder and encoder
...
Or else things will crash mysteriously when unexpected input occurs
2025-12-05 03:40:18 -08:00
topjohnwu
9ac4b5ce7d
Add proper lzma format detection
2025-12-05 03:40:18 -08:00
topjohnwu
505053f9b4
Properly support AVD with minor SDK version
2025-12-04 20:55:46 -08:00
topjohnwu
ccb264f33a
Release Magisk v30.6
...
[skip ci]
2025-12-01 15:46:33 -08:00
topjohnwu
84f7d75d30
Update release.sh
...
Strip out all canary build logic
2025-12-01 15:27:01 -08:00
topjohnwu
363566d0d5
Release Magisk v30.5
...
[skip ci]
2025-12-01 01:52:46 -08:00
topjohnwu
d9dc459bf4
Update system_properties
...
Fix #9408
2025-12-01 00:25:39 -08:00
topjohnwu
5d6b703622
Move occupy and unoccupy out of base crate
2025-11-29 00:13:41 -08:00
topjohnwu
f7ce9c38e1
Run through clippy and rustfmt
2025-11-29 00:13:41 -08:00
topjohnwu
283fc0f46f
Update cargo dependencies
2025-11-28 21:00:48 -08:00
topjohnwu
2c24a41bf2
Update gradle dependencies
2025-11-27 03:36:49 -08:00
topjohnwu
97c93a1f4d
Smaller release binary size
2025-11-27 02:00:54 -08:00
topjohnwu
8d534e6de8
Update cxx-rs
2025-11-25 02:29:45 -08:00
topjohnwu
3a60ef2039
Update to ONDK r29.3
2025-11-21 13:28:46 -08:00
topjohnwu
020e23ea13
Disable help triggers on subcommands
2025-11-03 16:16:49 -08:00
topjohnwu
1599bfc2c5
Update dependencies
2025-11-02 13:52:32 -08:00
topjohnwu
4ee2235961
Update dependencies
2025-10-20 10:30:09 -07:00
topjohnwu
536e50c6e0
Support optional trailing positional arguments
2025-10-19 17:15:30 -07:00
topjohnwu
57d9fc6099
Support short only options and switches
2025-10-19 17:15:30 -07:00
topjohnwu
52d8910bdd
Cleanup code for EarlyExit during help triggers
2025-10-19 17:15:30 -07:00
topjohnwu
c94bd49a89
Update default help triggers
2025-10-19 17:15:30 -07:00
topjohnwu
b72ba6759e
Vendor argh sources
...
Further customization will come in future commits
2025-10-19 17:15:30 -07:00
topjohnwu
5bcb55b7fc
Format Rust imports with rustfmt
2025-10-19 17:15:30 -07:00
topjohnwu
0dc8231585
Make all dependencies workspace = true
2025-10-19 17:15:30 -07:00
topjohnwu
bcc6296d94
Build debug without debug-info
2025-10-03 00:16:17 -07:00
topjohnwu
c3db2e368d
Release Magisk v30.4
...
[skip ci]
2025-10-02 04:30:47 -07:00
topjohnwu
d37da5ca66
Cleanup code
2025-10-02 04:18:20 -07:00
topjohnwu
aac52176ed
Support API level as floating point
2025-10-02 04:10:22 -07:00
topjohnwu
78e2fc37e5
Add easy knobs to disable security checks
2025-10-02 04:09:46 -07:00
topjohnwu
7270f5e413
Several minor fixes/improvements
2025-10-02 04:03:08 -07:00
topjohnwu
07cc85ccb1
Default initialize before swap in move constructor
...
Fix #9373 , fix #9384 , fix #9400 , fix #9404
2025-10-02 04:03:08 -07:00
topjohnwu
d6f17c42d5
Fix logging implementation error
2025-10-02 04:03:08 -07:00
topjohnwu
f16e93c7db
Release Magisk v30.3
...
[skip ci]
2025-09-29 21:35:45 -07:00
topjohnwu
cd8820f563
Refactor code for more readability
2025-09-29 01:41:55 -07:00
topjohnwu
b70192ca3e
Sync libsepol with upstream AOSP
2025-09-29 01:18:52 -07:00
topjohnwu
742913ebcb
Support installing Magisk on vendor_boot
...
Close #9238 , fix #8835
2025-09-28 01:10:11 -07:00
topjohnwu
ed206c6480
Upgrade cargo dependencies
2025-09-26 23:37:45 -07:00
topjohnwu
f9a8052583
Improve build.py
...
Close #8988
2025-09-26 17:00:58 -07:00
topjohnwu
f4fdd516f9
Upgrade gradle dependencies
2025-09-24 03:18:35 -07:00
topjohnwu
5925a71f94
Upgrade cargo dependencies
2025-09-24 03:05:18 -07:00
topjohnwu
3cda9beb93
Cleanup unused bindings
2025-09-24 02:38:18 -07:00
topjohnwu
8b7d1ffcdd
Migrate magisk_main to Rust
2025-09-18 03:22:44 -07:00
topjohnwu
8d02d0632e
Fix comments
2025-09-18 03:22:44 -07:00
topjohnwu
dd743f6f7e
Improve Encodable/Decodable impls
2025-09-18 01:17:28 -07:00
topjohnwu
cf483ad4d2
Migrate connect_daemon to Rust
2025-09-15 14:25:18 -07:00
topjohnwu
4aed644e08
Directly accept RequestCode for connect_daemon
2025-09-15 14:25:18 -07:00
topjohnwu
0acc39cec0
Use bitflags to implement BootState
2025-09-15 14:25:18 -07:00
topjohnwu
8b3a44344f
Move bootstages into its own module
2025-09-15 14:25:18 -07:00
topjohnwu
8b49eda85a
Migrate daemon_entry to Rust
2025-09-15 14:25:18 -07:00
topjohnwu
7057d4c7f1
Migrate setup_magisk_env to Rust
2025-09-15 14:25:18 -07:00
topjohnwu
7cccf83b37
Remove unused poll_ctrl implementation
2025-09-14 01:59:04 -07:00
topjohnwu
f10ad93c4e
Move more code of daemon_entry into Rust
2025-09-13 01:21:33 -07:00
topjohnwu
f143b5df15
Do not mount directories as mirror
...
Mounting real directories into worker will cause init to start tracking
the mount point through dev.mnt. This causes issues, so we are forced
to recursively reconstruct the mirror directory structure from scratch.
Fix #9316
2025-09-12 22:01:08 -07:00
topjohnwu
71213cc6f4
Fix path tracking in module.rs
2025-09-12 22:01:08 -07:00
topjohnwu
e2a1774e5b
Make logging.rs use nix
2025-09-11 01:17:34 -07:00
topjohnwu
0222527a1e
Use bitflags macro
2025-09-11 01:17:34 -07:00
topjohnwu
312bfe1bab
Do not leak base::ffi to external crates
2025-09-11 01:17:34 -07:00
topjohnwu
48c62a1dae
Disable exit on error for cmdline_logging
2025-09-11 01:17:34 -07:00
topjohnwu
94b1ff674f
Allow calling remove_all on non-existence file
2025-09-10 03:44:39 -07:00
topjohnwu
111136733a
Migrate away from unsafe set_len of Utf8CStr
2025-09-09 22:19:05 -07:00
topjohnwu
c8caaa98f5
Enable mount for nix
2025-09-09 20:17:09 -07:00
topjohnwu
8d28f10a3f
Enable zerocopy for nix
2025-09-09 12:04:46 -07:00
topjohnwu
177a456d8b
Enable term for nix
2025-09-09 12:04:31 -07:00