tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
dina-font: use fonttosfnt instead of fontforge
Naïm Favier
4 years ago
00bda76b
b5a9df01
+26
-20
1 changed file
expand all
collapse all
unified
split
pkgs
data
fonts
dina
default.nix
+26
-20
pkgs/data/fonts/dina/default.nix
···
1
{ lib, stdenv, fetchurl, unzip
2
-
, bdftopcf, mkfontscale, fontforge
3
}:
4
5
stdenv.mkDerivation {
6
pname = "dina-font";
7
version = "2.92";
8
0
0
9
src = fetchurl {
10
url = "http://www.donationcoder.com/Software/Jibz/Dina/downloads/Dina.zip";
11
sha256 = "1kq86lbxxgik82aywwhawmj80vsbz3hfhdyhicnlv9km7yjvnl8z";
12
};
13
14
nativeBuildInputs =
15
-
[ unzip bdftopcf mkfontscale fontforge ];
16
17
-
patchPhase = "sed -i 's/microsoft-cp1252/ISO8859-1/' *.bdf";
0
0
18
19
buildPhase = ''
0
0
20
newName() {
21
-
test "''${1:5:1}" = i && _it=Italic || _it=
22
-
case ''${1:6:3} in
23
-
400) test -z $it && _weight=Medium ;;
24
-
700) _weight=Bold ;;
25
-
esac
26
-
_pt=''${1%.bdf}
27
-
_pt=''${_pt#*-}
28
-
echo "Dina$_weight$_it$_pt"
29
}
30
31
-
# convert bdf fonts to pcf
32
-
for i in *.bdf; do
33
-
bdftopcf -t -o $(newName "$i").pcf "$i"
0
34
done
35
gzip -n -9 *.pcf
36
37
-
# convert bdf fonts to otb
38
-
for i in *.bdf; do
39
-
fontforge -lang=ff -c "Open(\"$i\"); Generate(\"$(newName $i).otb\")"
40
-
done
41
'';
42
43
installPhase = ''
0
0
44
install -D -m 644 -t "$out/share/fonts/misc" *.pcf.gz *.otb
45
install -D -m 644 -t "$bdf/share/fonts/misc" *.bdf
46
mkfontdir "$out/share/fonts/misc"
47
mkfontdir "$bdf/share/fonts/misc"
48
-
'';
49
50
-
outputs = [ "out" "bdf" ];
0
51
52
meta = with lib; {
53
description = "A monospace bitmap font aimed at programmers";
···
1
{ lib, stdenv, fetchurl, unzip
2
+
, bdftopcf, mkfontscale, fonttosfnt
3
}:
4
5
stdenv.mkDerivation {
6
pname = "dina-font";
7
version = "2.92";
8
9
+
outputs = [ "out" "bdf" ];
10
+
11
src = fetchurl {
12
url = "http://www.donationcoder.com/Software/Jibz/Dina/downloads/Dina.zip";
13
sha256 = "1kq86lbxxgik82aywwhawmj80vsbz3hfhdyhicnlv9km7yjvnl8z";
14
};
15
16
nativeBuildInputs =
17
+
[ unzip bdftopcf mkfontscale fonttosfnt ];
18
19
+
postPatch = ''
20
+
sed -i 's/microsoft-cp1252/ISO8859-1/' *.bdf
21
+
'';
22
23
buildPhase = ''
24
+
runHook preBuild
25
+
26
newName() {
27
+
test "''${1:5:1}" = i && _it=Italic || _it=
28
+
case ''${1:6:3} in
29
+
400) test -z $it && _weight=Medium ;;
30
+
700) _weight=Bold ;;
31
+
esac
32
+
_pt=''${1%.bdf}
33
+
_pt=''${_pt#*-}
34
+
echo "Dina$_weight$_it$_pt"
35
}
36
37
+
for f in *.bdf; do
38
+
name=$(newName "$f")
39
+
bdftopcf -t -o "$name.pcf" "$f"
40
+
fonttosfnt -v -o "$name.otb" "$f"
41
done
42
gzip -n -9 *.pcf
43
44
+
runHook postBuild
0
0
0
45
'';
46
47
installPhase = ''
48
+
runHook preInstall
49
+
50
install -D -m 644 -t "$out/share/fonts/misc" *.pcf.gz *.otb
51
install -D -m 644 -t "$bdf/share/fonts/misc" *.bdf
52
mkfontdir "$out/share/fonts/misc"
53
mkfontdir "$bdf/share/fonts/misc"
0
54
55
+
runHook postInstall
56
+
'';
57
58
meta = with lib; {
59
description = "A monospace bitmap font aimed at programmers";