diff options
author | Elyhaka <57923898+Elyhaka@users.noreply.github.com> | 2020-05-19 14:03:31 +0200 |
---|---|---|
committer | Elyhaka <57923898+Elyhaka@users.noreply.github.com> | 2020-05-19 14:03:31 +0200 |
commit | 131a28e9f2e5f51e37a60af25379cc236f6b71c7 (patch) | |
tree | d57507690abeb14056441129fee529842980b519 | |
parent | c7c90540dddfdf489d6e5b66da6e9451e619af04 (diff) | |
download | nixpkgs-131a28e9f2e5f51e37a60af25379cc236f6b71c7.tar nixpkgs-131a28e9f2e5f51e37a60af25379cc236f6b71c7.tar.gz nixpkgs-131a28e9f2e5f51e37a60af25379cc236f6b71c7.tar.bz2 nixpkgs-131a28e9f2e5f51e37a60af25379cc236f6b71c7.tar.lz nixpkgs-131a28e9f2e5f51e37a60af25379cc236f6b71c7.tar.xz nixpkgs-131a28e9f2e5f51e37a60af25379cc236f6b71c7.tar.zst nixpkgs-131a28e9f2e5f51e37a60af25379cc236f6b71c7.zip |
fprintd: 0.9.0 -> 1.90.1
-rw-r--r-- | nixos/modules/services/security/fprintd.nix | 1 | ||||
-rw-r--r-- | pkgs/tools/security/fprintd/default.nix | 104 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 3 |
3 files changed, 76 insertions, 32 deletions
diff --git a/nixos/modules/services/security/fprintd.nix b/nixos/modules/services/security/fprintd.nix index 8ece1ca1901..cbac4ef05b8 100644 --- a/nixos/modules/services/security/fprintd.nix +++ b/nixos/modules/services/security/fprintd.nix @@ -29,7 +29,6 @@ in type = types.package; default = pkgs.fprintd; defaultText = "pkgs.fprintd"; - example = "pkgs.fprintd-thinkpad"; description = '' fprintd package to use. ''; diff --git a/pkgs/tools/security/fprintd/default.nix b/pkgs/tools/security/fprintd/default.nix index b119a6ed29f..62f5dda17f6 100644 --- a/pkgs/tools/security/fprintd/default.nix +++ b/pkgs/tools/security/fprintd/default.nix @@ -1,42 +1,70 @@ -{ thinkpad ? false -, stdenv -, fetchurl +{ stdenv +, fetchFromGitLab , fetchpatch , pkgconfig -, intltool -, libfprint-thinkpad ? null -, libfprint ? null +, meson +, ninja +, perl +, gettext +, cairo +, gtk-doc +, libxslt +, docbook-xsl-nons +, docbook_xml_dtd_412 , glib +, dbus , dbus-glib , polkit , nss , pam , systemd -, autoreconfHook -, gtk-doc +, libfprint +, python3 }: stdenv.mkDerivation rec { - pname = "fprintd" + stdenv.lib.optionalString thinkpad "-thinkpad"; - version = "0.9.0"; + pname = "fprintd"; + version = "1.90.1"; + outputs = [ "out" "devdoc" ]; - src = fetchurl { - url = "https://gitlab.freedesktop.org/libfprint/fprintd/uploads/9dec4b63d1f00e637070be1477ce63c0/fprintd-${version}.tar.xz"; - sha256 = "182gcnwb6zjwmk0dn562rjmpbk7ac7dhipbfdhfic2sn1jzis49p"; + src = fetchFromGitLab { + domain = "gitlab.freedesktop.org"; + owner = "libfprint"; + repo = pname; + rev = version; + sha256 = "0mbzk263x7f58i9cxhs44mrngs7zw5wkm62j5r6xlcidhmfn03cg"; }; patches = [ + # Fixes issue with ":" when there is multiple paths (might be the case on NixOS) + # https://gitlab.freedesktop.org/libfprint/fprintd/-/merge_requests/50 + (fetchpatch { + url = "https://gitlab.freedesktop.org/libfprint/fprintd/-/commit/d7fec03f24d10f88d34581c72f0eef201f5eafac.patch"; + sha256 = "QNN05WF4YZ0XiTwm5NkfqZDuQpyXlnrh+RJF9SNsCDk="; + }) + + # Fix locating libpam_wrapper for tests + (fetchpatch { + url = "https://gitlab.freedesktop.org/libfprint/fprintd/-/merge_requests/40.patch"; + sha256 = "43uPihK6HhygHw1Qplwci80Wseq/S77VUp+OdEECHmM="; + }) (fetchpatch { - url = "https://gitlab.freedesktop.org/libfprint/fprintd/merge_requests/16.patch"; - sha256 = "1y39zsmxjll9hip8464qwhq5qg06c13pnafyafgxdph75lvhdll7"; + url = "https://gitlab.freedesktop.org/libfprint/fprintd/-/commit/f401f399a85dbeb2de165b9b9162eb552ab6eea7.patch"; + sha256 = "Pga+/QEkln8DOwGZfKM1r2urJX4Y3X0bozWWxKZ5ia0="; }) ]; nativeBuildInputs = [ - intltool pkgconfig - autoreconfHook # Drop with above patch - gtk-doc # Drop with above patch + meson + ninja + perl + gettext + gtk-doc + libxslt + dbus + docbook-xsl-nons + docbook_xml_dtd_412 ]; buildInputs = [ @@ -46,23 +74,43 @@ stdenv.mkDerivation rec { nss pam systemd - ] - ++ stdenv.lib.optional thinkpad libfprint-thinkpad - ++ stdenv.lib.optional (!thinkpad) libfprint - ; + libfprint + ]; + + checkInputs = with python3.pkgs; [ + python-dbusmock + dbus-python + pygobject3 + pycairo + pypamtest + ]; - configureFlags = [ - # is hardcoded to /var/lib/fprint, this is for the StateDirectory install target - "--localstatedir=${placeholder "out"}/var" - "--sysconfdir=${placeholder "out"}/etc" - "--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system" + 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 = stdenv.lib.makeLibraryPath [ python3.pkgs.pypamtest ]; + + doCheck = true; + + postPatch = '' + patchShebangs po/check-translations.sh + ''; + meta = with stdenv.lib; { homepage = "https://fprint.freedesktop.org/"; description = "D-Bus daemon that offers libfprint functionality over the D-Bus interprocess communication bus"; license = licenses.gpl2; platforms = platforms.linux; - maintainers = with maintainers; [ abbradar ]; + maintainers = with maintainers; [ abbradar elyhaka ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 479798d251b..37d7e0c7a84 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3512,9 +3512,6 @@ in fprot = callPackage ../tools/security/fprot { }; fprintd = callPackage ../tools/security/fprintd { }; - fprintd-thinkpad = fprintd.override { - thinkpad = true; - }; franz = callPackage ../applications/networking/instant-messengers/franz { }; |