#!/bin/bash FONT_LOGOS_VERSION="1.1.1" FONT_AWESOME_VERSION="6.5.1" FONT_IOSEVKA_VERSION="28.0.1" echo "==> Update normalize.css" curl -fsSL \ -o ./src/styles/normalize.css \ https://github.com/necolas/normalize.css/raw/master/normalize.css echo "==> Update devicon.woff" curl -fsSL \ -o ./src/fonts/devicon/devicon.woff \ https://github.com/devicons/devicon/raw/master/fonts/devicon.woff echo "==> Update font-logos.woff2" curl -fsSL \ -o /tmp/font-logos.zip \ https://github.com/lukas-w/font-logos/releases/download/"v${FONT_LOGOS_VERSION}/font-logos-${FONT_LOGOS_VERSION}".zip unzip -q /tmp/font-logos.zip -d /tmp cp -f /tmp/font-logos-"${FONT_LOGOS_VERSION}"/assets/font-logos.woff2 ./src/fonts/font-logos/font-logos.woff2 echo "==> Update FontAwesome Free" curl -fsSL \ -o /tmp/font-awesome.zip \ https://github.com/FortAwesome/Font-Awesome/releases/download/"${FONT_AWESOME_VERSION}/fontawesome-free-${FONT_AWESOME_VERSION}-web".zip unzip -q /tmp/font-awesome.zip -d /tmp for variant in brands-400 solid-900; do cp -f /tmp/fontawesome-free-"${FONT_AWESOME_VERSION}-web/webfonts/fa-${variant}".woff2 ./src/fonts/font-awesome/ done echo "==> Update Iosevka fonts" for variant in Iosevka IosevkaAile; do curl -fsSL \ -o /tmp/"${variant}.zip" \ https://github.com/be5invis/Iosevka/releases/download/"v${FONT_IOSEVKA_VERSION}/PkgWebFont-${variant}-${FONT_IOSEVKA_VERSION}".zip unzip -q /tmp/"${variant}.zip" -d /tmp for style in Bold BoldItalic Italic Regular; do cp -f /tmp/WOFF2/"${variant}-${style}".woff2 ./src/fonts/iosevka/"${variant,,}-${style,,}".woff2 done done for style in bold bolditalic italic regular; do mv -f ./src/fonts/iosevka/"iosevkaaile-${style}".woff2 ./src/fonts/iosevka/"iosevka-aile-${style}".woff2 done echo "==> Calculate font checksums" # shellcheck disable=2044 for file in $(find ./src/fonts/ -type f -name "*.woff" -or -name "*.woff2"); do echo "${file}: $(openssl dgst -sha256 -binary "${file}" | openssl base64 -A)" done