Skip to main content

Little program to automate installation and removal of android apps.

Project description

:robot: Fdroid-auto

Logo of Fdroid with some apps in the background

:bookmark: Table of contents

  1. About
  2. Installation
  3. Usage
  4. Output
  5. Options
  6. Notes

:question: About

Fdroid-auto is a very little program that automates the process of uninstalling, downloading and installing F-droid apk's through ADB.

This is useful when doing Factory resets or changing of :iphone: phone and don't want to deal with the :repeat: repetitive task of :scream: bootloop while uninstalling because you didn't :brain: remember it was an important package or manually downloading F-droid apks by typing them into the search bar :mag: and then manually installing it.

:file_folder: Installation

:penguin: Binary dependencies (Unix)

sudo apt-get install python3 python3-pip python3-setuptools adb

:snake: Option 1: Pypi

python3 -m pip install fdroid-auto

:hand: Option 2: Git repository (Still connects to Pypi)

git clone https://codeberg.org/Sivefunc/fdroid_auto
cd fdroid_auto
python3 -m pip install .

:computer: Usage

  1. Enable USB Debugging on your Android device :iphone:
  2. Connect your Android device to the Host computer through the USB cable.
  3. There are two files apps/uninstall.txt and apps/download.txt which are examples files you can download and use.

usage: fdroid_auto options

:clipboard: Uninstalling

fdroid_auto -u apps/uninstall.txt       # Uninstall packages listed.

:clipboard: Downloading

fdroid_auto -d apps/download.txt apps/  # Download packages listed
                                        # and saved them on apps/

:clipboard: Installing

fdroid_auto -i apps/                    # Install packages listed
                                        # on directory apps/

:handshake: Joined together

fdroid_auto.py -u apps/uninstall.txt \
               -d apps/download.txt apps/ \
               -i apps/

:page_facing_up: Output

Uninstalling Downloading Installing
1 2 3

:gear: Options

  • -h, --help → show this help message and exit.
  • -v, --version → show program's version number and exit.
  • -u [FILE], --uninstall [FILE] → Uninstall ALL packages listed from FILE on device using adb.
  • -d [FILE] [DIR], --download [FILE] [DIR] → Download ALL fdroid .apks listed from FILE and push them into DIR.
  • -i [DIR], --install [DIR] → Install ALL packages .apk listed from DIR on device using adb.
  • n, --notation → Shows how to format the FILE and exit.

:notebook: Notes

  • :bangbang: The order of events occur in the following way:

    • Uninstall: adb shell pm uninstall -k --user 0
    • Download
    • Install: adb install
  • Suggested versions are the ones downloaded (not the latest unstable? version).

  • :shield: Official repository is the one being used.

  • Third party repositories are not supported like Bromite

  • Uninstall/Install of apps is not limited to only F-droid, if these are installed or on a directory respectively.

  • I haven't tested ADB through Wi-Fi only USB.

  • Manuals I used: man adb or adb shell pm

  • Read the source code to know things are done, specially packages.py

  • The -k option on uninstall preserves app data, so you can reinstall with install-existing and not lose data.

  • I recommend when looking for files to uninstall instead of the traditional adb shell pm list packages use App Manager

Made by :link: Sivefunc

Licensed under :link: GPLv3

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fdroid_auto-1.0.0.tar.gz (24.7 kB view details)

Uploaded Source

Built Distribution

fdroid_auto-1.0.0-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

Details for the file fdroid_auto-1.0.0.tar.gz.

File metadata

  • Download URL: fdroid_auto-1.0.0.tar.gz
  • Upload date:
  • Size: 24.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.2

File hashes

Hashes for fdroid_auto-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ea052fee1583c2b3a22c39c051ed926ed0eab8f755eec1ccefea98d9c9148c63
MD5 cd393ab1e6b446a55ff602dd1bd66d9e
BLAKE2b-256 62bcc44dd054a848a4bdf9704b734deede9ca7300da081af56c450540ddfc58a

See more details on using hashes here.

File details

Details for the file fdroid_auto-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: fdroid_auto-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 24.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.2

File hashes

Hashes for fdroid_auto-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2d0f0bccacc999a2111b38551058754e27477c13db00a497ac6f7c01d0a44ce9
MD5 fab2a71125f7a50e9f63f4d008c4bf99
BLAKE2b-256 6ee5aa6dfd18f4c955ac8185b89b839f30ef065187268f24ffe8e937d82abab1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page