1{ lib, stdenv
2, buildPackages
3, fetchurl
4, pkg-config
5, libxml2
6, autoreconfHook
7, gtk-doc
8, glib
9, gtk3
10, enchant2
11, icu
12, vala
13, gobject-introspection
14, gnome
15, gtk-mac-integration
16}:
17
18stdenv.mkDerivation rec {
19 pname = "gspell";
20 version = "1.12.0";
21
22 outputs = [ "out" "dev" ];
23 outputBin = "dev";
24
25 src = fetchurl {
26 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
27 sha256 = "QNKFDxu26HdSRvoeOUOLNsqvvbraHSihn6HKB+H/gq0=";
28 };
29
30 patches = [
31 # Extracted from: https://github.com/Homebrew/homebrew-core/blob/2a27fb86b08afc7ae6dff79cf64aafb8ecc93275/Formula/gspell.rb#L125-L149
32 ./0001-Darwin-build-fix.patch
33 ];
34
35 nativeBuildInputs = [
36 pkg-config
37 vala
38 gobject-introspection
39 libxml2
40 autoreconfHook
41 gtk-doc
42 glib
43 ];
44
45 buildInputs = [
46 gtk3
47 icu
48 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
49 gtk-mac-integration
50 ];
51
52 propagatedBuildInputs = [
53 # required for pkg-config
54 enchant2
55 ];
56
57 configureFlags = [
58 "GLIB_COMPILE_RESOURCES=${lib.getDev buildPackages.glib}/bin/glib-compile-resources"
59 "GLIB_MKENUMS=${lib.getDev buildPackages.glib}/bin/glib-mkenums"
60 ];
61
62 passthru = {
63 updateScript = gnome.updateScript {
64 packageName = pname;
65 versionPolicy = "none";
66 };
67 };
68
69 meta = with lib; {
70 description = "A spell-checking library for GTK applications";
71 homepage = "https://wiki.gnome.org/Projects/gspell";
72 license = licenses.lgpl21Plus;
73 maintainers = teams.gnome.members;
74 platforms = platforms.unix;
75 };
76}