Skip to content

Instantly share code, notes, and snippets.

@bouroo
Created August 28, 2023 16:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bouroo/f31ddf4f5c78428882d47a27f6f1d585 to your computer and use it in GitHub Desktop.
Save bouroo/f31ddf4f5c78428882d47a27f6f1d585 to your computer and use it in GitHub Desktop.
my favorite develop environment fonts
#!/usr/bin/env bash
#==============================================================================
# title: dev_fonts.sh
# description: my favorite develop environment fonts
# author: Kawin Viriyaprasopsook <kawin.v@kkumail.com>
# usage: bash dev_fonts.sh
# notes: need `wget curl tar` packages
#==============================================================================
CURRENT_DIR=$(pwd || echo ${PWD})
if [ "$(whoami)" != "root" ]; then
SUDO=sudo
fi
echo "create shared system wide fonts"
mkdir -p ${CURRENT_DIR}/tmp_fonts || exit 1
${SUDO} mkdir -p /usr/local/share/fonts || exit 2
echo "Meslo LG from romkatv/powerlevel10k-media"
# https://github.com/romkatv/powerlevel10k-media
${SUDO} wget -q --show-progress -O "/usr/local/share/fonts/MesloLGS NF Regular.ttf" "https://github.com/romkatv/powerlevel10k-media/raw/master/MesloLGS NF Regular.ttf"
${SUDO} wget -q --show-progress -O "/usr/local/share/fonts/MesloLGS NF Bold.ttf" "https://github.com/romkatv/powerlevel10k-media/raw/master/MesloLGS NF Bold.ttf"
${SUDO} wget -q --show-progress -O "/usr/local/share/fonts/MesloLGS NF Italic.ttf" "https://github.com/romkatv/powerlevel10k-media/raw/master/MesloLGS NF Italic.ttf"
${SUDO} wget -q --show-progress -O "/usr/local/share/fonts/MesloLGS NF Bold Italic.ttf" "https://github.com/romkatv/powerlevel10k-media/raw/master/MesloLGS NF Bold Italic.ttf"
echo "intel/intel-one-mono"
tarball_url=$(curl -sL "https://api.github.com/repos/intel/intel-one-mono/releases/latest" | grep '"tarball_url":' | sed -E 's/.*"([^"]+)".*/\1/')
wget -q --show-progress -O ${CURRENT_DIR}/tmp_fonts/intel-one-mono.tar.gz "${tarball_url}"
echo "microsoft/cascadia-code"
tarball_url=$(curl -sL "https://api.github.com/repos/microsoft/cascadia-code/releases/latest" | grep '"tarball_url":' | sed -E 's/.*"([^"]+)".*/\1/')
wget -q --show-progress -O ${CURRENT_DIR}/tmp_fonts/cascadia-code.tar.gz "${tarball_url}"
echo "JetBrains/JetBrainsMono"
tarball_url=$(curl -sL "https://api.github.com/repos/JetBrains/JetBrainsMono/releases/latest" | grep '"tarball_url":' | sed -E 's/.*"([^"]+)".*/\1/')
wget -q --show-progress -O ${CURRENT_DIR}/tmp_fonts/JetBrainsMono.tar.gz "${tarball_url}"
cd ${CURRENT_DIR}/tmp_fonts || exit 3
echo "extract tmp_fonts tar"
find . -type f -name "*.tar.gz" -exec tar -xzf {} \;
echo "copy to system font path"
find . -type f -name "*.ttf" -exec sudo cp {} /usr/local/share/fonts/ \;
echo "clear temp files"
cd ${CURRENT_DIR} && rm -rf ${CURRENT_DIR}/tmp_fonts
echo "reload fonts cache"
${SUDO} fc-cache -fv
echo "done"
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment