diff --git a/scripts/release-checksums.rb b/scripts/release-checksums.rb index 4aa295389c..ee0a6398c1 100644 --- a/scripts/release-checksums.rb +++ b/scripts/release-checksums.rb @@ -1,9 +1,10 @@ #!/usr/bin/env ruby -# curl and sha256sum are required to run this. +require "open-uri" +require "digest" tag = ARGV[0] -puts "Generate release checksums for #{tag}, this could take a while..." +puts "Generating release checksums for #{tag}, this could take a while..." windows_exe = "https://github.com/nervosnetwork/neuron/releases/download/#{tag}/Neuron-#{tag}-win-installer.exe" macos_zip = "https://github.com/nervosnetwork/neuron/releases/download/#{tag}/Neuron-#{tag}-mac.zip" @@ -11,13 +12,13 @@ linux_appimage = "https://github.com/nervosnetwork/neuron/releases/download/#{tag}/Neuron-#{tag}-linux-x86_64.AppImage" def get_sha256_checksum(url) - %x(curl -L #{url} | sha256sum).split(" ").first + content = open(url).read + Digest::SHA256.hexdigest(content) end -windows_exe_sha256 = get_sha256_checksum(windows_exe) -macos_zip_sha256 = get_sha256_checksum(macos_zip) -macos_dmg_sha256 = get_sha256_checksum(macos_dmg) -linux_appimage_sha256 = get_sha256_checksum(linux_appimage) +windows_exe_sha256, macos_zip_sha256, macos_dmg_sha256, linux_appimage_sha256 = [windows_exe, macos_zip, macos_dmg, linux_appimage].map do |url| + Thread.new { get_sha256_checksum(url) } +end.map(&:value) checksums = %( ### Downloads