1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 setuptools,
6 setuptools-scm,
7 fusepy,
8 fuse,
9 openssl,
10}:
11
12buildPythonPackage rec {
13 pname = "acme-tiny";
14 version = "5.0.1";
15 pyproject = true;
16
17 src = fetchPypi {
18 inherit pname version;
19 sha256 = "378549808eece574c3b5dcea82b216534949423d5c7ac241d9419212d676bc8d";
20 };
21
22 patchPhase = ''
23 substituteInPlace acme_tiny.py --replace-fail '"openssl"' '"${openssl.bin}/bin/openssl"'
24 substituteInPlace tests/test_module.py --replace-fail '"openssl"' '"${openssl.bin}/bin/openssl"'
25 substituteInPlace tests/utils.py --replace-fail /etc/ssl/openssl.cnf ${openssl.out}/etc/ssl/openssl.cnf
26 '';
27
28 build-system = [
29 setuptools
30 setuptools-scm
31 ];
32
33 nativeCheckInputs = [
34 fusepy
35 fuse
36 ];
37
38 doCheck = false; # seems to hang, not sure
39
40 pythonImportsCheck = [ "acme_tiny" ];
41
42 meta = with lib; {
43 description = "Tiny script to issue and renew TLS certs from Let's Encrypt";
44 mainProgram = "acme-tiny";
45 homepage = "https://github.com/diafygi/acme-tiny";
46 license = licenses.mit;
47 };
48}