Browse Source

Added file check and backup url for java

master
AlphaX-Projects 8 months ago
parent
commit
dbe1860584
  1. 94
      electron.js

94
electron.js

@ -27,6 +27,7 @@ const extract = require('extract-zip')
const execFile = require('child_process').execFile const execFile = require('child_process').execFile
const exec = require('child_process').exec const exec = require('child_process').exec
const spawn = require('child_process').spawn const spawn = require('child_process').spawn
const XMLHttpRequest = require('xhr2')
const homePath = app.getPath('home') const homePath = app.getPath('home')
const downloadPath = app.getPath('downloads') const downloadPath = app.getPath('downloads')
const logPath = app.getPath('logs') const logPath = app.getPath('logs')
@ -121,26 +122,31 @@ const qortalsettings = homePath + "/qortal/settings.json"
const javadir = homePath + "/jdk-17.0.2/" const javadir = homePath + "/jdk-17.0.2/"
const linjavax64url = "https://download.qortal.online/openjdk-17.0.2_linux-x64_bin.zip" const linjavax64url = "https://download.qortal.online/openjdk-17.0.2_linux-x64_bin.zip"
const linjavax64urlbackup = "https://cloud.qortal.org/s/aSxDWTskG8kBR5T/download/openjdk-17.0.2_linux-x64_bin.zip"
const linjavax64file = homePath + "/openjdk-17.0.2_linux-x64_bin.zip" const linjavax64file = homePath + "/openjdk-17.0.2_linux-x64_bin.zip"
const linjavax64bindir = homePath + "/jdk-17.0.2/bin" const linjavax64bindir = homePath + "/jdk-17.0.2/bin"
const linjavax64binfile = homePath + "/jdk-17.0.2/bin/java" const linjavax64binfile = homePath + "/jdk-17.0.2/bin/java"
const linjavaarmurl = "https://download.qortal.online/openjdk-17.0.2_linux-arm_bin.zip" const linjavaarmurl = "https://download.qortal.online/openjdk-17.0.2_linux-arm_bin.zip"
const linjavaarmurlbackup = "https://cloud.qortal.org/s/DAMFBEri469R3dj/download/openjdk-17.0.2_linux-arm_bin.zip"
const linjavaarmfile = homePath + "/openjdk-17.0.2_linux-arm_bin.zip" const linjavaarmfile = homePath + "/openjdk-17.0.2_linux-arm_bin.zip"
const linjavaarmbindir = homePath + "/jdk-17.0.2/bin" const linjavaarmbindir = homePath + "/jdk-17.0.2/bin"
const linjavaarmbinfile = homePath + "/jdk-17.0.2/bin/java" const linjavaarmbinfile = homePath + "/jdk-17.0.2/bin/java"
const linjavaarm64url = "https://download.qortal.online/openjdk-17.0.2_linux-arm64_bin.zip" const linjavaarm64url = "https://download.qortal.online/openjdk-17.0.2_linux-arm64_bin.zip"
const linjavaarm64urlbackup = "https://cloud.qortal.org/s/t7Kk9ZpEAroFmg2/download/openjdk-17.0.2_linux-arm64_bin.zip"
const linjavaarm64file = homePath + "/openjdk-17.0.2_linux-arm64_bin.zip" const linjavaarm64file = homePath + "/openjdk-17.0.2_linux-arm64_bin.zip"
const linjavaarm64bindir = homePath + "/jdk-17.0.2/bin" const linjavaarm64bindir = homePath + "/jdk-17.0.2/bin"
const linjavaarm64binfile = homePath + "/jdk-17.0.2/bin/java" const linjavaarm64binfile = homePath + "/jdk-17.0.2/bin/java"
const macjavax64url = "https://download.qortal.online/openjdk-17.0.2_macos-x64_bin.zip" const macjavax64url = "https://download.qortal.online/openjdk-17.0.2_macos-x64_bin.zip"
const macjavax64urlbackup = "https://cloud.qortal.org/s/7t9d6xPfk8tsDxB/download/openjdk-17.0.2_macos-x64_bin.zip"
const macjavax64file = homePath + "/openjdk-17.0.2_macos-x64_bin.zip" const macjavax64file = homePath + "/openjdk-17.0.2_macos-x64_bin.zip"
const macjavax64bindir = homePath + "/jdk-17.0.2/Contents/Home/bin" const macjavax64bindir = homePath + "/jdk-17.0.2/Contents/Home/bin"
const macjavax64binfile = homePath + "/jdk-17.0.2/Contents/Home/bin/java" const macjavax64binfile = homePath + "/jdk-17.0.2/Contents/Home/bin/java"
const macjavaaarch64url = "https://download.qortal.online/openjdk-17.0.2_macos-aarch64_bin.zip" const macjavaaarch64url = "https://download.qortal.online/openjdk-17.0.2_macos-aarch64_bin.zip"
const macjavaaarch64urlbackup = "https://cloud.qortal.org/s/GRE3CGqMospwtZP/download/openjdk-17.0.2_macos-aarch64_bin.zip"
const macjavaaarch64file = homePath + "/openjdk-17.0.2_macos-aarch64_bin.zip" const macjavaaarch64file = homePath + "/openjdk-17.0.2_macos-aarch64_bin.zip"
const macjavaaarch64bindir = homePath + "/jdk-17.0.2/Contents/Home/bin" const macjavaaarch64bindir = homePath + "/jdk-17.0.2/Contents/Home/bin"
const macjavaaarch64binfile = homePath + "/jdk-17.0.2/Contents/Home/bin/java" const macjavaaarch64binfile = homePath + "/jdk-17.0.2/Contents/Home/bin/java"
@ -161,6 +167,18 @@ const isRunning = (query, cb) => {
}) })
} }
function doesFileExist(urlToJavaFile) {
var xhr = new XMLHttpRequest()
xhr.open('HEAD', urlToJavaFile, true)
xhr.send()
if (xhr.status == "404") {
return false
} else {
return true
}
}
async function checkWin() { async function checkWin() {
if (fs.existsSync(winjar)) { if (fs.existsSync(winjar)) {
isRunning('qortal.exe', (status) => { isRunning('qortal.exe', (status) => {
@ -405,6 +423,7 @@ async function installJava() {
if (process.platform === 'linux') { if (process.platform === 'linux') {
if (process.arch === 'x64') { if (process.arch === 'x64') {
if (doesFileExist(linjavax64url) == true) {
try { try {
splashLoader.show() splashLoader.show()
await electronDl.download(myWindow, linjavax64url, { await electronDl.download(myWindow, linjavax64url, {
@ -417,7 +436,22 @@ async function installJava() {
} }
splashLoader.destroy() splashLoader.destroy()
unzipJavaX64Linux() unzipJavaX64Linux()
} else {
try {
splashLoader.show()
await electronDl.download(myWindow, linjavax64urlbackup, {
directory: homePath,
onProgress: function () { log.info("Starting Download JAVA") }
})
} catch (err) {
splashLoader.destroy()
log.info('Download JAVA error', err)
}
splashLoader.destroy()
unzipJavaX64Linux()
}
} else if (process.arch === 'arm64') { } else if (process.arch === 'arm64') {
if (doesFileExist(linjavaarm64url) == true) {
try { try {
splashLoader.show() splashLoader.show()
await electronDl.download(myWindow, linjavaarm64url, { await electronDl.download(myWindow, linjavaarm64url, {
@ -430,7 +464,22 @@ async function installJava() {
} }
splashLoader.destroy() splashLoader.destroy()
unzipJavaArm64Linux() unzipJavaArm64Linux()
} else {
try {
splashLoader.show()
await electronDl.download(myWindow, linjavaarm64urlbackup, {
directory: homePath,
onProgress: function () { log.info("Starting Download JAVA") }
})
} catch (err) {
splashLoader.destroy()
log.info('Download JAVA error', err)
}
splashLoader.destroy()
unzipJavaArm64Linux()
}
} else if (process.arch === 'arm') { } else if (process.arch === 'arm') {
if (doesFileExist(linjavaarmurl) == true) {
try { try {
splashLoader.show() splashLoader.show()
await electronDl.download(myWindow, linjavaarmurl, { await electronDl.download(myWindow, linjavaarmurl, {
@ -443,9 +492,24 @@ async function installJava() {
} }
splashLoader.destroy() splashLoader.destroy()
unzipJavaArmLinux() unzipJavaArmLinux()
} else {
try {
splashLoader.show()
await electronDl.download(myWindow, linjavaarmurlbackup, {
directory: homePath,
onProgress: function () { log.info("Starting Download JAVA") }
})
} catch (err) {
splashLoader.destroy()
log.info('Download JAVA error', err)
}
splashLoader.destroy()
unzipJavaArmLinux()
}
} }
} else if (process.platform === 'darwin') { } else if (process.platform === 'darwin') {
if (process.arch === 'x64') { if (process.arch === 'x64') {
if (doesFileExist(macjavax64url) == true) {
try { try {
splashLoader.show() splashLoader.show()
await electronDl.download(myWindow, macjavax64url, { await electronDl.download(myWindow, macjavax64url, {
@ -459,6 +523,21 @@ async function installJava() {
splashLoader.destroy() splashLoader.destroy()
unzipJavaX64Mac() unzipJavaX64Mac()
} else { } else {
try {
splashLoader.show()
await electronDl.download(myWindow, macjavax64urlbackup, {
directory: homePath,
onProgress: function () { log.info("Starting Download JAVA") }
})
} catch (err) {
splashLoader.destroy()
log.info('Download JAVA error', err)
}
splashLoader.destroy()
unzipJavaX64Mac()
}
} else {
if (doesFileExist(macjavaaarch64url) == true) {
try { try {
splashLoader.show() splashLoader.show()
await electronDl.download(myWindow, macjavaaarch64url, { await electronDl.download(myWindow, macjavaaarch64url, {
@ -471,6 +550,20 @@ async function installJava() {
} }
splashLoader.destroy() splashLoader.destroy()
unzipJavaAarch64Mac() unzipJavaAarch64Mac()
} else {
try {
splashLoader.show()
await electronDl.download(myWindow, macjavaaarch64urlbackup, {
directory: homePath,
onProgress: function () { log.info("Starting Download JAVA") }
})
} catch (err) {
splashLoader.destroy()
log.info('Download JAVA error', err)
}
splashLoader.destroy()
unzipJavaAarch64Mac()
}
} }
} }
} }
@ -1260,5 +1353,4 @@ if (!isLock) {
process.on('uncaughtException', function (err) { process.on('uncaughtException', function (err) {
log.info("*** WHOOPS TIME ***" + err) log.info("*** WHOOPS TIME ***" + err)
}) })
} }
Loading…
Cancel
Save