# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 PortSystem 1.0 PortGroup github 1.0 PortGroup python 1.0 github.setup certbot certbot 5.1.0 v revision 0 categories security license Apache-2 maintainers {mps @Schamschula} openmaintainer description An ACME Let's Encrypt client that can obtain certs and extensibly \ update server configurations. long_description {*}${description} homepage https://certbot.eff.org/ supported_archs noarch platforms {darwin any} checksums rmd160 8d535275bd251f6dcf400cee7b2faee0b03b212e \ sha256 d652a598f67af78ecf122860e85cd2e9c19a2bbe79a71775eccf6e8d642a4fca \ size 442940 variant python310 conflicts python311 python312 python313 description {Use Python 3.10} {} variant python311 conflicts python310 python312 python313 description {Use Python 3.11} {} variant python312 conflicts python310 python311 python313 description {Use Python 3.12} {} variant python313 conflicts python310 python311 python312 description {Use Python 3.13} {} if {![variant_isset python310] && ![variant_isset python311] && ![variant_isset python312]} { default_variants +python313 } foreach pv {313 312 311 310} { if {[variant_isset python${pv}]} { python.default_version ${pv} break } } depends_lib-append port:py${python.version}-acme \ port:py${python.version}-configargparse \ port:py${python.version}-configobj \ port:py${python.version}-cryptography \ port:py${python.version}-distro \ port:py${python.version}-openssl \ port:py${python.version}-parsedatetime \ port:py${python.version}-pyrfc3339 \ port:py${python.version}-tz subport ${name} { post-patch { reinplace "s|/etc/|${prefix}/etc/|" ${worksrcpath}/src/certbot/compat/misc.py reinplace "s|/var/lib/|${prefix}/var/db/|" ${worksrcpath}/src/certbot/compat/misc.py reinplace "s|/var/log/|${prefix}/var/log/|" ${worksrcpath}/src/certbot/compat/misc.py } variant docs description {Build man pages} { depends_lib-append \ port:py${python.version}-repoze.sphinx.autointerface \ port:py${python.version}-sphinx \ port:py${python.version}-sphinx_rtd_theme post-build { set env(doc_path) ${worksrcpath}/docs set env(python_branch) ${python.branch} exec sh -c {cd $doc_path && sphinx-build-$python_branch -N -b man . _build/man} >@stdout } post-destroot { xinstall -d ${destroot}${prefix}/share/man/man1 xinstall -d ${destroot}${prefix}/share/man/man7 xinstall -m 640 ${worksrcpath}/docs/_build/man/certbot.1 \ ${destroot}${prefix}/share/man/man1/ xinstall -m 640 ${worksrcpath}/docs/_build/man/certbot.7 \ ${destroot}${prefix}/share/man/man7/ } } } # # integration with local webservers # for use with "http-01 challenge" # subport ${name}-apache { description The certbot Apache plugin for http-01 challenges long_description The Apache plugin currently supports modern OSes based on Debian, \ Fedora, SUSE, Gentoo and Darwin. This automates both obtaining \ and installing certificates on an Apache webserver. To specify \ this plugin on the command line, simply include \"--apache\". \ https://certbot.eff.org/docs/using.html\#apache distname ${name}_apache-${version} checksums rmd160 66ad702914e3c193a710aaa7eb6108d4bf60f504 \ sha256 83f7e7578bb06c57b3d27f82ebd3c113e6f7fc8a41dc722cdc143ac98064b0ef \ size 184356 depends_lib-append port:mod_perl2 \ port:py${python.version}-python-augeas } subport ${name}-nginx { description The certbot Nginx plugin for http-01 challenges long_description The Nginx plugin should work for most configurations. We \ recommend backing up Nginx configurations before using it (though \ you can also revert changes to configurations with \ \"certbot --nginx rollback\"). You can use it by providing the \ \"--nginx\" flag on the commandline. \ https://certbot.eff.org/docs/using.html\#nginx distname ${name}_nginx-${version} checksums rmd160 705e6b367d1bcd18da962b2afa4bb57e031d9256 \ sha256 fe41cdd8f54b0587b65b686aa142191ad1bf4f7abaa708a79d5ad662757fb07a \ size 80348 depends_lib-append port:py${python.version}-parsing patchfiles patch-certbot-nginx-certbot_nginx-constants.py.diff post-patch { reinplace "s|%PREFIX%|${prefix}|" \ ${worksrcpath}/src/certbot_nginx/_internal/constants.py } } # # integration with dns-servers # for use with "dns-01 challenge" # subport ${name}-dns-cloudflare { description The certbot dns_cloudflare plugin for dns-01 challenges long_description The dns_cloudflare plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the Cloudflare API. \ https://certbot-dns-cloudflare.readthedocs.io/ distname ${name}_dns_cloudflare-${version} checksums rmd160 0e4c1adf179a4cf727ca13e9e223309de09b36ad \ sha256 6fea3d5e2c3db018f83bc074315a48588fb680c900f7fef3349eae6a2cfc4c6c \ size 16211 depends_lib-append port:py${python.version}-cloudflare2 } subport ${name}-dns-digitalocean { description The certbot dns_digitalocean plugin for dns-01 challenges long_description The dns_digitalocean plugin automates the process of completing \ a dns-01 challenge (DNS01) by creating, and subsequently \ removing, TXT records using the DigitalOcean API. \ https://certbot-dns-digitalocean.readthedocs.io/ distname ${name}_dns_digitalocean-${version} checksums rmd160 d086fe3ca9e2ca85b630ae18a080c945d5f983be \ sha256 2c0b90029bae068bb2a8aa20e1003c9ba993fc68c3c13e8510f67b7147a384b7 \ size 14409 depends_lib-append port:py${python.version}-digitalocean } subport ${name}-dns-dnsimple { description The certbot dns_dnsimple plugin for dns-01 challenges long_description The dns_dnsimple plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the DNSimple API. \ https://certbot-dns-dnsimple.readthedocs.io/ distname ${name}_dns_dnsimple-${version} checksums rmd160 4892cce71ea0abfb7d37c41ac290a46c3d6a5a7a \ sha256 711ca820227d766b3c69c02f6ba137b6f7653029f9b770225081f6728a48f00d \ size 12205 depends_lib-append port:py${python.version}-dns-lexicon } subport ${name}-dns-dnsmadeeasy { description The certbotdns_dnsmadeeasy plugin for dns-01 challenges long_description The dns_dnsmadeeasy plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the DNS Made Easy API. \ https://certbot-dns-dnsmadeeasy.readthedocs.io/ distname ${name}_dns_dnsmadeeasy-${version} checksums rmd160 56b36c06bc90a35952c0f475578c4b1656dccddb \ sha256 edca329f00a0551257b6ef741cad1f20f7f7d017ff01421eb235ec158e44eccc \ size 12387 depends_lib-append port:py${python.version}-dns-lexicon } subport ${name}-dns-gehirn { description The certbot gehirn plugin for dns-01 challenges long_description The dns_gehirn plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the Gehirn Infrastracture Service DNS API. \ https://certbot-dns-gehirn.readthedocs.io/ distname ${name}_dns_gehirn-${version} checksums rmd160 0a489206fd179754385463c6c060808f3fcded41 \ sha256 b4cfa49151118e28bb46c65207b5dc91a127053d8f28e39822417f9fcef6ff79 \ size 12297 depends_lib-append port:py${python.version}-dns-lexicon } subport ${name}-dns-google { description The certbot google plugin for dns-01 challenges long_description The dns_google plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the Google Cloud DNS API. \ https://certbot-dns-google.readthedocs.io/ distname ${name}_dns_google-${version} checksums rmd160 1e6d3930fe20a271ac8c5e2419de8410605c6711 \ sha256 4a4af6d2889ea5204cb646b5e4dcd5401193664ee90aae8079ce8ab92410f519 \ size 25106 depends_lib-append port:py${python.version}-google-api-python-client \ port:py${python.version}-google-auth } subport ${name}-dns-linode { description The certbot linode plugin for dns-01 challenges long_description The dns_linode plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the Linode API. \ https://certbot-dns-linode.readthedocs.io/ distname ${name}_dns_linode-${version} checksums rmd160 e68f499860edc22bda18bff07cc57e446177e509 \ sha256 b0e93ad84882ab9c0bb023f036c4ba232b69be82f89ea7b0ae5e7beb09c37258 \ size 12513 depends_lib-append port:py${python.version}-dns-lexicon } subport ${name}-dns-luadns { description The certbot luadns plugin for dns-01 challenges long_description The dns_luadns plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the LuaDNS API. \ https://certbot-dns-luadns.readthedocs.io/ distname ${name}_dns_luadns-${version} checksums rmd160 597112d4d8de901520d3cd0f773221f4cfe252b3 \ sha256 396824219cfc9fdb20d94b9f86a08e4386cc7fa6a064902a5ac4def82f6aef39 \ size 12217 } subport ${name}-dns-nsone { description The certbot nsone plugin for dns-01 challenges long_description The dns_nsone plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the NS1 API. \ https://certbot-dns-nsone.readthedocs.io/ distname ${name}_dns_nsone-${version} checksums rmd160 5a2a284f8fa38eb249e27f06f836ce74c1bc80aa \ sha256 eee65410df91a7358d4ee0f14cb71b050c3e8f73d020c4113f761b8247e45038 \ size 12307 depends_lib-append port:py${python.version}-dns-lexicon } subport ${name}-dns-ovh { description The certbot ovh plugin for dns-01 challenges long_description The dns_ovh plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the OVH API. \ https://certbot-dns-ovh.readthedocs.io/ distname ${name}_dns_ovh-${version} checksums rmd160 4b77c80f909032f64ac27ab0cdaa3267a180aa84 \ sha256 9a97ea3a158f2c0239b3b7fb1443cb464fafcbba4321cce194edc13a0cf45264 \ size 12666 depends_lib-append port:py${python.version}-dns-lexicon } subport ${name}-dns-rfc2136 { description The certbot rfc2136 plugin for dns-01 challenges long_description The dns_rfc2136 plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using RFC 2136 Dynamic Updates. \ https://certbot-dns-rfc2136.readthedocs.io/ distname ${name}_dns_rfc2136-${version} checksums rmd160 655e7ea83df0685cc1f6591eb12ed777ae352074 \ sha256 f0afc9bc63ae8468813e5816eea132ecc92a690e18c5afb09c4802f85e2ae505 \ size 16818 depends_lib-append port:py${python.version}-dnspython } subport ${name}-dns-route53 { description The certbot route53 plugin for dns-01 challenges long_description The dns_route53 plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the Amazon Web Services Route 53 API. \ https://certbot-dns-route53.readthedocs.io/ distname ${name}_dns_route53-${version} checksums rmd160 be1198763063d2104ad98016f39faae66d161374 \ sha256 5d325c702077bc483717f2f989b6014b258032b28009b8ed9062f9c01d693282 \ size 15589 depends_lib-append port:py${python.version}-boto3 } subport ${name}-dns-sakuracloud { description The certbot sakuracloud plugin for dns-01 challenges long_description The dns_sakuracloud plugin automates the process of completing a \ dns-01 challenge (DNS01) by creating, and subsequently removing, \ TXT records using the Sakura Cloud DNS API. \ https://certbot-dns-sakuracloud.readthedocs.io/ distname ${name}_dns_sakuracloud-${version} checksums rmd160 67aad0fa41b233be5c6f66da98402c40159749e7 \ sha256 4b0398d26771dbc89c31e457c4f62dc31a255a0969747f384c2a33aad2e8056a \ size 12287 depends_lib-append port:py${python.version}-dns-lexicon }