2024-03-12 01:00:21 +08:00
|
|
|
#!/usr/bin/zsh
|
|
|
|
|
|
|
|
#####################################
|
|
|
|
# 用于快速配置旧世界的开发环境 #
|
|
|
|
# 支持的语言: #
|
|
|
|
# [ ] go #
|
|
|
|
# [ ] rust #
|
|
|
|
# [ ] java #
|
|
|
|
# [ ] nodejs #
|
|
|
|
#####################################
|
|
|
|
|
|
|
|
# 不使用包管理器, 直接用官网的二进制包
|
|
|
|
# 龙芯旧世界更新频率低, 且迟早被弃用, 旧世界仅做有限支持
|
|
|
|
|
|
|
|
#############################################################################
|
|
|
|
# 变量 #
|
|
|
|
#############################################################################
|
|
|
|
|
|
|
|
local 旧世界一下载地址="http://ftp.loongnix.cn"
|
|
|
|
|
2024-03-19 23:57:50 +08:00
|
|
|
typeset -A 语言一GO=(
|
|
|
|
['组件']=('go' 'gofmt')
|
2024-03-12 01:00:21 +08:00
|
|
|
['下载地址']="https://golang.google.cn/dl/"
|
2024-03-19 23:57:50 +08:00
|
|
|
['版本正则']="go1.*linux-架构\.tar\.gz"
|
|
|
|
['旧世界版本']="go1.22.0"
|
2024-03-12 01:00:21 +08:00
|
|
|
)
|
|
|
|
|
|
|
|
#############################################################################
|
|
|
|
# 函数(func) #
|
|
|
|
#############################################################################
|
|
|
|
|
|
|
|
# latest_version=$(curl -s https://golang.google.cn/dl/ | grep -o 'go1.*linux-.*\.tar\.gz' | head -n 1)
|
|
|
|
|
2024-03-19 23:57:50 +08:00
|
|
|
开发环境一检测一GO(){
|
|
|
|
输出 0 "2: ${言灵一函数}"
|
2024-03-12 01:00:21 +08:00
|
|
|
# 检测安装情况
|
2024-03-19 23:57:50 +08:00
|
|
|
unset 下载地址
|
|
|
|
版本一在线=$(curl -s ${语言一GO[下载地址]} | grep -o $(echo "${语言一GO[版本正则]}" | sed "s/架构/${言灵一系统架构}/g") | head -n 1)
|
|
|
|
if [[ ${系统一世界类型} == "旧世界" ]]; then
|
|
|
|
echo "旧世界?"
|
|
|
|
版本一在线=${语言一GO[旧世界版本]}
|
|
|
|
下载地址="${旧世界一下载地址}/toolchain/golang/${版本一在线%.*}/abi1.0/${版本一在线}.linux-loong64.tar.gz"
|
2024-03-12 01:00:21 +08:00
|
|
|
fi
|
2024-03-19 23:57:50 +08:00
|
|
|
输出 0 "版本: ${版本一在线}"
|
|
|
|
if 版本对比 ${版本一主机} ${版本一在线}; then
|
2024-03-12 01:00:21 +08:00
|
|
|
版本一主机=$(go version) | awk '{print $3}'
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
2024-03-19 23:57:50 +08:00
|
|
|
# 用于检测当前版本是否最新
|
|
|
|
# *-* -> 位置参数1 <- 需要检测的编程语言
|
|
|
|
# -*- -> 返回值 <- 如果 本地版本 >= 在线版本 返会 空, 反之这会返回最新的在线版本下载地址
|
2024-03-12 01:00:21 +08:00
|
|
|
开发环境一检测(){
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
# 加载主机信息
|
|
|
|
开发环境一初始化(){
|
2024-03-19 23:57:50 +08:00
|
|
|
if [[ ${言灵一系统一主机架构} == "龙" ]]; then
|
|
|
|
if [[ ${言灵一系统一世界类型} == "新世界" ]]; then
|
2024-03-12 01:00:21 +08:00
|
|
|
系统一主机架构="loong64"
|
|
|
|
fi
|
|
|
|
fi
|
2024-03-19 23:57:50 +08:00
|
|
|
系统一主机架构=${言灵一系统一主机架构}
|
2024-03-12 01:00:21 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
开发环境一安装一go(){
|
|
|
|
# 换源 go env -w GOPROXY=https://goproxy.cn
|
|
|
|
}
|
|
|
|
|
|
|
|
开发环境一安装(){
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
###############################################################################
|
|
|
|
# 主函数(main) #
|
|
|
|
###############################################################################
|
|
|
|
|
2024-03-19 23:57:50 +08:00
|
|
|
source $HOME/.config/xunmi/信息
|
|
|
|
source ${言灵一路径}/x/公共/函数.zsh
|
2024-03-12 01:00:21 +08:00
|
|
|
开发环境一初始化
|
|
|
|
|
2024-03-19 23:57:50 +08:00
|
|
|
开发环境一检测一GO
|
2024-03-12 01:00:21 +08:00
|
|
|
|
|
|
|
|