Merge #6793: add packages for some fonts

Also handle font-family aliases.
This commit is contained in:
Vladimír Čunát 2015-04-09 20:06:53 +02:00
commit 3f0c0c3029
4 changed files with 53 additions and 6 deletions

View file

@ -34,18 +34,34 @@ stdenv.mkDerivation {
buildInputs = [cabextract];
buildCommand = "
buildCommand = ''
for i in $exes; do
cabextract --lowercase $i
done
cabextract --lowercase viewer1.cab
fontDir=$out/share/fonts/truetype
mkdir -p $fontDir
cp *.ttf $fontDir
# Also put the EULA there to be on the safe side.
cp ${eula} $fontDir/eula.html
";
# Set up no-op font configs to override any aliases set up by
# other packages.
mkdir -p $out/etc/fonts/conf.d
for name in Andale-Mono Arial-Black Arial Comic-Sans-MS \
Courier-New Georgia Impact Times-New-Roman \
Trebuchet Verdana Webdings ; do
substitute ${./no-op.conf} $out/etc/fonts/conf.d/30-''${name,,}.conf \
--subst-var-by fontname "''${name//-/ }"
done
'';
meta = {
# Set a non-zero priority to allow easy overriding of the
# fontconfig configuration files.
priority = 5;
};
}

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- This configuation is intentionally left empty in order to
override any other font package that may wish to set up an
alias for the Microsoft @fontname@ font. If you actually do
want to have the alias then please change the priority of that
package; see the Nix manual page for nix-env for details. -->
</fontconfig>

View file

@ -18,13 +18,26 @@ stdenv.mkDerivation {
buildPhase = "true";
installPhase = "
mkdir -p $out/share/fonts/truetype; cp *.ttf $out/share/fonts/truetype
";
installPhase = ''
mkdir -p $out/share/fonts/truetype
cp *.ttf $out/share/fonts/truetype
# Set up no-op font configs to override any aliases set up by
# other packages.
mkdir -p $out/etc/fonts/conf.d
for name in Calibri Cambria Candara Consolas Constantia Corbel ; do
substitute ${./no-op.conf} $out/etc/fonts/conf.d/30-''${name,,}.conf \
--subst-var-by fontname $name
done
'';
meta = {
description = "Some TrueType fonts from Microsoft Windows Vista (Calibri, Cambria, Candara, Consolas, Constantia, Corbel)";
homepage = http://www.microsoft.com/typography/ClearTypeFonts.mspx;
binaryDistribution = false; # haven't read the EULA, but we probably can't redistribute these files, so...
# Set a non-zero priority to allow easy overriding of the
# fontconfig configuration files.
priority = 5;
};
}

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- This configuation is intentionally left empty in order to
override any other font package that may wish to set up an
alias for the Microsoft @fontname@ font. If you actually do
want to have the alias then please change the priority of that
package; see the Nix manual page for nix-env for details. -->
</fontconfig>