Tips & Tricks
=============
* 50-cm.sh contains only a reference implementation. You may customize the methods however you wish.
For example, 20-foobar.sh pre-backup can use a loop with conditionals to generate a dynamic backup list in
/tmp/foobar_file_list which is later printed by list_files() so the backup method will act on those files.
* Optional methods pre-backup, post-backup, pre-restore, or post-restore may be defined for special purposes.
* Inject new files into /tmp/addon.d/ prior to backuptool.sh backup if you want to act during the current CM upgrade.
* Delete files from /tmp/addon.d/ during post-restore if you want to permanently remove files from /system/addon.d/
Addons may use this approach to run a script only once.
* Scripts run in sort -n order. Prefix with numbers 00 through 99 if want to run in a particular order.
* You can have two separate scripts, implementing only backup in one, and only restore in the other with a different
number prefix of each. This allows even greater control the backup/restore order even further.
* You could use pre-backup to generate a one-time use backup script in /tmp/addon.d/ that deletes itself in
post-restore.
Patch Series
============
http://review.cyanogenmod.com/#change,13265
CyanogenMod/android_build
* edify generator
http://review.cyanogenmod.com/#change,13266
CyanogenMod/android_system_core
* permissions on /system/addon.d
http://review.cyanogenmod.com/#change,13267
CyanogenMod/android_vendor_cm
* 50-cm.sh reference backup script
* modular backuptool.sh
* support backuptool.functions used by /system/addon.d/*.sh scripts
Change-Id: Ifd5eaf9dcfd68d92e5043c21d1bae1dc0ad54860
Currently the tool only backs up the lib, but not the apk.
Seeing as how the market version of voice search is still not
up to date with the current release, it should still be backed
up with this script.
Change-Id: Ia130bb3e289fc3c2206a60ed0fcfd7dab816425d
Since the destination for all backed up files during an installation was
/tmp, all files sharing a name (like the full_model.bin files from
the various face detectors) ended up being restored as copies of
the last such file, effectively breaking the backup.
As a fix, when backing up files, use the entire original path to make
sure they're kept separate and restorable.
Change-Id: I399f7a9433a225871d97e0ecaeb051a90e68696b
This is regarding the following patch:
5cdb4ec653
The patch which was to allow custom_backup_list.txt to be maintained while flashing via ROMManager
WHILE the flag/file force_backuptool is set/present still has issues. There are 2 reasons for this.
1) The flag is only checked during the first pass (backuptool.sh backup), as once /etc/force_backuptool
is known to exist, all files are moved to /tmp/backupdir as designated, but when the script is
ran again once /system has been wiped and updated, the file /etc/force_backuptool no longer exists
as it was moved to /tmp/backupdir/force_backuptool, so the script fails as it is not checking that
location.
2) When the backuptool.sh script is called, the above function (checking for force_backuptool) is called
*before* the /system partition is mounted. This therefor ignores the file regardless of whether it
exists or not. This is caused by check_installscript being called at the wrong point of the script.
There are therefor 2(two) main changes to this script to allow the force_backuptool override to work.
The first being within the main function of check_installscript, and the second being the location of
where check_installscript is called (ie, I moved it to below check_prereq call in the case statement,
as mounting is called before the check_prereq function checks if the ROM version is the same).
This affects *all* devices.
Change-Id: Ia7438f396eaa91b0723e56bb32ce98725e2b2025
The new Gtalk app with video and voice chat from the Nexus S
OTA update is currently not backed up by the script because
Google renamed it Talk2.apk and added a new lib for it.
Change-Id: I2b0245d561584fa4d84e7d424653543d723a1ac6
This change adds a check for the ramzswap device. This is useful
if the kernel includes ramzswap built-in and not as a module.
Change-Id: I39105064c8fdd678ca3d7e332703b6040806f601
Support module placement other than the "modules_install" location.
(i.e. /system/lib/modules/ or /system/lib/modules/`uname -r`/)
Change-Id: I04c5175b13655c09e1eb9b47fa0745d1cfcb376d
This app is part of the new Gapps from the GRI40 N1 update.
Try it with these Gapps I packaged for lack of a better source.
Change-Id: Ib49fd13e0270dfa15d5e05843a6f11f2b2d6388e
http://bit.ly/hfgtL0
When updating via ROMManager, the presence of /tmp/.installscript
will keep backuptool from running. For people who don't like this
happen can `touch /system/etc/force_backuptool` to ensure the
running of backuptool.
Change-Id: I95b78ae569405b50d2cf95ddd05f0d554b32daad
Use % instead of a set size - per suggestion from Cyanogen
Fix to integer instead of decimal being passed around - props to Nameless
Handle older versions changing enabled CC to Default CC size (25%)
Enable PerformanceSettings dialog to view new CC setup
Final cleanup and fix default values / bash arithmetic
Change-Id: Ie7525cfa1f8829bb037961a66620ab8664f39cec
German translation - Matthias Büchner
French translation - Sébastien Vaucher
Remove ChromeToPhone, GoogleGoogles (and native libs), and Amazon MP3
as it's finally on the Market.
Change-Id: I591fa7cfcdbfa09630790df4aac848840fd09a29