It was a long a cold night of winter, and I said "Oh,
how cool would it be if I had a better camera!"
The lovely elf came and rang my doorbell, giving me
a package. Inside, there was something I've never
seen before: A mystic cloud where, while inside,
everything becomes possible. Where your wildest
creativity bits become a reality. Rainbows and
pink unicorns, this commit adds Focal to the build.
Change-Id: I7e0d14164405ef1c0b2faa46965f8ec3f38ab7df
Since not all recoveries out there will support the OTA packages'
own labeling, check at boot if the system needs labels (and
apply them)
Change-Id: I58767977b90a78a12efe7bd9d713654eadf47e7a
- remove SpareParts: it's disabled and broken, the options it provides
are either useless/broken or available in development settings
- remove modelid_cfg.sh: no devices are using this any more
- remove opticharger: it's not used any more
Change-Id: I68c86b2407486c4b40998288cf1f70b7cb8170f4
Term.apk now contains JNI shared ojbects for all architectures.
Currectly, the script would only extract and copy armeabi object.
Change the script to extract all object and copy the correct ABI
object to the filesystem.
Change-Id: I167eafab523a4104063fec89b7ba136031c1d07c
Signed-off-by: Rocky Zhang <zhangyan.hit@gmail.com>
Keep a blacklist of md5 sums for scripts known to cause issues, and
ignore them when installing new builds
Change-Id: I19a88b58194a32da5eb5fe278f2c5b9a145b57be
The "import" keyword is only parsed once, for a one shot execution, during
the initial section setup, and before running "on fs". Having an import of
a file that's located in a filesystem other than root will result in an error
like
<3> init: could not import file '/system/etc/init.local.rc' from '/init.rc'
So... any files imported into init need to be moved to the root fs.
While we're at it, move init.rc changes that are specific to CM (and don't
involve modification of preexisting configs) into this file, to ease future
upstream merges (and minimize breakage on devices that override init.rc with
their own variants)
Needs to be paired with the corresponding system/core patch
Change-Id: Iab6340db2e28ef19dbcd84ae5c71737ce0cd491f
* Promo video here: http://www.youtube.com/watch?v=ogp9f4_yEoU
* It looks *way* better on a device, though :)
* The animation is square, so the names have changed.
Change-Id: I8eebdf29a7d30632d75210a6d3975d7ea17d5246
* Remove "update-" prefix and "-signed" suffix.
* Replace SNAPSHOT with EXPERIMENTAL (arcee).
* If CM_EXTRAVERSION, force to type EXPERIMENTAL.
* UNOFFICIAL builds now with datestamp in the same manner as NIGHTLY.
* date -u uses UTC timezone for consistency.
* Remove some CM7 dead code.
Change-Id: I681fd92e27aaf62c50eae20265ce07c67d477bca
Patch 2: Fixed the possibility of no CM_EXTRAVERSION resulting in 2 '-' at the end of the file name.
Change-Id: I3025977a5da1e28247c74416e1ac50fc6901eb23
Allow user to provide userinit.sh and/or userinit.d/*
scripts under /data/local to be run on each boot.
Change-Id: I96f3034bcdea8d4cc75929d21b69efa31c1cb108
* These can be used if someone wants to filter for CM features
* Basic feature com.cyanogenmod.android is included in all builds
* Include nfc_enhanced on devices that have NFC
Change-Id: Ib7704b791c8916f1eabe5f40fd21e2f0005d32f9
* Default for tablet is horizontal-1280x800
* Default for phone is vertical-480x800
* Override using TARGET_BOOTANIMATION_NAME in cm.mk (must come before
inherit of CM base product.
Change-Id: Ibd01236847b4f1de0cfd4246c8bd93b1f047005a
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
Scheme for labeling date-encoded builds that aren't technically NIGHTLIES.
Also includes CM_EXTRAVERSION appendage to add additional designations to
SNAPSHOT builds.
At present, when running a busybox shell ("busybox sh") from mksh
(/system/bin/sh), one gets the following message before every command line:
sh: precmd: Permission denied
This is due to mkshrc exporting a PS1 which depends on a mkshrc defined
function, "precmd". Since "busybox sh" does not source mkshrc, it does not
have this function defined, resulting in the above error.
By not exporting PS1, "busybox sh" uses its own reasonable default. mksh
subshells continue to work as usual, since they (re)source /etc/mkshrc
anyways.
Change-Id: Ic9182e42aa033e811300d9e6e8d6d3f43e14e58f