pipark 0.3.0 → 0.4.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.
- checksums.yaml +4 -4
- data/lib/pipark/host.rb +40 -1
- data/lib/pipark/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2ef25701d6f7c1331843542c55035b9be6818e714f5a60da446d12f36b7334ff
|
4
|
+
data.tar.gz: 0fe78b693ccf16beb4009a77e93b27c0402ea6947bfef8a69920ad30ac62e524
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 398e4add97a1605f39191559ab9bdaf161dcfd9545001e539f347b641f93b88c74c50d955ce620c6bc5a502cca97fd29a1ea7191fd8b49d4204a1ea72e1d6f94
|
7
|
+
data.tar.gz: '092a6468c752956b9c929ceca6e77a1945229fae1412e5da72c81b9165059853a01ab211d74b5496141070f10db7eec7cd542f3340d29b57661d853545cafb39'
|
data/lib/pipark/host.rb
CHANGED
@@ -94,9 +94,41 @@ module Pipark
|
|
94
94
|
end
|
95
95
|
end
|
96
96
|
|
97
|
+
# Experimental: returns the status of the host's LEDs.
|
98
|
+
#
|
99
|
+
# Only supported for localhost.
|
100
|
+
def leds
|
101
|
+
dir = '/sys/class/leds'
|
102
|
+
if localhost?
|
103
|
+
Dir[dir + '/led[0-9]'].map do |f|
|
104
|
+
if f.match(dir + '/(led\d)')
|
105
|
+
[ $1, get_led_status($1).first ]
|
106
|
+
end
|
107
|
+
end.to_h
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
# Experimental: returns info for the installed HAT, or false if no HAT is found.
|
112
|
+
#
|
113
|
+
# Only supported for localhost.
|
114
|
+
def hat
|
115
|
+
if localhost?
|
116
|
+
dir = '/sys/firmware/devicetree/base/hat'
|
117
|
+
if File.exist? dir
|
118
|
+
%w(product vendor).map do |k|
|
119
|
+
file = "#{dir}/#{k}"
|
120
|
+
[ k, File.readable?(file) ? File.read(file).chop : nil ]
|
121
|
+
end.to_h
|
122
|
+
else
|
123
|
+
false
|
124
|
+
end
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
97
128
|
# Returns the host's state.
|
98
129
|
def state
|
99
|
-
|
130
|
+
result = { 'update_time' => Time.now.gmtime }
|
131
|
+
result.merge %w(
|
100
132
|
address hostname model serial_number
|
101
133
|
os_release boot_time
|
102
134
|
ruby
|
@@ -126,6 +158,13 @@ module Pipark
|
|
126
158
|
end
|
127
159
|
end
|
128
160
|
|
161
|
+
def get_led_status(led)
|
162
|
+
file = "/sys/class/leds/#{led}/trigger"
|
163
|
+
if File.readable? file
|
164
|
+
[ File.read(file).sub(/\[(.*)\]/, '\1').split, $1 ].reverse
|
165
|
+
end
|
166
|
+
end
|
167
|
+
|
129
168
|
def _view_21x8
|
130
169
|
view = 'RPi ' + hostname.rjust(17) + "\n\n"
|
131
170
|
view << os_release['NAME'].center(21) + "\n"
|
data/lib/pipark/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pipark
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- lllist.eu
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-26 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description:
|
14
14
|
email:
|