nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchurl,
5 libfaketime,
6 mkfontscale,
7 fonttosfnt,
8 bdftopcf,
9}:
10
11stdenv.mkDerivation rec {
12 pname = "efont-unicode";
13 version = "0.4.2";
14
15 src = fetchurl {
16 url = "http://openlab.ring.gr.jp/efont/dist/unicode-bdf/${pname}-bdf-${version}.tar.bz2";
17 sha256 = "sha256-fT7SsYlV3dCQrf0IZfiNI1grj3ngDgr8IkWdg+f9m3M=";
18 };
19
20 nativeBuildInputs = [
21 libfaketime
22 bdftopcf
23 fonttosfnt
24 mkfontscale
25 ];
26
27 buildPhase = ''
28 runHook preBuild
29
30 # convert bdf fonts to pcf
31 for f in *.bdf; do
32 bdftopcf -t -o "''${f%.bdf}.pcf" "$f"
33 done
34 gzip -n -9 *.pcf
35
36 # convert bdf fonts to otb
37 for f in *.bdf; do
38 faketime -f "1970-01-01 00:00:01" \
39 fonttosfnt -v -m 2 -o "''${f%.bdf}.otb" "$f"
40 done
41
42 runHook postBuild
43 '';
44
45 installPhase = ''
46 runHook preInstall
47
48 dir=share/fonts/misc
49 install -D -m 644 -t "$out/$dir" *.otb *.pcf.gz
50 install -D -m 644 -t "$bdf/$dir" *.bdf
51 mkfontdir "$out/$dir"
52 mkfontdir "$bdf/$dir"
53
54 runHook postInstall
55 '';
56
57 outputs = [
58 "out"
59 "bdf"
60 ];
61
62 meta = {
63 description = "/efont/ Unicode bitmap font";
64 homepage = "http://openlab.ring.gr.jp/efont/unicode/";
65 license = lib.licenses.bsd3;
66 platforms = lib.platforms.all;
67 maintainers = [ lib.maintainers.ncfavier ];
68 };
69}