Skip to main content

Installs selected fonts from the Google fonts directory by selectively cloning the Git repository at github.com/google/fonts and creating symlinks in your ~/.fonts directory.

Quickstart:

$ pipsi install googlefonts_installer
$ mkdir -p ~/googlefonts
$ cd ~/googlefonts
# Add list of font paths from git repo to:
$ vim googlefonts.conf
$ googlefonts-installer

To update fonts from Git, install new fonts or remove fonts, just (optionally) change googlefonts.conf and re-run googlefonts-installer.

Requirements

To use this, you’ll need

  • Python 3.3+ to run this script,

  • a recent version of Git supporting sparse checkouts,

  • a Linux-based system that uses the ~/.fonts directory.

Usage / How it works

  1. Create a directory for the Git clone:

    $ mkdir -p ~/Fonts/googlefonts/
    $ cd ~/Fonts/googlefonts/
  2. Install the googlefonts-installer package from PyPi. A good way to do this is via pipsi:

    $ pipsi install googlefonts_installer

    You now have the googlefonts-installer command available.

  3. List the fonts to install, or more precicely the sub-paths of the Google fonts Git repository to clone, in a googlefonts.conf configuration file, e.g.:

    ufl/ubuntu
    ofl/firamono
    ofl/firasans

    For example, to install Ubuntu Regular, use the directory part ufl/ubuntu/ of the file ufl/ubuntu/Ubuntu-Regular.ttf in the repository.

  4. Run googlefonts-installer. This …

    • If not yet done, inits a Git repository with sparse-checkout (only clone the defined paths) and adds the Google fonts Git repository as a remote.

    • Pulls the latest changes (shallow history to save space).

    • Creates symlinks for each font directory to ~/.fonts.

    • Removes broken symlinks from ~/.fonts for uninstalled (removed from googlefonts.conf) fonts.

Defaults

The googlefonts-installer command defaults to:

  • reading config from googlefonts.conf in the current working directory,

  • cloning into the current working directory and

  • symlinking to ~/.fonts.

Use the --config, --work-dir and --fonts-dir arguments to change this behaviour.

Hint

To find the sub-paths of the fonts you’d like to install, go to https://github.com/google/fonts, hit t and start typing a font’s name. Github will list all matching file names.

Changelog

0.3.1 - unreleased

  • Fix broken source and wheel distributions. Now actually installable.

0.3.0 - 2016-03-10

  • Clean up broken symlinks from ~/.fonts after uninstalling a font (removed from googlefonts.conf).

  • Improve documentation.

0.2.0 - 2016-03-09

  • Packaging fix.

0.1.0 - 2016-03-09

  • Initial implementation.

Metadata

Release files for googlefonts-installer 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for googlefonts-installer 0.3.1
File Size Uploaded
googlefonts_installer-0.3.1.tar.gz 5.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for googlefonts-installer 0.3.1
File Interpreter ABI Platform
googlefonts_installer-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 12.9 kB

Release files / googlefonts_installer-0.3.1.tar.gz

Download URL googlefonts_installer-0.3.1.tar.gz
Size 5.7 kB
Tags Source
SHA-256 checksum
How to use checksums
73991608123a0e32baab6d981e26434763755138942ed5ff4133377fb1d8f1c3
BLAKE2b-256 checksum
How to use checksums
6065c1edf87f3f9a3077660936da75a68500db83f691f2a5cc7860371271076b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / googlefonts_installer-0.3.1-py3-none-any.whl

Download URL googlefonts_installer-0.3.1-py3-none-any.whl
Size 7.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e8c256cbe662728041a707abd96a044f6c71a1bef2888386f1229ad8f4db0a83
BLAKE2b-256 checksum
How to use checksums
568827ea42a78c4772abfdeb78c1848cbef51df12b024ee4b5b5525c5823d00f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page