about summary refs log tree commit diff
path: root/pkgs/data/fonts
diff options
context:
space:
mode:
authorMichele Guerini Rocco <rnhmjoj@users.noreply.github.com>2020-02-17 20:48:53 +0100
committerGitHub <noreply@github.com>2020-02-17 20:48:53 +0100
commitdb26f931108fb94ffee683154484e4408e1fa95b (patch)
tree86ae3dd738484689161828c86cd8c4a5f555efaa /pkgs/data/fonts
parent875f474b422a03a338423ed9a5019f8a72229c67 (diff)
parent128030139e5aea981d308708005cfb81ebb8676a (diff)
downloadnixlib-db26f931108fb94ffee683154484e4408e1fa95b.tar
nixlib-db26f931108fb94ffee683154484e4408e1fa95b.tar.gz
nixlib-db26f931108fb94ffee683154484e4408e1fa95b.tar.bz2
nixlib-db26f931108fb94ffee683154484e4408e1fa95b.tar.lz
nixlib-db26f931108fb94ffee683154484e4408e1fa95b.tar.xz
nixlib-db26f931108fb94ffee683154484e4408e1fa95b.tar.zst
nixlib-db26f931108fb94ffee683154484e4408e1fa95b.zip
Merge pull request #80270 from rnhmjoj/tewi
tewi-font: generate otb and split output
Diffstat (limited to 'pkgs/data/fonts')
-rw-r--r--pkgs/data/fonts/tewi/default.nix55
1 files changed, 35 insertions, 20 deletions
diff --git a/pkgs/data/fonts/tewi/default.nix b/pkgs/data/fonts/tewi/default.nix
index fbc29cdf5fb1..6245032246c9 100644
--- a/pkgs/data/fonts/tewi/default.nix
+++ b/pkgs/data/fonts/tewi/default.nix
@@ -1,37 +1,52 @@
-{stdenv, fetchgit, bdftopcf, mkfontdir, mkfontscale}:
+{ stdenv, fetchFromGitHub, python3
+, bdftopcf, mkfontscale
+, libfaketime, fonttosfnt
+}:
 
 stdenv.mkDerivation rec {
-  date = "2015-06-07";
-  name = "tewi-font-${date}";
+  pname = "tewi-font";
+  version = "2.0.2";
 
-  src = fetchgit {
-    url = "https://github.com/lucy/tewi-font";
-    rev = "ff930e66ae471da4fdc226ffe65fd1ccd13d4a69";
-    sha256 = "0c7k847cp68w20frzsdknpss2cwv3lp970asyybv65jxyl2jz3iq";
+  src = fetchFromGitHub {
+    owner  = "lucy";
+    repo   = pname;
+    rev    = version;
+    sha256 = "1axv9bv10xlcmgfyjh3z5kn5fkg3m6n1kskcs5hvlmyb6m1zk91j";
   };
 
-  nativeBuildInputs = [ bdftopcf mkfontdir mkfontscale ];
-  buildPhase = ''
+  nativeBuildInputs =
+    [ python3 bdftopcf mkfontscale
+      libfaketime fonttosfnt
+    ];
+
+  postPatch = ''
+    # make gzip deterministic
+    sed 's/gzip -9/gzip -9 -n/g' -i Makefile
+
+    # fix python not found
+    patchShebangs scripts/merge
+  '';
+
+  postBuild = ''
+    # convert bdf fonts to otb
     for i in *.bdf; do
-        bdftopcf -o ''${i/bdf/pcf} $i
+      name=$(basename "$i" .bdf)
+      faketime -f "1970-01-01 00:00:01" \
+      fonttosfnt -v -o "$name.otb" "$i"
     done
-
-    gzip -n *.pcf
   '';
 
   installPhase = ''
     fontDir="$out/share/fonts/misc"
-    mkdir -p "$fontDir"
-    mv *.pcf.gz "$fontDir"
+    install -m 644 -D out/* -t "$fontDir"
+    mkfontdir "$fontDir"
 
-    cd "$fontDir"
-    mkfontdir
-    mkfontscale
+    fontDir="$otb/share/fonts/misc"
+    install -m 644 -D *.otb -t "$fontDir"
+    mkfontdir "$fontDir"
   '';
 
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "14dv3m1svahjyb9c1x1570qrmlnynzg0g36b10bqqs8xvhix34yq";
+  outputs = [ "out" "otb" ];
 
   meta = with stdenv.lib; {
     description = "A nice bitmap font, readable even at small sizes";