Microsoft TrueType fonts like Arial, Times New Roman, and Verdana ensure your documents display consistently between Windows and Linux systems. When you open .docx files from colleagues, work with publisher templates, or collaborate on web design projects, these fonts render text exactly as intended without layout shifts or font substitution warnings.
This guide covers installing Microsoft Core Fonts on Debian using the ttf-mscorefonts-installer package from the contrib archive component. You will enable the needed archive components, accept the Microsoft license agreement, install the font collection, and verify availability with both terminal queries and the graphical Fonts application. By the end, applications like LibreOffice, Firefox, and GIMP will render Microsoft-font documents without substitution.
Update System Packages
Before installing Microsoft fonts, refresh your package lists so APT has the latest metadata:
sudo apt update
This command refreshes your package index with the latest available versions. Once complete, you can proceed with enabling the required archive components and installing the fonts.
Install Microsoft Fonts via ttf-mscorefonts-installer
Microsoft Core Fonts reside in the contrib archive component because the Debian package provides an installer script that fetches proprietary font files (redistributed from SourceForge mirrors of the Microsoft Core Fonts collection) at install time. For background on Debian’s archive separation, see our guide on how to enable contrib and non-free repositories on Debian.
The
contribcomponent contains packages that are free software themselves but depend on or install non-free software. Thettf-mscorefonts-installerpackage downloads proprietary Microsoft fonts during installation, which is why it cannot reside in themainrepository.
The ttf-mscorefonts-installer package downloads and installs these Microsoft TrueType Core Fonts:
- Andale Mono
- Arial (including Bold, Italic, Bold Italic)
- Comic Sans MS (including Bold)
- Courier New (including Bold, Italic, Bold Italic)
- Georgia (including Bold, Italic, Bold Italic)
- Impact
- Times New Roman (including Bold, Italic, Bold Italic)
- Trebuchet MS (including Bold, Italic, Bold Italic)
- Verdana (including Bold, Italic, Bold Italic)
- Webdings
Enable Required Archive Components: The package itself lives in contrib. Many users also enable non-free and non-free-firmware for broader proprietary support. Edit only Debian archive lines—do not rewrite vendor repositories such as Google Chrome or Docker.
Debian 13 (Trixie) and Debian 12 (Bookworm) default to DEB822
.sourcesformat for APT repository configuration. Debian 11 (Bullseye) uses the legacy.listformat and does not include thenon-free-firmwarecomponent.
For Debian 12 and Debian 13 with the default DEB822 source file, update the Components line:
sudo sed -i '/^Components:/s/ main/ main contrib non-free non-free-firmware/' /etc/apt/sources.list.d/debian.sources
Verify the change applied successfully:
grep '^Components:' /etc/apt/sources.list.d/debian.sources
Expected output showing all components enabled:
Components: main contrib non-free non-free-firmware Components: main contrib non-free non-free-firmware
Debian 11 users: The
non-free-firmwarecomponent does not exist on Bullseye. If you keep a legacy/etc/apt/sources.list, scope the change to Debian mirrors so third-party entries stay untouched:sudo sed -i '/^deb http.*deb\\.debian\\.org.*main/s/ main$/ main contrib non-free/' /etc/apt/sources.list
If you prefer manual editing, open the relevant file with a text editor, append the needed components to each active Debian line, then save and exit.
After modifying repository configuration, refresh package metadata so APT recognizes the new component indexes:
sudo apt update
The output will show APT downloading package lists from the newly enabled contrib, non-free, and (on Debian 12+) non-free-firmware components. You should see lines like:
Get:1 http://deb.debian.org/debian trixie InRelease [127 kB] Get:2 http://deb.debian.org/debian trixie/contrib amd64 Packages [52.3 kB] Get:3 http://deb.debian.org/debian trixie/non-free amd64 Packages [89.1 kB]
Optional Headless EULA Preseed: For unattended installs in automation scenarios (CI/CD pipelines, Ansible playbooks, Dockerfiles), pre-accept the Microsoft Core Fonts EULA to bypass the interactive debconf screen:
echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | sudo debconf-set-selections
The Microsoft Core Fonts EULA allows redistribution of the fonts but requires preserving Microsoft’s copyright notices and trademark acknowledgments. The license does not permit modification of the font files themselves. Review the full terms in the debconf screen during interactive installation before accepting.
Install the Microsoft Core Fonts package (downloads and installs the TrueType files):
sudo apt install ttf-mscorefonts-installer
During installation, the terminal displays a blue debconf screen prompting you to accept the Microsoft Core Fonts license. Press Tab to highlight OK, then press Enter to proceed. The installer downloads the font files from SourceForge mirrors, showing progress and file sizes. Installation typically completes in 1-2 minutes on modern connections, though slower mirrors or network conditions may extend this time. If you see no progress after several minutes, confirm network connectivity and mirror availability, then retry the installation.

The installer automatically updates your system’s font cache after installation. You can immediately use Microsoft fonts in LibreOffice, GIMP, Firefox, and other applications without restarting or running manual cache refresh commands.
Verify Microsoft Fonts Installation
Once the installation completes, verify that Microsoft fonts are properly installed and accessible to applications. You can check availability through both terminal commands and the graphical Fonts application.
Verify Installation via Terminal
The fontconfig package provides tools for querying installed fonts. The ttf-mscorefonts-installer package depends on xfonts-utils, which typically brings in font management dependencies, but if fc-list is not available, install fontconfig explicitly:
sudo apt install fontconfig
After fontconfig is available, confirm Microsoft fonts are registered in your system’s font cache by listing them:
fc-list | grep -i "Arial\|Times\|Verdana\|Courier"
Example success output (paths will match your architecture):
/usr/share/fonts/truetype/msttcorefonts/Arial.ttf: Arial:style=Regular /usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf: Arial:style=Bold /usr/share/fonts/truetype/msttcorefonts/Times_New_Roman.ttf: Times New Roman:style=Regular /usr/share/fonts/truetype/msttcorefonts/Verdana.ttf: Verdana:style=Regular
You can also query the preferred match for a font family using fc-match:
fc-match Arial
fc-match "Times New Roman"
Arial.ttf Times_New_Roman.ttf
This command uses fc-list to query installed fonts and pipes the output through grep to filter for common Microsoft font names. The output shows the complete path to each font file (typically in /usr/share/fonts/truetype/msttcorefonts/) along with the font name and style variant. You should see multiple matches for different variants such as Arial, Arial Bold, Arial Italic, and Arial Bold Italic, confirming the complete font package installed successfully. These fonts are now immediately available in applications like LibreOffice, Firefox, and GIMP without requiring a restart or manual cache refresh.
Verify via Fonts Application
For graphical verification, open the Fonts application through your desktop environment. On GNOME-based systems, click Activities in the top-left corner, select Show Applications, then search for and launch the Fonts application:
On other desktops, open your font viewer (for example, gnome-font-viewer or Font Manager) from the applications menu to check the installed fonts.

Within the Fonts application, search for specific Microsoft fonts to confirm their availability. Type Arial into the search bar to verify one of the most commonly used fonts from the Microsoft Core Fonts collection:

Similarly, verify Times New Roman and other fonts from the collection. Search for each font by name to confirm the complete package installed successfully. The Fonts application displays font previews, style variants, and character samples for each installed font:

Remove Microsoft Fonts
To completely remove Microsoft fonts from your system, purge (not just remove) the installer package. A simple remove leaves downloaded font files behind; purge deletes package data and font files, then triggers cache updates.
sudo apt purge ttf-mscorefonts-installer
After purging the package, rebuild the font cache to remove references to the deleted fonts:
sudo fc-cache -f -v
The -f flag forces a complete cache rebuild, and -v enables verbose output. You will see messages like:
/usr/share/fonts: caching, new cache contents: 0 fonts, 3 dirs /usr/local/share/fonts: caching, new cache contents: 0 fonts, 0 dirs /home/username/.fonts: skipping, no such directory fc-cache: succeeded
Verify the fonts no longer appear in the system font list:
fc-list | grep -i "Arial\|Times\|Verdana\|Courier"
If the command returns no output, the Microsoft fonts were successfully removed. After removal, applications fall back to substitute families (Liberation Sans, Liberation Serif, or other configured fontconfig alternatives) when opening documents referencing Microsoft fonts. Document formatting metadata remains intact; only rendered glyphs change, and you may notice subtle differences in character shapes and spacing.
Alternative: Use Liberation Fonts
If you cannot accept the Microsoft EULA or prefer open-source alternatives, install metric-compatible Liberation fonts instead. They preserve document layout for most Office files without proprietary licensing restrictions.
Install Liberation fonts from the main repository (no contrib or non-free components required):
sudo apt install fonts-liberation
Liberation fonts are metric-compatible with their Microsoft counterparts, meaning document layouts remain correct even though the actual glyph shapes differ slightly:
| Microsoft Font | Liberation Equivalent | Compatibility |
|---|---|---|
| Arial | Liberation Sans | Metric-compatible |
| Times New Roman | Liberation Serif | Metric-compatible |
| Courier New | Liberation Mono | Metric-compatible |
LibreOffice, Firefox, and most applications automatically map Liberation families as substitutes for Arial, Times New Roman, and Courier New. Documents maintain correct line breaks, pagination, and spacing, though you may notice subtle differences in character shapes and letter forms. For professional publishing or exact visual matching, the Microsoft Core Fonts remain the more accurate choice.
Revert Repository Component Changes
If you temporarily enabled contrib and non-free components only for this installation and prefer to minimize the number of proprietary packages available on your system, you can revert to the default main-only configuration. This reduces the package exposure to FOSS-only software, which some users prefer for security auditing or organizational policy compliance.
For Debian 12 and Debian 13 systems using DEB822 format, revert to the default components:
sudo sed -i 's/^Components: main contrib non-free non-free-firmware/Components: main/' /etc/apt/sources.list.d/debian.sources
For Debian 11 systems using the legacy .list format:
sudo sed -i '/^deb http.*deb\.debian\.org.*main contrib non-free/s/ contrib non-free//' /etc/apt/sources.list
After reverting the repository configuration, refresh the package index to remove references to contrib and non-free packages:
sudo apt update
The Microsoft fonts you already installed remain functional after reverting repository changes. You only lose access to future updates or additional contrib/non-free packages until you re-enable those components.
Troubleshoot Installation Issues
If the Microsoft fonts installer fails or fonts do not appear after installation, use the following diagnostic steps to identify and resolve common issues.
Installation Hangs or Fails
Symptom: The installation process stalls during download with no progress indicators, or APT reports download failures.
Diagnosis: Font files are downloaded from SourceForge mirrors during installation. Network connectivity issues or temporarily unavailable mirrors cause stalled downloads. Check your internet connection:
ping -c 3 sourceforge.net
If connectivity is confirmed but the installation still fails, SourceForge mirrors may be experiencing issues.
Fix: Purge the incomplete installation and retry. A fresh install attempt may connect to a different, functional mirror:
sudo apt purge ttf-mscorefonts-installer
sudo apt install ttf-mscorefonts-installer
Verification: A successful installation displays download progress for each font file and completes with font cache update messages. Check that fonts are registered:
fc-list | grep -i Arial
Fonts Missing in Applications
Symptom: Microsoft fonts do not appear in application font menus (LibreOffice, GIMP, Inkscape) even though installation succeeded.
Diagnosis: Applications read font information from the fontconfig cache. If the cache was not updated correctly during installation or an application cached the font list before installation, fonts may not appear. Check if fonts are physically installed:
ls -lh /usr/share/fonts/truetype/msttcorefonts/
If the directory exists and contains .ttf files, the fonts are installed but not cached correctly.
Fix: Rebuild the system-wide font cache to register the newly installed fonts:
sudo fc-cache -f -v
The -f flag forces a complete rebuild, and -v shows verbose output as each directory is processed.
Verification: After rebuilding the cache, restart any open applications and check their font menus. Alternatively, query the cache directly:
fc-match Arial
Expected output confirming Arial is available:
Arial.ttf
License Agreement Prompt Issues
Symptom: Installation hangs on a blue debconf screen in headless or non-interactive environments (SSH sessions without pseudo-terminal, Docker containers, automation scripts).
Diagnosis: The installer requires interactive EULA acceptance unless preseeded. In non-interactive environments, the debconf prompt cannot be answered, causing the installation to hang indefinitely.
Fix: Cancel the stalled installation, purge the package, preseed the EULA acceptance, and reinstall:
sudo apt purge ttf-mscorefonts-installer
echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | sudo debconf-set-selections
sudo apt install ttf-mscorefonts-installer
Verification: The installation should proceed without prompts. Confirm successful installation:
dpkg -l | grep ttf-mscorefonts-installer
Expected output showing installed status:
ii ttf-mscorefonts-installer 3.8.1 all Installer for Microsoft TrueType core fonts
Conclusion
Your Debian system now provides Microsoft Core Fonts (Arial, Times New Roman, Verdana, and others) for accurate cross-platform document rendering. With the installer in place and font caches updated, documents open without substitution warnings and maintain intended typography across Windows and Linux. Applications like LibreOffice, Firefox, and GIMP immediately recognize these fonts for document editing, web design, and graphics work.
For users working with Windows software through Wine, these fonts ensure compatibility when running Office applications or design tools. If you need Microsoft fonts on other distributions, see our guides for Ubuntu and Fedora. To further customize your Debian desktop, explore our collection of contrib and non-free software guides for additional proprietary packages.
Gracias! funcionó perfecto.
Thank you both Joshua James for this article and Gerard for the comment on the comparison between the MS and the free fonts! This article and comments made my work on my old Macbook running AntiX much easier 🙂
Thanks, it worked perfectly for me
Thank you for the feedback.
Joshua,
Personally, I would not recommend to a new Linux user to install Microsoft Fonts for at least 3, maybe 4 reasons… which I do not have time to explain here.
Linux has capability to choose a similar and font-metric compatible alternative to unknown or uninstalled font. You mentioned Times New Roman, Arial, and Verdana. So, on my system:
$ fc-match Verdana
NotoSans-Regular.ttf: “Noto Sans” “Regular”
$ fc-match Arial
LiberationSans-Regular.ttf: “Liberation Sans” “Regular”
$ fc-match “Times New Roman”
LiberationSerif-Regular.ttf: “Liberation Serif” “Regular”
and when you visit wikipedia pages on these fonts, you will be able to read:
”
This means that the characters of each Liberation font are identical in width and height to those of each corresponding Monotype font. It allows the Liberation fonts to serve as free, open-source replacements of the proprietary Monotype fonts without changing the document layout. (…)
Liberation Serif is metrically identical to Times New Roman.
”
https://en.wikipedia.org/wiki/Liberation_fonts#Characteristics
If you click the “Comparison of Liberation Sans with Arial” link, you will even be able to view each glyph of each font and see how similar they are.
If you do a search with “open-source metric-compatible font”, you will find several equivalence between free and non-free fonts.
Websites and websites creators over-excessively and too frequently want to force particular and specific fonts (thanks to embedding webfonts: woff and woff2 types) for unnecessary reasons. This increases download, process and rendering times and bandwidth.
Thanks for sharing this perspective, Gérard. You raise valid points about Liberation fonts and metric compatibility. They absolutely work well as substitutes for many users.
This guide targets a specific scenario: users who need exact font matching for professional document workflows, publisher templates, or cross-platform collaboration where clients or employers explicitly require Microsoft fonts. When opening .docx files with embedded formatting or working with design specs that reference Arial by name, Liberation Sans renders similarly but metadata mismatches can trigger substitution warnings in LibreOffice or formatting shifts in PDF exports.
Your
fc-matchoutput demonstrates fontconfig’s fallback behavior perfectly. Liberation fonts are the system default substitutes. That works seamlessly for personal documents and general browsing. However, enterprise environments, legal documentation, or collaborative editing often mandate exact font matching to preserve layout fidelity across Windows, Linux, and macOS systems.The guide includes removal instructions precisely because this isn’t a universal recommendation. Users who don’t need strict cross-platform font consistency should absolutely stick with Liberation fonts or other open alternatives. For those who do need Microsoft fonts (law firms exchanging court filings, marketing teams matching brand guidelines, developers testing web rendering against Windows defaults), the
ttf-mscorefonts-installerpackage provides a straightforward path.Appreciate you highlighting the metric-compatible alternatives. Readers evaluating whether they truly need proprietary fonts will benefit from understanding Liberation fonts cover most use cases without the licensing overhead.