Skip to content

将 CLoudflareSpeedTest 打包到 AUR 仓库 #158

@taotieren

Description

@taotieren

AUR cloudflarespeedtest-git
PKGBUILD

# Contributor: taotieren <admin@taotieren.com>

pkgname=cloudflarespeedtest-git
pkgver=2.0.2+10+gb2422ca
pkgrel=1
pkgdesc="「自选优选 IP / 过滤假墙」测试 Cloudflare CDN 延迟和速度,获取最快 IP (IPv4+IPv6)! "
arch=('any')
url="https://github.com/XIU2/CloudflareSpeedTest"
license=('GPLv3')
provides=(${pkgname})
conflicts=(${pkgname} ${pkgname%-git})
#replaces=(${pkgname})
depends=(go git)
optdepends=()
makedepends=('git')
backup=()
options=('!strip')
#install=${pkgname}.install
source=("${pkgname%-git}::git+https://ghproxy.com/${url}.git")
sha256sums=('SKIP')

pkgver() {
    cd "${srcdir}/${pkgname%-git}"
    git describe --tags | sed 's/^v//;s/-/+/g'
}

prepare() {
    cd "${srcdir}/${pkgname%-git}"
    go mod tidy
    mkdir -p build/
}

build() {
    cd "${srcdir}/${pkgname%-git}"
    export CGO_CPPFLAGS="${CPPFLAGS}"
    export CGO_CFLAGS="${CFLAGS}"
    export CGO_CXXFLAGS="${CXXFLAGS}"
    export CGO_LDFLAGS="${LDFLAGS}"
    export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw"
    go build -o build
}

package() {
    cd "${srcdir}/${pkgname%-git}"

    install -Dm0755 build/CloudflareSpeedTest "${pkgdir}"/usr/share/${pkgname%-git}/${pkgname%-git}
    install -Dm0755 script/cfst_hosts.sh "${pkgdir}"/usr/share/${pkgname%-git}/cfst-hosts
    cp -rv *.txt "${pkgdir}"/usr/share/${pkgname%-git}/
    install -Dm0644 "${srcdir}/${pkgname%-git}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname%-git}/LICENSE"
    install -Dm0755 /dev/stdin "${pkgdir}/usr/bin/CloudflareST" << EOF
#!/bin/sh

cd /usr/share/${pkgname%-git}/
./${pkgname%-git} "\$@"

EOF
    ln -sf /usr/share/${pkgname%-git}/cfst-hosts "${pkgdir}"/usr/bin/cfst-hosts
}

运行测试:

CloudflareST      
# XIU2/CloudflareSpeedTest  

开始延迟测速(模式:TCP IPv4,端口:443,平均延迟上限:9999 ms,平均延迟下限:0 ms)
4935 / 4935 [--------------------------------------------------------------] 100.00%
开始下载测速(下载速度下限:0.00 MB/s,下载测速数量:10,下载测速队列:10):
6 / 10 [---------------------------------------->___________________________] 60.00%^C

➜  ~ cfst-hosts         
该脚本的作用为 CloudflareST 测速后获取最快 IP 并替换 Hosts 中的 Cloudflare CDN IP。
使用前请先阅读:https://github.com/XIU2/CloudflareSpeedTest/issues/42#issuecomment-768273848
第一次使用,请先将 Hosts 中所有 Cloudflare CDN IP 统一改为一个 IP。
输入该 Cloudflare CDN IP 并回车(后续不再需要该步骤):^C

Metadata

Metadata

Assignees

No one assigned

    Labels

    工具教程辅助工具 或 技巧教程

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions