aboutsummaryrefslogtreecommitdiffstats
path: root/util/extract-version-hash-from-factory.bash
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2019-10-13 20:00:26 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2019-10-14 13:03:10 +0200
commite3f0f43bb81119eafeb04b66cb7deacd5c1db743 (patch)
tree3141511288cc86bcf6b16eed3a28ba1590513555 /util/extract-version-hash-from-factory.bash
downloadandroid-wireguard-module-builder-e3f0f43bb81119eafeb04b66cb7deacd5c1db743.tar.xz
android-wireguard-module-builder-e3f0f43bb81119eafeb04b66cb7deacd5c1db743.zip
Initial commit
Diffstat (limited to 'util/extract-version-hash-from-factory.bash')
-rwxr-xr-xutil/extract-version-hash-from-factory.bash19
1 files changed, 19 insertions, 0 deletions
diff --git a/util/extract-version-hash-from-factory.bash b/util/extract-version-hash-from-factory.bash
new file mode 100755
index 0000000..a9e0778
--- /dev/null
+++ b/util/extract-version-hash-from-factory.bash
@@ -0,0 +1,19 @@
+#!/bin/bash
+set -e
+
+URL="$1"
+# Expecting URL like https://dl.google.com/dl/android/aosp/crosshatch-qp1a.191005.007-factory-2989a08d.zip
+[[ -n $URL ]] || { echo "Usage: $0 URL" >&2; exit 1; }
+
+D="$(mktemp -d)"
+trap 'rm -rf "$D"' INT TERM EXIT
+cd "$D"
+
+curl -#o out.zip "$URL"
+bsdtar --strip-components 1 -xvf out.zip
+bsdtar -xvf image-*.zip boot.img
+abootimg -x boot.img
+unlz4 zImage Image
+version="$(strings Image | grep '^Linux version [^%]' | head -n 1)"
+[[ -n $version ]] || { echo "ERROR: no proper version in image" >&2; exit 1; }
+printf '\n==========================================\n\n%s|%s\n' "$(echo "$version" | sha256sum | cut -d ' ' -f 1)" "$version"