#!/bin/bash set -Eeuo pipefail trap cleanup SIGINT SIGTERM ERR EXIT readonly PROJECT_ROOT=$(realpath $(dirname $(dirname "${BASH_SOURCE[0]}"))) readonly DIST=$PROJECT_ROOT/static/cache/bundle/ readonly SOURCE="// @source https://github.com/mCaptcha/mCaptcha" readonly LICENSE_END="// @license-end" source $PROJECT_ROOT/scripts/lib.sh print_license_msg() { msg "${GREEN}- Applying $1 on $(get_file_name $2)" } apply_agpl() { print_license_msg "AGPL" $1 local AGPL="// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-3.0" echo $AGPL >> $1 } apply_x11() { print_license_msg "X11" $1 local MIT="// @license magnet:?xt=urn:btih:5305d91886084f776adcf57509a648432709a7c7&dn=x11.txt X11" echo $MIT >> $1 } apply_apache() { print_license_msg "APACHE" $1 local APACHE="// @license magnet:?xt=urn:btih:8e4f440f4c65981c5bf93c76d35135ba5064d8b7&dn=apache-2.0.txt Apache-2.0" echo $APACHE >> $1 } setup_colors msg "${BLUE}[*] LibreJS processor running" for file in $(find $DIST -type f -a -name "*.js") do contents=$(cat $file) : > $file name=$(get_file_name $file) case $name in "bundle.js") apply_agpl $file ;; "verificationWidget.js" | "bench.js") apply_x11 $file apply_apache $file ;; *) msg "${RED}- [!] License not configured for $name. Applying default license" apply_agpl $file ;; esac echo $SOURCE >> $file echo $contents >> $file echo $LICENSE_END >> $file done