# -*- 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           golang 1.0

go.setup            github.com/hetznercloud/cli 1.55.0 v
revision            0

name                hcloud
categories          devel
license             MIT
maintainers         {judaew @judaew} openmaintainer

description         ${name} is a command-line interface for Hetzner Cloud.
long_description    {*}${description}

checksums           ${distname}${extract.suffix} \
                        rmd160  5eee841c0aae20335f88762dc3c77647477556ca \
                        sha256  824e6e5fe39574a6219e483b7f8dc3ca14458d9077ae54b97fff9389cc2b5424 \
                        size    300725

build.pre_args-append   -ldflags \
    '-X ${go.package}/internal/version.Version=${version}'
build.args              ./cmd/${name}

# FIXME: This port currently can't be built without allowing go mod to fetch
# The port needs version of the protobuf from go.googlesource.com, which is not
# available at github.com/golang/protobuf.
go.offline_build no

destroot {
    xinstall -m 0755 ${worksrcpath}/${name} ${destroot}${prefix}/bin/

    # The shell completions
    set bash_complete ${prefix}/share/bash-completion/completions
    xinstall -d ${destroot}${bash_complete}
    exec ${destroot}${prefix}/bin/${name} completion bash >> \
        ${destroot}${prefix}/share/bash-completion/completions/${name}

    set zsh_complete ${prefix}/share/zsh/site-functions
    xinstall -d ${destroot}${zsh_complete}
    exec ${destroot}${prefix}/bin/${name} completion zsh >> \
        ${destroot}${prefix}/share/zsh/site-functions/_${name}

    set fish_complete ${prefix}/share/fish/vendor_completions.d
    xinstall -d ${destroot}${fish_complete}
    exec ${destroot}${prefix}/bin/${name} completion fish >> \
        ${destroot}${prefix}/share/fish/vendor_completions.d/${name}.fish
}

# overload the github livecheck regex to look for versions that
github.livecheck.regex  {([0-9.]+)}
