nixpkgs-immich/pkgs/tools/security/fprintd/tod.nix
2024-09-17 10:23:40 -06:00

57 lines
2.2 KiB
Nix

{ lib
, fetchFromGitLab
, fetchpatch
, fprintd
, libfprint-tod
}:
(fprintd.override { libfprint = libfprint-tod; }).overrideAttrs (oldAttrs: rec {
pname = "fprintd-tod";
version = "1.90.9";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "libfprint";
repo = "fprintd";
rev = "v${version}";
sha256 = "sha256-rOTVThHOY/Q2IIu2RGiv26UE2V/JFfWWnfKZQfKl5Mg=";
};
patches = oldAttrs.patches or [] ++ [
(fetchpatch {
name = "use-more-idiomatic-correct-embedded-shell-scripting";
url = "https://gitlab.freedesktop.org/libfprint/fprintd/-/commit/f4256533d1ffdc203c3f8c6ee42e8dcde470a93f.patch";
sha256 = "sha256-4uPrYEgJyXU4zx2V3gwKKLaD6ty0wylSriHlvKvOhek=";
})
(fetchpatch {
name = "remove-pointless-copying-of-files-into-build-directory";
url = "https://gitlab.freedesktop.org/libfprint/fprintd/-/commit/2c34cef5ef2004d8479475db5523c572eb409a6b.patch";
sha256 = "sha256-2pZBbMF1xjoDKn/jCAIldbeR2JNEVduXB8bqUrj2Ih4=";
})
(fetchpatch {
name = "build-Do-not-use-positional-arguments-in-i18n.merge_file";
url = "https://gitlab.freedesktop.org/libfprint/fprintd/-/commit/50943b1bd4f18d103c35233f0446ce7a31d1817e.patch";
sha256 = "sha256-ANkAq6fr0VRjkS0ckvf/ddVB2mH4b2uJRTI4H8vPPes=";
})
(fetchpatch {
name = "tests-Fix-dbusmock-AddDevice-calls-to-include-option";
url = "https://gitlab.freedesktop.org/libfprint/fprintd/-/commit/ae04fa989720279e5558c3b8ff9ebe1959b1cf36.patch";
sha256 = "sha256-jW5vlzrbZQ1gUDLBf7G50GnZfZxhlnL2Eu+9Bghdwdw=";
})
];
postPatch = oldAttrs.postPatch or "" + ''
# part of "remove-pointless-copying-of-files-into-build-directory" but git-apply doesn't handle renaming
mv src/device.xml src/net.reactivated.Fprint.Device.xml
mv src/manager.xml src/net.reactivated.Fprint.Manager.xml
'';
meta = {
homepage = "https://fprint.freedesktop.org/";
description = "fprintd built with libfprint-tod to support Touch OEM Drivers";
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ hmenke ];
};
})