Skip to content

Latest commit

 

History

History
99 lines (76 loc) · 5.59 KB

README.md

File metadata and controls

99 lines (76 loc) · 5.59 KB

Android Debloat List

A comprehensive list of apps that come preinstalled with many ROMs and how to remove and replace them, intended for backend rather than frontend. This list is kept in synchronised with the Universal Android Debloater (UAD) project.

JSON Schema

Our JSON schema is quite different from the one used in the UAD project.

  • id (string) - Name of the package. It has to be unique per entry across all the list.
  • label (string) optional - The readable name of the package in English, currently optional as UAD does not have this field.
  • dependencies (list of strings) optional - Package names of the apps that this app depends on.
  • required_by (list of strings) optional - Package names of the apps that depend on this app.
  • tags (list of strings) optional - List of predefined tags/categories.
  • description (string) - Description of the package under 200 words.
  • web (list of strings) optional - List of websites including Google Play Store, investigation reports, etc.
  • removal (string) - How should this app be removed. The values are predefined.
  • warning (string) optional - Additional description for the app that require user's attention.
  • suggestions (string) optional - Suggestion ID.

Values for removal

name description
delete It's safe to just get rid of the app.
replace Replace the app with something else, preferably, with one of the suggestions.
caution It might not be safe to get rid of the app.
unsafe It is unsafe to get rid of the app. warning must be set for this.

Values for tags

Will be added when required.

Suggestions

The filename of the suggestion is its Suggestion ID. The file contains a list of suggested apps. Each suggestion has the following format:

  • id (string) - Package name of the app.
  • label (string) - The readable name of the app in English.
  • reason (string) optional - Why this is suggested, under 100 words.
  • source (string) optional - Source of the app. This is a predefined value, could be fgas where f stands for F-Droid, g for Google Play Store, a for Amazon Appstore and s for Samsung Galaxy Store.
  • repo (string) - Link to the project repository.

Criteria for suggestions

  1. It has to be free and open source having an OSI approved license.
  2. Interface or functions (UI/UX) should be very or nearly similar to the original app or even better. If no such alternative is available right now, the reason must be included.
  3. For crucial apps, for example, messaging apps, only audited apps might be listed. Unaudited yet popularly used apps should contain sufficient warning in the reason section.
  4. The app should not contain any trackers. If it does contain any reasonable tracker such as crash reporting framework, it should be disabled by default. If there are no such alternative, the reason section must be updated with sufficient warning.
  5. No credits or endorsement is allowed. If a suggested app contain or advertise its inclusion in this list, the app will be removed from the list in immediate effect.

Contributing

The repository is divided into several folders to make it easier for the first-time contributors as well as those who do not have access to a personal computer. However, we encourage you to create a new issue if you are not willing to investigate your proposed changes.

Each json file represents a list of bloatware for a category. For example, aosp.json contains a list of apps that comes prebuilt with the AOSP itself, oem.json contains a list of apps from all the vendors or OEMs. The list names are very generic, and if you have a new idea for a list, it has to be generic too. For example, apps related to productivity can be separated from misc.json under a new json file. All entries must appear in the alphabetic order based on their id. You should avoid contributing to the pending.json file as it is kept for compatibility reasons only and shall be removed in the future.

suggestions folder contains a list of suggestions for a certain category. The filename of each list is considered its ID and should not contain any non-ASCII or whitespace characters. It is done this way because multiple apps could be assigned the same set of suggestions.

To contribute, read the JSON schema section above and create a pull request with the desired changes. Minor changes should be accepted without much review, but major changes such as the addition of a new package require a review. The review process is decided by the maintainers based on the type of change.

License

Copyright (C) 2022  Muntashir Al-Islam

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.