iosevka-prog-font-builder/build-iosevka-prog-font.sh
2023-04-24 10:52:09 +03:00

38 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
set -e
IOSEVKA_VERSION=22.1.0
FONT_NAME=iosevka-prog
FILE=$( readlink -f "${BASH_SOURCE[0]}" )
DIR=$( dirname "${FILE}" )
DIST="${DIR}/dist"
OBLIQUE="${DIST}/oblique"
REGULAR="${DIST}/regular"
CONFIG="${DIR}/private-build-plans.toml"
OUT_DIR="${DIST}/${FONT_NAME}/ttf"
if [ -r "${CONFIG}" ]; then
if command -v docker >/dev/null 2>&1; then
# docker pull avivace/iosevka-docker
docker pull nerdfonts/patcher
docker run -e FONT_VERSION="${IOSEVKA_VERSION}" -it -v "$DIR":/build avivace/iosevka-build -- ttf::${FONT_NAME}
sudo chown -R "$(id -u)":"$(id -g)" "${DIST}"
mkdir -p "${OBLIQUE}"
cp -af "${OUT_DIR}/${FONT_NAME}-oblique.ttf" "${OBLIQUE}"
docker run -v "${OBLIQUE}":/in -v "${OUT_DIR}":/out nerdfonts/patcher --complete --careful --adjust-line-height --makegroups || true
mkdir -p "${REGULAR}"
cp -af "${OUT_DIR}/${FONT_NAME}-regular.ttf" "${REGULAR}"
docker run -v "${REGULAR}":/in -v "${OUT_DIR}":/out nerdfonts/patcher --complete --careful --adjust-line-height --makegroups --mono --removeligatures || true
cd "${OUT_DIR}"
tar acf "${DIST}/fonts-iosevka-prog-nerd_${IOSEVKA_VERSION}.orig.tar.xz" Iosevka*Nerd*ttf
tar acf "${DIST}/fonts-iosevka-prog_${IOSEVKA_VERSION}.orig.tar.xz" iosevka*ttf
tar acf "${DIST}/iosevka-prog-${IOSEVKA_VERSION}.tar.xz" *ttf
else
echo "Docker executable not found"
fi
else
echo "Can't read config file ${CONFIG}"
fi