Files
nixpkgs/pkgs/development/python-modules/certbot/default.nix
T

76 lines
1.7 KiB
Nix
Raw Normal View History

2020-02-27 18:46:40 +01:00
{ lib
, buildPythonPackage
2020-07-09 14:11:25 +02:00
, python, runCommand
2020-02-27 18:46:40 +01:00
, fetchFromGitHub
, ConfigArgParse, acme, configobj, cryptography, distro, josepy, parsedatetime, pyRFC3339, pyopenssl, pytz, requests, six, zope_component, zope_interface
, dialog, mock, gnureadline
, pytest_xdist, pytest, pytestCheckHook, dateutil
2020-02-27 18:46:40 +01:00
}:
2015-10-31 22:01:20 +01:00
buildPythonPackage rec {
2019-02-03 21:11:03 -06:00
pname = "certbot";
2020-07-08 11:45:57 +02:00
version = "1.6.0";
2016-01-03 16:54:22 -08:00
src = fetchFromGitHub {
2019-02-03 21:11:03 -06:00
owner = pname;
repo = pname;
2016-01-03 16:54:22 -08:00
rev = "v${version}";
2020-07-08 11:45:57 +02:00
sha256 = "1y0m5qm853i6pcpb2mrf8kjkr9wr80mdrx1qmck38ayvr2v2p5lc";
2015-10-31 22:01:20 +01:00
};
sourceRoot = "source/${pname}";
2020-02-27 18:46:40 +01:00
propagatedBuildInputs = [
2016-01-03 16:54:22 -08:00
ConfigArgParse
acme
configobj
cryptography
2019-10-18 19:11:49 +02:00
distro
2019-02-03 21:11:03 -06:00
josepy
2016-01-03 16:54:22 -08:00
parsedatetime
pyRFC3339
pyopenssl
pytz
2020-02-27 18:46:40 +01:00
requests
2016-01-03 16:54:22 -08:00
six
zope_component
zope_interface
2015-10-31 22:01:20 +01:00
];
2020-02-27 18:46:40 +01:00
buildInputs = [ dialog mock gnureadline ];
2019-10-18 19:11:49 +02:00
checkInputs = [
dateutil
pytest
pytestCheckHook
pytest_xdist
];
2019-10-18 19:11:49 +02:00
pytestFlagsArray = [ "-o cache_dir=$(mktemp -d)" ];
2015-10-31 22:01:20 +01:00
2019-12-14 19:42:16 +01:00
doCheck = true;
2018-06-03 20:41:36 +00:00
makeWrapperArgs = [ "--prefix PATH : ${dialog}/bin" ];
2020-07-09 14:11:25 +02:00
# certbot.withPlugins has a similar calling convention as python*.withPackages
# it gets invoked with a lambda, and invokes that lambda with the python package set matching certbot's:
# certbot.withPlugins (cp: [ cp.certbot-dns-foo ])
passthru.withPlugins = f: let
pythonEnv = python.withPackages f;
in runCommand "certbot-with-plugins" {
} ''
mkdir -p $out/bin
cd $out/bin
ln -s ${pythonEnv}/bin/certbot
'';
2020-02-27 18:46:40 +01:00
meta = with lib; {
2016-05-09 17:28:52 +02:00
homepage = src.meta.homepage;
2015-10-31 22:01:20 +01:00
description = "ACME client that can obtain certs and extensibly update server configurations";
platforms = platforms.unix;
2020-02-27 18:46:40 +01:00
maintainers = with maintainers; [ domenkozar ];
license = with licenses; [ asl20 ];
2015-10-31 22:01:20 +01:00
};
}