diff --git a/pkgs/applications/science/math/nasc/default.nix b/pkgs/applications/science/math/nasc/default.nix index 002acbf3875f..265c0f259bd0 100644 --- a/pkgs/applications/science/math/nasc/default.nix +++ b/pkgs/applications/science/math/nasc/default.nix @@ -1,7 +1,9 @@ { stdenv , fetchFromGitHub -, fetchpatch , pkgconfig +, python3 +, meson +, ninja , vala , gtk3 , glib @@ -9,52 +11,67 @@ , libsoup , gtksourceview , libgee -, cmake +, nix-update-script +, webkitgtk , libqalculate -, cln +, intltool +, gnuplot , wrapGAppsHook }: stdenv.mkDerivation rec { pname = "nasc"; - version = "0.5.4"; + version = "0.7.5"; src = fetchFromGitHub { owner = "parnold-x"; repo = pname; rev = version; - sha256 = "036v3dx8yasp19j88lflibqnpfi5d0nk7qkcnr80zn1lvawf4wgn"; + sha256 = "kSRc5RLkI6SBJirUYw6swZi8IJhaL3y74b2Zw8kh2XA="; + fetchSubmodules = true; }; - patches = [ - # fix build with gcc9 - (fetchpatch { - url = "https://github.com/parnold-x/nasc/commit/46b9b80e228b6b86001bded45d85e073a9411549.patch"; - sha256 = "1sm2aw0xhw2chk036r231nmp2f2ypxcmzggwljkn7wfzgg3h1mx3"; - }) - ]; - nativeBuildInputs = [ - cmake - vala + glib # post_install.py + gtk3 # post_install.py + intltool # for libqalculate + meson + ninja pkgconfig + python3 + vala wrapGAppsHook ]; buildInputs = [ - cln - libsoup - gtk3 glib + gtk3 gtksourceview libgee - libqalculate pantheon.elementary-icon-theme pantheon.granite - ]; + webkitgtk + # We add libqalculate's runtime dependencies because nasc has it as a modified subproject. + ] ++ libqalculate.buildInputs ++ libqalculate.propagatedBuildInputs; + + postPatch = '' + chmod +x meson/post_install.py + patchShebangs meson/post_install.py + + # patch subproject. same code in libqalculate expression + substituteInPlace subprojects/libqalculate/libqalculate/Calculator-plot.cc \ + --replace 'commandline = "gnuplot"' 'commandline = "${gnuplot}/bin/gnuplot"' \ + --replace '"gnuplot - ' '"${gnuplot}/bin/gnuplot - ' + ''; + + passthru = { + pdateScript = nix-update-script { + attrPath = pname; + }; + }; meta = with stdenv.lib; { - description = "Do maths like a normal person"; + description = "Do maths like a normal person, designed for elementary OS"; longDescription = '' It’s an app where you do maths like a normal person. It lets you type whatever you want and smartly figures out what is math and @@ -63,7 +80,7 @@ stdenv.mkDerivation rec { the equations it’s used in. ''; homepage = "https://github.com/parnold-x/nasc"; - maintainers = with maintainers; [ samdroid-apps ]; + maintainers = pantheon.maintainers; platforms = platforms.linux; license = licenses.gpl3Plus; };