generate_assets.sh for LinuxInstaller

it's useful to generate assets for LinuxInstaller until it's removed.

Bug: 363237196
Test: ./generate_assets.sh image.raw
Change-Id: Ie441287ebc46eec52c4c1edeceede8a42f9c8dae
diff --git a/android/LinuxInstaller/generate_assets.sh b/android/LinuxInstaller/generate_assets.sh
new file mode 100755
index 0000000..8e70cb0
--- /dev/null
+++ b/android/LinuxInstaller/generate_assets.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+set -e
+
+if [ "$#" -ne 1 ]; then
+    echo "$0 <image.raw path>"
+    exit 1
+fi
+pushd $(dirname $0) > /dev/null
+tempdir=$(mktemp -d)
+asset_dir=./assets/linux
+mkdir -p ${asset_dir}
+echo Copy files...
+pushd ${tempdir} > /dev/null
+cp "$1" ${tempdir}
+tar czvS -f images.tar.gz $(basename $1)
+popd > /dev/null
+cp vm_config.json ${asset_dir}
+mv ${tempdir}/images.tar.gz ${asset_dir}
+echo Calculating hash...
+hash=$(cat ${asset_dir}/images.tar.gz ${asset_dir}/vm_config.json | sha1sum | cut -d' ' -f 1)
+echo ${hash} > ${asset_dir}/hash
+popd > /dev/null
+echo Cleaning up...
+rm -rf ${tempdir}
+
diff --git a/android/LinuxInstaller/vm_config.json b/android/LinuxInstaller/vm_config.json
new file mode 100644
index 0000000..474e9c3
--- /dev/null
+++ b/android/LinuxInstaller/vm_config.json
@@ -0,0 +1,21 @@
+
+{
+    "name": "debian",
+    "disks": [
+        {
+            "image": "/data/local/tmp/image.raw",
+            "partitions": [],
+            "writable": true
+        }
+    ],
+    "protected": false,
+    "cpu_topology": "match_host",
+    "platform_version": "~1.0",
+    "memory_mib": 4096,
+    "debuggable": true,
+    "console_out": true,
+    "connect_console": true,
+    "console_input_device": "ttyS0",
+    "network": true
+}
+