delano-sysinfo 0.5.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGES.txt +7 -0
- data/README.rdoc +61 -2
- data/Rakefile +1 -1
- data/bin/sysinfo +42 -2
- data/sysinfo.gemspec +2 -1
- metadata +12 -2
data/CHANGES.txt
CHANGED
@@ -1,6 +1,13 @@
|
|
1
1
|
SYSINFO, CHANGES
|
2
2
|
|
3
3
|
|
4
|
+
#### 0.6.0 (2009-06-09) ###############################
|
5
|
+
|
6
|
+
* CHANGE: "universal" mapped to "i386". Now: "x86_64"
|
7
|
+
* CHANGE: "x86" mapped to "386". Now: "x86"
|
8
|
+
* CHANGE: /i\d86/ mapped to "386". Now: "x86"
|
9
|
+
|
10
|
+
|
4
11
|
#### 0.5.1 (2009-05-07) ###############################
|
5
12
|
|
6
13
|
* CHANGE: Hella cleanup in preparation for future expansion.
|
data/README.rdoc
CHANGED
@@ -1,7 +1,66 @@
|
|
1
|
-
= SysInfo - v0.
|
1
|
+
= SysInfo - v0.6
|
2
2
|
|
3
3
|
All your system-independent infoz in one handy class.
|
4
4
|
|
5
|
+
SysInfo does a takes a very quick glance at the system it's running on and exposes the results as YAML, JSON, CSV, or TSV. It also determines a platform identifier for the system that takes the form: VM-OS-IMPLEMENTATION-ARCHITECTURE.
|
6
|
+
|
7
|
+
=== Platform Identifier Examples
|
8
|
+
|
9
|
+
ruby-unix-osx-i386
|
10
|
+
ruby-unix-osx-powerpc
|
11
|
+
ruby-unix-linux-x86_64
|
12
|
+
java-win32-windows-i386
|
13
|
+
java-win32-mingw-i386
|
14
|
+
|
15
|
+
For the complete list of operating systems, implementations and architectures that SysInfo is aware of, see:
|
16
|
+
|
17
|
+
* <tt>$ sysinfo os</tt>
|
18
|
+
* <tt>$ sysinfo impl</tt>
|
19
|
+
* <tt>$ sysinfo arch</tt>
|
20
|
+
|
21
|
+
== Usage -- Library
|
22
|
+
|
23
|
+
sysinfo = SysInfo.new
|
24
|
+
p sysinfo.vm # => ruby
|
25
|
+
p sysinfo.os # => unix
|
26
|
+
p sysinfo.impl # => osx
|
27
|
+
p sysinfo.arch # => i386
|
28
|
+
p sysinfo.platform # => ruby-unix
|
29
|
+
p sysinfo.to_s # => ruby-unix-osx-i386
|
30
|
+
|
31
|
+
p sysinfo.user # => delano
|
32
|
+
p sysinfo.home # => /Users/delano
|
33
|
+
p sysinfo.uptime # => 290.429 (hours)
|
34
|
+
p sysinfo.shell # => /bin/bash
|
35
|
+
p sysinfo.paths # => [/sbin, /bin, /usr/bin, ...]
|
36
|
+
|
37
|
+
p sysinfo.hostname # => walter
|
38
|
+
p sysinfo.ipaddress_internal # => 10.0.1.2
|
39
|
+
p sysinfo.uptime # => 290.573655656974
|
40
|
+
p sysinfo.ruby # => [1,9,1]
|
41
|
+
|
42
|
+
== Usage -- Executable
|
43
|
+
|
44
|
+
$ sysinfo
|
45
|
+
ruby-unix-osx-i386
|
46
|
+
|
47
|
+
$ /usr/jruby/bin/sysinfo
|
48
|
+
java-unix-osx-x86_64
|
49
|
+
|
50
|
+
$ sysinfo -f yaml
|
51
|
+
:vm: :ruby
|
52
|
+
:os: :unix
|
53
|
+
:impl: :osx
|
54
|
+
...
|
55
|
+
:shell: :"/bin/bash"
|
56
|
+
:user: delano
|
57
|
+
|
58
|
+
$ sysinfo -f json
|
59
|
+
{"vm":"ruby","os":"unix","impl":"osx", ..., "shell":"\/bin\/bash","user":"delano"}
|
60
|
+
|
61
|
+
$ sysinfo -f csv
|
62
|
+
ruby,unix,osx, ... /bin/bash,delano
|
63
|
+
|
5
64
|
== Installation
|
6
65
|
|
7
66
|
Via Rubygems, one of:
|
@@ -12,7 +71,7 @@ Via Rubygems, one of:
|
|
12
71
|
or via download:
|
13
72
|
* sysinfo-latest.tar.gz[http://github.com/delano/sysinfo/tarball/latest]
|
14
73
|
* sysinfo-latest.zip[http://github.com/delano/sysinfo/zipball/latest]
|
15
|
-
|
74
|
+
|
16
75
|
== Prerequisites
|
17
76
|
|
18
77
|
* Ruby 1.8, Ruby 1.9, or JRuby 1.2
|
data/Rakefile
CHANGED
data/bin/sysinfo
CHANGED
@@ -14,7 +14,7 @@ require 'rubygems'
|
|
14
14
|
require 'drydock'
|
15
15
|
require 'sysinfo'
|
16
16
|
|
17
|
-
module SysInfoCLI
|
17
|
+
module SysInfoCLI #:nodoc:
|
18
18
|
extend Drydock
|
19
19
|
|
20
20
|
debug :off
|
@@ -27,6 +27,7 @@ module SysInfoCLI
|
|
27
27
|
exit 0
|
28
28
|
end
|
29
29
|
|
30
|
+
about "Display system information"
|
30
31
|
command :info do |obj|
|
31
32
|
format = obj.global.format || :string
|
32
33
|
format = :yaml if obj.global.verbose == true
|
@@ -34,4 +35,43 @@ module SysInfoCLI
|
|
34
35
|
puts si.dump(format)
|
35
36
|
end
|
36
37
|
|
37
|
-
|
38
|
+
about "Display list of known architectures"
|
39
|
+
command :arch do |obj|
|
40
|
+
arch = SysInfo::ARCHITECTURES.collect { |arch|
|
41
|
+
next if arch[0].nil?
|
42
|
+
obj.global.verbose == true ? "%-15s -> %s" % [arch[1], arch[0].source] : arch[1]
|
43
|
+
}
|
44
|
+
puts arch.compact
|
45
|
+
end
|
46
|
+
command_alias :arch, :architectures
|
47
|
+
|
48
|
+
about "Display list of known OS implementations"
|
49
|
+
command :impl do |obj|
|
50
|
+
reorg = {}
|
51
|
+
SysInfo::IMPLEMENTATIONS.each do |arch|
|
52
|
+
next if arch[0].nil?
|
53
|
+
reorg.store(arch[2].to_s, arch[0])
|
54
|
+
end
|
55
|
+
impl = reorg.keys.sort.collect do |key|
|
56
|
+
obj.global.verbose == true ? "%-15s -> %s" % [key, reorg[key].source] : key
|
57
|
+
end
|
58
|
+
puts impl.compact.uniq
|
59
|
+
end
|
60
|
+
command_alias :impl, :implementations
|
61
|
+
|
62
|
+
about "Display list of known operating systems (OS)"
|
63
|
+
command :os do |obj|
|
64
|
+
reorg = {}
|
65
|
+
SysInfo::IMPLEMENTATIONS.each do |arch|
|
66
|
+
next if arch[0].nil?
|
67
|
+
reorg.store(arch[1].to_s, arch[0])
|
68
|
+
end
|
69
|
+
impl = reorg.keys.sort.collect do |key|
|
70
|
+
obj.global.verbose == true ? "%-15s -> %s" % [key, reorg[key].source] : key
|
71
|
+
end
|
72
|
+
puts impl.compact.uniq
|
73
|
+
end
|
74
|
+
|
75
|
+
end
|
76
|
+
|
77
|
+
|
data/sysinfo.gemspec
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
@spec = Gem::Specification.new do |s|
|
2
2
|
s.name = "sysinfo"
|
3
3
|
s.rubyforge_project = "sysinfo"
|
4
|
-
s.version = "0.
|
4
|
+
s.version = "0.6.0"
|
5
5
|
s.summary = "SysInfo: All your system-independent infoz in one handy class. "
|
6
6
|
s.description = s.summary
|
7
7
|
s.author = "Delano Mandelbaum"
|
@@ -17,6 +17,7 @@
|
|
17
17
|
# = DEPENDENCIES =
|
18
18
|
# Add all gem dependencies
|
19
19
|
s.add_dependency 'storable', '>= 0.5.1'
|
20
|
+
s.add_dependency 'drydock', '>= 0.6.3'
|
20
21
|
|
21
22
|
# = MANIFEST =
|
22
23
|
# The complete list of files to be included in the release. When GitHub packages your gem,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: delano-sysinfo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Delano Mandelbaum
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-05-16 00:00:00 -07:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -22,6 +22,16 @@ dependencies:
|
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: 0.5.1
|
24
24
|
version:
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: drydock
|
27
|
+
type: :runtime
|
28
|
+
version_requirement:
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.6.3
|
34
|
+
version:
|
25
35
|
- !ruby/object:Gem::Dependency
|
26
36
|
name: RedCloth
|
27
37
|
type: :runtime
|