From b236fe3d52d86143446e215bdf92121ee119a7f1 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 30 Jun 2021 05:03:07 +0200 Subject: ploticus: Use gd from Nixpkgs instead of the vendored one The gd version shipped with ploticus only contains a single font that does not support anything but ASCII. In order for the package to be able to render Unicode texts, we need freetype support: http://ploticus.sourceforge.net/doc/fonts.html --- pkgs/tools/graphics/ploticus/default.nix | 9 ++++++ pkgs/tools/graphics/ploticus/use-gd-package.patch | 34 +++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 pkgs/tools/graphics/ploticus/use-gd-package.patch (limited to 'pkgs/tools/graphics') diff --git a/pkgs/tools/graphics/ploticus/default.nix b/pkgs/tools/graphics/ploticus/default.nix index 6b1b50bca02..50b7aad48a0 100644 --- a/pkgs/tools/graphics/ploticus/default.nix +++ b/pkgs/tools/graphics/ploticus/default.nix @@ -4,6 +4,8 @@ , zlib , libX11 , libpng +, gd +, freetype }: stdenv.mkDerivation rec { @@ -21,12 +23,19 @@ stdenv.mkDerivation rec { # Set the location of the PREFABS directory. ./set-prefabs-dir.patch + + # Use gd from Nixpkgs instead of the vendored one. + # This is required for non-ASCII fonts to work: + # http://ploticus.sourceforge.net/doc/fonts.html + ./use-gd-package.patch ]; buildInputs = [ zlib libX11 libpng + gd + freetype ]; hardeningDisable = [ "format" ]; diff --git a/pkgs/tools/graphics/ploticus/use-gd-package.patch b/pkgs/tools/graphics/ploticus/use-gd-package.patch new file mode 100644 index 00000000000..9a72489ddaa --- /dev/null +++ b/pkgs/tools/graphics/ploticus/use-gd-package.patch @@ -0,0 +1,34 @@ +--- a/src/Makefile ++++ b/src/Makefile +@@ -91,10 +91,10 @@ + + + ########### Option 1: use bundled GD16 (PNG only). Requires libpng and zlib. +-exetarget: plpng +-GD16LIBS = -lpng -lz +-GD16H = -I/usr/local/include +-ZFLAG = -DWZ ++# exetarget: plpng ++# GD16LIBS = -lpng -lz ++# GD16H = -I/usr/local/include ++# ZFLAG = -DWZ + ### These should remain commented unless your libs are not in usual places, then alter to suit... + ### GD16LIBS = /home/scg/lib/libpng.a /home/scg/lib/libz.a + ### GD16H = -I/home/scg/lib +@@ -111,11 +111,11 @@ + + ########### Option 4: use your own GD resource with FreeType2 (ttf) fonts enabled. + ########### Requires GD 1.84+, libpng, zlib, libjpeg and libfreetype +-# exetarget: plgd18 +-# GD18LIBS = -lgd -lpng -lz -ljpeg -lfreetype +-# GD18H = +-# GDFREETYPE = -DGDFREETYPE +-# ZFLAG = -DWZ ++exetarget: plgd18 ++GD18LIBS = -lgd -lpng -lz -ljpeg -lfreetype ++GD18H = ++GDFREETYPE = -DGDFREETYPE ++ZFLAG = -DWZ + + ########### Option 5: don't use GD at all. + # exetarget: plnogd -- cgit 1.4.1