Adding file naming and indexing
[AGL/documentation.git] / docs / 01_Getting_Started / 03_Build_and_Boot_guide_Profile / 03_IVI_Flutter_apps.md
1 ---
2 title: IVI Flutter apps
3 ---
4
5 # Build and Boot AGL Flutter IVI dashboard demo applications made for GSoC
6
7 ## 0. Prepare Your Build Host
8
9 - Install the required tools to build an AGL Image. For detailed explanation, check [Preparing Your Build host](https://docs.automotivelinux.org/en/master/#01_Getting_Started/02_Building_AGL_Image/02_Preparing_Your_Build_Host/)
10
11 ## 1. Define Your Top-Level Directory
12
13 ```bash
14 $ export AGL_TOP=$HOME/AGL
15 $ echo 'export AGL_TOP=$HOME/AGL' >> $HOME/.bashrc
16 $ mkdir -p $AGL_TOP
17 ```
18
19 ## 2. Download the repo Tool and Set Permissions
20
21 ```bash
22 $ mkdir -p $HOME/bin
23 $ export PATH=$HOME/bin:$PATH
24 $ echo 'export PATH=$HOME/bin:$PATH' >> $HOME/.bashrc
25 $ curl https://storage.googleapis.com/git-repo-downloads/repo > $HOME/bin/repo
26 $ chmod a+x $HOME/bin/repo
27 ```
28
29 ## 3. Download the AGL Source Files
30 To download the latest **master** branch  AGL files, use the following commands:
31 ```bash
32 $ cd $AGL_TOP
33 $ mkdir master
34 $ cd master
35 $ repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo
36 $ repo sync
37 ```
38
39 ## 4. Initialize the build environment using aglsetup.sh Script
40 To initialize the build environment, we must use the setup script.
41 This script is available here:
42 ```bash
43 $ $AGL_TOP/master/meta-agl/scripts/aglsetup.sh
44 ```
45 Run the script:
46
47 ```bash
48 $ cd $AGL_TOP
49 $ source master/meta-agl/scripts/aglsetup.sh -b build-flutter-dashboard -m qemux86-64 agl-demo agl-devel
50 ```
51
52 - Here `-b` is used to specify the build directory and `-m` is used to specify the target platform.
53
54 - Running this script, will create a build directory if it does not exist. Default build directory: `$AGL_TOP/master/build-flutter-dashboard`
55 - Default target paltform: `qemux86-64`
56
57 ## 5. Using BitBake
58
59 ```bash
60 $ cd $AGL_TOP/build-flutter-dashboard
61 $ source agl-init-build-env
62 $ bitbake agl-ivi-demo-platform-flutter
63 ```
64
65 ## 6. Deploying the AGL Demo Image
66 Boot the image using QEMU
67
68 ```bash
69 $ cd $AGL_TOP/build-flutter-dashboard
70 $ source agl-init-build-env
71 $ runqemu kvm serialstdio slirp publicvnc
72 ```
73
74 ## 6. Run the Graphics
75 To get graphics of the app, you need VNC client like VNC Viewer or Vinagre
76
77 - Open the VNC client
78 - Enter the server address as `localhost:0`
79
80 That's it, you should get something like this:
81 ![Screenshot](images/ivi_homescreen.PNG)