I’m wondering if there’s a straightforward way to get runtime system and architecture in Crystal?
Like runtime.GOOS
and runtime.GOARCH
in Go.
Maybe like but at runtime:
os = arch = ""
{% if flag?(:linux) %}
os = "linux"
{% elsif flag?(:windows) %}
os = "windows"
{% elsif flag?(:darwin) %}
os = "darwin"
{% elsif flag?(:freebsd) %}
os = "freebsd"
...
{% else %}
os = "unknown"
{% end %}
{% if flag?(:x86_64) %}
arch = "amd64"
{% elsif flag?(:aarch64) %}
arch = "arm64"
...
{% else %}
arch = "unknown"
{% end %}
puts "os: #{os}, arch: #{arch}"