gotosocial/scripts/bundle_licenses.sh
tobi 8c1511a494 [chore] Poke at bundle_licenses.sh a bit to make the output slightly easier on the eye (#4159)
Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4159
Co-authored-by: tobi <tobi.smethurst@protonmail.com>
Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-05-09 16:14:10 +00:00

44 lines
2.1 KiB
Bash
Executable file

#!/bin/sh
set -ex
# Split on
# new line
IFS='
'
license_filter() { grep -iE '.*/license(\.\w+)?$'; }
OUTPUT='./web/assets/all_licenses.txt'
echo 'The GoToSocial software uses the following dependencies, whose licenses are reproduced in full:' > "$OUTPUT" # reset output
echo >> "$OUTPUT"
# Copy over any licenses in our golang dependencies
for file in $(find ./vendor | license_filter); do
echo "----------------------------------------------------------" >> "$OUTPUT"
echo >> "$OUTPUT"
echo "${file}:" >> "$OUTPUT"
echo >> "$OUTPUT"
cat "${file}" >> "$OUTPUT"
echo >> "$OUTPUT"
done
# Copy over any licenses in our javacsript dependencies
for file in $(find ./web/source | license_filter); do
echo "----------------------------------------------------------" >> "$OUTPUT"
echo >> "$OUTPUT"
echo "${file}:" >> "$OUTPUT"
echo >> "$OUTPUT"
cat "${file}" >> "$OUTPUT"
echo >> "$OUTPUT"
done
# Copy over misc other licenses
for file in ./LICENSE \
./web/source/nollamasworker/sha256.js; do
echo "----------------------------------------------------------" >> "$OUTPUT"
echo >> "$OUTPUT"
echo "${file}:" >> "$OUTPUT"
echo >> "$OUTPUT"
cat "${file}" >> "$OUTPUT"
echo >> "$OUTPUT"
done