From 0f3f47a0f934be2e20b8d7af32e9e5981880b1d1 Mon Sep 17 00:00:00 2001 From: Ialokim Date: Mon, 25 Dec 2017 19:27:43 -0600 Subject: [PATCH] added uninstall.sh --- README.rst | 9 +++++++++ uninstall.sh | 31 +++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 uninstall.sh diff --git a/README.rst b/README.rst index 8f2d07d..1d387f0 100644 --- a/README.rst +++ b/README.rst @@ -30,6 +30,15 @@ On other environments, you can copy and paste these commands to your terminal. C cd .. rm -rf fonts +Uninstall +--------- + +Run ``./uninstall.sh`` to uninstall all Powerline Fonts. You can also copy +the quick installation commands changing only the line ``./install.sh`` to +``./uninstall.sh``. + +In both cases, please make sure you are working with the exact same version +of Powerline fonts you had checked out while installing. Font Families ------------- diff --git a/uninstall.sh b/uninstall.sh new file mode 100644 index 0000000..b0b0b4f --- /dev/null +++ b/uninstall.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +# Set source and target directories +powerline_fonts_dir="$( cd "$( dirname "$0" )" && pwd )" + +# if an argument is given it is used to select which fonts to uninstall +prefix="$1" + +if test "$(uname)" = "Darwin" ; then + # MacOS + font_dir="$HOME/Library/Fonts" +else + # Linux + font_dir="$HOME/.local/share/fonts" + if test ! -d "$font_dir" ; then + echo "It seems there are no powerline fonts installed on your system. Uninstall not needed." + exit 0 + fi +fi + +# Remove all fonts from user fonts directory +echo "Removing fonts..." +find "$powerline_fonts_dir" \( -name "$prefix*.[ot]tf" -or -name "$prefix*.pcf.gz" \) -type f -print0 | xargs -n1 -0 -I % sh -c "rm -f \"\$0/\${1##*/}\"" "$font_dir" % + +# Reset font cache on Linux +if which fc-cache >/dev/null 2>&1 ; then + echo "Resetting font cache, this may take a moment..." + fc-cache -f "$font_dir" +fi + +echo "Powerline fonts uninstalled from $font_dir"