Ubuntu – How to configure the default emoji font to be used in OS/Browser? (it’s currently Symbola but I want Noto)

emojifonts

I'm running Ubuntu 16.04.3 LTS.

The emoji font I want to use system wide (in the OS and in the Browser) is the non-color version of Noto or: NotoEmoji-Regular.ttf (provided by Google)

How do I configure it to be default instead of Symbola (which is the current default) ?

Best Answer

  • One way to set Noto Emoji as the default emoji font in Ubuntu is to setup some local font config files.

    Create the directory and the file itself with:

    • mkdir -p ~/.config/fontconfig/
    • touch ~/.config/fontconfig/fonts.conf

    And then populate the created file with the following text:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
    
    <fontconfig>
      <match>
        <test name="family"><string>sans-serif</string></test>
        <edit name="family" mode="prepend" binding="strong">
          <string>Noto Emoji</string>
        </edit>
      </match>
      <match>
        <test name="family"><string>serif</string></test>
        <edit name="family" mode="prepend" binding="strong">
          <string>Noto Emoji</string>
        </edit>
      </match>
      <match>
        <test name="family"><string>monospace</string></test>
        <edit name="family" mode="prepend" binding="strong">
          <string>Noto Emoji</string>
        </edit>
      </match>
      <match>
        <test name="family"><string>Apple Color Emoji</string></test>
        <edit name="family" mode="prepend" binding="strong">
          <string>Noto Emoji</string>
        </edit>
      </match>
    </fontconfig>
    

    And finally flush the font cache: fc-cache -f -v.

    If Noto is installed you should now see Noto for emoji unicode blocks in the browser for example, and Symbola filling in where Noto is lacking.