890abfdaff
Some of the API and paths have changed, so this needs to be updated accordingly. The most prominent change is the removal of BlobStore and downloading support from fastboot.js, because a fastboot library should not be responsible for downloading files.
33 lines
1.1 KiB
Bash
Executable File
33 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -o errexit -o nounset -o pipefail
|
|
shopt -s dotglob extglob globstar
|
|
|
|
export PATH="$PWD/node_modules/.bin:$PATH"
|
|
|
|
rm -rf static_tmp
|
|
cp -a static static_tmp
|
|
rm -rf static_tmp/js/fastboot/{!(dist),dist/!(fastboot.min.mjs|libs)}
|
|
|
|
for file in static_tmp/**/*.@(json|webmanifest); do
|
|
json_reformat -m < "$file" | sponge "$file"
|
|
done
|
|
|
|
find static_tmp -name '*.html' -exec html-minifier --collapse-whitespace \
|
|
--process-scripts "application/ld+json" --collapse-boolean-attributes \
|
|
--remove-attribute-quotes --remove-comments --remove-empty-attributes \
|
|
--remove-redundant-attributes --remove-script-type-attributes \
|
|
--remove-style-link-type-attributes --sort-attributes --sort-class-name {} -o {} \;
|
|
|
|
./generate_feed.py
|
|
|
|
for file in static_tmp/**/*.@(atom|xml); do
|
|
xmllint --noblanks "$file" --output "$file"
|
|
done
|
|
|
|
find static_tmp -name '*.css' -exec csso {} -o {} \;
|
|
find static_tmp -name '*.js' -exec terser --module -cmo {} {} \;
|
|
find static_tmp -regex '.+\.\(atom\|css\|html\|ico\|js\|json\|pdf\|svg\|txt\|webmanifest\|xml\)' \
|
|
-exec zopfli {} \; -exec touch -r {} {}.gz \; \
|
|
-exec brotli -k {} \;
|