zed/script/generate-licenses
Kirill Bulatov 5602593089
Check license generation for every PR to avoid license-less crate additions (#10033)
Also fix `anthropic` crate and make it AGPL-licensed, as it's used in
the AGPL-licensed collab part only.

Release Notes:

- N/A
2024-04-01 12:16:16 +03:00

27 lines
851 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
OUTPUT_FILE="${1:-$(pwd)/assets/licenses.md}"
> $OUTPUT_FILE
echo -e "# ###### THEME LICENSES ######\n" >> $OUTPUT_FILE
echo "Generating theme licenses"
cat assets/themes/LICENSES >> $OUTPUT_FILE
echo -e "# ###### CODE LICENSES ######\n" >> $OUTPUT_FILE
[[ "$(cargo about --version)" == "cargo-about 0.6.1" ]] || cargo install cargo-about@0.6.1
echo "Generating cargo licenses"
cargo about generate --fail -c script/licenses/zed-licenses.toml script/licenses/template.hbs.md >> $OUTPUT_FILE
sed -i '' 's/"/"/g' $OUTPUT_FILE
sed -i '' 's/'/'\''/g' $OUTPUT_FILE # The ` '\'' ` thing ends the string, appends a single quote, and re-opens the string
sed -i '' 's/=/=/g' $OUTPUT_FILE
sed -i '' 's/`/`/g' $OUTPUT_FILE
sed -i '' 's/&lt;/</g' $OUTPUT_FILE
sed -i '' 's/&gt;/>/g' $OUTPUT_FILE