unscii: cleanup and split outputs
The font is very large and duplicated across many formats, some of which cannot be compressed, like `.hex` or `.svg`. For normal use (eg. X11, GTK applications) these formats are not necessary, so they are moved to another output reducing the default closure size.
This commit is contained in:
parent
3b7f5c6762
commit
270a1e4f8a
@ -1,25 +1,48 @@
|
|||||||
{stdenv, fetchurl, perl, bdftopcf, perlPackages, fontforge, SDL, SDL_image}:
|
{ stdenv, fetchurl, perl, bdftopcf
|
||||||
|
, fontforge, SDL, SDL_image, mkfontscale
|
||||||
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "unscii";
|
pname = "unscii";
|
||||||
version = "1.1";
|
version = "1.1";
|
||||||
# or fetchFromGitHub(owner,repo,rev) or fetchgit(rev)
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://pelulamu.net/${pname}/${pname}-${version}-src.tar.gz";
|
url = "http://pelulamu.net/${pname}/${pname}-${version}-src.tar.gz";
|
||||||
sha256 = "0qcxcnqz2nlwfzlrn115kkp3n8dd7593h762vxs6vfqm13i39lq1";
|
sha256 = "0qcxcnqz2nlwfzlrn115kkp3n8dd7593h762vxs6vfqm13i39lq1";
|
||||||
};
|
};
|
||||||
nativeBuildInputs = [perl bdftopcf perlPackages.TextCharWidth fontforge
|
|
||||||
SDL SDL_image];
|
nativeBuildInputs =
|
||||||
|
[ (perl.withPackages (p: [ p.TextCharWidth ]))
|
||||||
|
bdftopcf fontforge SDL SDL_image
|
||||||
|
mkfontscale
|
||||||
|
];
|
||||||
|
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
patchShebangs .
|
patchShebangs .
|
||||||
'';
|
'';
|
||||||
installPhase = ''
|
|
||||||
install -m444 -Dt $out/share/fonts *.hex *.pcf
|
postBuild = ''
|
||||||
install -m444 -Dt $out/share/fonts/truetype *.ttf
|
# compress pcf fonts
|
||||||
install -m444 -Dt $out/share/fonts/opentype *.otf
|
gzip -9 -n *.pcf
|
||||||
install -m444 -Dt $out/share/fonts/svg *.svg
|
|
||||||
install -m444 -Dt $out/share/fonts/web *.woff
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
# install fonts for use in X11 and GTK applications
|
||||||
|
install -m444 -Dt "$out/share/fonts/misc" *.pcf.gz
|
||||||
|
install -m444 -Dt "$out/share/fonts/opentype" *.otf
|
||||||
|
mkfontdir "$out/share/fonts/misc"
|
||||||
|
mkfontscale "$out/share/fonts/opentype"
|
||||||
|
|
||||||
|
# install other formats in $extra
|
||||||
|
install -m444 -Dt "$extra/share/fonts/truetype" *.ttf
|
||||||
|
install -m444 -Dt "$extra/share/fonts/svg" *.svg
|
||||||
|
install -m444 -Dt "$extra/share/fonts/web" *.woff
|
||||||
|
install -m444 -Dt "$extra/share/fonts/misc" *.hex
|
||||||
|
mkfontscale "$extra"/share/fonts/*
|
||||||
|
'';
|
||||||
|
|
||||||
|
outputs = [ "out" "extra" ];
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
inherit version;
|
inherit version;
|
||||||
description = ''Bitmapped character-art-friendly Unicode fonts'';
|
description = ''Bitmapped character-art-friendly Unicode fonts'';
|
||||||
|
Loading…
x
Reference in New Issue
Block a user