Xorg Fonts

Introduction to Xorg Fonts

The Xorg font packages provide some scalable fonts and supporting packages for Xorg applications. Many people will want to install other TTF or OTF fonts in addition to, or instead of, these. Some are listed at TTF-and-OTF-fonts.

[Note]

Note

Development versions of GLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.

Xorg Fonts Dependencies

Required

xcursor-themes-1.0.7

Downloading Xorg Fonts

First, create a list of files to be downloaded. This file will also be used to verify the integrity of the downloads when complete:

cat > font-7-list << "EOF"
font-util-1.4.1.tar.xz
encodings-1.1.0.tar.xz
font-alias-1.0.5.tar.xz
font-adobe-utopia-type1-1.0.5.tar.xz
font-bh-ttf-1.0.4.tar.xz
font-bh-type1-1.0.4.tar.xz
font-ibm-type1-1.0.4.tar.xz
font-misc-ethiopic-1.0.5.tar.xz
font-xfree86-type1-1.0.5.tar.xz
EOF

To download the needed files using Wget-1.24.5, use the following commands:

mkdir font &&
cd font &&
grep -v '^#' ../font-7-list | wget -i- -c \
    -B https://www.x.org/pub/individual/font/

Installation of Xorg Fonts

[Note]

Note

When installing multiple packages in a script, the installation needs to be done as the root user. There are three general options that can be used to do this:

  1. Run the entire script as the root user (not recommended).

  2. Use the sudo command from the sudo package.

  3. Use su -c "command arguments" (quotes required) which will ask for the root password for every iteration of the loop.

One way to handle this situation is to create a short bash function that automatically selects the appropriate method. Once the command is set in the environment, it does not need to be set again.

as_root()
{
  if   [ $EUID = 0 ];        then $*
  elif [ -x /usr/bin/sudo ]; then sudo $*
  else                            su -c \\"$*\\"
  fi
}

export -f as_root

First, start a subshell that will exit on error:

bash -e

Install all of the packages by running the following commands:

for package in $(grep -v '^#' ../font-7-list)
do
  packagedir=${package%.tar.?z*}
  tar -xf $package
  pushd $packagedir
    ./configure $XORG_CONFIG
    make
    as_root make install
  popd
  as_root rm -rf $packagedir
done

Finally, exit the shell that was started earlier:

exit

When all of the fonts have been installed, the system must be configured so that Fontconfig can find the TrueType fonts. Since the fonts are outside of the default search path of several packages if XORG_PREFIX is not /usr, make symlinks to the Xorg TrueType font directories in /usr/share/fonts by running the following commands as the root user:

install -v -d -m755 /usr/share/fonts                               &&
ln -svfn $XORG_PREFIX/share/fonts/X11/OTF /usr/share/fonts/X11-OTF &&
ln -svfn $XORG_PREFIX/share/fonts/X11/TTF /usr/share/fonts/X11-TTF

Contents

Installed Programs: bdftruncate and ucs2any
Installed Libraries: None
Installed Directories: $XORG_PREFIX/share/fonts

Short Descriptions

bdftruncate

generates a truncated BDF font from an ISO 10646-1 encoded BDF font

ucs2any

generates BDF fonts in any encoding from an ISO 10646-1 encoded BDF font