nixpkgs/pkgs/applications/kde/cantor.nix
2024-10-22 20:00:16 +08:00

132 lines
2.3 KiB
Nix

{
lib,
mkDerivation,
cmake,
extra-cmake-modules,
makeWrapper,
shared-mime-info,
fetchpatch,
qtbase,
qtsvg,
qttools,
qtwebengine,
qtxmlpatterns,
poppler,
karchive,
kcompletion,
kconfig,
kcoreaddons,
kcrash,
kdoctools,
ki18n,
kiconthemes,
kio,
knewstuff,
kparts,
kpty,
ktexteditor,
ktextwidgets,
kxmlgui,
syntax-highlighting,
libspectre,
# Backends. Set to null if you want to omit from the build
withAnalitza ? true,
analitza,
wtihJulia ? true,
julia,
withQalculate ? true,
libqalculate,
withLua ? true,
luajit,
withPython ? true,
python3,
withR ? true,
R,
withSage ? true,
sage,
sage-with-env ? sage.with-env,
}:
mkDerivation {
pname = "cantor";
nativeBuildInputs = [
cmake
extra-cmake-modules
makeWrapper
shared-mime-info
qttools
];
buildInputs =
[
qtbase
qtsvg
qtwebengine
qtxmlpatterns
poppler
karchive
kcompletion
kconfig
kcoreaddons
kcrash
kdoctools
ki18n
kiconthemes
kio
knewstuff
kparts
kpty
ktexteditor
ktextwidgets
kxmlgui
syntax-highlighting
libspectre
]
# backends
++ lib.optional withAnalitza analitza
++ lib.optional wtihJulia julia
++ lib.optional withQalculate libqalculate
++ lib.optional withLua luajit
++ lib.optional withPython python3
++ lib.optional withR R
++ lib.optional withSage sage-with-env;
qtWrapperArgs = [
"--prefix PATH : ${placeholder "out"}/bin"
] ++ lib.optional withSage "--prefix PATH : ${sage-with-env}/bin";
# Causes failures on Hydra and ofborg from some reason
enableParallelBuilding = false;
patches = [
# fix build for julia 1.1 from upstream
(fetchpatch {
url = "https://github.com/KDE/cantor/commit/ed9525ec7895c2251668d11218f16f186db48a59.patch?full_index=1";
hash = "sha256-paq0e7Tl2aiUjBf1bDHLLUpShwdCQLICNTPNsXSoe5M=";
})
];
meta = {
description = "Front end to powerful mathematics and statistics packages";
homepage = "https://cantor.kde.org/";
license = with lib.licenses; [
bsd3
cc0
gpl2Only
gpl2Plus
gpl3Only
];
maintainers = with lib.maintainers; [ hqurve ];
};
}