6f80983963
Update generate.sh to run using nix-shell. Also make it fail with meaningful output instead of writing empty output files. This is extracted from https://github.com/NixOS/nixpkgs PR 58131. This relies on the shebang being used.
37 lines
928 B
Bash
Executable File
37 lines
928 B
Bash
Executable File
#!/usr/bin/env nix-shell
|
|
#!nix-shell -i bash -p curl libxslt
|
|
|
|
set -e
|
|
|
|
die() {
|
|
echo "$1" >&2
|
|
exit 1
|
|
}
|
|
|
|
fetch() {
|
|
local url="https://dl.google.com/android/repository/$1"
|
|
echo "$url -> $2"
|
|
curl -s "$url" -o "$2" || die "Failed to fetch $url"
|
|
}
|
|
|
|
pushd "$(dirname "$0")" &>/dev/null || exit 1
|
|
|
|
mkdir -p xml
|
|
|
|
# Convert base packages
|
|
fetch repository2-1.xml xml/repository2-1.xml
|
|
xsltproc convertpackages.xsl xml/repository2-1.xml > generated/packages.nix
|
|
|
|
# Convert system images
|
|
for img in android android-tv android-wear android-wear-cn google_apis google_apis_playstore
|
|
do
|
|
fetch sys-img/$img/sys-img2-1.xml xml/$img-sys-img2-1.xml
|
|
xsltproc --stringparam imageType $img convertsystemimages.xsl xml/$img-sys-img2-1.xml > generated/system-images-$img.nix
|
|
done
|
|
|
|
# Convert system addons
|
|
fetch addon2-1.xml xml/addon2-1.xml
|
|
xsltproc convertaddons.xsl xml/addon2-1.xml > generated/addons.nix
|
|
|
|
popd &>/dev/null
|