* Fixed some spelling in readme
* Updated changelog
* pkg(`com.qualcomm.qcrilmsgtunnel`): change removal and description (#59)
* pkg(`com.google.android.googlequicksearchbox`): improve description (#58)
* docs(changelog): add packages
* Add ADB filter for system packages only
* Reduced startup window size
* 0.6.2 release prep
* fix: change homepage URL to org
Co-authored-by: Scott <131740614+ProtonOSS@users.noreply.github.com>
* Dev update (#80)
* chore(issue-templates): don't allow blank issues
* pkg(`com.samsung.android.providers.contacts`): improve description
* `com.miui.miinput`: Change description and removal type
* (`com.mediatek.duraspeed`): change description
* Make the description clearer
* Add Poco Community app to lists
* (`com.xiaomi.finddevice`): Update removal status
* Add POCO Store to UAD lists
* Add Xiaomi Gallery Editor to UAD lists
* Correct grammar according to suggestions
* Fixed incorrect grammar for other MIUI apps.
* Add installation instructions for more Linux distributions in the README
I added installation instructions for
-Gentoo Linux
-NixOS
-Alpine Linux & FreeBSD
-Fedora Linux
* Update some MIUI app description and removal following suggestions
* Remove unintended spaces
* fixed wrong description for some LG apps
Tested on an LG V30 with latest stock firmware v31a.
Removing task breaks the Calendar app so it is not safe to remove.
Removing eula breaks the HD Audio Recorder app, which has many pro/studio features (such recording in FLAC 24bit/192kHz and more), that's why I changed them to expert,
* updated some lg apps
---------
Co-authored-by: AnonymousWP <50231698+AnonymousWP@users.noreply.github.com>
Co-authored-by: Scott <151531842+ProtonXOS@users.noreply.github.com>
Co-authored-by: Scott <131740614+ProtonOSS@users.noreply.github.com>
Co-authored-by: Revision <152847068+RevisionOSS@users.noreply.github.com>
Co-authored-by: AlbydS <119180144+AlbydST@users.noreply.github.com>
Co-authored-by: mirko93s <21228368+mirko93s@users.noreply.github.com>
* update dev branch
* chore(issue-templates): don't allow blank issues
* pkg(`com.samsung.android.providers.contacts`): improve description
* `com.miui.miinput`: Change description and removal type
* (`com.mediatek.duraspeed`): change description
* Make the description clearer
* Add Poco Community app to lists
* (`com.xiaomi.finddevice`): Update removal status
* Add POCO Store to UAD lists
* Add Xiaomi Gallery Editor to UAD lists
* Correct grammar according to suggestions
* Fixed incorrect grammar for other MIUI apps.
* Add installation instructions for more Linux distributions in the README
I added installation instructions for
-Gentoo Linux
-NixOS
-Alpine Linux & FreeBSD
-Fedora Linux
* Update some MIUI app description and removal following suggestions
* Remove unintended spaces
* fixed wrong description for some LG apps
Tested on an LG V30 with latest stock firmware v31a.
Removing task breaks the Calendar app so it is not safe to remove.
Removing eula breaks the HD Audio Recorder app, which has many pro/studio features (such recording in FLAC 24bit/192kHz and more), that's why I changed them to expert,
* updated some lg apps
* update ci action checkout
---------
Co-authored-by: AnonymousWP <50231698+AnonymousWP@users.noreply.github.com>
Co-authored-by: Scott <151531842+ProtonXOS@users.noreply.github.com>
Co-authored-by: Scott <131740614+ProtonOSS@users.noreply.github.com>
Co-authored-by: Revision <152847068+RevisionOSS@users.noreply.github.com>
Co-authored-by: AlbydS <119180144+AlbydST@users.noreply.github.com>
Co-authored-by: mirko93s <21228368+mirko93s@users.noreply.github.com>
---------
Co-authored-by: Anonymoussaurus <50231698+AnonymousWP@users.noreply.github.com>
Co-authored-by: Scott <131740614+ProtonOSS@users.noreply.github.com>
Co-authored-by: Scott <151531842+ProtonXOS@users.noreply.github.com>
Co-authored-by: Revision <152847068+RevisionOSS@users.noreply.github.com>
Co-authored-by: AlbydS <119180144+AlbydST@users.noreply.github.com>
Co-authored-by: mirko93s <21228368+mirko93s@users.noreply.github.com>
Co-authored-by: jxdv <virgoj@protonmail.com>
- Uses short circuit logic for loading configuration file
- Only checks for windows as the target OS when running ADB shell commands since it needs the special 0x08000000 creation flag
- Parses shell output into string before checking success status since the output is used unconditionally
- Creates helper function user_flag when an additional --user argument has to be supplied to pm
- Uses unwrap_or_else when we are only concerned with applying a function to an error
---------
Co-authored-by: w1nst0n <55300518+0x192@users.noreply.github.com>
Cherry picking of lints from clippy::pedantic / clippy::nursery / clippy::unwrap_used / clippy::expect_used
Notable changes :
- consideration of all clippy::use-self lints
- replaced sort() by unstable_sort()
- use of map_or_else() when appropriate
- replaced "".to_string() by String::new()
- replaced collect() + len() by count()
The code base now passes all the clippy::nursery lints
---------
Co-authored-by: w1nst0n <w1nst0n@keemail.me>
A modal window will now appear to give you a recap of the selected packages before applying the changes.
A complete overhaul of the way UAD handles package selection was required to implement this feature.
This fixes the regression introduced in 5ea6177 (no public release affected)
This commit also prevents UAD to try interacting with a protected user (to avoid error spam in the logfiles)
- Remove duplicated text
- Update error message when trying to restore a backup when the phone is not connected
- Add the backup name in the error message when trying to restore a deleted backup
`drain_filter` was the only unstable feature used in the code. You can now build UAD with Rust Stable.
drain_filter is not going to be stabilized anytime soon. The retain method is actually perfectly fine for our usecase. It also operate in place. The benefit of drain_filter was that the inner closure can be mutable. We don't have a need for this.
Co-authored-by: w1nst0n <55300518+0x192@users.noreply.github.com>
Removed many unwrap calls by propagating the error to the caller
This is the first external code contribution! Big up to @nozwock who is learning Rust ! :)
Co-authored-by: w1nst0n <55300518+0x192@users.noreply.github.com>
On recent Android devices, you can't interact with the user of the work profile. Any adb commands involving this user will fail with a `Shell does not have permission to access user ${user}.`
UAD was wrongly assuming stuff and tried to access non-existent data, thus causing a crash.
Quick and easy way to save the state of all the system apps on a device and restore it.
This feature is available in the UAD settings.
Note: the `Export current selection` button and the non-intuitive auto import selection (see https://github.com/0x192/universal-android-debloater/issues/192) have been replaced by this new backup/restore system.
This will allow better unit test for the debloat list file
All fields should be mandatory and serde doesn't return any error on deserialization if an field (description, dependencies, neededBy and labels) is missing.
In offline mode, after clicking on the `no internet` button, UAD would reload with an empty list after the end of the remote UAD lists download timeout.
Regression introduced in 9b564d3 (no public release affected)
- Added a new lightweight struct (CorePackage) with the minimal information needed to perform adb commands
- Added trait From<&PackageRow> for CorePackage
This change is motivated by the need to call `action_handler` for the backup/restore feature without using PackageRow.
This simplifies the code and enum seems more natural to use in this case. No need to use a dedicated name field when you can implement std::fmt::Display on the enum