# -*- 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           gitlab 1.0
PortGroup           python 1.0

gitlab.setup        duplicity duplicity 2.1.4 rel.
revision            0

description         Encrypted bandwidth-efficient backup.

long_description    Duplicity backs up directories by producing encrypted \
                    tar-format volumes and uploading them to a remote or local file \
                    server. Because duplicity uses librsync, the incremental archives \
                    are space efficient and only record the parts of files that have \
                    changed since the last backup. Because duplicity uses GnuPG to \
                    encrypt and/or sign these archives, they will be safe from spying \
                    and/or modification by the server.

categories          sysutils
license             GPL-2
maintainers         nomaintainer

checksums           rmd160  44f7d3cb2c539d172f96fb416e84dcddf0978bbf \
                    sha256  594eadb320b1678d44e246a93863dcce32bd925acc094bb766df569180d42763 \
                    size    873757

python.default_version 311
python.pep517 no

post-patch {
    foreach f {duplicity} {
        reinplace "s|^#!/usr/bin/env python3$|#!${python.bin}|" ${worksrcpath}/bin/${f}
    }
}

build.args          --librsync-dir=${prefix}
post-destroot {
    xinstall -m 644 -W ${worksrcpath}/bin \
        ${name}.1 \
        ${destroot}${prefix}/share/man/man1/
}

depends_build-append    port:py${python.version}-setuptools \
                        port:py${python.version}-setuptools_scm

depends_lib-append  port:py${python.version}-boto3 \
                    port:py${python.version}-fasteners \
                    port:py${python.version}-future \
                    port:py${python.version}-lockfile \
                    port:py${python.version}-paramiko \
                    port:librsync \
                    port:gettext \
                    path:bin/gpg:gnupg2

depends_run-append  \
                    port:ncftp

# 139 failed, 279 passed, 27 skipped
test.run    yes
depends_test-append port:py${python.version}-pytest \
                    port:py${python.version}-pexpect

notes "
Verify this new version works as expected before deleting the previous
version.  You can reactivate the previous version.

https://trac.macports.org/wiki/howto/InstallingOlderPort
"