commit | b970b570d0efaf0a4af8afa3f111bec6d1ba27d3 | [log] [tgz] |
---|---|---|
author | Alistair Delva <[email protected]> | Thu Jan 13 14:13:37 2022 -0800 |
committer | Alistair Delva <[email protected]> | Fri Jan 21 17:39:13 2022 +0000 |
tree | 7ab82d4c2e65afe7e807e1eb7c7ac3c9cf1b814d | |
parent | 3d924d95028ff6149e633689d9a4fddccd3f4ae8 [diff] |
Convert auto targets to generic_system Auto isn't fully treble-ized yet, so we have to disable enforcement, but at least the makefiles and inheritance works like phone and TV now. Compared to the old build, nothing seems to have changed except cellular works properly (LTE symbol is shown, with data connection) and the mouse/touchscreen events seem to get sent correctly to the primary display now. Diffing the files in the system/vendor/product/system_ext partitions, they are the same, besides the inclusion of some dead apps like STK, WallpaperPicker, NFC, but this target already had apps that weren't used or didn't work, like StorageManager, and it doesn't seem to break anything. Bug: 215234328 Test: locally booted to desktop, interacted with device Test: diffed filesystem outputs from old and new builds Change-Id: Ie93c7dc5a5381e12ddc958ed4ec834769d43d14f Merged-In: Ie93c7dc5a5381e12ddc958ed4ec834769d43d14f
Make sure virtualization with KVM is available.
grep -c -w "vmx\|svm" /proc/cpuinfo
This should return a non-zero value. If running on a cloud machine, this may take cloud-vendor-specific steps to enable. For Google Compute Engine specifically, see the GCE guide.
ARM specific steps:
/dev/kvm
. Note that this method can also be used to confirm support of KVM on any environment.Download, build, and install the host debian package:
sudo apt install -y git devscripts config-package-dev debhelper-compat golang git clone https://github.com/google/android-cuttlefish cd android-cuttlefish debuild -i -us -uc -b sudo dpkg -i ../cuttlefish-common_*_*64.deb || sudo apt-get install -f sudo usermod -aG kvm,cvdnetwork $USER sudo reboot
The reboot will trigger installing additional kernel modules and applying udev rules.
Go to http://ci.android.com/
Enter a branch name. Start with aosp-master
if you don‘t know what you’re looking for
Navigate to aosp_cf_x86_64_phone
and click on userdebug
for the latest build
Click on Artifacts
Scroll down to the OTA images. These packages look like aosp_cf_x86_64_phone-img-xxxxxx.zip
-- it will always have img
in the name. Download this file
Scroll down to cvd-host_package.tar.gz
. You should always download a host package from the same build as your images.
On your local system, combine the packages:
mkdir cf cd cf tar xvf /path/to/cvd-host_package.tar.gz unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip
Launch cuttlefish with:
$ HOME=$PWD ./bin/launch_cvd
$ HOME=$PWD ./bin/stop_cvd
You can use adb
to debug it, just like a physical device:
$ ./bin/adb -e shell
When launching with ---start_webrtc
(the default), you can see a list of all available devices at https://localhost:8443
. For more information, see the WebRTC on Cuttlefish documentation.