Socket
Book a DemoInstallSign in
Socket

sys-uname

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sys-uname

1.4.1
bundlerRubygems
Version published
Maintainers
1
Created
Source

Ruby

Description

A cross-platform Ruby interface for getting operating system information. The name comes from the Unix 'uname' command, but this library works on MS Windows as well.

Prerequisites

ffi 1.0 or later

Installation

gem install sys-uname

Adding the trusted cert

gem cert --add <(curl -Ls https://raw.githubusercontent.com/djberg96/sys-uname/main/certs/djberg96_pub.pem)

Synopsis

require 'sys/uname' # require 'sys-uname' works, too

# You now have Sys::Uname and Sys::Platform classes available.
 
# Get full information about your system
p Sys::Uname.uname

# Check individual platform details about your system
p Sys::Platform.linux? # => true
p Sys::Platform::ARCH  # => :x86_64

Memoist Notes

As of version 1.4.0 most methods are memoized via the memoist gem since these values are unlikely to change during without a restart/reboot. As per the memoist documentation, you can force a cache flush if desired to refresh the values.

https://github.com/matthewrudy/memoist

BSD flavors, including OS X

Users on BSD platforms get the extra Uname.model method.

HP-UX Notes

HP-UX users get the extra Uname.id_number method. This is actually a String, not a Fixnum, because that's how it's defined in the utsname struct.

MS Windows Notes

The C version for Windows has been completely scrapped in favor of an OLE plus WMI approach. It is pure Ruby. Please see the MSDN documentation for the Win32_OperatingSystem class for a complete list of what each of the UnameStruct members mean.

The Platform Class

This was added both as a nicer way to check simple information about your system, and as a replacement for the old 'Platform' gem which is no longer maintained.

Future Plans

I may dump the "Uname" portion of this library, and rename the project to just sys-platform.

Documentation

For more details, see the 'uname.rdoc' file under the 'doc' directory.

FAQs

Package last updated on 01 Sep 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.