crun: 1.8.3 -> 1.8.4
[NixPkgs.git] / pkgs / tools / graphics / asymptote / default.nix
blob9950d3c56f9912d4e094004f4d8dc5e16c5ebfbc
1 { lib, stdenv, fetchFromGitHub, fetchurl, fetchpatch
2 , autoreconfHook, bison, glm, flex
3 , freeglut, ghostscriptX, imagemagick, fftw
4 , boehmgc, libGLU, libGL, mesa, ncurses, readline, gsl, libsigsegv
5 , python3Packages
6 , zlib, perl, curl
7 , texLive, texinfo
8 , darwin
9 }:
11 stdenv.mkDerivation rec {
12   version = "2.85";
13   pname = "asymptote";
15   src = fetchFromGitHub {
16     owner = "vectorgraphics";
17     repo = pname;
18     rev = version;
19     hash = "sha256-GyW9OEolV97WtrSdIxp4MCP3JIyA1c/DQSqg8jLC0WQ=";
20   };
22   nativeBuildInputs = [
23     autoreconfHook
24     bison
25     flex
26     bison
27     texinfo
28   ];
30   buildInputs = [
31     ghostscriptX imagemagick fftw
32     boehmgc ncurses readline gsl libsigsegv
33     zlib perl curl
34     texLive
35   ] ++ (with python3Packages; [
36     python
37     pyqt5
38   ]);
40   propagatedBuildInputs = [
41     glm
42   ] ++ lib.optionals stdenv.isLinux [
43     freeglut libGLU libGL mesa.osmesa
44   ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
45     OpenGL GLUT Cocoa
46   ]);
48   preConfigure = ''
49     HOME=$TMP
50   '';
52   configureFlags = [
53     "--with-latex=$out/share/texmf/tex/latex"
54     "--with-context=$out/share/texmf/tex/context/third"
55   ];
57   env.NIX_CFLAGS_COMPILE = "-I${boehmgc.dev}/include/gc";
59   postInstall = ''
60     mv $out/share/info/asymptote/*.info $out/share/info/
61     sed -i -e 's|(asymptote/asymptote)|(asymptote)|' $out/share/info/asymptote.info
62     rmdir $out/share/info/asymptote
63     rm -f $out/share/info/dir
65     rm -rf $out/share/texmf
66     install -Dt $out/share/emacs/site-lisp/${pname} $out/share/asymptote/*.el
67   '';
69   enableParallelBuilding = true;
70   # Missing install depends:
71   #   ...-coreutils-9.1/bin/install: cannot stat 'asy-keywords.el': No such file or directory
72   #   make: *** [Makefile:272: install-asy] Error 1
73   enableParallelInstalling = false;
75   meta = with lib; {
76     description =  "A tool for programming graphics intended to replace Metapost";
77     license = licenses.gpl3Plus;
78     maintainers = [ maintainers.raskin ];
79     platforms = platforms.linux ++ platforms.darwin;
80   };