IzzySoft / Adebar

Android DEvice Backup And Report, using Bash and ADB. Moved to https://codeberg.org/izzy/Adebar -- this is only a mirror now.
GNU General Public License v2.0
238 stars 41 forks source link
adb adb-backups android documentation-tool shell

Adebar

Adebar stands for Android Device Backup and Report. It is mainly based on Bash and Adb. It reportedly works on Linux, Mac and Windows (Cygwin).

Note: As this is a collection of Shell scripts, you won't find any „binaries“ attached to releases – there are none for Adebar and no „compilation“ is required. Please take a look at the wiki for further details and instructions.

What makes Adebar specific?

There are plenty of backup solutions available for Android, including such intended as front-end for ADB. So what is specific for Adebar that I wrote it, knowing of those other solutions?

The task I wrote Adebar for is to be able to quickly backup a device, and restore the backup again – e.g. when I need to factory-reset a device. That includes the case where I have to send a device to be serviced, and need to use a different device meanwhile – which would rule out a "complete restore" due to the side-effects system-apps might cause, especially when the second device is from a completely different manufacturer, and/or runs a different version of Android or even a completely different ROM. That's one of the reasons why the scripts generated by Adebar create one backup file per app (instead of one huge backup.ab holding them all) – while the other is to be able to select what to restore in general.

As a side-effect, Adebar generates a „report“ (or „short documentation“) on the device – including general device information (like model, Android version, device features, device status, configured accounts) as well as some details on installed apps (install source/date, last update, version, etc.).

What kind of backup does Adebar create?

Adebar itself does not create any backups. But it generates multiple files, including

Those three HTML files still have a .md file extension for historical reasons (before v2.0.0, they were created using Markdown). They are not complete HTML documents (no header, no footer); the example configuration in doc/ has a user-function uf_postrun() taking care to assemble the pieces into one file which then will be a valid HTML document and thus have an .html file extension. Some examples of such "assembled device documentation pages" can be found here.

Adebar-created files

Optionally, if you have the PHP CLI available on your computer, you can parse the packages.xml with provided PHP scripts, located in the tools/ directory. This directory also includes a few additional scripts:

As I cannot test Adebar on all existing devices/ROMs, there might be some errors/bugs here and there (specific to a given device, ROM or newer Android version); if you encounter one, please file an issue at the project's Codeberg presence. General feedback is also more than welcome if you're successfully using Adebar with your device, see List of tested devices.

Requirements

Most of them should already be obvious from above description. Nevertheless, all of them here in short:

QuickStart

To get started without too much hazzle, please see doc/quickstart_config.sample. Basically, you just copy that file to config/ (giving it a name of your choice), adjust 4 to 6 settings to reflect your device plus directory structure (as indicated by comments in the file), and you're ready-to-go (i.e. starting adebar-cli with the name of your config as only parameter, e.g. ./adebar-cli myandy).

More details

A documentation describing steps for installation, configuration, usage, and more can be found in the project wiki. Examples of device documentation created by Adebar are available here.

Contribute

You like Adebar and want to contribute?

Tribute

errm… I mean, Credits and thanks:

(Adebar Logo in Mondstern's Gallery of Codeberg projects)