biopass.nix 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. { lib
  2. , stdenv
  3. , fetchFromGitHub
  4. , cmake
  5. , pkg-config
  6. , openssl
  7. , onnxruntime
  8. , glib
  9. , gtk3
  10. , libcamera
  11. , libpam
  12. , cli11
  13. , libjpeg
  14. , rustPlatform
  15. , bun
  16. , cargo
  17. , rustc
  18. , webkitgtk_4_1
  19. , libxdo
  20. , libayatana-appindicator
  21. , librsvg
  22. , wrapGAppsHook4
  23. }:
  24. stdenv.mkDerivation rec {
  25. pname = "biopass";
  26. version = "1.4.1";
  27. src = fetchFromGitHub {
  28. owner = "TickLabVN";
  29. repo = "biopass";
  30. rev = "v${version}";
  31. hash = "sha256-JNX2L4IDU5XxfgjhbuivhiYKp7GdLWLogrBgdFgODsg=";
  32. };
  33. cmakeFlags = [
  34. "-S../auth"
  35. "-B."
  36. ];
  37. nativeBuildInputs = [
  38. cmake
  39. pkg-config
  40. rustPlatform.cargoSetupHook
  41. cargo
  42. rustc
  43. bun
  44. wrapGAppsHook4
  45. ];
  46. buildInputs = [
  47. openssl
  48. onnxruntime
  49. glib
  50. gtk3
  51. libpam
  52. cli11
  53. libjpeg
  54. libcamera
  55. webkitgtk_4_1
  56. libxdo
  57. libayatana-appindicator
  58. librsvg
  59. ];
  60. buildPhase = ''
  61. runHook preBuild
  62. cmake --build . --config Release
  63. export HOME=$(mktemp -d)
  64. cd ../app
  65. bun install --no-progress --frozen-lockfile
  66. # Invoke tauri build logic (Requires cargo dependencies vendored if strictly sandboxed)
  67. bun run tauri build --no-bundle
  68. cd ../build
  69. runHook postBuild
  70. '';
  71. meta = with lib; {
  72. description = "Modern Multi-Modal Biometric Login for Linux";
  73. homepage = "https://github.com/TickLabVN/biopass";
  74. license = licenses.mit;
  75. platforms = platforms.linux;
  76. };
  77. }