nixpkgs/pkgs/development/mobile/androidenv/querypackages.sh
numinit 5b91d4ab65 Rework androidenv package generation
androidenv did not previously write license files, which caused certain
gradle-based Android tools to fail. Restructure androidenv's list of
Android packages into a single repo.json file to prevent duplication
and enable us to extract the EULA texts, which we then hash with
builtins.hashString to produce the license files that Android gradle
tools look for.

Remove includeDocs and lldbVersions, as these have been removed
from the Android package repositories.

Improve documentation and examples.
2021-01-03 21:27:23 -07:00

24 lines
622 B
Bash
Executable File

#!/usr/bin/env nix-shell
#!nix-shell -i bash -p jq
set -e
pushd "$(dirname "$0")" &>/dev/null || exit 1
if [ "$1" == '' ]; then
echo "Please select a group: 'packages', 'images', 'addons', 'extras', or 'licenses'" >&2
exit 1
fi
namespace="$1"
if [ "$namespace" == 'licenses' ]; then
jq -r '.licenses | keys | join("\n")' < repo.json
else
jq -r --arg NAMESPACE "$namespace" \
'.[$NAMESPACE] | paths as $path | getpath($path) as $v | select($path[-1] == "displayName") | [[$NAMESPACE] + $path[:-1] | map("\"" + . + "\"") | join("."), $v] | join(": ")' \
< repo.json
fi
popd &>/dev/null