#!/bin/bash if [ -z $WAPPALYZER_ROOT ] then echo "\$WAPPALYZER_ROOT not set" exit 1 fi if [ -z $WAPPALYZER_NODE_PATH ] then echo "\$WAPPALYZER_NODE_PATH not set" exit 1 fi set -eu wappalyzer validate echo "Prettifying apps.json..." node $WAPPALYZER_NODE_PATH/node_modules/jsonlint/lib/cli.js -ist $'\t' $WAPPALYZER_ROOT/src/apps.json echo "Compressing PNG and SVG icons..." node $WAPPALYZER_NODE_PATH/node_modules/imagemin-cli/cli.js $WAPPALYZER_ROOT/src/icons/* --out-dir $WAPPALYZER_ROOT/src/icons 2>&1 > /dev/null echo "Converting SVG icons to PNG..." OIFS="$IFS" IFS=$'\n' for svg in $(find $WAPPALYZER_ROOT/src/icons -type f -name "*.svg") do echo " Converting $(basename "$svg")..." dest="$WAPPALYZER_ROOT/src/icons/converted/$(basename "$svg").png" if [[ -f "$dest" ]]; then rm "$dest" fi node $WAPPALYZER_NODE_PATH/node_modules/svg2png/bin/svg2png-cli "$svg" --width=32 --height=32 --output "$dest" || true done IFS="$OIFS" echo "Compressing converted PNG icons..." node $WAPPALYZER_NODE_PATH/node_modules/imagemin-cli/cli.js $WAPPALYZER_ROOT/src/icons/converted/* $WAPPALYZER_ROOT/src/icons/converted wappalyzer links # WebExtension echo "Building WebExtension driver..." webextension_dir=$WAPPALYZER_ROOT/src/drivers/webextension pushd $webextension_dir > /dev/null zip -qr $WAPPALYZER_ROOT/build/wappalyzer_webextension.zip . popd > /dev/null # Edge pushd $WAPPALYZER_ROOT/build > /dev/null mv $webextension_dir/manifest.json $webextension_dir/manifest.webextension.json mv $webextension_dir/manifest.edge.json $webextension_dir/manifest.json manifoldjs -l debug -p edgeextension -f edgeextension -m $webextension_dir/manifest.json mv $webextension_dir/manifest.json $webextension_dir/manifest.edge.json mv $webextension_dir/manifest.webextension.json $webextension_dir/manifest.json manifest_dir="Wappalyzer/edgeextension/manifest" sed -i 's/INSERT-YOUR-PACKAGE-IDENTITY-NAME-HERE/Wappalyzer/' $manifest_dir/appxmanifest.xml sed -i 's/INSERT-YOUR-PACKAGE-IDENTITY-PUBLISHER-HERE/Wappalyzer/' $manifest_dir/appxmanifest.xml sed -i 's/INSERT-YOUR-PACKAGE-PROPERTIES-PUBLISHERDISPLAYNAME-HERE/Wappalyzer/' $manifest_dir/appxmanifest.xml sed -i 's/Version="0.\([^"]\+\)/Version="\1.0/' $manifest_dir/appxmanifest.xml cp $webextension_dir/images/icon_44.png $manifest_dir/Assets/Square44x44Logo.png cp $webextension_dir/images/icon_150.png $manifest_dir/Assets/Square150x150Logo.png cp $webextension_dir/images/icon_50.png $manifest_dir/Assets/StoreLogo.png manifoldjs -l debug -p edgeextension package $manifest_dir mv Wappalyzer/edgeextension/package/edgeExtension.appx wappalyzer_edge.appx rm -rf Wappalyzer popd > /dev/null echo "Done. Builds have been created in $WAPPALYZER_ROOT/build."