nixpkgs/pkgs/data/fonts/tewi/default.nix

60 lines
1.4 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchFromGitHub, python3
, bdftopcf, mkfontscale
, libfaketime, fonttosfnt
}:
2015-06-04 23:09:32 +02:00
stdenv.mkDerivation rec {
2020-02-16 13:44:16 +01:00
pname = "tewi-font";
version = "2.0.2";
src = fetchFromGitHub {
owner = "lucy";
repo = pname;
rev = version;
sha256 = "1axv9bv10xlcmgfyjh3z5kn5fkg3m6n1kskcs5hvlmyb6m1zk91j";
2015-06-04 23:09:32 +02:00
};
nativeBuildInputs =
[ python3 bdftopcf mkfontscale
libfaketime fonttosfnt
];
2020-02-16 13:44:16 +01:00
postPatch = ''
# make gzip deterministic
sed 's/gzip -9/gzip -9 -n/g' -i Makefile
2015-06-04 23:09:32 +02:00
2020-02-16 13:44:16 +01:00
# fix python not found
patchShebangs scripts/merge
2015-06-04 23:09:32 +02:00
'';
postBuild = ''
# convert bdf fonts to otb
for i in *.bdf; do
name=$(basename "$i" .bdf)
faketime -f "1970-01-01 00:00:01" \
fonttosfnt -v -o "$name.otb" "$i"
done
'';
2015-06-04 23:09:32 +02:00
installPhase = ''
fontDir="$out/share/fonts/misc"
install -m 644 -D *.otb out/* -t "$fontDir"
mkfontdir "$fontDir"
2015-06-04 23:09:32 +02:00
'';
meta = with lib; {
2015-06-04 23:09:32 +02:00
description = "A nice bitmap font, readable even at small sizes";
longDescription = ''
Tewi is a bitmap font, readable even at very small font sizes. This is
particularily useful while programming, to fit a lot of code on your
screen.
'';
homepage = "https://github.com/lucy/tewi-font";
2015-06-04 23:09:32 +02:00
license = {
fullName = "GNU General Public License with a font exception";
url = "https://www.gnu.org/licenses/gpl-faq.html#FontException";
};
maintainers = [ maintainers.fro_ozen ];
};
}