MuntashirAkon / android-debloat-list

[WIP] A comprehensive list of apps for debloating Android with suggestions and vulnerabilities, based on but independent of UAD project.
GNU Affero General Public License v3.0
174 stars 15 forks source link

Merging PRs of UAD #37

Open AnonymousWP opened 9 months ago

AnonymousWP commented 9 months ago

If you're familiar with UAD, you've probably seen some of my PRs too. After creating loads of PRs for UAD, I now stopped making extensive PRs that add bloatware because it feels useless to file PRs while the project seems dead. I got the suggestion to look at your repos. Looking promising so far. 🙂

So I'm now trying to figure out how (and if technically possible) we can merge my PRs to your repo. I know the structure and attributes are different from UAD, but perhaps a script will do it. Do you have any ideas?

MuntashirAkon commented 9 months ago

I have a few ideas. But here's the best one:

  1. Merge all your PRs into a branch in your own repo. Make sure the branch is up-to-date with Winston's master branch before.
  2. Fork this repo and edit this line to set the target repository to yours instead of Winston's.
  3. Replace this line with the latest commit hash in your repo (instead of Winston's)
  4. Install PHP 8.1 (or later)
  5. Run the above script from project root, e.g.
    php scripts/update_uad.php

You should get a diff-like output in your terminal if it supports colours (I haven't actually test the script though). Now, inspect those changes to see if you've got anything to add or remove (or even, whether the script actually worked as expected).

GrabbenD commented 9 months ago

Not sure if this is up to date but it sounds like it might be doable from the webpage: https://stackoverflow.com/a/28729484


If not, here's a manual approch with git commands (but you'll have to keep track of which PRs are done): https://stackoverflow.com/a/49919432

Here's a example which uses regex to import PRs (don't copy and paste the commands though, this is just to give you an idea of how): https://stackoverflow.com/a/41926958


If that's too tedious I know there's projects like Gitkraken which give you a GUI where you can do everything on the fly by just drag and dropping, like adding remote branches into local (here's screenshots to give you a idea, not steps): add-fork-remote

github-assignee@2x-1600x1314-1-1024x841

MuntashirAkon commented 9 months ago

@GrabbenD: It's not necessary to follow these complicated ways if you know how to use a Terminal. If the branches in the PR still exist in @AnonymousWP's repo, they can be merged via git command. Otherwise, they can be merged manually by downloading the .patch files for each PR and then using git command (this can be turned into a script also if there's an incredibly large number of PRs). I can do this too in my end. But then, git will erroneously assign me as the contributor.

Obegg commented 8 months ago

This comment could be off-topic for this subject of discussion, and if it is - please mark it as such.

Merging PRs is an essential step forwards, no doubt about that, but what about open issues? I guess some issues did not get a PR to fix them, so will they just be ignored?

But I am getting ahead of myself and I actually think the way forward is to take a step back and look at the bigger picture, realize what are the priorities and in what order those should be done. Here is my take on this: Since UAD seems to be abandoned, users will reach ADL (like myself), But, unlike UAD, there's no download yet, which users are looking for. I think this project will benefit from a "plan" or "task list" in which the priorities and their order will be noted, for example, I think the first and top priority should be: As unfinished as it is - create a download/release for ADL so that users will have something that replaces UAD, that way they will see problems or have suggestions and report them back in order to improve the project. After that is done, then we can think about merging PRs (which basically just additions and changes, not the basic functionality), then we can think about open issues on UAD and what to do with them and how to solve them. In short - Basic functionally to the average user should be the top priority.

Edit: My bad, I did not know how to use it, I thought that I need an .exe file. Should add documentation on how to use it, mainly that it's all done on the APP itself and only needs ADB from the PC.