• Jérome Perrin's avatar
    component/font,fontconfig: make fonts shareable · 1749ac84
    Jérome Perrin authored
    Instead of the previous approach which relied on a side effect of
    installing *-fonts parts that would write in parts/fonts/ and make the
    fonts automatically available to applications, use a new approach where
    each part is "pure", without side effects.
    To make the fonts available to applications, a fontconfig font.conf
    listing all the parts with fonts needs to be generated and set as
    $FONTCONFIG environment variable.
    
    A template font.conf is included in component/fontconfig
    1749ac84
fonts.conf.in 882 Bytes
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
{#
 # Generates a fonts.conf to be used as FONTCONFIG_FILE environment variable.
 #
 # This template needs the following keys in context:
 #
 #  - cachedir: a directory to use a cachedir
 #  - fonts: directories containing fonts ( \n separated list of paths )
 #             for example {liberation-fonts:location}
 #  - includes: directories fontconfig configuration ( \n separated list of paths )
 #             typically, applications want to include {fontconfig:location}/etc/fonts/conf.d
 #             also some fonts packages bundles font.d
 #}
<fontconfig>
  <cachedir>{{ cachedir | escape}}</cachedir>
  {% for font in fonts.splitlines() -%}
    <dir>{{ font | escape}}</dir>
  {% endfor %}
  {% for include in includes.splitlines() -%}
    <include>{{ include | escape}}</include>
  {% endfor %}
</fontconfig>