depot/third_party/nixpkgs/pkgs/tools/security/fprintd/default.nix
Default email 75ca762b89 Project import generated by Copybara.
GitOrigin-RevId: 29b0d4d0b600f8f5dd0b86e3362a33d4181938f9
2021-03-09 11:18:52 +08:00

110 lines
2.6 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ lib, stdenv
, fetchFromGitLab
, pkg-config
, gobject-introspection
, meson
, ninja
, perl
, gettext
, cairo
, gtk-doc
, libxslt
, docbook-xsl-nons
, docbook_xml_dtd_412
, fetchurl
, glib
, gusb
, dbus
, polkit
, nss
, pam
, systemd
, libfprint
, python3
}:
stdenv.mkDerivation rec {
pname = "fprintd";
version = "1.90.9";
outputs = [ "out" "devdoc" ];
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "libfprint";
repo = pname;
rev = "v${version}";
sha256 = "rOTVThHOY/Q2IIu2RGiv26UE2V/JFfWWnfKZQfKl5Mg=";
};
nativeBuildInputs = [
pkg-config
meson
ninja
perl # for pod2man
gettext
gtk-doc
libxslt
# TODO: apply this to D-Bus so that other packages can benefit.
# https://gitlab.freedesktop.org/dbus/dbus/-/merge_requests/202
(dbus.overrideAttrs (attrs: {
postInstall = attrs.postInstall or "" + ''
ln -s ${fetchurl {
url = "https://gitlab.freedesktop.org/dbus/dbus/-/raw/b207135dbd8c09cf8da28f7e3b0a18bb11483663/doc/catalog.xml";
sha256 = "1/43XwAIcmRXfM4OXOPephyQyUnW8DSveiZbiPvW72I=";
}} $out/share/xml/dbus-1/catalog.xml
'';
}))
docbook-xsl-nons
docbook_xml_dtd_412
];
buildInputs = [
glib
polkit
nss
pam
systemd
libfprint
];
checkInputs = with python3.pkgs; [
gobject-introspection # for setup hook
python-dbusmock
dbus-python
pygobject3
pycairo
pypamtest
gusb # Required by libfprints typelib
];
mesonFlags = [
"-Dgtk_doc=true"
"-Dpam_modules_dir=${placeholder "out"}/lib/security"
"-Dsysconfdir=${placeholder "out"}/etc"
"-Ddbus_service_dir=${placeholder "out"}/share/dbus-1/system-services"
"-Dsystemd_system_unit_dir=${placeholder "out"}/lib/systemd/system"
];
PKG_CONFIG_DBUS_1_INTERFACES_DIR = "${placeholder "out"}/share/dbus-1/interfaces";
PKG_CONFIG_POLKIT_GOBJECT_1_POLICYDIR = "${placeholder "out"}/share/polkit-1/actions";
PKG_CONFIG_DBUS_1_DATADIR = "${placeholder "out"}/share";
# FIXME: Ugly hack for tests to find libpam_wrapper.so
LIBRARY_PATH = lib.makeLibraryPath [ python3.pkgs.pypamtest ];
doCheck = true;
postPatch = ''
patchShebangs \
po/check-translations.sh \
tests/unittest_inspector.py
'';
meta = with lib; {
homepage = "https://fprint.freedesktop.org/";
description = "D-Bus daemon that offers libfprint functionality over the D-Bus interprocess communication bus";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ abbradar elyhaka ];
};
}