fdroid-auto


Namefdroid-auto JSON
Version 1.0.0 PyPI version JSON
download
home_pageNone
SummaryLittle program to automate installation and removal of android apps.
upload_time2024-09-23 21:41:01
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licensefdroid-auto <-> Automating f-droid from CLI Copyright (C) 2024 Sivefunc This program is free software: you can redistribute it and/or modify it under the terms of the GNU 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 General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
keywords linux android python3 cli
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [READ in case you are using PYPI]: #
[Pypi doesn't render package/relative path images and not raw]: #
[Pypi doesn't render Emojis]: #
[Pypi doesn't render LaTeX]: #
[https://github.com/theacodes/cmarkgfm]: #
[https://github.com/pypi/warehouse/issues/5246]: #
[https://github.com/pypi/warehouse/issues/16134]: #
[Mainly it's because HTML tags are omitted according to theacodes]: #
[So I recommend you rendering mardown locally or check my gitlab/codeberg]: #

# :robot: Fdroid-auto
[https://github.com/f-droid/artwork]: #
<div align="center">
    <img align="center"
        src="https://codeberg.org/Sivefunc/fdroid_auto/raw/branch/main/readme_res/logo.svg"
        height="200"
        alt="Logo of Fdroid with some apps in the background"><br>
</div>

# :bookmark: Table of contents
1. [About](#about)
2. [Installation](#installation)
3. [Usage](#usage)
4. [Output](#output)
5. [Options](#options)
6. [Notes](#notes)

## :question: About <a name="about"></a>
Fdroid-auto is a very little program that automates the process of uninstalling, downloading and installing [F-droid](https://f-droid.org) apk's through [ADB](https://developer.android.com/tools/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](https://en.wikipedia.org/wiki/Booting#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 <a name="installation"></a>

### :penguin: Binary dependencies (Unix)
```sh
sudo apt-get install python3 python3-pip python3-setuptools adb
```

### :snake: Option 1: Pypi
```sh
python3 -m pip install fdroid-auto
```

### :hand: Option 2: Git repository (Still connects to Pypi)
```sh
git clone https://codeberg.org/Sivefunc/fdroid_auto
cd fdroid_auto
python3 -m pip install .
```

## :computer: Usage <a name="usage"></a>
1. Enable [USB Debugging](https://developer.android.com/studio/debug/dev-options#Enable-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](https://codeberg.org/Sivefunc/fdroid_auto/src/branch/main/src/apps/uninstall.txt) and [apps/download.txt](https://codeberg.org/Sivefunc/fdroid_auto/src/branch/main/src/apps/download.txt) which are examples files you can download and use.

usage: fdroid_auto [options](#options)

### :clipboard: Uninstalling
```sh
fdroid_auto -u apps/uninstall.txt       # Uninstall packages listed.
```
### :clipboard: Downloading
```sh
fdroid_auto -d apps/download.txt apps/  # Download packages listed
                                        # and saved them on apps/
```
### :clipboard: Installing
```sh
fdroid_auto -i apps/                    # Install packages listed
                                        # on directory apps/
```
### :handshake: Joined together
```sh
fdroid_auto.py -u apps/uninstall.txt \
               -d apps/download.txt apps/ \
               -i apps/
```

## :page_facing_up: Output <a name="output"></a>
| Uninstalling          | Downloading           | Installing
| :---:  		        | :---:    		        | :---:
| ![1](https://codeberg.org/Sivefunc/fdroid_auto/raw/branch/main/readme_res/uninstall.png)| ![2](https://codeberg.org/Sivefunc/fdroid_auto/raw/branch/main/readme_res/download.png)| ![3](https://codeberg.org/Sivefunc/fdroid_auto/raw/branch/main/readme_res/install.png)

## :gear: Options <a name="options"></a>
- `-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 <a name="notes"></a>
- :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](https://f-droid.org/docs/All_our_APIs/) repository is the one being used.
- [Third party repositories](https://forum.f-droid.org/t/known-repositories/721) are not supported like [Bromite](https://www.bromite.org/fdroid)
- 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](https://developer.android.com/tools/adb#connect-to-a-device-over-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](https://codeberg.org/Sivefunc/fdroid_auto/src/branch/main/src/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](https://f-droid.org/en/packages/io.github.muntashirakon.AppManager/)

## Made by :link: [Sivefunc](https://gitlab.com/sivefunc)
## Licensed under :link: [GPLv3](https://codeberg.org/Sivefunc/fdroid_auto/src/branch/main/LICENSE)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "fdroid-auto",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": "linux, android, python3, cli",
    "author": null,
    "author_email": "sivefunc <sivefunc@tuta.io>",
    "download_url": "https://files.pythonhosted.org/packages/62/bc/c44dd054a848a4bdf9704b734deede9ca7300da081af56c450540ddfc58a/fdroid_auto-1.0.0.tar.gz",
    "platform": null,
    "description": "[READ in case you are using PYPI]: #\n[Pypi doesn't render package/relative path images and not raw]: #\n[Pypi doesn't render Emojis]: #\n[Pypi doesn't render LaTeX]: #\n[https://github.com/theacodes/cmarkgfm]: #\n[https://github.com/pypi/warehouse/issues/5246]: #\n[https://github.com/pypi/warehouse/issues/16134]: #\n[Mainly it's because HTML tags are omitted according to theacodes]: #\n[So I recommend you rendering mardown locally or check my gitlab/codeberg]: #\n\n# :robot: Fdroid-auto\n[https://github.com/f-droid/artwork]: #\n<div align=\"center\">\n    <img align=\"center\"\n        src=\"https://codeberg.org/Sivefunc/fdroid_auto/raw/branch/main/readme_res/logo.svg\"\n        height=\"200\"\n        alt=\"Logo of Fdroid with some apps in the background\"><br>\n</div>\n\n# :bookmark: Table of contents\n1. [About](#about)\n2. [Installation](#installation)\n3. [Usage](#usage)\n4. [Output](#output)\n5. [Options](#options)\n6. [Notes](#notes)\n\n## :question: About <a name=\"about\"></a>\nFdroid-auto is a very little program that automates the process of uninstalling, downloading and installing [F-droid](https://f-droid.org) apk's through [ADB](https://developer.android.com/tools/adb).\n\nThis 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](https://en.wikipedia.org/wiki/Booting#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.\n\n## :file_folder: Installation <a name=\"installation\"></a>\n\n### :penguin: Binary dependencies (Unix)\n```sh\nsudo apt-get install python3 python3-pip python3-setuptools adb\n```\n\n### :snake: Option 1: Pypi\n```sh\npython3 -m pip install fdroid-auto\n```\n\n### :hand: Option 2: Git repository (Still connects to Pypi)\n```sh\ngit clone https://codeberg.org/Sivefunc/fdroid_auto\ncd fdroid_auto\npython3 -m pip install .\n```\n\n## :computer: Usage <a name=\"usage\"></a>\n1. Enable [USB Debugging](https://developer.android.com/studio/debug/dev-options#Enable-debugging) on your Android device :iphone:\n2. Connect your Android device to the Host computer through the USB cable.\n3. There are two files [apps/uninstall.txt](https://codeberg.org/Sivefunc/fdroid_auto/src/branch/main/src/apps/uninstall.txt) and [apps/download.txt](https://codeberg.org/Sivefunc/fdroid_auto/src/branch/main/src/apps/download.txt) which are examples files you can download and use.\n\nusage: fdroid_auto [options](#options)\n\n### :clipboard: Uninstalling\n```sh\nfdroid_auto -u apps/uninstall.txt       # Uninstall packages listed.\n```\n### :clipboard: Downloading\n```sh\nfdroid_auto -d apps/download.txt apps/  # Download packages listed\n                                        # and saved them on apps/\n```\n### :clipboard: Installing\n```sh\nfdroid_auto -i apps/                    # Install packages listed\n                                        # on directory apps/\n```\n### :handshake: Joined together\n```sh\nfdroid_auto.py -u apps/uninstall.txt \\\n               -d apps/download.txt apps/ \\\n               -i apps/\n```\n\n## :page_facing_up: Output <a name=\"output\"></a>\n| Uninstalling          | Downloading           | Installing\n| :---:  \t\t        | :---:    \t\t        | :---:\n| ![1](https://codeberg.org/Sivefunc/fdroid_auto/raw/branch/main/readme_res/uninstall.png)| ![2](https://codeberg.org/Sivefunc/fdroid_auto/raw/branch/main/readme_res/download.png)| ![3](https://codeberg.org/Sivefunc/fdroid_auto/raw/branch/main/readme_res/install.png)\n\n## :gear: Options <a name=\"options\"></a>\n- `-h,              --help                        \u2192 show this help message\n                                                        and exit.`\n- `-v,              --version                     \u2192 show program's version\n                                                        number and exit.`\n- `-u [FILE],       --uninstall [FILE]            \u2192 Uninstall ALL packages\n                                                        listed from FILE on\n                                                        device using adb.`\n- `-d [FILE] [DIR], --download [FILE] [DIR]       \u2192 Download ALL fdroid .apks\n                                                        listed from FILE and\n                                                        push them into DIR.`\n- `-i [DIR],        --install [DIR]               \u2192 Install ALL packages .apk\n                                                        listed from DIR on\n                                                        device using adb.`\n- `n,               --notation                    \u2192 Shows how to format the\n                                                        FILE and exit.`\n## :notebook: Notes <a name=\"notes\"></a>\n- :bangbang: The order of events occur in the following way:\n    - Uninstall: `adb shell pm uninstall -k --user 0`\n    - Download\n    - Install:   `adb install`\n\n- Suggested versions are the ones downloaded (not the latest unstable? version).\n- :shield: [Official](https://f-droid.org/docs/All_our_APIs/) repository is the one being used.\n- [Third party repositories](https://forum.f-droid.org/t/known-repositories/721) are not supported like [Bromite](https://www.bromite.org/fdroid)\n- Uninstall/Install of apps is not limited to only F-droid, if these are installed or on a directory respectively.\n- I haven't tested ADB through [Wi-Fi](https://developer.android.com/tools/adb#connect-to-a-device-over-wi-fi) only USB.\n- Manuals I used: man adb or adb shell pm\n- Read the source code to know things are done, specially [packages.py](https://codeberg.org/Sivefunc/fdroid_auto/src/branch/main/src/packages.py)\n- The `-k` option on uninstall preserves app data, so you can reinstall with install-existing and not lose data.\n- I recommend when looking for files to uninstall instead of the traditional `adb shell pm list packages` use [App Manager](https://f-droid.org/en/packages/io.github.muntashirakon.AppManager/)\n\n## Made by :link: [Sivefunc](https://gitlab.com/sivefunc)\n## Licensed under :link: [GPLv3](https://codeberg.org/Sivefunc/fdroid_auto/src/branch/main/LICENSE)\n",
    "bugtrack_url": null,
    "license": "fdroid-auto <-> Automating f-droid from CLI Copyright (C) 2024 Sivefunc  This program is free software: you can redistribute it and/or modify it under the terms of the GNU 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 General Public License for more details.  You should have received a copy of the GNU General Public License along with this program.  If not, see <https://www.gnu.org/licenses/>. ",
    "summary": "Little program to automate installation and removal of android apps.",
    "version": "1.0.0",
    "project_urls": {
        "Homepage": "https://codeberg.org/Sivefunc/fdroid_auto"
    },
    "split_keywords": [
        "linux",
        " android",
        " python3",
        " cli"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6ee5aa6dfd18f4c955ac8185b89b839f30ef065187268f24ffe8e937d82abab1",
                "md5": "fab2a71125f7a50e9f63f4d008c4bf99",
                "sha256": "2d0f0bccacc999a2111b38551058754e27477c13db00a497ac6f7c01d0a44ce9"
            },
            "downloads": -1,
            "filename": "fdroid_auto-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fab2a71125f7a50e9f63f4d008c4bf99",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 24405,
            "upload_time": "2024-09-23T21:40:59",
            "upload_time_iso_8601": "2024-09-23T21:40:59.699761Z",
            "url": "https://files.pythonhosted.org/packages/6e/e5/aa6dfd18f4c955ac8185b89b839f30ef065187268f24ffe8e937d82abab1/fdroid_auto-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "62bcc44dd054a848a4bdf9704b734deede9ca7300da081af56c450540ddfc58a",
                "md5": "cd393ab1e6b446a55ff602dd1bd66d9e",
                "sha256": "ea052fee1583c2b3a22c39c051ed926ed0eab8f755eec1ccefea98d9c9148c63"
            },
            "downloads": -1,
            "filename": "fdroid_auto-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "cd393ab1e6b446a55ff602dd1bd66d9e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 24740,
            "upload_time": "2024-09-23T21:41:01",
            "upload_time_iso_8601": "2024-09-23T21:41:01.430748Z",
            "url": "https://files.pythonhosted.org/packages/62/bc/c44dd054a848a4bdf9704b734deede9ca7300da081af56c450540ddfc58a/fdroid_auto-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-23 21:41:01",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": true,
    "codeberg_user": "Sivefunc",
    "codeberg_project": "fdroid_auto",
    "lcname": "fdroid-auto"
}
        
Elapsed time: 0.29492s