nixpkgs/pkgs/development/libraries/libfprint/default.nix

44 lines
1.5 KiB
Nix

{ thinkpad ? false, stdenv, fetchFromGitHub, fetchurl, pkgconfig, meson, ninja, libusb, pixman, glib, nss, gtk3
, coreutils, gtk-doc, docbook_xsl, docbook_xml_dtd_43, openssl ? null }:
assert thinkpad -> openssl != null;
stdenv.mkDerivation rec {
pname = "libfprint" + stdenv.lib.optionalString thinkpad "-thinkpad";
version = "0.99.0";
src = {
libfprint-thinkpad =
fetchFromGitHub {
owner = "3v1n0";
repo = "libfprint";
rev = "2e2e3821717e9042e93a995bdbd3d00f2df0be9c";
sha256 = "1vps1wrp7hskf13f7jrv0dwry2fcid76x2w463wplngp63cj7b3b";
};
libfprint = fetchurl {
url = "https://gitlab.freedesktop.org/libfprint/libfprint/uploads/82ba3cef5bdf72997df711eacdb13c0f/libfprint-${version}.tar.xz";
sha256 = "16r4nl40y0jri57jiqmdz4s87byblx22lbhyvqpljd6mqm5rg187";
};
}.${pname};
buildInputs = [ libusb pixman glib nss gtk3 ]
++ stdenv.lib.optional thinkpad openssl;
nativeBuildInputs = [ pkgconfig meson ninja gtk-doc docbook_xsl docbook_xml_dtd_43 ];
mesonFlags = [ "-Dudev_rules_dir=lib/udev/rules.d" "-Dx11-examples=false" ];
preConfigure = ''
substituteInPlace libfprint/meson.build \
--replace /bin/echo ${coreutils}/bin/echo
'';
meta = with stdenv.lib; {
homepage = https://fprint.freedesktop.org/;
description = "A library designed to make it easy to add support for consumer fingerprint readers";
license = licenses.lgpl21;
platforms = platforms.linux;
maintainers = with maintainers; [ abbradar ];
};
}