summary refs log tree commit diff
path: root/pkgs/data/fonts/libertine
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2016-01-24 15:50:54 +0000
committerRobin Gloster <mail@glob.in>2016-01-30 20:31:03 +0000
commit1c6db216533758701d1e841de0f16fb957f49f6b (patch)
tree04681e775e6c48d1904e1316a9f06bc1c9b3d206 /pkgs/data/fonts/libertine
parent1af99b8dad40ab1a33a75f0a3d83584408a57561 (diff)
downloadnixpkgs-1c6db216533758701d1e841de0f16fb957f49f6b.tar
nixpkgs-1c6db216533758701d1e841de0f16fb957f49f6b.tar.gz
nixpkgs-1c6db216533758701d1e841de0f16fb957f49f6b.tar.bz2
nixpkgs-1c6db216533758701d1e841de0f16fb957f49f6b.tar.lz
nixpkgs-1c6db216533758701d1e841de0f16fb957f49f6b.tar.xz
nixpkgs-1c6db216533758701d1e841de0f16fb957f49f6b.tar.zst
nixpkgs-1c6db216533758701d1e841de0f16fb957f49f6b.zip
libertine: use mkDerivation
Diffstat (limited to 'pkgs/data/fonts/libertine')
-rw-r--r--pkgs/data/fonts/libertine/default.nix39
1 files changed, 30 insertions, 9 deletions
diff --git a/pkgs/data/fonts/libertine/default.nix b/pkgs/data/fonts/libertine/default.nix
index eb28521a2b8..b95b0f0bedd 100644
--- a/pkgs/data/fonts/libertine/default.nix
+++ b/pkgs/data/fonts/libertine/default.nix
@@ -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";
   };
 
-  buildInputs = [ fontforge ];
+  setSourceRoot = "sourceRoot=`pwd`";
 
-  /* doConfigure should be specified separately */
-  phaseNames = ["doUnpack" "generateFontsFromSFD" "installFonts"];
+  buildInputs = [ fontforge ];
 
-  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";