forked from mirrors/nixpkgs
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,32 +1,55 @@
|
|||
{stdenv, fetchurl, perl, bdftopcf, perlPackages, fontforge, SDL, SDL_image}:
|
||||
{ stdenv, fetchurl, perl, bdftopcf
|
||||
, fontforge, SDL, SDL_image, mkfontscale
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "unscii";
|
||||
version = "1.1";
|
||||
# or fetchFromGitHub(owner,repo,rev) or fetchgit(rev)
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://pelulamu.net/${pname}/${pname}-${version}-src.tar.gz";
|
||||
sha256 = "0qcxcnqz2nlwfzlrn115kkp3n8dd7593h762vxs6vfqm13i39lq1";
|
||||
};
|
||||
nativeBuildInputs = [perl bdftopcf perlPackages.TextCharWidth fontforge
|
||||
SDL SDL_image];
|
||||
|
||||
nativeBuildInputs =
|
||||
[ (perl.withPackages (p: [ p.TextCharWidth ]))
|
||||
bdftopcf fontforge SDL SDL_image
|
||||
mkfontscale
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
patchShebangs .
|
||||
'';
|
||||
installPhase = ''
|
||||
install -m444 -Dt $out/share/fonts *.hex *.pcf
|
||||
install -m444 -Dt $out/share/fonts/truetype *.ttf
|
||||
install -m444 -Dt $out/share/fonts/opentype *.otf
|
||||
install -m444 -Dt $out/share/fonts/svg *.svg
|
||||
install -m444 -Dt $out/share/fonts/web *.woff
|
||||
|
||||
postBuild = ''
|
||||
# compress pcf fonts
|
||||
gzip -9 -n *.pcf
|
||||
'';
|
||||
|
||||
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 = {
|
||||
inherit version;
|
||||
description = ''Bitmapped character-art-friendly Unicode fonts'';
|
||||
# Basically GPL2+ with font exception — because of the Unifont-augmented
|
||||
# version. The reduced version is public domain.
|
||||
license = http://unifoundry.com/LICENSE.txt;
|
||||
maintainers = [stdenv.lib.maintainers.raskin];
|
||||
maintainers = [ stdenv.lib.maintainers.raskin ];
|
||||
homepage = http://pelulamu.net/unscii/;
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue