Font Manager Utility – Manage local and online fonts on Linux easily.
Author: Blessed Tanaka Saunyama
FontMgr is a command-line utility for installing, managing, and removing fonts.
It supports both local font files and downloading fonts from online sources, with optional variant selection.
You can install fontmgr using several methods:
Cloudsmith hosts your .deb packages and allows easy APT integration.
# Run setup script to add repository
curl -1sLf 'https://dl.cloudsmith.io/public/blessed/fontmgr/setup.deb.sh' | sudo -E bash
# Update package list
sudo apt update
# Install fontmgr
sudo apt install fontmgrYou can download the .deb directly from GitHub:
# Download the package
wget https://github.com/blessedsaunyama/fontmgr/raw/main/debs/fontmgr-1.0.0.deb
# Install the package
sudo apt install ./fontmgr-1.0.0.debNote: Replace the version number if a newer release is available.
If you already have the .deb file:
sudo apt install ./fontmgr-1.0.0.debfontmgr [FAMILY[:variants] ...] [options]fontmgr # Install all fonts in current directory (non-recursive)
fontmgr -R # Install all fonts in current directory and subfolders
fontmgr Roboto # Download all Roboto variants from configured online sources
fontmgr "Roboto:Bold,Italic" # Download only Bold and Italic variants of Roboto
fontmgr -d ~/Fonts # Install fonts from ~/Fonts (non-recursive)| Option | Description | Example | |
|---|---|---|---|
-R, --recursive [DIR] |
Install fonts recursively (default DIR=.) |
fontmgr -R ~/Downloads/Fonts |
|
-d, --dir DIR |
Install fonts from DIR only (non-recursive) | fontmgr -d ~/Fonts |
|
-o, --online [FAMILY...] |
Install online families. Accepts multiple families or quoted "Family:Variant,Variant" |
fontmgr -o Roboto "OpenSans:Bold,Italic" |
|
-u, --url URL |
Install a font directly from a URL (single file) | fontmgr -u https://example.com/fonts/MyFont.ttf |
|
-r, --remove NAME[:VARIANT] |
Remove a font family or specific variant | fontmgr -r Roboto:Bold |
|
--list-sources |
List configured online sources | fontmgr --list-sources |
|
--add-source NAME TYPE URL |
Add a new online source (`type=github direct`) | fontmgr --add-source MyFonts github https://github.com/user/fonts |
|
--remove-source NAME |
Remove a configured source by name | fontmgr --remove-source MyFonts |
|
-l, --list |
List installed font families | fontmgr -l |
|
-v, --variants FAMILY |
List tracked variants for FAMILY | fontmgr -v Roboto |
|
--refresh |
Refresh font cache | fontmgr --refresh |
|
--about |
Show about info | fontmgr --about |
|
-h, --help |
Show this help and exit | fontmgr --help |
|
--version |
Show version and exit | fontmgr --version |
- Typing
fontmgrwith no arguments installs all font files in the current directory (non-recursive). - Bare words (no dash) are treated as online family names to download.
- You can combine local installs (
-dor-R) and online families in a single command:
fontmgr -R -o Roboto "OpenSans:Bold,Italic" ~/MyFonts- Remove fonts selectively:
fontmgr -r Roboto # Remove entire Roboto family
fontmgr -r "Roboto:Bold" # Remove only Bold variant- Manage online sources:
fontmgr --add-source MyRepo github https://github.com/user/fonts
fontmgr --remove-source MyRepo
fontmgr --list-sources- Check installed fonts and variants:
fontmgr -l # List all installed font families
fontmgr -v Roboto # List all variants tracked for RobotoMIT License – see LICENSE file for details.
Contributions, bug reports, and feature requests are welcome!
- Fork the repository
- Create a branch for your feature/bugfix
- Open a pull request with a clear description