init
This commit is contained in:
commit
714d050757
139 changed files with 27826 additions and 0 deletions
79
font-manager.sh
Executable file
79
font-manager.sh
Executable file
|
@ -0,0 +1,79 @@
|
|||
#!/bin/bash
|
||||
# ~/.local/bin/font-manager
|
||||
# This script extracts font archives and rebuilds font cache
|
||||
|
||||
FONT_DIR="$HOME/.local/share/fonts"
|
||||
ARCHIVE_DIR="$FONT_DIR/archives"
|
||||
ACTIVE_DIR="$FONT_DIR/active"
|
||||
|
||||
# Function to extract a specific font archive
|
||||
extract_font() {
|
||||
local archive="$1"
|
||||
if [ -f "$ARCHIVE_DIR/$archive.tar.gz" ]; then
|
||||
echo "Extracting $archive fonts..."
|
||||
tar -xzf "$ARCHIVE_DIR/$archive.tar.gz" -C "$ACTIVE_DIR"
|
||||
fc-cache -f
|
||||
echo "Done! $archive fonts are now active."
|
||||
else
|
||||
echo "Error: Font archive $archive.tar.gz not found."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to list available font archives
|
||||
list_fonts() {
|
||||
echo "Available font archives:"
|
||||
ls -1 "$ARCHIVE_DIR" | sed 's/\.tar\.gz$//'
|
||||
}
|
||||
|
||||
# Function to rebuild font cache
|
||||
rebuild_cache() {
|
||||
echo "Rebuilding font cache..."
|
||||
fc-cache -f
|
||||
echo "Done!"
|
||||
}
|
||||
|
||||
# Function to extract all fonts
|
||||
extract_all() {
|
||||
echo "Extracting all font archives..."
|
||||
for archive in "$ARCHIVE_DIR"/*.tar.gz; do
|
||||
tar -xzf "$archive" -C "$ACTIVE_DIR"
|
||||
done
|
||||
fc-cache -f
|
||||
echo "Done! All fonts are now active."
|
||||
}
|
||||
|
||||
# Function to clean active fonts directory
|
||||
clean_fonts() {
|
||||
echo "Cleaning active fonts directory..."
|
||||
find "$ACTIVE_DIR" -type f -name "*.ttf" -o -name "*.otf" | xargs rm -f
|
||||
echo "Done! Active fonts directory is now clean."
|
||||
}
|
||||
|
||||
# Main script logic
|
||||
case "$1" in
|
||||
"extract")
|
||||
extract_font "$2"
|
||||
;;
|
||||
"list")
|
||||
list_fonts
|
||||
;;
|
||||
"rebuild")
|
||||
rebuild_cache
|
||||
;;
|
||||
"all")
|
||||
extract_all
|
||||
;;
|
||||
"clean")
|
||||
clean_fonts
|
||||
;;
|
||||
*)
|
||||
echo "Usage: font-manager [command] [options]"
|
||||
echo "Commands:"
|
||||
echo " extract [name] Extract specific font archive"
|
||||
echo " list List available font archives"
|
||||
echo " rebuild Rebuild font cache"
|
||||
echo " all Extract all font archives"
|
||||
echo " clean Remove all active fonts"
|
||||
;;
|
||||
esac
|
Loading…
Add table
Add a link
Reference in a new issue