Skip to content

Instantly share code, notes, and snippets.

@SohamG
Last active Sep 11, 2022
Embed
What would you like to do?
Fix emoji in Linux and get color emoji in Discord! Place this fontconfig file in ~/.config/fontconfig/fonts.conf
<?xml version="1.0"?><!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- REQUIRES Noto fonts (along with Noto Color Emoji)
run `fc-list | grep -i -e "noto sans" -e "noto serif" -e "noto color emoji"` to confirm
-->
<!-- Change the string in the family tag to whatever font -->
<family>serif</family>
<prefer><family>Noto Serif</family></prefer>
</alias>
<alias>
<family>sans-serif</family>
<prefer><family>Noto Sans</family></prefer>
</alias>
<alias>
<family>sans</family>
<prefer><family>Noto Sans</family></prefer>
</alias>
<alias>
<family>monospace</family>
<prefer><family>Noto Mono</family></prefer>
</alias>
<!-- This adds Noto Color Emoji to the font families sans, serif, sans-serif and monospace -->
<match target="pattern">
<test name="family"><string>monospace</string></test>
<edit name="family" mode="append"><string>Noto Color Emoji</string></edit>
</match>
<match target="pattern">
<test name="family"><string>sans</string></test>
<edit name="family" mode="append"><string>Noto Color Emoji</string></edit>
</match>
<match target="pattern">
<test name="family"><string>serif</string></test>
<edit name="family" mode="append"><string>Noto Color Emoji</string></edit>
</match>
<!-- Discord loads the system's sans-serif font family, add Noto Color Emoji to it -->
<match target="pattern">
<test name="family"><string>sans-serif</string></test>
<edit name="family" mode="append"><string>Noto Color Emoji</string></edit>
</match>
<!-- Add emoji generic family -->
<alias binding="strong">
<family>emoji</family>
<default><family>Noto Color Emoji</family></default>
</alias>
<!-- Alias requests for the other emoji fonts -->
<alias binding="strong">
<family>Apple Color Emoji</family>
<prefer><family>Noto Color Emoji</family></prefer>
<default><family>emoji</family></default>
</alias>
<alias binding="strong">
<family>Segoe UI Emoji</family>
<prefer><family>Noto Color Emoji</family></prefer>
<default><family>emoji</family></default>
</alias>
<!-- Run "fc-cache -fv" after saving the file and kill and restart whichever app (like discord) and enjoy emoji -->
</fontconfig>
@shiggitay
Copy link

shiggitay commented Aug 15, 2021

I just reinstalled Void Linux on my rig here and I was having the stupid boxy issue in Discord channel names. Installing a crapton of unicode emoji fonts as well as placing this fonts.conf file into ~/.config/fontsconfig/ fixed the issue for me! Thanks for posting it!

@Jojodicus
Copy link

Jojodicus commented Feb 15, 2022

missing <alias> between line 7 and 8

@SohamG
Copy link
Author

SohamG commented Feb 15, 2022

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment