libertine: use mkDerivation

This commit is contained in:
Robin Gloster 2016-01-24 15:50:54 +00:00
parent 1af99b8dad
commit 1c6db21653
2 changed files with 31 additions and 10 deletions

View File

@ -1,4 +1,6 @@
args @ { fetchurl, fontforge, lib, ... }: with args; rec {
{ stdenv, fetchurl, fontforge }:
stdenv.mkDerivation rec {
name = "linux-libertine-5.3.0";
src = fetchurl {
@ -6,18 +8,37 @@ args @ { fetchurl, fontforge, lib, ... }: with args; rec {
sha256 = "0x7cz6hvhpil1rh03rax9zsfzm54bh7r4bbrq8rz673gl9h47v0v";
};
setSourceRoot = "sourceRoot=`pwd`";
buildInputs = [ fontforge ];
/* doConfigure should be specified separately */
phaseNames = ["doUnpack" "generateFontsFromSFD" "installFonts"];
extraFontForgeCommands = ''
ScaleToEm(1000);
buildPhase = ''
for i in *.sfd; do
fontforge -c \
'Open($1);
ScaleToEm(1000);
Reencode("unicode");
Generate($1:r + ".ttf");
Generate($1:r + ".otf");
Reencode("TeX-Base-Encoding");
Generate($1:r + ".afm");
Generate($1:r + ".pfm");
Generate($1:r + ".pfb");
Generate($1:r + ".map");
Generate($1:r + ".enc");
' $i;
done
'';
doUnpack = lib.fullDepEntry ''
tar xf ${src}
'' ["minInit"];
installPhase = ''
mkdir -p $out/share/fonts/{opentype,truetype,type1}/public
mkdir -p $out/share/texmf/fonts/{enc,map}
cp *.otf $out/share/fonts/opentype/public
cp *.ttf $out/share/fonts/truetype/public
cp *.pfb $out/share/fonts/type1/public
cp *.enc $out/share/texmf/fonts/enc
cp *.map $out/share/texmf/fonts/map
'';
meta = {
description = "Linux Libertine Fonts";

View File

@ -10950,7 +10950,7 @@ let
liberation_ttf_binary = callPackage ../data/fonts/redhat-liberation-fonts/binary.nix { };
liberation_ttf = liberation_ttf_binary;
libertine = builderDefsPackage (callPackage ../data/fonts/libertine) { };
libertine = callPackage ../data/fonts/libertine { };
lmmath = callPackage ../data/fonts/lmodern/lmmath.nix {};