about summary refs log tree commit diff
path: root/pkgs/applications/virtualization/looking-glass-client
diff options
context:
space:
mode:
authorj-brn <me@bricker.io>2023-01-24 00:19:22 +0100
committerj-brn <me@bricker.io>2023-01-24 00:19:22 +0100
commit6d154c8b251fc3dc9f1d8a403372030be8882567 (patch)
tree39f1b7e26c379bd81df36cfe569add600b5cfcae /pkgs/applications/virtualization/looking-glass-client
parent815e8e0a946613479578216b6859811a16886c45 (diff)
looking-glass-client: B5.0.1 -> B6
Diffstat (limited to 'pkgs/applications/virtualization/looking-glass-client')
-rw-r--r--pkgs/applications/virtualization/looking-glass-client/default.nix76
1 files changed, 49 insertions, 27 deletions
diff --git a/pkgs/applications/virtualization/looking-glass-client/default.nix b/pkgs/applications/virtualization/looking-glass-client/default.nix
index 60db5708922f9..88b1c36a6d264 100644
--- a/pkgs/applications/virtualization/looking-glass-client/default.nix
+++ b/pkgs/applications/virtualization/looking-glass-client/default.nix
@@ -1,7 +1,39 @@
-{ stdenv, lib, fetchFromGitHub, makeDesktopItem, cmake, pkg-config
-, freefont_ttf, spice-protocol, nettle, libbfd, fontconfig, libffi, expat
-, libxkbcommon, libGL, libXext, libXrandr, libXi, libXScrnSaver, libXinerama
-, libXcursor, libXpresent, wayland, wayland-protocols
+{ stdenv
+, lib
+, fetchFromGitHub
+, makeDesktopItem
+, pkg-config
+, cmake
+, freefont_ttf
+, spice-protocol
+, nettle
+, libbfd
+, fontconfig
+, libffi
+, expat
+, libGL
+
+, libX11
+, libxkbcommon
+, libXext
+, libXrandr
+, libXi
+, libXScrnSaver
+, libXinerama
+, libXcursor
+, libXpresent
+
+, wayland
+, wayland-protocols
+
+, pipewire
+, pulseaudio
+, libsamplerate
+
+, xorgSupport ? true
+, waylandSupport ? true
+, pipewireSupport ? true
+, pulseSupport ? true
 }:
 
 let
@@ -16,40 +48,30 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "looking-glass-client";
-  version = "B5.0.1";
+  version = "B6";
 
   src = fetchFromGitHub {
     owner = "gnif";
     repo = "LookingGlass";
     rev = version;
-    sha256 = "sha256-UzZQU5SzJ2mo9QBweQB0VJSnKfzgTG5QaKpIQN/6LCE=";
+    sha256 = "sha256-6vYbNmNJBCoU23nVculac24tHqH7F4AZVftIjL93WJU=";
     fetchSubmodules = true;
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
 
-  buildInputs = [
-    libGL
-    freefont_ttf
-    spice-protocol
-    expat
-    libbfd
-    nettle
-    fontconfig
-    libffi
-    libxkbcommon
-    libXi
-    libXScrnSaver
-    libXinerama
-    libXcursor
-    libXpresent
-    libXext
-    libXrandr
-    wayland
-    wayland-protocols
-  ];
+  buildInputs = [ libGL libX11 freefont_ttf spice-protocol expat libbfd nettle fontconfig libffi ]
+    ++ lib.optionals xorgSupport [ libxkbcommon libXi libXScrnSaver libXinerama libXcursor libXpresent libXext libXrandr ]
+    ++ lib.optionals waylandSupport [ libxkbcommon wayland wayland-protocols ]
+    ++ lib.optionals pipewireSupport [ pipewire libsamplerate ]
+    ++ lib.optionals pulseSupport [ pulseaudio libsamplerate ];
+
+  cmakeFlags = [ "-DOPTIMIZE_FOR_NATIVE=OFF" ]
+    ++ lib.optional (!xorgSupport) "-DENABLE_X11=no"
+    ++ lib.optional (!waylandSupport) "-DENABLE_WAYLAND=no"
+    ++ lib.optional (!pulseSupport) "-DENABLE_PULSEAUDIO=no"
+    ++ lib.optional (!pipewireSupport) "-DENABLE_PIPEWIRE=no";
 
-  cmakeFlags = [ "-DOPTIMIZE_FOR_NATIVE=OFF" ];
 
   postUnpack = ''
     echo ${src.rev} > source/VERSION