Merge pull request #80326 from rnhmjoj/uni-vga
uni-vga: generate otb, psf and split output
This commit is contained in:
commit
0d47e820c3
@ -1,4 +1,8 @@
|
|||||||
{ stdenv, fetchurl, mkfontdir, mkfontscale }:
|
{ stdenv, fetchurl, perl, kbd, bdftopcf
|
||||||
|
, libfaketime, fonttosfnt, mkfontscale
|
||||||
|
}:
|
||||||
|
|
||||||
|
with stdenv.lib;
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "uni-vga";
|
name = "uni-vga";
|
||||||
@ -8,24 +12,50 @@ stdenv.mkDerivation {
|
|||||||
sha256 = "05sns8h5yspa7xkl81ri7y1yxf5icgsnl497f3xnaryhx11s2rv6";
|
sha256 = "05sns8h5yspa7xkl81ri7y1yxf5icgsnl497f3xnaryhx11s2rv6";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ mkfontdir mkfontscale ];
|
nativeBuildInputs =
|
||||||
|
[ bdftopcf libfaketime
|
||||||
|
fonttosfnt mkfontscale
|
||||||
|
] ++ optionals stdenv.isLinux [ perl kbd ];
|
||||||
|
|
||||||
installPhase = ''
|
postPatch = "patchShebangs .";
|
||||||
mkdir -p $out/share/fonts
|
|
||||||
cp *.bdf $out/share/fonts
|
buildPhase = ''
|
||||||
cd $out/share/fonts
|
# convert font to compressed pcf
|
||||||
mkfontdir
|
bdftopcf u_vga16.bdf | gzip -c -9 -n > u_vga16.pcf.gz
|
||||||
mkfontscale
|
|
||||||
|
# convert bdf font to otb
|
||||||
|
faketime -f "1970-01-01 00:00:01" \
|
||||||
|
fonttosfnt -v -o u_vga16.otb u_vga16.bdf
|
||||||
|
'' + optionalString stdenv.isLinux ''
|
||||||
|
# convert font to compressed psf
|
||||||
|
./bdf2psf.pl -s UniCyrX.sfm u_vga16.bdf \
|
||||||
|
| psfaddtable - UniCyrX.sfm - \
|
||||||
|
| gzip -c -9 -n > u_vga16.psf.gz
|
||||||
'';
|
'';
|
||||||
|
|
||||||
outputHashAlgo = "sha256";
|
installPhase = ''
|
||||||
outputHashMode = "recursive";
|
# install pcf (for X11 applications)
|
||||||
outputHash = "0rfly7r6blr2ykxlv0f6my2w41vvxcw85chspljd2p1fxlr28jd7";
|
install -m 644 -D *.pcf.gz -t "$out/share/fonts"
|
||||||
|
mkfontdir "$out/share/fonts"
|
||||||
|
|
||||||
|
# install bdf font
|
||||||
|
install -m 644 -D *.bdf -t "$bdf/share/fonts"
|
||||||
|
mkfontdir "$bdf/share/fonts"
|
||||||
|
|
||||||
|
# install otb font (for GTK applications)
|
||||||
|
install -m 644 -D *.otb -t "$otb/share/fonts"
|
||||||
|
mkfontdir "$otb/share/fonts"
|
||||||
|
'' + optionalString stdenv.isLinux ''
|
||||||
|
# install psf (for linux virtual terminal)
|
||||||
|
install -m 644 -D *.psf.gz -t "$out/share/consolefonts"
|
||||||
|
'';
|
||||||
|
|
||||||
|
outputs = [ "out" "bdf" "otb" ];
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Unicode VGA font";
|
description = "Unicode VGA font";
|
||||||
maintainers = [stdenv.lib.maintainers.ftrvxmtrx];
|
maintainers = [ maintainers.ftrvxmtrx ];
|
||||||
homepage = http://www.inp.nsk.su/~bolkhov/files/fonts/univga/;
|
homepage = http://www.inp.nsk.su/~bolkhov/files/fonts/univga/;
|
||||||
license = stdenv.lib.licenses.mit;
|
license = licenses.mit;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -18039,7 +18039,8 @@ in
|
|||||||
|
|
||||||
undefined-medium = callPackage ../data/fonts/undefined-medium { };
|
undefined-medium = callPackage ../data/fonts/undefined-medium { };
|
||||||
|
|
||||||
uni-vga = callPackage ../data/fonts/uni-vga { };
|
uni-vga = callPackage ../data/fonts/uni-vga
|
||||||
|
{ inherit (buildPackages.xorg) fonttosfnt mkfontscale; };
|
||||||
|
|
||||||
unicode-character-database = callPackage ../data/misc/unicode-character-database { };
|
unicode-character-database = callPackage ../data/misc/unicode-character-database { };
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user