python3Packages.ncclient: cleanup, make src reproducible

This commit is contained in:
Gaetan Lepage
2025-09-15 17:23:27 +02:00
parent dd16e0b603
commit 4b601cc332
@@ -6,7 +6,6 @@
paramiko,
setuptools,
pytestCheckHook,
pythonOlder,
}:
buildPythonPackage rec {
@@ -14,13 +13,19 @@ buildPythonPackage rec {
version = "0.7.0";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "ncclient";
repo = "ncclient";
tag = "v${version}";
hash = "sha256-GSa7UkBwbwggFqwNFTg2KNqGV5412EE41ma/dzPIEuU=";
# Upstream uses .gitattributes to inject information about the revision
# hash and the refname into `ncclient/_version.py`, see:
#
# - https://git-scm.com/docs/gitattributes#_export_subst and
# - https://github.com/ncclient/ncclient/blob/e056e38af2843de0608da58e2f4662465c96d587/ncclient/_version.py#L25-L28
postFetch = ''
sed -i 's/git_refnames = "[^"]*"/git_refnames = " (tag: ${src.tag})"/' $out/ncclient/_version.py
'';
hash = "sha256-vSX+9nTl4r6vnP/vmavdmdChzOC8P2G093/DQNMQwS4=";
};
build-system = [
@@ -36,11 +41,11 @@ buildPythonPackage rec {
pythonImportsCheck = [ "ncclient" ];
meta = with lib; {
meta = {
description = "Python library for NETCONF clients";
homepage = "https://github.com/ncclient/ncclient";
changelog = "https://github.com/ncclient/ncclient/releases/tag/${src.tag}";
license = licenses.asl20;
maintainers = with maintainers; [ xnaveira ];
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ xnaveira ];
};
}