Commit 8369a349 authored by Nicolas Benes's avatar Nicolas Benes
Browse files
parent fd309df0
Loading
Loading
Loading
Loading
+16 −27
Original line number Diff line number Diff line
{ lib
, python3
, buildPythonApplication
, fetchFromGitHub
, wrapQtAppsHook
, pythonOlder
, pyside6
, poetry-core
, pynitrokey
, pyudev
, qt-material
}:

python3.pkgs.buildPythonApplication rec {
buildPythonApplication rec {
  pname = "nitrokey-app2";
  version = "2.1.4";
  version = "2.1.5";
  pyproject = true;

  disabled = python3.pythonOlder "3.9";
  disabled = pythonOlder "3.9";

  src = fetchFromGitHub {
    owner = "Nitrokey";
    repo = "nitrokey-app2";
    rev = "v${version}";
    hash = "sha256-loOCa6XlLx1YEfqR0SUUalVIEPCoYsNEHFo2MIKexeA=";
    hash = "sha256-mR13zUgCdNS09EnpGLrnOnoIn3p6ZM/0fHKg0OUMWj4=";
  };

  # https://github.com/Nitrokey/nitrokey-app2/issues/152
@@ -23,36 +28,20 @@ python3.pkgs.buildPythonApplication rec {
  # pythonRelaxDepsHook does not work here, because it runs in postBuild and
  # only modifies the dependencies in the built distribution.
  postPatch = ''
    substituteInPlace pyproject.toml --replace "pynitrokey ==" "pynitrokey >="
    substituteInPlace pyproject.toml --replace 'pynitrokey = "' 'pynitrokey = ">='
  '';

  # The pyproject.toml file seems to be incomplete and does not generate
  # resources (i.e. run pyrcc5 and pyuic5) but the Makefile does.
  preBuild = ''
    make build-ui
  '';

  nativeBuildInputs = with python3.pkgs; [
    flit-core
    pyqt5
    wrapQtAppsHook
  nativeBuildInputs = [
    poetry-core
  ];

  dontWrapQtApps = true;

  propagatedBuildInputs = with python3.pkgs; [
  propagatedBuildInputs = [
    pynitrokey
    pyudev
    pyqt5
    pyqt5-stubs
    pyside6
    qt-material
  ];

  preFixup = ''
    wrapQtApp "$out/bin/nitrokeyapp" \
      --set-default CRYPTOGRAPHY_OPENSSL_NO_LEGACY 1
  '';

  pythonImportsCheck = [
    "nitrokeyapp"
  ];
+1 −1
Original line number Diff line number Diff line
@@ -41613,7 +41613,7 @@ with pkgs;
  nitrokey-app = libsForQt5.callPackage ../tools/security/nitrokey-app { };
  nitrokey-app2 = libsForQt5.callPackage ../tools/security/nitrokey-app2 { };
  nitrokey-app2 = python3Packages.callPackage ../tools/security/nitrokey-app2 { };
  fpm2 = callPackage ../tools/security/fpm2 { };