1{ stdenv, pythonPackages, fetchurl, dialog }:
2
3pythonPackages.buildPythonApplication rec {
4 version = "0.1.0";
5 name = "letsencrypt-${version}";
6
7 src = fetchurl {
8 url = "https://github.com/letsencrypt/letsencrypt/archive/v${version}.tar.gz";
9 sha256 = "056y5bsmpc4ya5xxals4ypzsm927j6n5kwby3bjc03sy3sscf6hw";
10 };
11
12 propagatedBuildInputs = with pythonPackages; [
13 zope_interface zope_component six requests2 pytz pyopenssl psutil mock acme
14 cryptography configobj pyRFC3339 python2-pythondialog parsedatetime ConfigArgParse
15 ];
16 buildInputs = with pythonPackages; [ nose dialog ];
17
18 patchPhase = ''
19 substituteInPlace letsencrypt/notify.py --replace "/usr/sbin/sendmail" "/var/setuid-wrappers/sendmail"
20 '';
21
22 postInstall = ''
23 for i in $out/bin/*; do
24 wrapProgram "$i" --prefix PYTHONPATH : "$PYTHONPATH" \
25 --prefix PATH : "${dialog}/bin:$PATH"
26 done
27 '';
28
29 meta = with stdenv.lib; {
30 homepage = https://github.com/letsencrypt/letsencrypt;
31 description = "ACME client that can obtain certs and extensibly update server configurations";
32 platforms = platforms.unix;
33 maintainers = [ maintainers.iElectric ];
34 license = licenses.asl20;
35 };
36}