15 Commits

Author SHA1 Message Date
Michael Bestas
f6a35bb6c3 backuptool: Only check against major version
Remove an unused version export while we are at it

Change-Id: Ib25dd9eb219db460478c887e7f420aad201d645e
2024-10-19 01:10:12 +02:00
Michael Bestas
1408de438a LineageOS 22.0
Change-Id: I49235781bcd8b9fbd82fd472182141166512d463
2024-10-19 01:10:10 +02:00
Michael Bestas
b7f28608e5 LineageOS 21.0
Change-Id: Ibb75018049d2a0461a2b2fdccb509347c0d9834b
2023-10-20 09:55:48 +01:00
Arian
504571afb7 Lineage 20.0
Change-Id: I49cf6e7d02ecc36c03b27f50d4b35a70510de6e9
2022-08-23 02:02:19 +03:00
Nolen Johnson
180be0af6b LineageOS 19.1
Change-Id: I52d4109d4e1bacdbc08a5e640dfcdfdd8d319bf3
2022-03-14 17:19:28 +01:00
Michael Bestas
e843a047cd Lineage 19.0
Change-Id: I406a755d475de4ca7f92f58164282c7a07a06743
2021-10-07 19:57:15 +02:00
Alessandro Astone
c63fa8441b backuptool: Support seamless backup and restore to extra partitions
For scripts declaring ADDOND_VERSION=3 automatically mount
vendor, product, system_ext and others (when they're dedicated partitions).

Also expose the get_output_path() function to get the path to where
a file is mounted in case it lives in a dedicated partition.

ab exapmles:
get_output_path "system/product/priv-app/MyApp.apk"  = "/postinstall/product/priv-app/MyApk.apk"
get_output_path "system/app/MySystemApp.apk"         = "/postinstall/system/app/MySystemApp.apk"

a-only examples:
get_output_path "/mnt/system/system/product/priv-app/MyApp.apk" = "/mnt/system/system/product/priv-app/MyApp.apk"

******************************************************************
Instead of cycling all scripts for each stage, run
pre-backup -> backup -> post-backup in quick succession
(and likewise for restore), to ensure backwards compatibility
with scripts that wrongly assumed their environment not to
change between steps.
This is needed because we want to undo any mounting done for V3
scripts when executing V2 scripts. If a V2 script did mounting in
pre-restore and expected things to still be mounted in restore,
we would break their (yes incorrect) assumption.

Change-Id: I73fbad6f45824fed99e4482128769435348588f5
2021-02-07 20:07:09 +01:00
Bruno Martins
e1df13eb4a Lineage 18.1 is here for Xmas
Change-Id: Ic7bd96c188eb97c53cf245f79c85cc0e0d14a094
2020-12-12 03:26:14 +01:00
razorloves
48ab00f925 backuptool_ab: Use mv instead of cp for restore step
Using cp instead of mv during the restore step resulted in double the
amount of free space and inodes being used.
For example, a nano arm64 opengapps install uses around 500M. But during
a backup/restore process when the Updater is used, it temporarily uses
1G on the other slot.  That causes failed updates on devices that
don't have that much free space on the system partition.

Change-Id: I57ba2e0f52d328d4ff91d47a3db45f47bb8402af
2020-09-25 03:50:30 +02:00
Jan Altensen
dd29a4766a Lineage 18.0
Change-Id: Icda4887efd1a965530213f82fbbf8ae908843b05
2020-09-13 19:45:42 +02:00
Michael Bestas
42020e23f5 Lineage 17.1
Change-Id: Iaf3b75e49677b616a19431da8087c338ee7eb8da
2020-01-03 02:03:00 +02:00
Rashed Abdel-Tawab
b6b3421188 Lineage 17.0
Change-Id: Ib166a6218d18cf192aa314477e4044892b068e97
2019-09-05 10:38:36 +02:00
Luca Stefani
c4e288c467 backuptool_ab: Make copy_file preserve file/directory attrs
Change-Id: I52c7b124ff8364464643c51b3f17dba4e4e49435
2019-08-24 12:18:05 +02:00
Rashed Abdel-Tawab
6326caafb8 Lineage 16.0
Change-Id: Id892a06aac619efaef9c76aea8ced19af49672a6
2018-08-10 19:37:27 +01:00
Dan Pasanen
4a049b563c vendor: add custom backuptools and postinstall script for A/B OTAs
* A/B OTA devices wont run backuptools in recovery (because they don't
  go in to recovery to do an OTA). In these cases let's use a modified
  version to backup/restore from within android upon postinstall.

* Add backuptool_postinstall.sh which will be run prior to the normal
  postinstall script in order to backup/restore via addon.d scripts.

* This needs to be done in such a manner because we need /postinstall
  mounted rw instead of the ro with context= options which are used for
  the normal postinstall (dexopt) script.

Change-Id: I51511870634dd1ec5388adafddb446f95cc5a950
2018-06-22 16:09:56 +02:00