amo13 / Anarchy-Droid

One-Click Android Rom Installation Assistant
https://anarchy-droid.com
GNU General Public License v3.0
114 stars 15 forks source link
adb android degoogle installer lineageos privacy twrp

Anarchy-Droid

One-Click Android rom installation assistant

start

Anarchy-Droid is an application designed to help you install custom roms on your Android device. It is supposed to make the process of finding, downloading and installing a rom (with addons like F-Droid and microG) as easy as possible. The primary audience is all the folks who do not really know anything about Android, TWRP or roms, but still would like to run a free, open-source and non-bloated Android on their devices. Using a free after-market rom like LineageOS should not be restricted to the few people with enough technical know-how to do the complex installation procedure all by themselves.

Anarchy-Droid is available for Windows, Mac and Linux. As of now, it should be working fine with many Samsung, OnePlus, Motorola, NVidia, Fairphone and Sony devices and with all other devices that already have TWRP installed.

Anarchy-Droid is the successor of Free-Droid which has been fully rewritten from scratch in go.

Table of Contents

How it works

Anarchy-Droid needs your device to be plugged in with USB and to have USB-Debugging enabled in the Android developer settings. Once Anarchy-Droid detects your device, it will start looking for available TWRP and roms. TWRP is a so-called recovery system that is used to install roms and therefore needs to be installed prior to the rom itself. Anarchy-Droid will only allow you to click the start button if everything needed actually is available for your device.
When started, Anarchy-Droid will first download all the files it needs. They will preferably come from official sources and will be checked against md5 or sha256 checksums. Normally, this should boil down to TWRP, the rom itself and (if left to default settings) F-Droid, MicroG and the Aurora Store (the last three of which are installed using the NanoDroid packages). If your device does not seem to already run a custom rom, the second step will be booting TWRP. If needed, it will try to guide you through the process of unlocking your bootloader. After that, if we were able to boot the device into TWRP, Anarchy-Droid will check if the data partition is mountable, because it will need to be formatted for the new rom to run as expected. Finally, Anarchy-Droid will go through the installation of the rom with the additional extras like F-Droid and reboot your device to the new rom when finished.

Usage

Start

start

For the start button to become available, you will need to confirm that you have backups of what you need and to connect your device with USB/Android debugging enabled over a USB cable to your computer. Connecting the device with USB should not be too hard, but if you need help enabling debugging in the developer settings, you can search youtube to see how it is done on your device. Normally, to enable the developer settings (hidden by default) on your device, you have to open the settings, then go to "about phone" and tap 7 times on "build number". After that, the developer settings become available in your settings and you can enable "android debugging".

IMPORTANT: If you have an option to enable "OEM unlock" in your developer settings, you must do so!

Settings

On the settings panel of Anarchy-Droid, you can change some default settings to your liking. Most prominently, you may choose which rom to install - though there are a lot of devices for which only one rom is going to be available. Anarchy-Droid looks for official releases of LineageOS, LineageOS for MicroG, Resurrection Remix, Omnirom, CarbonROM, crDroid, /e/OS and AOSP-Extended. Additionally, it looks for roms available from the unofficial Anarchy-Droid archive holding roms mainly for devices with no official releases but with roms found to be working just fine on XDA.
With the other settings you can choose whether to install the listed extras: MicroG, Google apps, F-Droid, the Aurora Store and the Google Play Store. For more information on these, visit the websites of the individual projects.

settings

On this page of the application you can change some basic settings:

Advanced settings

It is advised to only change these settings if you really know what they mean and what you are doing. Otherwise the result of the installation process might not be what you would expect.

advanced

You should only change these settings if you really know what you are doing!

Help

Device not detected

A few things first:

Windows

If Anarchy-Droid is unable to detect your device in android, recovery or fastboot, you might need to install the official Windows drivers from the manufacturer of your device. Click here to find where to download the driver for your device. Alternatively, you can also use the universal ADB driver installer. If Anarchy-Droid is unable to detect your Samsung device in download (or bootloader or Odin) mode, you can try to install according drivers with zadig. Beware that on Windows 11, it seems that you can only install official drivers.

MacOS

Launching

unidentified-developer MacOS will probably present you the above notice telling you that Anarchy-Droid is not trusted because it is from an unidentified developer. This is simply because Anarchy-Droid is not willing to pay Apple $100 a year to be identified by MacOS. To start the application, either open the System Preferences of your Mac, select Security & Privacy and click on Open Anyway, or simply right-click on the Anarchy-Droid app, choose Open from the menu and choose again Open on the popup-window.

Linux

Launching

In order to launch the application on linux, you might need to allow executing the application (binary) file as a program. On most desktop environments, you can right-click the file, select Properties and tick something like Allow executing file as a program or similar. Alternatively, you can open a terminal in the directory where the program file is located and execute chmod +x ./Anarchy-Droid.

Udev Rules

udev

On Linux systems, normal users are not allowed to access the devices over USB in the way this application needs to. Therefore, you have to choose between two options: the first is to simply provide your sudo password, the second is to setup udev rules for android devices. If you don't feel comfortable providing your sudo password to an unknown application, search the code of this repository for the keyword "sudo" and see for yourself that Anarchy-Droid is not going to misuse privileges. If you still don't wish to provide the sudo password directly to the application itself, you can leave the password field empty and click on Continue. That way, you can provide the password to the sudo prompt in your terminal. This requires you to launch Anarchy-Droid from a terminal in the same folder where the application is located. If you wish to use udev rules, either configure the rules manually or, if your distribution has a packaged rule set, search for the keywords "android udev" in your distribution repositories and install the according package. In Archlinux, the package is called "android-udev".

Usage statistics

By default, Anarchy-Droid collects some very useful information about how it is being used. These information are of course completely anonymous and consist of your device model and the success of the installation steps. The collection of used devices and success rate is important, because it will reveal what devices Anarchy-Droid works well with, what devices it does not work with (yet) and how to make Anarchy-Droid more compatible with your devices.

Click here to view the collected data!

I want to help

Awesome! Help is needed especially for increasing the number of compatible devices. When Anarchy-Droid detects a device, it will ask for its model name and then lookup a codename used to find the correct TWRP and roms. For this to work reliably, the lookup file mapping model names like "Moto G 2015" to a codename like "osprey" will need to be updated.
If your device is not (or wrongly) recognized by Anarchy-Droid, please get in touch to update the lookup file with your device model name. If the boot or installation of TWRP does not work, we might need to update another lookup file containing the names of the partition TWRP needs to get installed to. This is another aspect where help might be needed to make Anarchy-Droid compatible with your device. In the same way, we need to keep a third lookup file updated. This one contains instructions on how to reboot a specific device to recovery with a combination of hardware keys to press, hold or switch. And this one contains instructions on how to reboot a specific device to bootloader mode with a combination of hardware keys to press, hold or switch. Finally, if there is just no rom available for your device, we probably can upload an unofficial release to the archive. In that case, please get in touch and tell what device needs an unofficial rom - and if you have a specific rom in mind, please leave a link to the XDA thread of the unofficial release to be uploaded to the archive.

Uninstall

Anarchy-Droid does not need any installation or uninstallation. If you wish to get rid of it, just remove the application and the Anarchy-Droid folder it created.

Acknowledgements

Anarchy-Droid would not be possible without the work of the following projects:

LineageOS, ResurrectionRemix, Omnirom, CarbonROM, AOSP-Extended, crDroid, /e/OS, TWRP, MicroG, F-Droid, Aurora, Magisk, NanoDroid, XDA.