diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/misc/plots/default.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/misc/plots/default.nix | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/misc/plots/default.nix b/nixpkgs/pkgs/applications/misc/plots/default.nix new file mode 100644 index 000000000000..4e6b9d24a56b --- /dev/null +++ b/nixpkgs/pkgs/applications/misc/plots/default.nix @@ -0,0 +1,69 @@ +{ lib +, fetchFromGitHub +, python3Packages +, gobject-introspection +, libadwaita +, wrapGAppsHook +, lmmath +}: + +python3Packages.buildPythonApplication rec { + pname = "plots"; + version = "0.8.5"; + + src = fetchFromGitHub { + owner = "alexhuntley"; + repo = "Plots"; + rev = "v${version}"; + hash = "sha256-GjNpaorxkkhZsqrKq4kO5nqF5+4I4tmSc023AZpY8Sw="; + }; + + nativeBuildInputs = [ gobject-introspection wrapGAppsHook ]; + buildInputs = [ libadwaita ]; + + propagatedBuildInputs = with python3Packages; [ + pygobject3 + numpy + lark + jinja2 + freetype-py + pyopengl + pycairo + pyglm + ]; + + nativeCheckInputs = with python3Packages; [ pytest ]; + + postInstall = '' + install -D ${lmmath}/share/fonts/opentype/latinmodern-math.otf -t $out/share/fonts/ + + install -D res/com.github.alexhuntley.Plots.metainfo.xml -t $out/share/metainfo/ + install -D res/com.github.alexhuntley.Plots.desktop -t $out/share/applications/ + install -D res/com.github.alexhuntley.Plots.svg -t $out/share/icons/hicolor/scalable/apps/ + install -D res/com.github.alexhuntley.Plots-symbolic.svg -t $out/share/icons/hicolor/symbolic/apps/ + + for lang_dir in help/*; do + lang=$(basename "$lang_dir") + install -D -t $out/share/help/$lang/plots/ $lang_dir/* + done + ''; + + dontWrapGApps = true; + + preFixup = '' + makeWrapperArgs+=("''${gappsWrapperArgs[@]}") + ''; + + meta = with lib; { + description = "Graph plotting app for GNOME"; + longDescription = '' + Plots is a graph plotting app for GNOME. + Plots makes it easy to visualise mathematical formulae. + In addition to basic arithmetic operations, it supports trigonometric, hyperbolic, exponential and logarithmic functions, as well as arbitrary sums and products. + It can display polar equations, and both implicit and explicit Cartesian equations. + ''; + homepage = "https://github.com/alexhuntley/Plots"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ sund3RRR ]; + }; +} |