Added looking-glass-client package
Build and populate cache / tests (chiasson, nixpkgs=https://github.com/NixOS/nixpkgs/archive/refs/heads/nixos-25.05.tar.gz, chiasson) (push) Failing after 2m54s
Build and populate cache / tests (chiasson, nixpkgs=https://github.com/NixOS/nixpkgs/archive/refs/heads/nixos-unstable.tar.gz, chiasson) (push) Failing after 2m59s
Build and populate cache / tests (chiasson, nixpkgs=https://github.com/NixOS/nixpkgs/archive/refs/heads/nixpkgs-unstable.tar.gz, chiasson) (push) Failing after 3m6s

This commit is contained in:
2026-01-22 20:07:40 -04:00
parent 104d0afbd2
commit 987029e6c8
3 changed files with 137 additions and 0 deletions
+2
View File
@@ -6,6 +6,8 @@ Personal [NUR](https://github.com/nix-community/NUR) repository.
- **librepods**: LibrePods Linux app (Qt6) — AirPods controls and battery monitoring. - **librepods**: LibrePods Linux app (Qt6) — AirPods controls and battery monitoring.
- Upstream: `https://github.com/kavishdevar/librepods` - Upstream: `https://github.com/kavishdevar/librepods`
- **looking-glass-client**: Looking Glass client.
- Upstream: `https://github.com/gnif/LookingGlass`
## Usage ## Usage
+1
View File
@@ -17,6 +17,7 @@
# example-package = pkgs.callPackage ./pkgs/example-package { }; # example-package = pkgs.callPackage ./pkgs/example-package { };
librepods = pkgs.callPackage ./pkgs/librepods { }; librepods = pkgs.callPackage ./pkgs/librepods { };
flow-browser-bin = pkgs.callPackage ./pkgs/flow-browser-bin { }; flow-browser-bin = pkgs.callPackage ./pkgs/flow-browser-bin { };
looking-glass-client = pkgs.callPackage ./pkgs/looking-glass-client { };
# some-qt5-package = pkgs.libsForQt5.callPackage ./pkgs/some-qt5-package { }; # some-qt5-package = pkgs.libsForQt5.callPackage ./pkgs/some-qt5-package { };
# ... # ...
} }
+134
View File
@@ -0,0 +1,134 @@
{
stdenv,
lib,
fetchFromGitHub,
pkg-config,
cmake,
freefont_ttf,
spice-protocol,
nettle,
libbfd,
fontconfig,
libffi,
expat,
libGL,
nanosvg,
libX11,
libxkbcommon,
libXext,
libXrandr,
libXi,
libXScrnSaver,
libXinerama,
libXcursor,
libXpresent,
libXdmcp,
wayland,
wayland-protocols,
wayland-scanner,
pipewire,
pulseaudio,
libsamplerate,
openGLSupport ? true,
xorgSupport ? true,
waylandSupport ? true,
pipewireSupport ? true,
pulseSupport ? true,
rev ? "27fe47cb",
hash ? "sha256-I84oVLeS63mnR19vTalgvLvA5RzCPTXV+tSsw+ImDwQ=",
}:
stdenv.mkDerivation (finalAttrs: {
pname = "looking-glass-client";
version = rev;
src = fetchFromGitHub {
owner = "gnif";
repo = "LookingGlass";
rev = rev;
hash = hash;
fetchSubmodules = true;
};
nativeBuildInputs = [
cmake
pkg-config
wayland-scanner
];
buildInputs =
[
libX11
libGL
freefont_ttf
spice-protocol
expat
libbfd
nettle
fontconfig
libffi
nanosvg
]
++ lib.optionals xorgSupport [
libxkbcommon
libXi
libXScrnSaver
libXinerama
libXcursor
libXpresent
libXext
libXrandr
libXdmcp
]
++ lib.optionals waylandSupport [
libxkbcommon
wayland
wayland-protocols
]
++ lib.optionals pipewireSupport [
pipewire
libsamplerate
]
++ lib.optionals pulseSupport [
pulseaudio
libsamplerate
];
cmakeFlags =
[
"-DOPTIMIZE_FOR_NATIVE=OFF"
]
++ lib.optionals (!openGLSupport) ["-DENABLE_OPENGL=no"]
++ lib.optionals (!xorgSupport) ["-DENABLE_X11=no"]
++ lib.optionals (!waylandSupport) ["-DENABLE_WAYLAND=no"]
++ lib.optionals (!pulseSupport) ["-DENABLE_PULSEAUDIO=no"]
++ lib.optionals (!pipewireSupport) ["-DENABLE_PIPEWIRE=no"];
postUnpack = ''
echo ${finalAttrs.src.rev} > source/VERSION
export sourceRoot="source/client"
'';
postInstall = ''
mkdir -p $out/share/pixmaps
cp $src/resources/lg-logo.png $out/share/pixmaps
'';
meta = with lib; {
description = "KVM Frame Relay (KVMFR) implementation";
longDescription = ''
Looking Glass is an open source application that allows the use of a KVM
(Kernel-based Virtual Machine) configured for VGA PCI Pass-through
without an attached physical monitor, keyboard or mouse. This is the final
step required to move away from dual booting with other operating systems
for legacy programs that require high performance graphics.
'';
homepage = "https://looking-glass.io/";
downloadPage = "https://github.com/gnif/LookingGlass/releases";
changelog = "https://github.com/gnif/LookingGlass/commits/${rev}";
branch = "master";
license = licenses.gpl2Plus;
sourceProvenance = with sourceTypes; [ fromSource ];
mainProgram = "looking-glass-client";
platforms = platforms.linux;
};
})