Something went wrong. Try again.
lol
Something went wrong. Try again.
2.2 kB · 109 lines
Nix
at master
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110{ lib, stdenv, buildPythonPackage, python, runCommand, fetchFromGitHub, configargparse, acme, configobj, cryptography, distro, josepy, parsedatetime, pyrfc3339, setuptools, dialog, gnureadline, pytest-xdist, pytestCheckHook, python-dateutil, writeShellScriptBin,}:
buildPythonPackage rec { pname = "certbot"; version = "5.4.0"; pyproject = true;
src = fetchFromGitHub { owner = "certbot"; repo = "certbot"; tag = "v${version}"; hash = "sha256-Tu46Wybod89TiwsVccNuQcweWoeQE1wbH+pDWNC9+kE="; };
sourceRoot = "${src.name}/certbot";
build-system = [ setuptools ];
dependencies = [ configargparse acme configobj cryptography distro josepy parsedatetime pyrfc3339 ];
buildInputs = [ dialog gnureadline ];
nativeCheckInputs = [ python-dateutil pytestCheckHook pytest-xdist ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ (writeShellScriptBin "sw_vers" '' echo 'ProductVersion: 13.0' '') ];
pytestFlags = [ "-pno:cacheprovider" "-Wignore::DeprecationWarning" ];
disabledTests = [ # network access "test_lock_order" ];
__darwinAllowLocalNetworking = true;
makeWrapperArgs = [ "--prefix PATH : ${dialog}/bin" ];
# 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-${version}" { inherit pname version; } '' mkdir -p $out/bin cd $out/bin ln -s ${pythonEnv}/bin/certbot '';
meta = { homepage = "https://github.com/certbot/certbot"; changelog = "https://github.com/certbot/certbot/blob/${src.tag}/certbot/CHANGELOG.md"; description = "ACME client that can obtain certs and extensibly update server configurations"; platforms = lib.platforms.unix; mainProgram = "certbot"; maintainers = [ ]; license = with lib.licenses; [ asl20 ]; };}