1{
2 lib,
3 stdenv,
4 fetchurl,
5 libxml2,
6 readline,
7 zlib,
8 perl,
9 cairo,
10 gtk3,
11 gsl,
12 pkg-config,
13 gtksourceview4,
14 pango,
15 gettext,
16 dconf,
17 makeWrapper,
18 gsettings-desktop-schemas,
19 hicolor-icon-theme,
20 texinfo,
21 ssw,
22 python3,
23 iconv,
24}:
25
26stdenv.mkDerivation rec {
27 pname = "pspp";
28 version = "2.0.1";
29
30 src = fetchurl {
31 url = "mirror://gnu/pspp/${pname}-${version}.tar.gz";
32 sha256 = "sha256-jtuw8J6M+AEMrZ4FWeAjDX/FquRyHHVsNQVU3zMCTAA=";
33 };
34
35 nativeBuildInputs = [
36 pkg-config
37 texinfo
38 python3
39 makeWrapper
40 ];
41 buildInputs = [
42 libxml2
43 readline
44 zlib
45 perl
46 cairo
47 gtk3
48 gsl
49 gtksourceview4
50 pango
51 gettext
52 gsettings-desktop-schemas
53 hicolor-icon-theme
54 ssw
55 iconv
56 ];
57
58 C_INCLUDE_PATH =
59 "${libxml2.dev}/include/libxml2/:" + lib.makeSearchPathOutput "dev" "include" buildInputs;
60 LIBRARY_PATH = lib.makeLibraryPath buildInputs;
61
62 doCheck = false;
63
64 enableParallelBuilding = true;
65
66 preFixup = ''
67 wrapProgram "$out/bin/psppire" \
68 --prefix XDG_DATA_DIRS : "$out/share" \
69 --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS" \
70 --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
71 --prefix GIO_EXTRA_MODULES : "${lib.getLib dconf}/lib/gio/modules"
72 '';
73
74 meta = {
75 homepage = "https://www.gnu.org/software/pspp/";
76 description = "Free replacement for SPSS, a program for statistical analysis of sampled data";
77 license = lib.licenses.gpl3Plus;
78
79 longDescription = ''
80 PSPP is a program for statistical analysis of sampled data. It is
81 a Free replacement for the proprietary program SPSS.
82
83 PSPP can perform descriptive statistics, T-tests, anova, linear
84 and logistic regression, cluster analysis, factor analysis,
85 non-parametric tests and more. Its backend is designed to perform
86 its analyses as fast as possible, regardless of the size of the
87 input data. You can use PSPP with its graphical interface or the
88 more traditional syntax commands.
89 '';
90
91 platforms = lib.platforms.unix;
92 };
93}