about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/neatvnc
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2020-04-01 15:50:50 +0000
committerAlyssa Ross <hi@alyssa.is>2020-04-01 15:50:50 +0000
commit75eafe97f7df0d653bec67f3962214d7c357831f (patch)
tree09f2cc901e0e637876cbb78d192dfe2fcfef8156 /nixpkgs/pkgs/development/libraries/neatvnc
parenta53b121bf4331497da63df3b1b7f1a7897dad146 (diff)
parenta2e06fc3423c4be53181b15c28dfbe0bcf67dd73 (diff)
downloadnixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.gz
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.bz2
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.lz
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.xz
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.tar.zst
nixlib-75eafe97f7df0d653bec67f3962214d7c357831f.zip
Merge commit 'a2e06fc3423c4be53181b15c28dfbe0bcf67dd73'
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/neatvnc')
-rw-r--r--nixpkgs/pkgs/development/libraries/neatvnc/default.nix37
-rw-r--r--nixpkgs/pkgs/development/libraries/neatvnc/disable-cpu-acceleration.patch17
2 files changed, 54 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/neatvnc/default.nix b/nixpkgs/pkgs/development/libraries/neatvnc/default.nix
new file mode 100644
index 000000000000..127f25a50bea
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/neatvnc/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchFromGitHub, meson, pkg-config, ninja
+, pixman, libuv, gnutls, libdrm
+# libjpeg_turbo: Optional, for tight encoding (disabled because experimental)
+, enableCpuAcceleration ? false # Whether to use CPU extensions (e.g. AVX)
+}:
+
+stdenv.mkDerivation rec {
+  pname = "neatvnc";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "any1";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "04wcpwxlcf0bczcs97j21346mn6finfj7xgc2dsrwrw9xq8qa7wc";
+  };
+
+  nativeBuildInputs = [ meson pkg-config ninja ];
+  buildInputs = [ pixman libuv gnutls libdrm ];
+
+  patches = stdenv.lib.optional (!enableCpuAcceleration) ./disable-cpu-acceleration.patch;
+
+  meta = with stdenv.lib; {
+    description = "A VNC server library";
+    longDescription = ''
+      This is a liberally licensed VNC server library that's intended to be
+      fast and neat. Goals:
+      - Speed
+      - Clean interface
+      - Interoperability with the Freedesktop.org ecosystem
+    '';
+    inherit (src.meta) homepage;
+    license = licenses.isc;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ primeos ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/neatvnc/disable-cpu-acceleration.patch b/nixpkgs/pkgs/development/libraries/neatvnc/disable-cpu-acceleration.patch
new file mode 100644
index 000000000000..97b77c02df48
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/neatvnc/disable-cpu-acceleration.patch
@@ -0,0 +1,17 @@
+diff --git a/meson.build b/meson.build
+index 31dd8b8..8761087 100644
+--- a/meson.build
++++ b/meson.build
+@@ -21,12 +21,6 @@ endif
+ 
+ cpu = host_machine.cpu_family()
+ 
+-if cpu == 'x86_64'
+-	c_args += '-mavx'
+-elif cpu == 'arm'
+-	c_args += '-mfpu=neon'
+-endif
+-
+ add_project_arguments(c_args, language: 'c')
+ 
+ cc = meson.get_compiler('c')