1 #!/usr/bin/env nix-shell
2 #!nix-shell -i bash -p gnutar jq reuse
4 cd "$(dirname "$
(readlink
-f "$0")")"/..
/..
/..
7 trap 'rm -rf $TMPDIR' EXIT
9 echo "# Prebuilding sources..."
10 nix-build
-A kdePackages.sources
--no-link || true
12 echo "# Evaluating sources..."
14 eval "$(nix-instantiate --eval -A kdePackages.sources --json --strict | jq 'to_entries[] | "sources
[" + .key + "]=" + .value' -r)"
16 echo "# Collecting licenses..."
17 for k
in "${!sources[@]}"; do
18 echo "- Processing $k..."
20 if [ ! -f "${sources[$k]}" ]; then
26 tar -C "$TMPDIR/$k" -xf "${sources[$k]}"
28 (cd "$TMPDIR/$k"; reuse lint
--json) | jq
--arg name
"$k" '{$name: .summary.used_licenses | sort}' -c > "$TMPDIR/$k.json"
31 jq
-s 'add' -S "$TMPDIR"/*.json
> pkgs
/kde
/generated
/licenses.json