79 lines
1.5 KiB
Nix
79 lines
1.5 KiB
Nix
{ config
|
|
, lib, stdenv
|
|
, fetchurl
|
|
, intltool
|
|
, pkg-config
|
|
, portaudio
|
|
, SDL2
|
|
, ffmpeg
|
|
, udev
|
|
, libusb1
|
|
, libv4l
|
|
, alsa-lib
|
|
, gsl
|
|
, libpng
|
|
, sfml
|
|
, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux
|
|
, libpulseaudio ? null
|
|
, useQt ? false
|
|
, qtbase ? null
|
|
, wrapQtAppsHook ? null
|
|
# can be turned off if used as a library
|
|
, useGtk ? true
|
|
, gtk3 ? null
|
|
, wrapGAppsHook ? null
|
|
}:
|
|
|
|
assert pulseaudioSupport -> libpulseaudio != null;
|
|
|
|
stdenv.mkDerivation rec {
|
|
version = "2.0.6";
|
|
pname = "guvcview";
|
|
|
|
src = fetchurl {
|
|
url = "mirror://sourceforge/project/guvcview/source/guvcview-src-${version}.tar.gz";
|
|
sha256 = "11byyfpkcik7wvf2qic77zjamfr2rhji97dpj1gy2fg1bvpiqf4m";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
intltool
|
|
pkg-config
|
|
]
|
|
++ lib.optionals (useGtk) [ wrapGAppsHook ]
|
|
++ lib.optionals (useQt) [ wrapQtAppsHook ]
|
|
;
|
|
|
|
buildInputs = [
|
|
SDL2
|
|
alsa-lib
|
|
ffmpeg
|
|
libusb1
|
|
libv4l
|
|
portaudio
|
|
udev
|
|
gsl
|
|
libpng
|
|
sfml
|
|
]
|
|
++ lib.optionals (pulseaudioSupport) [ libpulseaudio ]
|
|
++ lib.optionals (useGtk) [ gtk3 ]
|
|
++ lib.optionals (useQt) [
|
|
qtbase
|
|
]
|
|
;
|
|
configureFlags = [
|
|
"--enable-sfml"
|
|
]
|
|
++ lib.optionals (useGtk) [ "--enable-gtk3" ]
|
|
++ lib.optionals (useQt) [ "--enable-qt5" ]
|
|
;
|
|
|
|
meta = with lib; {
|
|
description = "A simple interface for devices supported by the linux UVC driver";
|
|
homepage = "http://guvcview.sourceforge.net";
|
|
maintainers = [ maintainers.coconnor ];
|
|
license = licenses.gpl3;
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|