# -*- 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/goDoCer/scientiaCLI 93a18e9
version             0.0.1
revision            1
categories          science education
license             GPL-3

maintainers         {@harens harens} openmaintainer
description         A command line interface for scientia for Imperial DoC students
long_description    {*}${description} to download materials faster and easier.

checksums           ${distname}${extract.suffix} \
                        rmd160  6711fe9b38fac57f8db2ac3b24967948f2012764 \
                        sha256  300e40688b823c525a72b8e7d3ed76b2b440206c91656fd6ff2016155c04e868 \
                        size    23898

set bin_name        scientia-cli
set config_path     ${worksrcpath}/etc/scientiaCLI/config.json

# The config file is required to exist during the build in the correct relative directory to the exe
pre-patch {
    file mkdir ${worksrcpath}/etc/${name}
    move ${worksrcpath}/default-config.json ${config_path}
}

# Modify the path of the config file
patchfiles          patch-config-prefix.diff

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

    xinstall -d ${destroot}${prefix}/etc/${name}
    xinstall -m 777 ${config_path} ${destroot}${prefix}/etc/${name}/config.json
}

post-destroot {
    xinstall -d ${destroot}${prefix}/share/doc/${name}
    xinstall -m 644 -W ${worksrcpath} LICENSE README.md ${destroot}${prefix}/share/doc/${name}

    set bash_completion_dir ${destroot}${prefix}/etc/bash_completion.d
    xinstall -d ${bash_completion_dir}
    system -W ${destroot}${prefix}/bin "./scientia-cli completion bash > ${bash_completion_dir}/${bin_name}"

    set zsh_completion_dir ${destroot}${prefix}/share/zsh/site-functions
    xinstall -d ${zsh_completion_dir}
    system -W ${destroot}${prefix}/bin "./scientia-cli completion zsh > ${zsh_completion_dir}/_${bin_name}"

    set fish_completion_dir ${destroot}${prefix}/share/fish/vendor_completions.d
    xinstall -d ${fish_completion_dir}
    system -W ${destroot}${prefix}/bin "./scientia-cli completion fish > ${fish_completion_dir}/${bin_name}.fish"
}

github.livecheck.branch main

go.vendors          golang.org/x/term \
                        lock    03fcf44c2211 \
                        rmd160  a1b9592e95373ba617ef579a2f7015cfdc871343 \
                        sha256  3673415a6d3d106d49b487715e151fc64245502ef547c16e8e13edb6b8f2f492 \
                        size    14975 \
                    golang.org/x/sys \
                        lock    99c3d69c2c27 \
                        rmd160  fd6337cfaf8cb37d46abd2647298a39547e5371f \
                        sha256  120e0cb47bfdb69c61a0ca37b318911dcd5886e40edb875bd395465d8ab81b04 \
                        size    1257191 \
                    golang.org/x/crypto \
                        lock    30dcbda58838 \
                        rmd160  37d4bfaeff085527e1435b2c9d66f6a3689cbd7b \
                        sha256  165b07aff1be7b341831205f89fc2a92ca32d7ffaf61c37d93e6588b3678ce98 \
                        size    1734399 \
                    github.com/urfave/cli \
                        lock    v2.4.0 \
                        rmd160  08728bda2dd6a9bc445ea4bc7dff4a5184953560 \
                        sha256  3a3f761b8571fea2a1f38cbed051a70e167bc959774dc32b6413289f65ba578b \
                        size    3410417 \
                    github.com/stretchr/testify \
                        lock    v1.3.0 \
                        rmd160  80582370443047a1d7020211865d85d54c036eea \
                        sha256  ac782171992e3af1c8ac8384cbf4a39706ec5f9e3c6eed57a246e02dce571762 \
                        size    102899 \
                    github.com/spf13/pflag \
                        lock    v1.0.5 \
                        rmd160  2ce81608a38c6f383a35bccd24d64361df5828c9 \
                        sha256  7f41acdcba65b1fab5b9b633947a139f9915b60f94bdab486cdbe9d90c54f61e \
                        size    50815 \
                    github.com/spf13/cobra \
                        lock    v1.5.0 \
                        rmd160  18a2771699cf666feee7566f27bf7122143209fd \
                        sha256  64c60a9946f3daf9d26ed266ec31b81afa07357058b602b463fef82155430dad \
                        size    104886 \
                    github.com/sirupsen/logrus \
                        lock    v1.8.1 \
                        rmd160  aeb4e5f2ea8112e787a72fba611605c4c87f42b5 \
                        sha256  931c31f624d05136760b41a63f6bc146b79ac91776b4642cbd2026c2792e3aca \
                        size    47184 \
                    github.com/schollz/progressbar \
                        lock    v3.8.6 \
                        rmd160  ec19d5642f701d0a36c23ea7a116d52bea8e09ca \
                        sha256  cd26c3d38d0d4e86cfc25a2e9fd539eb6df60458516956b2892eb6b839db245b \
                        size    604145 \
                    github.com/russross/blackfriday \
                        lock    v2.1.0 \
                        rmd160  c42a9332a2c2f3074c6f7e8d37a58d6148d2af08 \
                        sha256  c4df56f2012a7d16471418245e78b5790569e27bbe8d72a860d7117a801a7fae \
                        size    92950 \
                    github.com/rivo/uniseg \
                        lock    v0.2.0 \
                        rmd160  33577def583aa2db50b69ca601e5d29ab201ebc4 \
                        sha256  2832965221246272462a03ffc8e159c94d8f534827f660f1ac4fc77e5ccd644c \
                        size    44037 \
                    github.com/pmezard/go-difflib \
                        lock    v1.0.0 \
                        rmd160  fc879bfbdef9e3ff50844def58404e2b5a613ab8 \
                        sha256  7cd492737641847266115f3060489a67f63581e521a8ec51efbc280c33fc991f \
                        size    11409 \
                    github.com/pkg/errors \
                        lock    v0.9.1 \
                        rmd160  dc065c655f8a24c6519b58f9d1202eb266ecda40 \
                        sha256  208d21a7da574026f68a8c9818fa7c6ede1b514ef9e72dc733b496ddcb7792a6 \
                        size    13422 \
                    github.com/mitchellh/colorstring \
                        lock    d06e56a500db \
                        rmd160  79e1fb92818b77a56b274c3bb7880891af3f7829 \
                        sha256  0a3c9097c65cf50b9dfe8150adf2f096f9e62b36200759459969d3b9ee3a20fe \
                        size    4679 \
                    github.com/mattn/go-runewidth \
                        lock    v0.0.13 \
                        rmd160  e177edb4dc4702ae2b23704934ff31cc6561bbd0 \
                        sha256  dcd3ccbd956a6f53bc106b79489d0303a237c21d858d23250e3e1d7284b72b86 \
                        size    17363 \
                    github.com/inconshreveable/mousetrap \
                        lock    v1.0.0 \
                        rmd160  5c617a09f1432fc543672a0e0c1e13d3752030c2 \
                        sha256  0e6bae2849f13d12fe361ecac087728e4e97f3482f4cec44f6e7a2c53bb9cd0c \
                        size    2291 \
                    github.com/davecgh/go-spew \
                        lock    v1.1.1 \
                        rmd160  7c02883aa81f81aca14e13a27fdca9e7fbc136f7 \
                        sha256  e85d6afa83e64962e0d63dd4812971eccf2b9b5445eda93f46a4406f0c177d5f \
                        size    42171 \
                    github.com/cpuguy83/go-md2man \
                        lock    v2.0.2 \
                        rmd160  23c11486c5bc6f87cb13d2cb2aa7c2c68fd28f96 \
                        sha256  c0fe49af2717cef631621cbbf010c7ee69b7e5c8afcde33779e07ecece9c00cc \
                        size    64382