Skip to content

Instantly share code, notes, and snippets.

@Harry-W-Haines-III
Last active July 19, 2022 11:16
Show Gist options
  • Save Harry-W-Haines-III/6813bc6d660bdba4003e34d740ac9419 to your computer and use it in GitHub Desktop.
Save Harry-W-Haines-III/6813bc6d660bdba4003e34d740ac9419 to your computer and use it in GitHub Desktop.
Purge fonts for EMA and APJ languages
#!/bin/bash
#############################################################################
# Most Recent Change Log: #
# #
# 2022-07-09 18:00 PM EST Modified for Linux Mint 21.0 Beta.
#
# Get sudo going, enter password.
sudo test
sleep 1
echo " "
echo "Purging fonts for EMA and APJ languages ..."
echo " "
sleep 1
sudo apt-get -y --purge autoremove \
fonts-beng \
fonts-beng-extra \
fonts-deva \
fonts-deva-extra \
fonts-droid-fallback \
fonts-gargi \
fonts-gubbi \
fonts-gujr \
fonts-gujr-extra \
fonts-guru \
fonts-guru-extra \
fonts-indic \
fonts-kacst \
fonts-kacst-one \
fonts-kalapi \
fonts-khmeros-core \
fonts-knda \
fonts-lao \
fonts-lklug-sinhala \
fonts-lohit-beng-assamese \
fonts-lohit-beng-bengali \
fonts-lohit-deva \
fonts-lohit-gujr \
fonts-lohit-guru \
fonts-lohit-knda \
fonts-lohit-mlym \
fonts-lohit-orya \
fonts-lohit-taml \
fonts-lohit-taml-classical \
fonts-lohit-telu \
fonts-mlym \
fonts-nakula \
fonts-navilu \
fonts-noto-cjk \
fonts-noto-color-emoji \
fonts-orya \
fonts-orya-extra \
fonts-pagul \
fonts-sahadeva \
fonts-samyak-deva \
fonts-samyak-gujr \
fonts-samyak-mlym \
fonts-samyak-taml \
fonts-sarai \
fonts-sil-abyssinica \
fonts-sil-padauk \
fonts-smc \
fonts-smc-anjalioldlipi \
fonts-smc-chilanka \
fonts-smc-dyuthi \
fonts-smc-gayathri \
fonts-smc-karumbi \
fonts-smc-keraleeyam \
fonts-smc-manjari \
fonts-smc-meera \
fonts-smc-rachana \
fonts-smc-raghumalayalamsans \
fonts-smc-suruma \
fonts-smc-uroob \
fonts-taml \
fonts-telu \
fonts-telu-extra \
fonts-teluguvijayam \
fonts-thai-tlwg \
fonts-tibetan-machine \
fonts-tlwg-garuda \
fonts-tlwg-garuda-ttf \
fonts-tlwg-kinnari \
fonts-tlwg-kinnari-ttf \
fonts-tlwg-laksaman \
fonts-tlwg-laksaman-ttf \
fonts-tlwg-loma \
fonts-tlwg-loma-ttf \
fonts-tlwg-mono \
fonts-tlwg-mono-ttf \
fonts-tlwg-norasi \
fonts-tlwg-norasi-ttf \
fonts-tlwg-purisa \
fonts-tlwg-purisa-ttf \
fonts-tlwg-sawasdee \
fonts-tlwg-sawasdee-ttf \
fonts-tlwg-typewriter \
fonts-tlwg-typewriter-ttf \
fonts-tlwg-typist \
fonts-tlwg-typist-ttf \
fonts-tlwg-typo \
fonts-tlwg-typo-ttf \
fonts-tlwg-umpush \
fonts-tlwg-umpush-ttf \
fonts-tlwg-waree \
fonts-tlwg-waree-ttf \
fonts-yrsa-rasa
#
# Removing nonessential EMA and APJ language Noto fonts and leaving the ones
# used by:
# SuperTuxKart: NotoColorEmoji.ttf, NotoNaskhArabicUI-Regular.ttf,
# NotoSansHebrew-Regular.ttf, NotoSansMalayalam-Regular.ttf, (new in LM 21.0)
# NotoSansThai-Regular.ttf
# Existing Noto fonts to keep: NotoSans-BoldItalic.ttf, NotoSans-Bold.ttf,
# NotoSans-Italic.ttf, NotoSans-Regular.ttf
echo " "
echo "Removing nonessential EMA and APJ language Noto fonts ..."
echo " "
#
SEARCH_FOLDER="/usr/share/fonts/truetype/noto/*"
for f in $SEARCH_FOLDER
do
if \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoColorEmoji.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoNaskhArabicUI-Regular.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSans-Condensed.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSans-CondensedBold.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSans-CondensedBoldItalic.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSans-CondensedItalic.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSansHebrew-Regular.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSansMalayalam-Regular.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSansThai-Regular.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSerif-Condensed.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSerif-CondensedBold.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSerif-CondensedBoldItalic.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSerif-CondensedItalic.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf" ] || \
[ "$f" = "/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf" ]
then
continue
else
sudo rm -v "$f"
fi
done
#
echo " "
echo "Removing additional duplicated fonts ..."
echo " "
# Remove all the Base 35 Type 1 files from the system.
# They are duplicated twice with the new OTF PostScript 35 set and are
# deprecated in almost all applications.
sudo rm -v /usr/share/fonts/type1/gsfonts/*.afm
sudo rm -v /usr/share/fonts/type1/gsfonts/*.pfb
sudo rm -v /usr/share/fonts/type1/gsfonts/*.pfm
sudo rm -v /usr/share/fonts/type1/urw-base35/*.afm
sudo rm -v /usr/share/fonts/type1/urw-base35/*.t1
sudo rm -v /usr/share/fonts/X11/Type1/*.afm
sudo rm -v /usr/share/fonts/X11/Type1/*.pfb
sudo rm -v /usr/share/fonts/X11/Type1/encodings.dir
sudo rm -v /usr/share/fonts/X11/Type1/fonts.dir
sudo rm -v /usr/share/fonts/X11/Type1/fonts.scale
#
# Remove duplicated Liberation Fonts, keeping the newer versions.
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationMono-BoldItalic.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationMono-Bold.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationMono-Italic.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationMono-Regular.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationSans-BoldItalic.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationSans-Bold.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationSans-Italic.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationSerif-BoldItalic.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationSerif-Bold.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationSerif-Italic.ttf
sudo rm -v /usr/share/fonts/truetype/liberation/LiberationSerif-Regular.ttf
#
# Each of these directories contains a ".uuid" file which is why the
# directory is left over after font uninstallation.
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=897040
echo " "
echo "Remove empty directories left after purging fonts ..."
echo " "
sudo rm -Rf -v /usr/share/fonts/opentype/linux-libertine/
sudo rm -Rf -v /usr/share/fonts/opentype/malayalam/
sudo rm -Rf -v /usr/share/fonts/opentype/noto
sudo rm -Rf -v /usr/share/fonts/truetype/abyssinica/
sudo rm -Rf -v /usr/share/fonts/truetype/crosextra/
sudo rm -Rf -v /usr/share/fonts/truetype/droid/
sudo rm -Rf -v /usr/share/fonts/truetype/fonts-beng-extra/
sudo rm -Rf -v /usr/share/fonts/truetype/fonts-deva-extra/
sudo rm -Rf -v /usr/share/fonts/truetype/fonts-gujr-extra/
sudo rm -Rf -v /usr/share/fonts/truetype/fonts-guru-extra/
sudo rm -Rf -v /usr/share/fonts/truetype/fonts-kalapi/
sudo rm -Rf -v /usr/share/fonts/truetype/fonts-orya-extra/
sudo rm -Rf -v /usr/share/fonts/truetype/fonts-telu-extra/
sudo rm -Rf -v /usr/share/fonts/truetype/fonts-yrsa-rasa/
sudo rm -Rf -v /usr/share/fonts/truetype/Gargi/
sudo rm -Rf -v /usr/share/fonts/truetype/gentium/
sudo rm -Rf -v /usr/share/fonts/truetype/gentium-basic/
sudo rm -Rf -v /usr/share/fonts/truetype/Gubbi/
sudo rm -Rf -v /usr/share/fonts/truetype/hack/
sudo rm -Rf -v /usr/share/fonts/truetype/kacst/
sudo rm -Rf -v /usr/share/fonts/truetype/kacst-one/
sudo rm -Rf -v /usr/share/fonts/truetype/lao/
sudo rm -Rf -v /usr/share/fonts/truetype/lohit-*/
sudo rm -Rf -v /usr/share/fonts/truetype/malayalam/
sudo rm -Rf -v /usr/share/fonts/truetype/Navilu/
#sudo rm -Rf -v /usr/share/fonts/truetype/openoffice/
# need to leave this emtpy directory^
sudo rm -Rf -v /usr/share/fonts/truetype/padauk/
sudo rm -Rf -v /usr/share/fonts/truetype/pagul/
sudo rm -Rf -v /usr/share/fonts/truetype/Sahadeva/
sudo rm -Rf -v /usr/share/fonts/truetype/samyak/
sudo rm -Rf -v /usr/share/fonts/truetype/samyak-fonts/
sudo rm -Rf -v /usr/share/fonts/truetype/Sarai/
sudo rm -Rf -v /usr/share/fonts/truetype/teluguvijayam/
sudo rm -Rf -v /usr/share/fonts/truetype/tibetan-machine/
sudo rm -Rf -v /usr/share/fonts/truetype/tlwg/
sudo rm -Rf -v /usr/share/fonts/truetype/ttf-khmeros-core/
sudo fc-cache -f -v && fc-cache -f -v && sudo dpkg-reconfigure fontconfig
#
echo "######################################################################"
echo "## ##"
echo "## DONE !!! ##"
echo "## ##"
echo "######################################################################"
sleep 5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment