• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..--

.vscode/25-Apr-2025-4140

apex/25-Apr-2025-483432

build/25-Apr-2025-756657

common/25-Apr-2025-16,34211,250

guest/25-Apr-2025-56,41838,069

host/25-Apr-2025-102,27973,331

recovery/25-Apr-2025-6946

shared/25-Apr-2025-10,9206,641

tests/25-Apr-2025-8,1406,217

tools/25-Apr-2025-3,7892,723

vsoc_arm/25-Apr-2025-6221

vsoc_arm64/25-Apr-2025-17554

vsoc_arm64_minidroid/25-Apr-2025-6219

vsoc_arm64_only/25-Apr-2025-27886

vsoc_arm64_pgagnostic/25-Apr-2025-14160

vsoc_arm_minidroid/25-Apr-2025-8926

vsoc_riscv64/25-Apr-2025-312116

vsoc_riscv64_minidroid/25-Apr-2025-7726

vsoc_x86/25-Apr-2025-25796

vsoc_x86_64/25-Apr-2025-341133

vsoc_x86_64_host/25-Apr-2025-469

vsoc_x86_64_minidroid/25-Apr-2025-5615

vsoc_x86_64_only/25-Apr-2025-677236

vsoc_x86_64_pgagnostic/25-Apr-2025-14260

vsoc_x86_only/25-Apr-2025-12137

.clang-formatD25-Apr-2025875 2725

Android.bpD25-Apr-20255.7 KiB187171

AndroidProducts.mkD25-Apr-20253.8 KiB6850

CleanSpec.mkD25-Apr-20254.2 KiB7919

METADATAD25-Apr-202539 43

OWNERSD25-Apr-2025322 1816

OWNERS_techleadsD25-Apr-2025140 87

PREUPLOAD.cfgD25-Apr-2025218 108

README.mdD25-Apr-20252.8 KiB9469

TEST_MAPPINGD25-Apr-2025855 5150

default-permissions.xmlD25-Apr-20256.4 KiB14574

dtb.imgD25-Apr-202511 21

iwyu.impD25-Apr-20251.5 KiB2322

required_imagesD25-Apr-2025165 1211

rustfmt.tomlD25-Apr-202593 64

README.md

1# Cuttlefish Getting Started
2
3## Try Cuttlefish
4
51. Make sure virtualization with KVM is available.
6
7   ```bash
8   grep -c -w "vmx\|svm" /proc/cpuinfo
9   ```
10
11   This should return a non-zero value. If running on a cloud machine, this may
12   take cloud-vendor-specific steps to enable. For Google Compute Engine
13   specifically, see the [GCE guide].
14
15  [GCE guide]: https://cloud.google.com/compute/docs/instances/enable-nested-virtualization-vm-instances
16
17*** promo
18   ARM specific steps:
19   - When running on an ARM machine, the most direct way is to check
20   for the existence of `/dev/kvm`. Note that this method can also be used to
21   confirm support of KVM on any environment.
22***
23
242. Download, build, and install the host debian packages:
25
26   ```bash
27   sudo apt install -y git devscripts config-package-dev debhelper-compat golang curl
28   git clone https://github.com/google/android-cuttlefish
29   cd android-cuttlefish
30   sudo apt install devscripts equivs
31   for dir in base frontend; do
32     pushd $dir
33     sudo mk-build-deps -i
34     dpkg-buildpackage -uc -us
35     popd
36   done
37   sudo dpkg -i ./cuttlefish-base_*_*64.deb || sudo apt-get install -f
38   sudo dpkg -i ./cuttlefish-user_*_*64.deb || sudo apt-get install -f
39   sudo usermod -aG kvm,cvdnetwork,render $USER
40   sudo reboot
41   ```
42
43   The reboot will trigger installing additional kernel modules and applying
44   udev rules.
45
463. Go to http://ci.android.com/
474. Enter a branch name. Start with `aosp-main` if you don't know what you're
48   looking for
495. Navigate to `aosp_cf_x86_64_phone` and click on `userdebug` for the latest build
50
51*** promo
52   For ARM, use branch `aosp-main-throttled` and device target `aosp_cf_arm64_only_phone-trunk_staging-userdebug`
53***
54
556. Click on `Artifacts`
567. Scroll down to the OTA images. These packages look like
57   `aosp_cf_x86_64_phone-img-xxxxxx.zip` -- it will always have `img` in the name.
58   Download this file
598. Scroll down to `cvd-host_package.tar.gz`. You should always download a host
60   package from the same build as your images.
619. On your local system, combine the packages:
62
63   ```bash
64   mkdir cf
65   cd cf
66   tar xvf /path/to/cvd-host_package.tar.gz
67   unzip /path/to/aosp_cf_x86_64_phone-img-xxxxxx.zip
68   ```
69
7010. Launch cuttlefish with:
71
72   `$ HOME=$PWD ./bin/launch_cvd`
73
74## Debug Cuttlefish
75
76You can use `adb` to debug it, just like a physical device:
77
78   `$ ./bin/adb -e shell`
79
80## Launch Viewer (WebRTC)
81
82When launching with `---start_webrtc` (the default), you can see a list of all
83available devices at `https://localhost:8443` . For more information, see the
84WebRTC on Cuttlefish
85[documentation](https://source.android.com/setup/create/cuttlefish-ref-webrtc).
86
87## Stop Cuttlefish
88
89You will need to stop the virtual device within the same directory as you used
90to launch the device.
91
92   `$ HOME=$PWD ./bin/stop_cvd`
93
94