source: general/graphlib/fontconfig.xml@ afb71d0a

12.0 12.1 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since afb71d0a was afb71d0a, checked in by Xi Ruoyao <xry111@…>, 13 months ago

Add notes about Internet connection requirement for building or testing

  • Property mode set to 100644
File size: 13.4 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY fontconfig-download-http
8 "https://www.freedesktop.org/software/fontconfig/release/fontconfig-&fontconfig-version;.tar.xz">
9 <!ENTITY fontconfig-download-ftp " ">
10 <!ENTITY fontconfig-md5sum "95261910ea727b5dd116b06fbfd84b1f">
11 <!ENTITY fontconfig-size "1.4 MB">
12 <!ENTITY fontconfig-buildsize "17 MB (with tests)">
13 <!ENTITY fontconfig-time "0.3 SBU (with tests)">
14]>
15
16<sect1 id="fontconfig" xreflabel="Fontconfig-&fontconfig-version;">
17 <?dbhtml filename="fontconfig.html"?>
18
19
20 <title>Fontconfig-&fontconfig-version;</title>
21
22 <indexterm zone="fontconfig">
23 <primary sortas="a-Fontconfig">Fontconfig</primary>
24 </indexterm>
25
26 <sect2 role="package">
27 <title>Introduction to Fontconfig</title>
28
29 <para>
30 The <application>Fontconfig</application> package contains
31 a library and support programs used for configuring and
32 customizing font access.
33 </para>
34
35 &lfs113_checked;
36
37 <bridgehead renderas="sect3">Package Information</bridgehead>
38 <itemizedlist spacing="compact">
39 <listitem>
40 <para>
41 Download (HTTP): <ulink url="&fontconfig-download-http;"/>
42 </para>
43 </listitem>
44 <listitem>
45 <para>
46 Download (FTP): <ulink url="&fontconfig-download-ftp;"/>
47 </para>
48 </listitem>
49 <listitem>
50 <para>
51 Download MD5 sum: &fontconfig-md5sum;
52 </para>
53 </listitem>
54 <listitem>
55 <para>
56 Download size: &fontconfig-size;
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Estimated disk space required: &fontconfig-buildsize;
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Estimated build time: &fontconfig-time;
67 </para>
68 </listitem>
69 </itemizedlist>
70<!--
71 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
72 <itemizedlist spacing="compact">
73 <listitem>
74 <para>
75 Required patch:
76 <ulink url="&patch-root;/fontconfig-&fontconfig-version;-gperf-3.1-1.patch"/>
77 </para>
78 </listitem>
79 </itemizedlist>
80-->
81 <bridgehead renderas="sect3">Fontconfig Dependencies</bridgehead>
82
83 <bridgehead renderas="sect4">Required</bridgehead>
84 <para role="required">
85 <xref linkend="freetype2"/>
86 </para>
87
88 <bridgehead renderas="sect4">Optional</bridgehead>
89 <para role="optional">
90 <xref linkend="curl"/> and <xref linkend="unzip"/>
91 (both used by some tests for downloading and extracting test files),
92 <xref linkend="json-c"/>,
93 <xref linkend="docbook-utils"/> and
94 <xref linkend="libxml2"/>,
95 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>)
96 </para>
97
98 &test-use-internet;
99
100 <note>
101 <para>
102 If you have <application>DocBook Utils</application> installed and
103 you remove the <parameter>--disable-docs</parameter> parameter from
104 the <command>configure</command> command below, you must have
105 <xref linkend="perl-sgmlspm"/> and <xref linkend="texlive"/> installed
106 also, or the <application>Fontconfig</application> build will fail.
107 </para>
108 </note>
109
110 <para condition="html" role="usernotes">User Notes:
111 <ulink url='&blfs-wiki;/Fontconfig'/>
112 </para>
113 </sect2>
114
115 <sect2 role="installation">
116 <title>Installation of Fontconfig</title>
117
118 <para>
119 Install <application>Fontconfig</application> by running the following
120 commands:
121 </para>
122
123<screen><userinput>./configure --prefix=/usr \
124 --sysconfdir=/etc \
125 --localstatedir=/var \
126 --disable-docs \
127 --docdir=/usr/share/doc/fontconfig-&fontconfig-version; &amp;&amp;
128make</userinput></screen>
129
130 <para>
131 To test the results, issue: <command>make check</command>. One test
132 is known to fail if the kernel does not support user namespaces. Some
133 tests will download some font files via Internet.
134 </para>
135
136 <para>
137 Now, as the <systemitem class="username">root</systemitem> user:
138 </para>
139
140<screen role="root"><userinput>make install</userinput></screen>
141
142 <para>
143 If you did not remove the <parameter>--disable-docs</parameter>
144 parameter from the <command>configure</command> command, you can install
145 the pre-generated documentation by using the following commands as the
146 <systemitem class="username">root</systemitem> user:
147 </para>
148
149<screen role="root"><userinput>install -v -dm755 \
150 /usr/share/{man/man{1,3,5},doc/fontconfig-&fontconfig-version;/fontconfig-devel} &amp;&amp;
151install -v -m644 fc-*/*.1 /usr/share/man/man1 &amp;&amp;
152install -v -m644 doc/*.3 /usr/share/man/man3 &amp;&amp;
153install -v -m644 doc/fonts-conf.5 /usr/share/man/man5 &amp;&amp;
154install -v -m644 doc/fontconfig-devel/* \
155 /usr/share/doc/fontconfig-&fontconfig-version;/fontconfig-devel &amp;&amp;
156install -v -m644 doc/*.{pdf,sgml,txt,html} \
157 /usr/share/doc/fontconfig-&fontconfig-version;</userinput></screen>
158
159 </sect2>
160
161 <sect2 role="commands">
162 <title>Command Explanations</title>
163
164 <para>
165 <parameter>--disable-docs</parameter>: This switch avoids building the
166 documentation (the release tarball includes pre-generated
167 documentation).
168 </para>
169
170 </sect2>
171
172 <sect2 role="configuration">
173 <title>Configuring Fontconfig</title>
174
175 <sect3 id="fontconfig-config">
176 <title>Config Files</title>
177
178 <para>
179 <filename>
180 /etc/fonts/*,
181 /etc/fonts/conf.d/* and
182 /usr/share/fontconfig/conf.avail/*
183 </filename>
184 </para>
185
186 <indexterm zone="fontconfig fontconfig-config">
187 <primary sortas="e-etc-fonts">/etc/fonts/*</primary>
188 </indexterm>
189
190 <indexterm zone="fontconfig fontconfig-config">
191 <primary sortas="e-etc-fonts-conf.d">/etc/fonts/conf.d/*</primary>
192 </indexterm>
193
194 <indexterm zone="fontconfig fontconfig-config">
195 <primary sortas="e-usr-share-fontconfig-conf.avail">/usr/share/fontconfig/conf.avail/*</primary>
196 </indexterm>
197
198 </sect3>
199
200 <sect3>
201 <title>Configuration Information</title>
202
203 <para>
204 The main configuration file for <application>Fontconfig</application> is
205 <filename>/etc/fonts/fonts.conf</filename>. Generally you do not want
206 to edit this file. It will also read <filename>/etc/fonts/local.conf</filename>
207 and any files in <filename class="directory">/etc/fonts/conf.d</filename>.
208 To put a new font directory in the configuration, create
209 (or update) the <filename>/etc/fonts/local.conf</filename> file with your
210 local information or add a new file in
211 <filename class="directory">/etc/fonts/conf.d</filename>. The default
212 location of fonts in <application>Fontconfig</application> is:
213 </para>
214
215 <itemizedlist spacing="compact">
216 <listitem>
217 <para>
218 /usr/share/fonts
219 </para>
220 </listitem>
221 <listitem>
222 <para>
223 ~/.local/share/fonts
224 </para>
225 </listitem>
226 <listitem>
227 <para>
228 ~/.fonts <emphasis>(this is now deprecated, but for the moment
229 it still works)</emphasis>
230 </para>
231 </listitem>
232 </itemizedlist>
233
234 <para>
235 <application>Fontconfig</application> also ships many example
236 configuration files in the
237 <filename class="directory">/usr/share/fontconfig/conf.avail</filename>
238 directory. Symlinking specific files to
239 <filename class="directory">/etc/fonts/conf.d</filename>
240 will enable them. The default setup is generally good enough for
241 most users. See <filename>/etc/fonts/conf.d/README</filename>
242 for a description of the configuration files.
243 </para>
244
245 <indexterm zone="fontconfig fontconfig-config">
246 <primary sortas="e-usr-share-fonts">/usr/share/fonts</primary>
247 </indexterm>
248
249 <indexterm zone="fontconfig fontconfig-config">
250 <primary sortas="e-AA.fonts">~/.fonts</primary>
251 </indexterm>
252
253 <para>
254 More information about configuring <application>Fontconfig</application>
255 can be found in the user's manual in <ulink
256 url="file:///usr/share/doc/fontconfig-&fontconfig-version;/fontconfig-user.html"/>.
257 </para>
258
259 </sect3>
260
261 </sect2>
262
263 <sect2 role="content">
264 <title>Contents</title>
265
266 <segmentedlist>
267 <segtitle>Installed Programs</segtitle>
268 <segtitle>Installed Library</segtitle>
269 <segtitle>Installed Directories</segtitle>
270
271 <seglistitem>
272 <seg>
273 fc-cache, fc-cat, fc-conflist, fc-list, fc-match, fc-pattern,
274 fc-query, fc-scan, and fc-validate
275 </seg>
276 <seg>
277 libfontconfig.so
278 </seg>
279 <seg>
280 /etc/fonts,
281 /usr/include/fontconfig,
282 /usr/share/doc/fontconfig-&fontconfig-version;,
283 /usr/share/fontconfig,
284 /usr/share/xml/fontconfig, and
285 /var/cache/fontconfig
286 </seg>
287 </seglistitem>
288 </segmentedlist>
289
290 <variablelist>
291 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
292 <?dbfo list-presentation="list"?>
293 <?dbhtml list-presentation="table"?>
294
295 <varlistentry id="fc-cache">
296 <term><command>fc-cache</command></term>
297 <listitem>
298 <para>
299 is used to create font information caches
300 </para>
301 <indexterm zone="fontconfig fc-cache">
302 <primary sortas="b-fc-cache">fc-cache</primary>
303 </indexterm>
304 </listitem>
305 </varlistentry>
306
307 <varlistentry id="fc-cat">
308 <term><command>fc-cat</command></term>
309 <listitem>
310 <para>
311 is used to read font information caches
312 </para>
313 <indexterm zone="fontconfig fc-cat">
314 <primary sortas="b-fc-cat">fc-cat</primary>
315 </indexterm>
316 </listitem>
317 </varlistentry>
318
319 <varlistentry id="fc-conflist">
320 <term><command>fc-conflist</command></term>
321 <listitem>
322 <para>
323 shows the ruleset files' information on the system
324 </para>
325 <indexterm zone="fontconfig fc-conflist">
326 <primary sortas="b-fc-conflist">fc-conflist</primary>
327 </indexterm>
328 </listitem>
329 </varlistentry>
330
331 <varlistentry id="fc-list">
332 <term><command>fc-list</command></term>
333 <listitem>
334 <para>
335 is used to create font lists
336 </para>
337 <indexterm zone="fontconfig fc-list">
338 <primary sortas="b-fc-list">fc-list</primary>
339 </indexterm>
340 </listitem>
341 </varlistentry>
342
343 <varlistentry id="fc-match">
344 <term><command>fc-match</command></term>
345 <listitem>
346 <para>
347 is used to match available fonts, or find fonts that match
348 a given pattern
349 </para>
350 <indexterm zone="fontconfig fc-match">
351 <primary sortas="b-fc-match">fc-match</primary>
352 </indexterm>
353 </listitem>
354 </varlistentry>
355
356 <varlistentry id="fc-pattern">
357 <term><command>fc-pattern</command></term>
358 <listitem>
359 <para>
360 is used to parse pattern (empty pattern by default) and show
361 the parsed result
362 </para>
363 <indexterm zone="fontconfig fc-pattern">
364 <primary sortas="b-fc-pattern">fc-pattern</primary>
365 </indexterm>
366 </listitem>
367 </varlistentry>
368
369 <varlistentry id="fc-query">
370 <term><command>fc-query</command></term>
371 <listitem>
372 <para>
373 is used to query fonts files and print resulting patterns
374 </para>
375 <indexterm zone="fontconfig fc-query">
376 <primary sortas="b-fc-query">fc-query</primary>
377 </indexterm>
378 </listitem>
379 </varlistentry>
380
381 <varlistentry id="fc-scan">
382 <term><command>fc-scan</command></term>
383 <listitem>
384 <para>
385 is used to scan font files and directories, and print resulting
386 patterns
387 </para>
388 <indexterm zone="fontconfig fc-scan">
389 <primary sortas="b-fc-scan">fc-scan</primary>
390 </indexterm>
391 </listitem>
392 </varlistentry>
393
394 <varlistentry id="fc-validate">
395 <term><command>fc-validate</command></term>
396 <listitem>
397 <para>
398 is used to validate font files
399 </para>
400 <indexterm zone="fontconfig fc-validate">
401 <primary sortas="b-fc-validate">fc-validate</primary>
402 </indexterm>
403 </listitem>
404 </varlistentry>
405
406 <varlistentry id="libfontconfig">
407 <term><filename class="libraryfile">libfontconfig.so</filename></term>
408 <listitem>
409 <para>
410 contains functions used by the <application>Fontconfig</application>
411 programs and also by other programs to configure or customize font
412 access
413 </para>
414 <indexterm zone="fontconfig libfontconfig">
415 <primary sortas="c-libfontconfig">libfontconfig.so</primary>
416 </indexterm>
417 </listitem>
418 </varlistentry>
419
420 </variablelist>
421
422 </sect2>
423
424</sect1>
Note: See TracBrowser for help on using the repository browser.