about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/libfprint
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libfprint')
-rw-r--r--nixpkgs/pkgs/development/libraries/libfprint/default.nix76
1 files changed, 76 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libfprint/default.nix b/nixpkgs/pkgs/development/libraries/libfprint/default.nix
new file mode 100644
index 000000000000..e886baa47976
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libfprint/default.nix
@@ -0,0 +1,76 @@
+{ thinkpad ? false
+, stdenv
+, fetchFromGitHub
+, fetchurl
+, pkgconfig
+, meson
+, ninja
+, libusb1
+, 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 = "1.0";
+
+  src = {
+    libfprint-thinkpad =
+      fetchFromGitHub {
+        owner = "3v1n0";
+        repo = "libfprint";
+        rev = "2e2e3821717e9042e93a995bdbd3d00f2df0be9c";
+        sha256 = "1vps1wrp7hskf13f7jrv0dwry2fcid76x2w463wplngp63cj7b3b";
+      };
+    libfprint = fetchurl {
+      url = "https://gitlab.freedesktop.org/libfprint/libfprint/uploads/aff93e9921d1cff53d7c070944952ff9/libfprint-${version}.tar.xz";
+      sha256 = "0v84pd12v016m8iimhq39fgzamlarqccsr7d98cvrrwrzrgcixrd";
+    };
+  }.${pname};
+
+  nativeBuildInputs = [
+    pkgconfig
+    meson
+    ninja
+    gtk-doc
+    docbook_xsl
+    docbook_xml_dtd_43
+  ];
+
+  buildInputs = [
+    libusb1 # drop in 2.0 for gusb
+    pixman
+    glib
+    nss
+    gtk3
+  ]
+  ++ stdenv.lib.optional thinkpad openssl
+  ;
+
+  mesonFlags = [
+    "-Dudev_rules_dir=${placeholder "out"}/lib/udev/rules.d"
+    "-Dx11-examples=false"
+  ];
+
+  postPatch = ''
+    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 ];
+  };
+}