Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Would it be a good idea to consider putting this app on F-Droid #50

Open
d-RealMusic-b opened this issue Jan 6, 2024 · 37 comments
Open
Assignees
Labels
enhancement New feature or request

Comments

@d-RealMusic-b
Copy link

Magisk and KernelSU are both up on f-droid for download, so why not APatch? And here is F-Droid's inclusion policy, I think APatch is in line with their policy.

@marat2509 marat2509 added the enhancement New feature or request label Jan 6, 2024
@linsui
Copy link

linsui commented Feb 13, 2024

KernelSU is not on F-Droid, at least not in the official repo. The Magisk build metadata for F-Droid is maintained by me. If APatch agrees to be included, I can help.

@d-RealMusic-b
Copy link
Author

d-RealMusic-b commented Feb 13, 2024

KernelSU is not on F-Droid, at least not in the official repo. The Magisk build metadata for F-Droid is maintained by me. If APatch agrees to be included, I can help.

I was mistaken, KernelSU is currently in the lzzyOnDroid F-Droid Repo. Thanks for your work, hopefully we'll see APatch in F-Droid too.

@bmax121
Copy link
Owner

bmax121 commented Mar 8, 2024

I agree, if it doesn't inconvenience you too much.

@bmax121
Copy link
Owner

bmax121 commented Mar 8, 2024

@linsui

@linsui
Copy link

linsui commented Mar 8, 2024

I'll have a try. Looks like we need to build magisk first for these libs in https://github.com/bmax121/APatch/tree/main/app/libs/arm64-v8a. But it seems libmagiskpolicy.so is from a different version of magisk?

@pomelohan
Copy link
Collaborator

I'll have a try. Looks like we need to build magisk first for these libs in https://github.com/bmax121/APatch/tree/main/app/libs/arm64-v8a. But it seems libmagiskpolicy.so is from a different version of magisk?

Yes, it was a modified version, so that magiskpolicy can compatible with APatch

@linsui
Copy link

linsui commented Mar 9, 2024

Where is the source code of the modified version?

@pomelohan
Copy link
Collaborator

Where is the source code of the modified version?

Wait for @bmax121 upload patiently.

Btw, should the modified magiskpolicy being built together with APatch? If true, we may need hack gradle to do that.

@linsui
Copy link

linsui commented Mar 11, 2024

Btw, should the modified magiskpolicy being built together with APatch? If true, we may need hack gradle to do that.

It needs to be built from source. We can build it first then put it in the required location.

@pomelohan
Copy link
Collaborator

Btw, should the modified magiskpolicy being built together with APatch? If true, we may need hack gradle to do that.

It needs to be built from source. We can build it first then put it in the required location.

Sorry for the delay and thanks for supporting APatch. We’re currently working on developing these days so didn’t reply on time. We will notify you once we finished that. ;)

@bmax121
Copy link
Owner

bmax121 commented Mar 15, 2024

@linsui
Copy link

linsui commented Mar 15, 2024

Which commit do you use? I didn't see any change on master branch.

@bmax121
Copy link
Owner

bmax121 commented Mar 15, 2024

It's ok now
bmax121/Magisk@cc94f7b

@linsui
Copy link

linsui commented Mar 18, 2024

IIUC, APatch doesn't use ONDK to build the rust code. Then does it make sense to build the magisk libs with ONDK? I have to rebuild ONDK from source so if it's not needed maybe I can skip that step.

@linsui
Copy link

linsui commented Mar 18, 2024

What is the downloaded compiler in https://github.com/bmax121/KernelPatch/blob/main/.github/workflows/build.yml used for? Is there any simple way to build those kernel patch binaries?

@shuvashish76
Copy link

@bmax121 Requested at IzzyOnDroid.
According to their scanner report

No offending libs found.


Dangerous flags:
----------------
* usesCleartextTraffic

Permissions:
------------
* android.permission.INTERNET
* android.permission.WRITE_EXTERNAL_STORAGE
* android.permission.READ_EXTERNAL_STORAGE
* android.permission.QUERY_ALL_PACKAGES
* me.bmax.apatch.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

Need some clarification regarding usesCleartextTraffic and QUERY_ALL_PACKAGES

@pomelohan
Copy link
Collaborator

@bmax121 Requested at IzzyOnDroid. According to their scanner report

No offending libs found.


Dangerous flags:
----------------
* usesCleartextTraffic

Permissions:
------------
* android.permission.INTERNET
* android.permission.WRITE_EXTERNAL_STORAGE
* android.permission.READ_EXTERNAL_STORAGE
* android.permission.QUERY_ALL_PACKAGES
* me.bmax.apatch.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

Need some clarification regarding usesCleartextTraffic and QUERY_ALL_PACKAGES

Hey shuvashish76 Thank you for your contribution.

usesCleartextTraffic is for APatch Module WebUI feature and QUERY_ALL_PACKAGES is being used for selecting SuperUsers Applications. Are those enough? Feel free to notify me if you need more clarification ;)

@pomelohan
Copy link
Collaborator

What is the downloaded compiler in https://github.com/bmax121/KernelPatch/blob/main/.github/workflows/build.yml used for? Is there any simple way to build those kernel patch binaries?

Used for compiling kpimg, no more simple way but use this compiler because other one may lead to kpimg broken.

@shuvashish76
Copy link

shuvashish76 commented May 15, 2024

@pomelohan Thanks. Please add Fastlane metadata as mentioned here. (Necessary for both F-Droid / IzzyOnDroid)

@linsui
Copy link

linsui commented May 15, 2024

Used for compiling kpimg, no more simple way but use this compiler because other one may lead to kpimg broken.

Where is this special gcc from? How can I build it?

@shuvashish76
Copy link

usesCleartextTraffic is for APatch Module WebUI feature

usesCleartextTraffic is only used locally on-device (and not to reach out to the internet)? Is that ensured e.g. via a "network security police"?

@pomelohan
Copy link
Collaborator

pomelohan commented May 22, 2024

Used for compiling kpimg, no more simple way but use this compiler because other one may lead to kpimg broken.

Where is this special gcc from? How can I build it?

Sorry for the delay, busy those days...

Update: No need special gcc, only aarch64-elf gcc is required. But it's better to use the same gcc version as KernelPatch using.

@pomelohan
Copy link
Collaborator

pomelohan commented May 22, 2024

usesCleartextTraffic is for APatch Module WebUI feature

usesCleartextTraffic is only used locally on-device (and not to reach out to the internet)? Is that ensured e.g. via a "network security police"?

Sorry for the delay, busy those days...

Yes, usesCleartextTraffic is only used locally on-device. (Located on: /data/adb/modules/<module>/webroot, it is providing an interface for a
module to control itself). It wouldn't reach out to the internet unless module author do that.

@linsui
Copy link

linsui commented May 22, 2024

Update: No need special gcc, only aarch64-elf gcc is required. But it's better to use the same gcc version as KernelPatch using.

Am I understand it correctly that I just need an aarch64-elf gcc for all the build related to kernel patch?

@pomelohan
Copy link
Collaborator

pomelohan commented May 22, 2024

Update: No need special gcc, only aarch64-elf gcc is required. But it's better to use the same gcc version as KernelPatch using.

Am I understand it correctly that I just need an aarch64-elf gcc for all the build related to kernel patch?

Yes, but it is recommended to use the same gcc version as KernelPatch CI using because KernelPatch Project is special, unlike other programs. Newer or old version may lead to issues because of optimizations.

@marat2509
Copy link
Collaborator

marat2509 commented May 23, 2024

Thanks! That only leaves the storage permissions then which could use a short explanation, too 😉

@bmax121 @pomelohan

@linsui
Copy link

linsui commented May 23, 2024

Yes, but it is recommended to use the same gcc version as KernelPatch CI using because KernelPatch Project is special, unlike other programs. Newer or old version may lead to issues because of optimizations.

Can I use this package? Or I should build the aarch64-elf-gcc somehow? I'm not sure what the difference is.

@pomelohan
Copy link
Collaborator

Yes, but it is recommended to use the same gcc version as KernelPatch CI using because KernelPatch Project is special, unlike other programs. Newer or old version may lead to issues because of optimizations.

Can I use this package? Or I should build the aarch64-elf-gcc somehow? I'm not sure what the difference is.

I thought this version maybe too old to make KernelPatch working. KernelPatch CI is using this one:
https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu/12.2.rel1/binrel/arm-gnu-toolchain-12.2.rel1-x86_64-aarch64-none-elf.tar.xz

@linsui
Copy link

linsui commented May 23, 2024

I thought both of them are GCC 12.2?

@pomelohan
Copy link
Collaborator

Thanks! That only leaves the storage permissions then which could use a short explanation, too 😉

@bmax121 @pomelohan

storage permissions are used to store patched boot image and module upgrading🌹

@pomelohan
Copy link
Collaborator

I thought both of them are GCC 12.2?

IMG_2707

Sorry I didn’t notice the version. I thought it was OK if version is 12.2 xD

@linsui
Copy link

linsui commented May 23, 2024

Sorry I didn’t notice the version. I thought it was OK if version is 12.2 xD

So I can just use the gcc-linux-gnu? That's great. So the elf target is not necessary? Do I need any special configuration?

@pomelohan
Copy link
Collaborator

gcc-linux-gnu

Yes have a try, author said maybe working😂

@linsui
Copy link

linsui commented May 23, 2024

Yes have a try, author said maybe working😂

OK. 😂

@marat2509
Copy link
Collaborator

@linsui
Copy link

linsui commented May 26, 2024

Yes have a try, author said maybe working😂

https://gitlab.com/linsui/fdroiddata/-/jobs/6942666334 Does this mean that it doesn't work?

@pomelohan
Copy link
Collaborator

Yes have a try, author said maybe working😂

https://gitlab.com/linsui/fdroiddata/-/jobs/6942666334 Does this mean that it doesn't work?

Yes, kpimg.elf is necessary. Can’t we use prebuilt toolchain like the one KernelPatch using?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

6 participants