summary refs log tree commit diff
path: root/pkgs/data/fonts/uw-ttyp0/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/data/fonts/uw-ttyp0/default.nix')
-rw-r--r--pkgs/data/fonts/uw-ttyp0/default.nix32
1 files changed, 23 insertions, 9 deletions
diff --git a/pkgs/data/fonts/uw-ttyp0/default.nix b/pkgs/data/fonts/uw-ttyp0/default.nix
index eae820fb0d1..1d63b3fa54c 100644
--- a/pkgs/data/fonts/uw-ttyp0/default.nix
+++ b/pkgs/data/fonts/uw-ttyp0/default.nix
@@ -19,10 +19,6 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ perl bdftopcf bdf2psf fonttosfnt mkfontdir ];
 
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash     = "0hzhaakbbcnz5ksi5p8mavw9578rsqlqadkrirrkhfnyqqlrii4j";
-
   # configure sizes, encodings and variants
   preConfigure =
     (if targetsDat == null
@@ -45,7 +41,7 @@ stdenv.mkDerivation rec {
       else ''cp "${variantsDat}" VARIANTS.dat'');
 
   postBuild = ''
-    # convert bdf to psf and otb fonts
+    # convert bdf fonts to psf
     build=$(pwd)
     mkdir {psf,otb}
     cd ${bdf2psf}/share/bdf2psf
@@ -55,19 +51,37 @@ stdenv.mkDerivation rec {
         --fb "$i" standard.equivalents \
         ascii.set+useful.set+linux.set 512 \
         "$build/psf/$name.psf"
+    done
+    cd -
+
+    # convert unicode bdf fonts to otb
+    for i in $build/genbdf/*-uni.bdf; do
+      name="$(basename $i .bdf)"
       fonttosfnt -v -o "$build/otb/$name.otb" "$i"
     done
-    cd $build
   '';
 
   postInstall = ''
     # install psf fonts
     fontDir="$out/share/consolefonts"
-    mkdir -p "$fontDir"
-    mv -t "$fontDir" psf/*.psf
-    mv -t "$out/share/fonts/X11/misc" otb/*.otb
+    install -m 644 -D psf/*.psf -t "$fontDir"
+
+    # install otb fonts
+    fontDir="$otb/share/fonts/X11/misc"
+    install -m 644 -D otb/*.otb -t "$fontDir"
+    mkfontdir "$fontDir"
+  '';
+
+  # Nix with multiple outputs adds several flags
+  # that the ./configure script doesn't understand.
+  configurePhase = ''
+    runHook preConfigure
+    ./configure --prefix="$out"
+    runHook postConfigure
   '';
 
+  outputs = [ "out" "otb" ];
+
   meta = with stdenv.lib; {
     description = "Monospace bitmap screen fonts for X11";
     homepage = https://people.mpi-inf.mpg.de/~uwe/misc/uw-ttyp0/;