* toybox's `mount` does not support multiple entries like we do,
so if we can detect the filesystem of an fstab enrtry print that
and only that one to /etc/fstab, so that mounting via toybox has
a better chance of succeding.
* as a bonus, this patch also gets rid of duplicates in /etc/fstab
caused by the fact that ReadDefaultFstab() combines entries from
DT and from recovery.fstab
Change-Id: Iec4ab38044054555d2a33da6f5d53de7716e7bee
* Root ADB shell by default
* Try and get adb_keys from /data
* Nicer mkshrc
* Build a reboot command
Change-Id: I80b0e2aa5eb7142eaa9f157709f4e029077d8dfa
* And disregard special mount flags on purpose because of certain
dubious packages which "exec busybox mount".
Squashed:
Author: Alessandro Astone <ales.astone@gmail.com>
Date: 2021-03-26 18:02:34 +0100
roots: Correct mount flags in /etc/fstab
The logic here got inverted.
Change-Id: I63c0d77fa17442ae8630015a52c7bf1be66f69f4
Change-Id: I163702c9bd7fca3d40676fd6d8476e8deb13acc0
Create a cache of block data received via adb. The cache size is set
to ensure that there is at least 400mb available for the installer.
When the cache is large enough to hold the entire file, each block is
read via adb at most once.
When the cache is not large enough to hold the entire file, the cache
will need to be pruned. Because files tend to be read sequentially
during install, the pruning algorithm attempts to discard blocks that
are behind the current file position.
Change-Id: Id8fc7fa5b38f1d80461eb576b1a1b5d53453cfc1
When wiping /system, the partition isn't actually mounted at /system
or / - it's mounted at /mnt/system. This breaks 'format system' from
recovery if the partition has been mounted.
This patch adds an ensure_volume_unmounted function that finds all
mounts of a given device and unmounts them, meaning the device
can be safely formatted.
Change-Id: Id4f727f845308a89e865f1ba60dc284f5ebc66e1
Provide a means to include device-specific recovery modules that need to
be built (i.e. not pre-built). A list of recovery modules can be
specified by a device with:
TARGET_RECOVERY_DEVICE_MODULES := rec_mod_one rec_mod_two
Change-Id: Ibd19a71318863461d472471a4f7cfddfb1b9ae0d
This allows A/B devices to install legacy (non-payload) style update.zip
packages like our addonsu or gapps.
Do not abort an update if META-INF/com/android/metadata is missing,
instead use it to determine whether the update is an A/B ota or not.
Change-Id: I907a92732470b947de007dde11fb71db64d94c9b
* From android-11, recovery warns the user about the danger of
rebooting after a failed update, but if we didn't even start
the install procedure it doesn't really make much sense.
Change-Id: Ifaf5eae9fe6e1d915a035e2570c22260de59f99b
* Fixes touch on some devices like chiron/sagit
* Some other devices (e.g. most MTK) need this because their kernel driver
implementations do not perform as expected (initial unblank is only
happening when altering the panel brightness x -> 0 -> y). In regular
Android, that "unblanking" is done on boot when the lights HAL loads and
sets the initial brightness.
Change-Id: I2fffac508d09d07355a7a7f087805b0dceb5f97e
Author: Tom Marshall <tdm.code@gmail.com>
Date: Wed Oct 25 20:27:08 2017 +0200
Revert "kill package_extract_dir"
changes for P:
- bring back the mkdir_recursively variant which takes a timestamp.
- add libziparchive dependency
- fix otautil header paths
changes for Q:
- change ziputil naming convention to lowercase
This reverts commit 53c38b1538.
Change-Id: I71c488e96a1f23aace3c38fc283aae0165129a12
Author: Tom Marshall <tdm.code@gmail.com>
Date: Thu Dec 14 22:37:17 2017 +0100
Revert "Remove the obsolete package_extract_dir() test"
This reverts commit bb7e005a79.
Change-Id: I643235d6605d7da2a189eca10ec999b25c23e1f9
Author: Tom Marshall <tdm.code@gmail.com>
Date: Wed Aug 23 18:14:00 2017 +0000
Revert "updater: Remove some obsoleted functions for file-based OTA."
This reverts commit 63d786cf22.
These functions will be used for third party OTA zips, so keep them.
Change-Id: I24b67ba4c86f8f86d0a41429a395fece1a383efd
Author: Stricted <info@stricted.net>
Date: Mon Mar 12 18:11:56 2018 +0100
recovery: updater: Fix SymlinkFn args
Change-Id: If2ba1b7a8b5ac471a2db84f352273fd0ea7c81a2
Author: Simon Shields <simon@lineageos.org>
Date: Thu Aug 9 01:17:21 2018 +1000
Revert "updater: Remove dead make_parents()."
This reverts commit 5902691764.
Change-Id: I69eadf1a091f6ecd45531789dedf72a178a055ba
Author: Simon Shields <simon@lineageos.org>
Date: Thu Aug 9 01:20:40 2018 +1000
Revert "otautil: Delete dirUnlinkHierarchy()."
changes for P:
- Fix missing PATH_MAX macro from limits.h
This reverts commit 7934985e0c.
Change-Id: I67ce71a1644b58a393dce45a6c3dee97830b9ee4
Author: XiNGRZ <chenxingyu92@gmail.com>
Date: Tue Dec 3 14:31:56 2019 +0800
updater: Fix lost capabilities of set_metadata
This was broken since Android O. During a file-based incremental OTA,
capability flags were cleared but not being set again properly, leading
some critical processes (e.g. surfaceflinger and pm-service) fails.
For more details, see: 65b8d749f7
Change-Id: I20e616cd83ec1cd1b79717a6703919316ad77938
[mikeioannina]: Squash for Q and run through clang-format
[Chippa_a]: Adapt for Android R updater and libziparchive API
Change-Id: I91973bc9e9f8d100688c0112fda9043fd45eb86a
am skip reason: Merged-In I3d82d9031446be355d8a1d077ab83283c7cc769c with SHA-1 c7ebad5fd6 is already in history
Original change: https://android-review.googlesource.com/c/platform/bootable/recovery/+/3083670
Change-Id: Ib290308b2c210fdf18a6edac3ec2f1b610026906
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
non-AB is deprecated, remove unittets first. This CL also puts non-AB
libraries in a separate soong namepsace, which allows two copies of
non-AB code to co-exist temporarily during migration.
Test: th
Bug: 324360816
Merged-In: I3d82d9031446be355d8a1d077ab83283c7cc769c
Change-Id: Idd9386f4c8d32508734b1bfe9b9f76668aa710bc
In the current design, when recovery ends with Shutdown, it will
continue to execute commands repeatedly in the loop body, after it sets
a "Shutdown" property. That may lead to some competition between the
shutdown process and recovery command work, and then cause some
problems.
So, pause recovery when it ends with Shutdown, like it ending with
Reboot.
Change-Id: I57dfef70e7b8d600af3a3f2c0199f14d5a0e9916