{{indexmenu_n>10}}
====== VIM3/3L Download Android Source Code ======
This document mainly introduces how to download the Android source code of VIM3/3L.
===== Download from github =====
Firstly, install ''git-lfs'' tool for downloading Android SDK.
```shell
$ mkdir git_lfs
$ cd git_lfs
$ wget https://github.com/git-lfs/git-lfs/releases/download/v2.3.4/git-lfs-linux-amd64-2.3.4.tar.gz
$ tar xvzf git-lfs-linux-amd64-2.3.4.tar.gz
$ cd git-lfs-2.3.4
$ sudo ./install.sh
$ git lfs install
```
Create an empty directory to hold your working files:
```shell
$ mkdir -p WORKING_DIRECTORY
$ cd WORKING_DIRECTORY
```
Run ''repo init'' to download the manifest repository first:
**android 9.0 64 bit:**
```shell
$ repo init -u https://github.com/khadas/android_manifest.git -b khadas-vim3-p-64bit
```
Needed after repo sync run the following command to pull large files. Otherwise, compilation will report an error
```shell
$ repo forall -c 'git lfs pull'
```
**android 9.0 32 bit:**
```shell
$ repo init -u https://github.com/khadas/android_manifest.git -b khadas-vims-pie
```
Run ''repo sync -c'' to pull down the Android Source Tree:
```shell
$ repo sync -c -j4
```
The initial sync operation may take an hour or more to complete.
You might need to run above command repeatly if it fails halfway. Or you can try with this script instead.
```shell
#!/bin/bash
repo sync -c -j4
while [ $? = 1 ]; do
echo "Sync failed, repeat again:"
repo sync -c -j4
done
```
If needed, press ''Ctrl''+''\'' to quit.
Begin a new branch for development:
```shell
$ repo start --all
```
===== Download from cloud drive =====
Chinese developers can download base package from cloud drive. Then synchronize the code.\\
Download the android source code base package from follow links.\\
* [[https://pan.baidu.com/s/1KqBhKiLoN8d3OX8GYqgmwQ?pwd=c9ih|VIM3/3L android 9.0 source code base package]]\\
Use the following command to unzip the base package and synchronize the code.
```shell
$ cat vim3-android9-20240808.tar.gz.a* | tar -xzv
$ .repo/repo/repo sync -l
$ .repo/repo/repo forall -c 'git lfs pull'
```
===== See Also =====
* [[https://source.android.com/source/downloading.html|Android Official Documents]]
* [[https://docs.khadas.com/android/vim1/BuildAndroid.html|Build Android Source Code]]