Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib
2, stdenv
3, fetchurl
4, meson
5, ninja
6, gobject-introspection
7, gnutls
8, cairo
9, glib
10, pkg-config
11, cyrus_sasl
12, pulseaudioSupport ? stdenv.isLinux
13, libpulseaudio
14, libgcrypt
15, gtk3
16, vala
17, gettext
18, perl
19, python3
20, gnome
21, gdk-pixbuf
22, zlib
23}:
24
25stdenv.mkDerivation rec {
26 pname = "gtk-vnc";
27 version = "1.3.1";
28
29 outputs = [ "out" "bin" "man" "dev" ];
30
31 src = fetchurl {
32 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
33 sha256 = "USdjrE4FWdAVi2aCyl3Ro71jPwgvXkNJ1xWOa1+A8c4=";
34 };
35
36 nativeBuildInputs = [
37 meson
38 ninja
39 pkg-config
40 gobject-introspection
41 vala
42 gettext
43 perl # for pod2man
44 python3
45 ];
46
47 buildInputs = [
48 gnutls
49 cairo
50 gdk-pixbuf
51 zlib
52 glib
53 libgcrypt
54 cyrus_sasl
55 gtk3
56 ] ++ lib.optionals pulseaudioSupport [
57 libpulseaudio
58 ];
59
60 mesonFlags = lib.optionals (!pulseaudioSupport) [
61 "-Dpulseaudio=disabled"
62 ];
63
64 passthru = {
65 updateScript = gnome.updateScript {
66 packageName = pname;
67 versionPolicy = "none";
68 };
69 };
70
71 meta = with lib; {
72 description = "GTK VNC widget";
73 homepage = "https://wiki.gnome.org/Projects/gtk-vnc";
74 license = licenses.lgpl2Plus;
75 maintainers = with maintainers; [ raskin offline ];
76 platforms = platforms.unix;
77 };
78}