Repository navigation
Expand file tree
/
Copy pathrustup.lua
More file actions
73 lines (63 loc) · 1.9 KB
/
Copy pathrustup.lua
File metadata and controls
73 lines (63 loc) · 1.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
--[[
Rustup installation
--]]
-- global variables
sdk_name = "rustup"
plugin_name = "rustup"
plugin_version = "0.1"
homepage = "https://rustup.rs/"
-- installer config
ic = vmrNewInstallerConfig()
ic = vmrAddFlagFiles(ic, "windows", { "rustup-init.exe" })
ic = vmrAddFlagFiles(ic, "linux", { "rustup-init" })
ic = vmrAddFlagFiles(ic, "darwin", { "rustup-init" })
ic = vmrEnableFlagDirExcepted(ic)
latestRustup = {
"https://static.rust-lang.org/rustup/dist/x86_64-apple-darwin/rustup-init",
"https://static.rust-lang.org/rustup/dist/aarch64-apple-darwin/rustup-init",
"https://static.rust-lang.org/rustup/dist/x86_64-unknown-linux-gnu/rustup-init",
"https://static.rust-lang.org/rustup/dist/aarch64-unknown-linux-gnu/rustup-init",
"https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe",
"https://static.rust-lang.org/rustup/dist/aarch64-pc-windows-msvc/rustup-init.exe",
}
function parseOs(u)
if vmrContains(u, "windows") then
return "windows"
end
if vmrContains(u, "linux") then
return "linux"
end
if vmrContains(u, "darwin") then
return "darwin"
end
return ""
end
function parseArch(u)
if vmrContains(u, "x86_64") then
return "amd64"
end
if vmrContains(u, "aarch64") then
return "arm64"
end
return ""
end
os, arch = vmrGetOsArch()
-- spider
function crawl()
local versionList = vmrNewVersionList()
for i, url in ipairs(latestRustup) do
local itemOs = parseOs(url)
local itemArch = parseArch(url)
if itemOs == os and itemArch == arch then
local item = {}
item["url"] = url
item["os"] = os
item["arch"] = arch
item["installer"] = vmrInstallerExecutable
vmrAddItem(versionList, "latest", item)
end
end
return versionList
end
function install(localFilePath, version)
end