diff --git a/pkgs/data/fonts/unscii/default.nix b/pkgs/data/fonts/unscii/default.nix index cd4d0dc42cdd..93fe8cdfb74b 100644 --- a/pkgs/data/fonts/unscii/default.nix +++ b/pkgs/data/fonts/unscii/default.nix @@ -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/; }; }