remove unofficial wallet rpcs binaries
This commit is contained in:
parent
492e48899d
commit
a3159e23c8
1 changed files with 0 additions and 116 deletions
116
build.gradle
116
build.gradle
|
@ -453,122 +453,6 @@ configure(project(':core')) {
|
|||
classpath = sourceSets.main.runtimeClasspath
|
||||
}
|
||||
|
||||
task havenoDeps {
|
||||
doLast {
|
||||
// get monero binaries download url
|
||||
Map moneroBinaries = [
|
||||
'linux-x86_64' : 'https://github.com/haveno-dex/monero/releases/download/release4/monero-bins-haveno-linux-x86_64.tar.gz',
|
||||
'linux-x86_64-sha256' : '0810808292fd5ad595a46a7fcc8ecb28d251d80f8d75c0e7a7d51afbeb413b68',
|
||||
'linux-aarch64' : 'https://github.com/haveno-dex/monero/releases/download/release4/monero-bins-haveno-linux-aarch64.tar.gz',
|
||||
'linux-aarch64-sha256' : '61222ee8e2021aaf59ab8813543afc5548f484190ee9360bc9cfa8fdf21cc1de',
|
||||
'mac' : 'https://github.com/haveno-dex/monero/releases/download/release4/monero-bins-haveno-mac.tar.gz',
|
||||
'mac-sha256' : '5debb8d8d8dd63809e8351368a11aa85c47987f1a8a8f2dcca343e60bcff3287',
|
||||
'windows' : 'https://github.com/haveno-dex/monero/releases/download/release4/monero-bins-haveno-windows.zip',
|
||||
'windows-sha256' : 'd7c14f029db37ae2a8bc6b74c35f572283257df5fbcc8cc97b704d1a97be9888'
|
||||
]
|
||||
|
||||
String osKey
|
||||
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
|
||||
osKey = 'windows'
|
||||
} else if (Os.isFamily(Os.FAMILY_MAC)) {
|
||||
osKey = 'mac'
|
||||
} else {
|
||||
String architecture = System.getProperty("os.arch").toLowerCase()
|
||||
if (architecture.contains('aarch64') || architecture.contains('arm')) {
|
||||
osKey = 'linux-aarch64'
|
||||
} else {
|
||||
osKey = 'linux-x86_64'
|
||||
}
|
||||
}
|
||||
|
||||
String moneroDownloadUrl = moneroBinaries[osKey]
|
||||
String moneroSHA256Hash = moneroBinaries[osKey + '-sha256']
|
||||
String moneroArchiveFileName = moneroDownloadUrl.tokenize('/').last()
|
||||
String localnetDirName = '.localnet'
|
||||
File localnetDir = new File(project.rootDir, localnetDirName)
|
||||
localnetDir.mkdirs()
|
||||
File moneroArchiveFile = new File(localnetDir, moneroArchiveFileName)
|
||||
ext.downloadAndVerifyDependencies(moneroDownloadUrl, moneroSHA256Hash, moneroArchiveFile)
|
||||
|
||||
// extract if dependencies are missing or if archive was updated
|
||||
File monerodFile
|
||||
File moneroRpcFile
|
||||
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
|
||||
monerodFile = new File(localnetDir, 'monerod.exe')
|
||||
moneroRpcFile = new File(localnetDir, 'monero-wallet-rpc.exe')
|
||||
} else {
|
||||
monerodFile = new File(localnetDir, 'monerod')
|
||||
moneroRpcFile = new File(localnetDir, 'monero-wallet-rpc')
|
||||
}
|
||||
if (ext.dependencyDownloadedAndVerified || !monerodFile.exists() || !moneroRpcFile.exists()) {
|
||||
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
|
||||
ext.extractArchiveZip(moneroArchiveFile, localnetDir)
|
||||
} else {
|
||||
ext.extractArchiveTarGz(moneroArchiveFile, localnetDir)
|
||||
}
|
||||
|
||||
// add the current platform's monero dependencies into the resources folder for installation
|
||||
copy {
|
||||
from "${monerodFile}"
|
||||
into "${project(':core').projectDir}/src/main/resources/bin"
|
||||
}
|
||||
copy {
|
||||
from "${moneroRpcFile}"
|
||||
into "${project(':core').projectDir}/src/main/resources/bin"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ext.extractArchiveTarGz = { File tarGzFile, File destinationDir ->
|
||||
println "Extracting tar.gz ${tarGzFile}"
|
||||
// Gradle's tar extraction preserves permissions (crucial for jpackage to function correctly)
|
||||
copy {
|
||||
from tarTree(resources.gzip(tarGzFile))
|
||||
into destinationDir
|
||||
}
|
||||
println "Extracted to ${destinationDir}"
|
||||
}
|
||||
|
||||
ext.extractArchiveZip = { File zipFile, File destinationDir ->
|
||||
println "Extracting zip ${zipFile}..."
|
||||
ant.unzip(src: zipFile, dest: destinationDir)
|
||||
println "Extracted to ${destinationDir}"
|
||||
}
|
||||
|
||||
ext.downloadAndVerifyDependencies = { String archiveURL, String archiveSHA256, File destinationArchiveFile ->
|
||||
ext.dependencyDownloadedAndVerified = false
|
||||
|
||||
// if archive exists, check to see if its already up to date
|
||||
if (destinationArchiveFile.exists()) {
|
||||
println "Verifying existing archive ${destinationArchiveFile}"
|
||||
ant.archiveHash = archiveSHA256
|
||||
ant.checksum(file: destinationArchiveFile, algorithm: 'SHA-256', property: '${archiveHash}', verifyProperty: 'existingHashMatches')
|
||||
if (ant.properties['existingHashMatches'] != 'true') {
|
||||
println "Existing archive does not match hash ${archiveSHA256}"
|
||||
} else {
|
||||
println "Existing archive matches hash"
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// download archives
|
||||
println "Downloading ${archiveURL}"
|
||||
ant.get(src: archiveURL, dest: destinationArchiveFile)
|
||||
println 'Download saved to ' + destinationArchiveFile
|
||||
|
||||
// verify checksum
|
||||
println 'Verifying checksum for downloaded binary ...'
|
||||
ant.archiveHash = archiveSHA256
|
||||
ant.checksum(file: destinationArchiveFile, algorithm: 'SHA-256', property: '${archiveHash}', verifyProperty: 'downloadedHashMatches') // use a different verifyProperty name from existing verification or it will always fail
|
||||
if (ant.properties['downloadedHashMatches'] != 'true') {
|
||||
ant.fail('Checksum mismatch: Downloaded archive has a different checksum than expected')
|
||||
}
|
||||
println 'Checksum verified'
|
||||
ext.dependencyDownloadedAndVerified = true
|
||||
}
|
||||
}
|
||||
|
||||
processResources.dependsOn havenoDeps // before both test and build
|
||||
}
|
||||
|
||||
configure(project(':cli')) {
|
||||
|
|
Loading…
Reference in a new issue