Merge pull request #121287 from dotlambda/pass-import-fix

passExtensions.pass-import: fix tests

Changed files
+22 -12
pkgs
development
python-modules
pykeepass
tools
security
pass
extensions
+15 -10
pkgs/development/python-modules/pykeepass/default.nix
···
-
{ lib, fetchPypi, buildPythonPackage
+
{ lib, fetchFromGitHub, buildPythonPackage
, lxml, pycryptodomex, construct
, argon2_cffi, dateutil, future
+
, python
}:
buildPythonPackage rec {
pname = "pykeepass";
version = "4.0.0";
-
src = fetchPypi {
-
inherit pname version;
-
sha256 = "1b41b3277ea4e044556e1c5a21866ea4dfd36e69a4c0f14272488f098063178f";
+
src = fetchFromGitHub {
+
owner = "libkeepass";
+
repo = "pykeepass";
+
rev = version;
+
sha256 = "1zw5hjk90zfxpgq2fz4h5qzw3kmvdnlfbd32gw57l034hmz2i08v";
};
postPatch = ''
···
argon2_cffi dateutil future
];
-
# no tests in PyPI tarball
-
doCheck = false;
+
checkPhase = ''
+
${python.interpreter} -m unittest tests.tests
+
'';
-
meta = {
-
homepage = "https://github.com/pschmitt/pykeepass";
+
meta = with lib; {
+
homepage = "https://github.com/libkeepass/pykeepass";
+
changelog = "https://github.com/libkeepass/pykeepass/blob/${version}/CHANGELOG.rst";
description = "Python library to interact with keepass databases (supports KDBX3 and KDBX4)";
-
license = lib.licenses.gpl3;
+
license = licenses.gpl3Only;
+
maintainers = with maintainers; [ dotlambda ];
};
-
}
+7 -2
pkgs/tools/security/pass/extensions/import.nix
···
sha256 = "sha256-nH2xAqWfMT+Brv3z9Aw6nbvYqArEZjpM28rKsRPihqA=";
};
-
# by default, tries to install scripts/pimport, which is a bash wrapper around "python -m pass_import ..."
-
# This is a better way to do the same, and takes advantage of the existing Nix python environments
patches = [
+
(fetchpatch {
+
name = "support-for-keepass-4.0.0.patch";
+
url = "https://github.com/roddhjav/pass-import/commit/86cfb1bb13a271fefe1e70f24be18e15a83a04d8.patch";
+
sha256 = "0mrlblqlmwl9gqs2id4rl4sivrcclsv6zyc6vjqi78kkqmnwzhxh";
+
})
+
# by default, tries to install scripts/pimport, which is a bash wrapper around "python -m pass_import ..."
+
# This is a better way to do the same, and takes advantage of the existing Nix python environments
# from https://github.com/roddhjav/pass-import/pull/138
(fetchpatch {
name = "pass-import-pr-138-pimport-entrypoint.patch";