How to Install Microsoft Truetype Fonts in Linux

Install Win Fonts In Ubuntu Featured

Although there are thousands of fonts available, the popularity of Windows leads to the extensive use of Microsoft’s fonts that come with the OS. For many users, fonts such as “Arial,” “Times New Roman” and “Impact” are considered standard. Thus, if you’re collaborating and exchanging documents with Windows users, you need to have access to these fonts even if you are using Linux.

Thankfully, it’s easy to bring those fonts onboard your Linux distribution. Let’s see how to do it.

The Classic Installer

If you’re using a variant of Ubuntu, unlike users of other distributions, you still have access to an old installer that makes adding the core Microsoft fonts to your OS easy. To do that, enter in a terminal:

sudo apt install ttf-mscorefonts-installer
Ms Fonts In Linux Mscorefonts

For Fedora (or any distro using rpm), here is an old, but still working, method to install Microsoft Fonts.

sudo dnf install curl cabextract xorg-x11-font-utils fontconfig
sudo rpm -i https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm

In Arch Linux, you can install the ttf-ms-fonts package from AUR.

A universal way to install Microsoft Fonts on any Linux distribution is to extract the fonts from Windows and move them to your system.

Copy from Windows Installation

If you have access to a working Windows machine, you can copy the fonts from there. Run your favorite file manager and point it to “C:\Windows\Fonts.” Note that the path might be different if you didn’t use the default path when installing Windows. Select all files in that directory and copy them to your USB drive.

Transfer the font files back to your Linux machine and place them in the “.fonts” folder in your Home directory. If the “.fonts” folder (mind the dot in front of the name) doesn’t exist, create it.

Copy from Windows 10 ISO

If you don’t have access to a Windows installation, you can easily download the Windows ISO file and extract the fonts from the ISO image.

1. Download Microsoft’s official Download Windows 10 Disc Image (ISO File). Scroll a bit downward and select your edition from the pull-down menu – pick the latest “full” version available, not an upgrade.

Ms Fonts In Linux Select Edition

Although we haven’t seen any difference in font availability between different product languages, we suggest you download either a version of Windows for your primary language or the “English International” option.

Ms Fonts In Linux Product Language

2. To extract the fonts from the Windows ISO, we will need 7Zip. If you have not installed it, do so with the command:

sudo apt install p7zip-full
Ms Fonts In Linux Install P7zip

On OpenSUSE, you can try:

sudo zypper install p7zip

On Arch and other Arch-based distros like Manjaro, try this:

sudo pacman -S p7zip

3. In the terminal, cd to the directory where you have downloaded the Windows ISO. First, you’ll have to extract a large archive that contains other files used for the installation of Windows. The font files we need are among them. To do that, use:

cd ~/Downloads
7z e Win10_XXXX_EnglishInternational_x64.ISO sources/install.wim

Replace “Win10_XXXX_EnglishInternational_x64” with the exact name of the Windows ISO file.

Ms Fonts In Linux Extract Install Wim

Note that this part of the process will take a while depending on your CPU’s performance. It will also demand more than 4 GB of space to extract the large file from the ISO.

Ms Fonts In Linux Install Wim Extraction

4. After the process is completed, extract the Fonts directory from the “install.wim” archive. Run the command:

7z e install.wim 1/Windows/{Fonts/"*".{ttf,ttc},System32/Licenses/neutral/"*"/"*"/license.rtf} -ofonts/
Ms Fonts In Linux Extract Fonts From Wim

Like before, give it some time, and soon you’ll find all the fonts contained in the Windows installation media in a “fonts” subfolder next to the downloaded ISO.

Ms Fonts In Linux Extracted Fonts Folder

Install the fonts

The easiest way to install the fonts in Linux is by moving them to the “.fonts” folder in your Home directory. You can do that with:

mv fonts ~/.fonts
Ms Fonts In Linux Move Fonts

On Arch, the “~/.fonts” folder is considered deprecated, so try the following instead:

mv fonts ~/.local/share/fonts

Finally, for your new fonts to be available in most applications, update your installation’s font cache with:

fc-cache -f
Ms Fonts In Linux Installed Fonts

Fire up any program like LibreOffice’s Writer, and you’ll find your newly-installed fonts among the ones you were already using.

Even if you have all the fonts, there are times when you have trouble identifying the fonts used, particularly in an image. Also, if what you need is the Windows application instead of the fonts, you can still run the Windows app in Linux via WINE.

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox

Odysseas Kourafalos

OK's real life started at around 10, when he got his first computer - a Commodore 128. Since then, he's been melting keycaps by typing 24/7, trying to spread The Word Of Tech to anyone interested enough to listen. Or, rather, read.