# -*- 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/apernet/hysteria 2.5.0 app/v set git-commit 0ce3df43967d0df1ff0dd778114df2eafb70c5ab # This line is for displaying commit in CLI only revision 0 categories net maintainers {i0ntempest @i0ntempest} openmaintainer license MIT description network utility and proxy optimized for networks of poor quality long_description Hysteria is a feature-packed network utility optimized for networks of poor quality \ (e.g. satellite connections, congested public Wi-Fi, cross-country connection) \ powered by a custom version of QUIC protocol. checksums rmd160 31060d32a2b4c1bd006bac1b2b22f005e5ae2714 \ sha256 d6940e2b3f0562a362bd65a33ebcdb72528e3dc9e47aaf3782ff35e0e7e38ee8 \ size 4450141 # Notes for updating this port: # Remember to update git commit hash set time [clock format [clock seconds] -format %Y-%m-%dT%H:%M:%S] build.args-append -ldflags=\"-X 'main.appVersion=v${version}' -X 'main.appCommit=${git-commit}' -X 'main.appDate=${time}'\" -o ../hysteria . # go2port no longer works since 1.3.1 as there's no go.mod at project root go.offline_build no build.dir ${worksrcpath}/app destroot { xinstall -m 0755 ${worksrcpath}/${name} ${destroot}${prefix}/bin/ file mkdir ${destroot}${prefix}/etc/hysteria copy ${filespath}/server.json ${filespath}/client.json ${destroot}${prefix}/etc/hysteria/ } post-activate { if {![file exists ${prefix}/etc/hysteria/config.json]} { copy ${prefix}/etc/hysteria/client.json ${prefix}/etc/hysteria/config.json } } notes-append " The default config file is copied to ${prefix}/etc/hysteria/config.json and its content\ will be preserved across upgrades and reinstalls. The startup item will use this config\ file by default. " startupitem.create yes startupitem.executable ${prefix}/bin/hysteria --config ${prefix}/etc/hysteria/config.json