118 lines
2.3 KiB
Lua
118 lines
2.3 KiB
Lua
local LIST_TURTLE_FILES = {
|
|
'refuel.lua',
|
|
'miner.lua',
|
|
'tunnels-miner.lua',
|
|
'coal-crafter.lua',
|
|
'mystical-upgrader.lua',
|
|
'inferium-harvester.lua',
|
|
'inferium-server.lua'
|
|
};
|
|
|
|
local LIST_TURTLE_CONFIG_FILES = {
|
|
'config/tunnels.lua',
|
|
'config/mining.lua'
|
|
}
|
|
|
|
local LIST_SERVER_FILES = {
|
|
'inferium-server.lua'
|
|
}
|
|
|
|
local LIST_SERVER_CONFIG_FILES = {
|
|
'config/inferium.lua'
|
|
}
|
|
|
|
local LIST_CLIENT_FILES = {
|
|
'inferium-gui.lua'
|
|
}
|
|
|
|
local LIST_CLIENT_CONFIG_FILES = {}
|
|
|
|
local LIST_LIBS_FILES = {
|
|
'libs/net.lua',
|
|
'libs/utils.lua',
|
|
'libs/turtle-utils.lua',
|
|
'libs/robot.lua',
|
|
'libs/inferium.lua',
|
|
'libs/ui/CountersSelector.lua'
|
|
}
|
|
|
|
local LIST_GLOBAL_FILES = {
|
|
'dmesg.lua'
|
|
}
|
|
|
|
local LIST_GLOBAL_CONFIG_FILES = {
|
|
'startup.lua',
|
|
'upgrade.lua'
|
|
}
|
|
|
|
-- old files that need to be cleaned up
|
|
local LIST_OLD_FILES = {
|
|
'inferium-upgrader-lua',
|
|
'config/inferium-plans.lua',
|
|
'config/harvesting.lua'
|
|
}
|
|
|
|
local REPO_PREFIX = 'https://git.trapcloud.fr/guillaumearm/minecraft-cc-tools/raw/branch/master/'
|
|
|
|
local removeFiles = function(list)
|
|
for _, filePath in pairs(list) do
|
|
if filePath then
|
|
fs.delete(filePath)
|
|
end
|
|
end
|
|
end
|
|
|
|
local installFiles = function(list)
|
|
for _, filePath in pairs(list) do
|
|
if filePath then
|
|
fs.delete(filePath)
|
|
shell.execute('wget', REPO_PREFIX .. filePath, filePath)
|
|
end
|
|
end
|
|
end
|
|
|
|
local installConfig = function(list)
|
|
-- do not override existing config files
|
|
for _, filePath in pairs(list) do
|
|
if filePath and not fs.exists(filePath) then
|
|
shell.execute('wget', REPO_PREFIX .. filePath, filePath)
|
|
end
|
|
end
|
|
end
|
|
|
|
local prepareDirs = function()
|
|
fs.makeDir('/libs')
|
|
fs.makeDir('/libs/ui')
|
|
fs.makeDir('/config')
|
|
fs.makeDir('/data')
|
|
end
|
|
|
|
local mainSetup = function()
|
|
local previousDir = shell.dir()
|
|
|
|
prepareDirs()
|
|
removeFiles(LIST_OLD_FILES)
|
|
installFiles(LIST_LIBS_FILES)
|
|
|
|
if turtle then
|
|
installFiles(LIST_TURTLE_FILES)
|
|
installConfig(LIST_TURTLE_CONFIG_FILES)
|
|
elseif pocket then
|
|
installFiles(LIST_CLIENT_FILES)
|
|
installConfig(LIST_CLIENT_CONFIG_FILES)
|
|
else -- regular computer
|
|
installFiles(LIST_CLIENT_FILES)
|
|
installConfig(LIST_CLIENT_CONFIG_FILES)
|
|
|
|
installFiles(LIST_SERVER_FILES)
|
|
installConfig(LIST_SERVER_CONFIG_FILES)
|
|
end
|
|
|
|
installFiles(LIST_GLOBAL_FILES)
|
|
installConfig(LIST_GLOBAL_CONFIG_FILES)
|
|
|
|
shell.setDir(previousDir)
|
|
end
|
|
|
|
mainSetup()
|