I had "WinFonts" folder in home directory including many true type fonts (.ttf) which I would like to install to be applied for use widely across Ubuntu system and apps. I need help guiding me to make this step?
1 Answers
Installing TTF fonts system wide it's not difficult. You just need to create a directory inside one of the system font directories (you find them listed in /etc/fonts/fonts.conf), put there your *.ttf fonts and then update system font cache with fc-cache -fv (With the options -f for Force re-generation of cache files and -v for Verbose).
As suggested by @emk2203 you should put custom fonts in a subdirectory of /usr/local/share/fonts, so it's easy to tell them apart from distributor provided fonts (they are in /usr/share/fonts), and it's easier to backup or restore them if needed.
Step by step:
Create your custom fonts directory:
sudo mkdir /usr/local/share/fonts/truetypeCopy your
*.ttffonts there:sudo cp ~/myfonts/*.ttf /usr/local/share/fonts/truetype/Update system font cache:
sudo fc-cache -fv
If you want to add more fonts later, just copy them to your /usr/local/share/fonts/truetype/ directory and update system font cache as above.
- 2,664
- 1
- 19
- 25
-
2and don't forget that extension also are case sensitive. So for example copy `TTF` files also. – SirSaleh Mar 19 '17 at 12:25
-
1Right. To avoid this kind of annoying case problems, it may be a good idea to stick with a case convention for these files, i.e. use only lower case extensions. – gerlos Mar 22 '17 at 13:53
-
FYI I didn't need sudo - so perhaps try without first – ErichBSchulz Mar 15 '19 at 03:55
-
1@ErichBSchulz this is because font cache are stored both system wide (in `/var/cache/fontconfig/`) and per-user (in `~/.cache/fontconfig`). If you have only one user on your system both commands will work. If you have more users, you may prefer to generate the cache once for everyone, using `sudo`. – gerlos Mar 15 '19 at 11:49
-
1For a lot of reasons, it's better to use directories specifically designed to hold user- or site-specific content, instead of distributor-specific content. Put your fonts (in appropriate subdirectories) in `/usr/local/share/fonts` instead. It exists for a reason. If you decide to reinstall a system, you have everything you installed yourself in `/usr/local` for reference and backup. – emk2203 Aug 28 '22 at 05:14
-
I updated the answer including your suggestion. Thanks! – gerlos Sep 06 '22 at 07:59