1{ stdenv
2, lib
3, fetchFromGitHub
4, gobject-introspection
5, pkg-config
6, cairo
7, glib
8, readline
9, spidermonkey_78
10, meson
11, dbus
12, ninja
13, which
14, libxml2
15}:
16
17stdenv.mkDerivation rec {
18 pname = "cjs";
19 version = "5.6.1";
20
21 src = fetchFromGitHub {
22 owner = "linuxmint";
23 repo = "cjs";
24 rev = version;
25 hash = "sha256-f9esbQi5WWSMAGlEs9HJFToOvmOrbP2lDW1gGh/48gw=";
26 };
27
28 outputs = [ "out" "dev" ];
29
30 nativeBuildInputs = [
31 meson
32 ninja
33 pkg-config
34 which # for locale detection
35 libxml2 # for xml-stripblanks
36 ];
37
38 buildInputs = [
39 gobject-introspection
40 cairo
41 readline
42 spidermonkey_78
43 dbus # for dbus-run-session
44 ];
45
46 propagatedBuildInputs = [
47 glib
48 ];
49
50 mesonFlags = [
51 "-Dprofiler=disabled"
52 ];
53
54 meta = with lib; {
55 homepage = "https://github.com/linuxmint/cjs";
56 description = "JavaScript bindings for Cinnamon";
57
58 longDescription = ''
59 This module contains JavaScript bindings based on gobject-introspection.
60 '';
61
62 license = with licenses; [
63 gpl2Plus
64 lgpl2Plus
65 mit
66 mpl11
67 ];
68
69 platforms = platforms.linux;
70 maintainers = teams.cinnamon.members;
71 };
72}