Module: Chromedriver::Binary::Platform
- Included in:
- ChromedriverDownloader, Finder
- Defined in:
- lib/chromedriver/binary/platform.rb
Instance Method Summary collapse
- #driver_filename ⇒ Object
- #file_name ⇒ Object
- #linux_arm64? ⇒ Boolean
- #platform ⇒ Object
- #platform_id ⇒ Object
Instance Method Details
#driver_filename ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/chromedriver/binary/platform.rb', line 42 def driver_filename platform = platform_id case platform when "win32" "win32" when "linux64" "linux64" when "mac64" # If you're on an Apple Silicon Mac, check Ruby platform for arm details. if RUBY_PLATFORM.include?("arm64-darwin") "mac-arm64" else "mac-x64" end else raise "Failed to determine driver filename to download for your OS." end end |
#file_name ⇒ Object
38 39 40 |
# File 'lib/chromedriver/binary/platform.rb', line 38 def file_name platform_id == "win32" ? "chromedriver.exe" : "chromedriver" end |
#linux_arm64? ⇒ Boolean
33 34 35 36 |
# File 'lib/chromedriver/binary/platform.rb', line 33 def linux_arm64? RbConfig::CONFIG["host_os"].downcase.include?("linux") && RbConfig::CONFIG["host_cpu"].downcase.include?("aarch64") end |
#platform ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/chromedriver/binary/platform.rb', line 8 def platform case RbConfig::CONFIG["host_os"].downcase when /linux/ then "linux" when /darwin/ then "mac" when /mswin|msys|mingw|cygwin|bccwin|wince|emc/ then "win" else raise NotImplementedError, "Your OS is not supported by this gem." end end |
#platform_id ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/chromedriver/binary/platform.rb', line 18 def platform_id case platform when /mac/ "mac64" when /linux/ if File.exist?("/proc/version") && File.read("/proc/version").include?("Microsoft") "win32" else "linux64" end when /win/ "win32" end end |