module Jekyll::Utils::Platforms
Public Instance Methods
Source
# File lib/jekyll/utils/platforms.rb, line 27 def bash_on_windows? linux_os? && microsoft_proc_version? end
Determine if Windows Subsystem for Linux (WSL)
Source
# File lib/jekyll/utils/platforms.rb, line 31 def linux? linux_os? && !microsoft_proc_version? end
Source
# File lib/jekyll/utils/platforms.rb, line 35 def osx? rbconfig_host.match?(%r!darwin|mac os!) end
Source
# File lib/jekyll/utils/platforms.rb, line 39 def unix? rbconfig_host.match?(%r!solaris|bsd!) end
Source
# File lib/jekyll/utils/platforms.rb, line 21 def vanilla_windows? rbconfig_host.match?(%r!mswin|mingw|cygwin!) && proc_version.empty? end
Not a Windows Subsystem for Linux (WSL)
Also aliased as: really_windows?
Source
# File lib/jekyll/utils/platforms.rb, line 16 def windows? vanilla_windows? || bash_on_windows? end
Private Instance Methods
Source
# File lib/jekyll/utils/platforms.rb, line 58 def linux_os? rbconfig_host.include?("linux") end
Source
# File lib/jekyll/utils/platforms.rb, line 62 def microsoft_proc_version? proc_version.include?("microsoft") end
Source
# File lib/jekyll/utils/platforms.rb, line 45 def proc_version @proc_version ||= \ begin File.read("/proc/version").downcase rescue Errno::ENOENT, Errno::EACCES "" end end
Source
# File lib/jekyll/utils/platforms.rb, line 54 def rbconfig_host @rbconfig_host ||= RbConfig::CONFIG["host_os"].downcase end