author | bewitche |
Thu, 22 Nov 2007 07:11:07 +0000 | |
changeset 11231 | 0079405625d1 |
parent 9332 | 54fcb5f27e0e |
permissions | -rw-r--r-- |
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
1 |
diff -Nrup gDesklets-0.36beta/configure.in gDesklets-0.36/configure.in |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
2 |
--- gDesklets-0.36beta/configure.in 2007-10-04 19:22:08.000000000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
3 |
+++ gDesklets-0.36/configure.in 2007-10-08 13:13:10.232393000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
4 |
@@ -125,6 +125,7 @@ libdesklets/system/Linux/Makefile |
9174 | 5 |
libdesklets/system/Makefile |
6 |
libdesklets/system/NetBSD/Makefile |
|
7 |
libdesklets/system/OpenBSD/Makefile |
|
8 |
+libdesklets/system/Solaris/Makefile |
|
9 |
main/Makefile |
|
10 |
plugin/Makefile |
|
11 |
po/Makefile.in |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
12 |
diff -Nrup gDesklets-0.36beta/libdesklets/system/Makefile.am gDesklets-0.36/libdesklets/system/Makefile.am |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
13 |
--- gDesklets-0.36beta/libdesklets/system/Makefile.am 2007-10-04 19:22:11.000000000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
14 |
+++ gDesklets-0.36/libdesklets/system/Makefile.am 2007-10-08 13:12:22.576595000 +0800 |
9332 | 15 |
@@ -20,7 +20,8 @@ SUBDIRS = \ |
9174 | 16 |
Linux \ |
17 |
FreeBSD \ |
|
18 |
NetBSD \ |
|
9332 | 19 |
- OpenBSD |
20 |
+ OpenBSD \ |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
21 |
+ Solaris |
9174 | 22 |
|
23 |
||
9332 | 24 |
gtop_la_LDFLAGS = -module -avoid-version -as-needed |
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
25 |
diff -Nrup gDesklets-0.36beta/libdesklets/system/Solaris/Generic.py gDesklets-0.36/libdesklets/system/Solaris/Generic.py |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
26 |
--- gDesklets-0.36beta/libdesklets/system/Solaris/Generic.py 1970-01-01 08:00:00.000000000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
27 |
+++ gDesklets-0.36/libdesklets/system/Solaris/Generic.py 2007-10-08 13:14:07.732202000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
28 |
@@ -0,0 +1,54 @@ |
9174 | 29 |
+from libdesklets.system.Arch import Arch |
30 |
+ |
|
31 |
+import re |
|
32 |
+import struct |
|
33 |
+import os |
|
34 |
+ |
|
35 |
+class Generic(Arch): |
|
36 |
+ |
|
37 |
+ def __init__(self): |
|
38 |
+ |
|
39 |
+ Arch.__init__(self) |
|
40 |
+ |
|
41 |
+ self.__bogomips = re.compile('^bogomips\s+:\s+(\d+\.\d+)$', re.M) |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
42 |
+ self.__net_devices = re.compile('^\s*(\w+):.*mtu', re.M).findall(os.popen('/usr/sbin/ifconfig -a').read()) |
9174 | 43 |
+ |
44 |
+ |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
45 |
+ |
9174 | 46 |
+ def net_devices(self): |
47 |
+ """ |
|
48 |
+ @return : all available network devices |
|
49 |
+ @rtype : list |
|
50 |
+ """ |
|
51 |
+ |
|
9331 | 52 |
+ return self.__net_devices |
9174 | 53 |
+ |
54 |
+ |
|
55 |
+ |
|
56 |
+ def cpu_bogomips(self): |
|
57 |
+ """ |
|
58 |
+ @return : bogomips of installed processor |
|
59 |
+ @rtype : float |
|
60 |
+ """ |
|
61 |
+ |
|
9331 | 62 |
+ return float(5000) |
9174 | 63 |
+ |
64 |
+ |
|
65 |
+ |
|
66 |
+ def users(self): |
|
67 |
+ """ |
|
68 |
+ @return : number of connected users |
|
69 |
+ @rtype : int |
|
70 |
+ """ |
|
71 |
+ |
|
72 |
+ count = 0 |
|
73 |
+ data = open('/var/adm/utmpx', 'rb').read() |
|
74 |
+ |
|
75 |
+ for i in range(0, len(data), 384): |
|
76 |
+ ut_type = struct.unpack('h', data[i:i+2])[0] |
|
77 |
+ |
|
78 |
+ if (ut_type == 7): |
|
79 |
+ count += 1 |
|
80 |
+ |
|
81 |
+ return count |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
82 |
+ |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
83 |
diff -Nrup gDesklets-0.36beta/libdesklets/system/Solaris/Makefile.am gDesklets-0.36/libdesklets/system/Solaris/Makefile.am |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
84 |
--- gDesklets-0.36beta/libdesklets/system/Solaris/Makefile.am 1970-01-01 08:00:00.000000000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
85 |
+++ gDesklets-0.36/libdesklets/system/Solaris/Makefile.am 2007-10-08 13:14:07.732326000 +0800 |
9174 | 86 |
@@ -0,0 +1,11 @@ |
87 |
+installdir = ${coredir}/libdesklets/system/Solaris |
|
88 |
+ |
|
89 |
+install_DATA = \ |
|
90 |
+ __init__.py \ |
|
91 |
+ Generic.py \ |
|
92 |
+ Sparc.py \ |
|
93 |
+ X86.py |
|
94 |
+ |
|
95 |
+EXTRA_DIST = $(install_DATA) |
|
96 |
+install_PYTHON = $(install_DATA) |
|
97 |
+CLEANFILES = *.pyc |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
98 |
diff -Nrup gDesklets-0.36beta/libdesklets/system/Solaris/Sparc.py gDesklets-0.36/libdesklets/system/Solaris/Sparc.py |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
99 |
--- gDesklets-0.36beta/libdesklets/system/Solaris/Sparc.py 1970-01-01 08:00:00.000000000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
100 |
+++ gDesklets-0.36/libdesklets/system/Solaris/Sparc.py 2007-10-08 13:14:07.732468000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
101 |
@@ -0,0 +1,68 @@ |
9174 | 102 |
+from Generic import Generic |
103 |
+ |
|
104 |
+import os |
|
105 |
+import re |
|
106 |
+ |
|
107 |
+ |
|
108 |
+class Sparc(Generic): |
|
109 |
+ |
|
110 |
+ def __init__(self): |
|
111 |
+ |
|
112 |
+ Generic.__init__(self) |
|
113 |
+ |
|
114 |
+ def _get_model(): |
|
115 |
+ r = re.compile('brand\s+(.+)$', re.M) |
|
116 |
+ m = r.findall( self._read_cpuinfo() ) |
|
117 |
+ return m[0] |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
118 |
+ |
9174 | 119 |
+ def _get_cache(): |
9331 | 120 |
+ r = re.compile('^\s+ecache-size:+\s+(.+)$',re.M) |
121 |
+ m = r.findall(os.popen('/usr/sbin/prtconf -vp').read()) |
|
122 |
+ m_int = int(m[0],16) |
|
123 |
+ return int(round(m_int/1000)) |
|
124 |
+ |
|
125 |
+ def _read_cpu_speed(): |
|
126 |
+ r = re.compile('clock_MHz\s+(\d+)$', re.M) |
|
127 |
+ m = r.findall(self._read_cpuinfo()) |
|
128 |
+ return float(int(m[0])) |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
129 |
+ |
9174 | 130 |
+ # CPU model and cache size never changes |
131 |
+ self.__model_name = _get_model() |
|
132 |
+ self.__cache_size = _get_cache() |
|
133 |
+ |
|
134 |
+ # the cpu speed might change (laptops have mobile CPUs) |
|
9331 | 135 |
+ self.__speed = _read_cpu_speed() |
9174 | 136 |
+ |
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
137 |
+ |
9331 | 138 |
+ def _read_cpuinfo(self): |
139 |
+ """ |
|
140 |
+ @return : content of cpu_info |
|
141 |
+ @rtype : str |
|
142 |
+ """ |
|
143 |
+ return os.popen('/usr/bin/kstat cpu_info').read() |
|
9174 | 144 |
+ |
145 |
+ def cpu_speed(self): |
|
146 |
+ """ |
|
147 |
+ @return : current clock of installed processor |
|
148 |
+ @rtype : float |
|
149 |
+ """ |
|
150 |
+ |
|
9331 | 151 |
+ return self.__speed |
9174 | 152 |
+ |
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
153 |
+ |
9331 | 154 |
+ def cpu_cache(self): |
155 |
+ """ |
|
156 |
+ @return : 2nd level cache of installed processor |
|
157 |
+ @rtype : int |
|
158 |
+ """ |
|
159 |
+ |
|
160 |
+ return self.__cache_size |
|
161 |
+ |
|
9174 | 162 |
+ |
163 |
+ def cpu_model(self): |
|
164 |
+ """ |
|
165 |
+ @return : model/type of installed processor |
|
166 |
+ @rtype : str |
|
167 |
+ """ |
|
168 |
+ |
|
169 |
+ return self.__model_name |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
170 |
diff -Nrup gDesklets-0.36beta/libdesklets/system/Solaris/X86.py gDesklets-0.36/libdesklets/system/Solaris/X86.py |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
171 |
--- gDesklets-0.36beta/libdesklets/system/Solaris/X86.py 1970-01-01 08:00:00.000000000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
172 |
+++ gDesklets-0.36/libdesklets/system/Solaris/X86.py 2007-10-08 13:14:07.732611000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
173 |
@@ -0,0 +1,86 @@ |
9174 | 174 |
+from Generic import Generic |
175 |
+ |
|
176 |
+import re |
|
177 |
+import struct |
|
178 |
+import os |
|
179 |
+ |
|
180 |
+# Also works for x86_64 |
|
181 |
+# it seems that there's no difference |
|
182 |
+ |
|
183 |
+class X86(Generic): |
|
184 |
+ |
|
185 |
+ def __init__(self): |
|
186 |
+ |
|
187 |
+ Generic.__init__(self) |
|
188 |
+ |
|
189 |
+ def _get_model(): |
|
190 |
+ r = re.compile('^.*brand-string.*\n\s+value=(.+)$', re.M) |
|
191 |
+ m = r.findall( self._read_cpuinfo() ) |
|
192 |
+ return m[0] |
|
193 |
+ |
|
194 |
+ def _get_cache(): |
|
195 |
+ r = re.compile('^.*l2-cache-size.*\n\s+value=(.+)$', re.M) |
|
196 |
+ m = r.findall( self._read_cpuinfo()) |
|
197 |
+ m_int = int(m[0],16) |
|
198 |
+ return int(round(m_int/1000)) |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
199 |
+ |
9331 | 200 |
+ def _read_cpu_speed(): |
201 |
+ r = re.compile('^.*cpu-mhz.*\n\s+value=(.+)$', re.M) |
|
202 |
+ m = r.findall(self._read_cpuinfo()) |
|
203 |
+ return float(int(m[0],16)) |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
204 |
+ |
9174 | 205 |
+ # CPU model and cache size never changes |
206 |
+ self.__model_name = _get_model() |
|
207 |
+ self.__cache_size = _get_cache() |
|
208 |
+ |
|
209 |
+ # the cpu speed might change (laptops have mobile CPUs) |
|
9331 | 210 |
+ self.__speed = _read_cpu_speed() |
211 |
+ |
|
9174 | 212 |
+ |
213 |
+ def _read_cpuinfo(self): |
|
214 |
+ """ |
|
215 |
+ @return : content of cpu_info |
|
216 |
+ @rtype : str |
|
217 |
+ """ |
|
218 |
+ return os.popen('/usr/sbin/prtconf -v').read() |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
219 |
+ |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
220 |
+ |
9174 | 221 |
+ def cpu_cache(self): |
222 |
+ """ |
|
223 |
+ @return : 2nd level cache of installed processor |
|
224 |
+ @rtype : int |
|
225 |
+ """ |
|
226 |
+ |
|
227 |
+ return self.__cache_size |
|
228 |
+ |
|
229 |
+ |
|
230 |
+ def cpu_model(self): |
|
231 |
+ """ |
|
232 |
+ @return : model/type of installed processor |
|
233 |
+ @rtype : str |
|
234 |
+ """ |
|
235 |
+ |
|
236 |
+ return self.__model_name |
|
237 |
+ |
|
238 |
+ |
|
239 |
+ def cpu_speed(self): |
|
240 |
+ """ |
|
241 |
+ @return : current clock of installed processor |
|
242 |
+ @rtype : float |
|
243 |
+ """ |
|
9331 | 244 |
+ return self.__speed |
9174 | 245 |
+ |
246 |
+ |
|
247 |
+ def users(self): |
|
248 |
+ |
|
249 |
+ count = 0 |
|
250 |
+ data = open('/var/adm/utmpx', 'rb').read() |
|
251 |
+ |
|
252 |
+ for i in range(0, len(data), 384): |
|
253 |
+ ut_type = struct.unpack('h', data[i:i+2])[0] |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
254 |
+ |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
255 |
+ if (ut_type == 7): |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
256 |
+ count += 1 |
9174 | 257 |
+ |
258 |
+ return count |
|
259 |
+ |
|
11231
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
260 |
diff -Nrup gDesklets-0.36beta/libdesklets/system/Solaris/__init__.py gDesklets-0.36/libdesklets/system/Solaris/__init__.py |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
261 |
--- gDesklets-0.36beta/libdesklets/system/Solaris/__init__.py 1970-01-01 08:00:00.000000000 +0800 |
0079405625d1
Revised gdesklets 01,02,08 patches as we updated to gdesklets 0.36beta tarball
bewitche
parents:
9332
diff
changeset
|
262 |
+++ gDesklets-0.36/libdesklets/system/Solaris/__init__.py 2007-10-08 13:14:07.732742000 +0800 |
9174 | 263 |
@@ -0,0 +1,3 @@ |
264 |
+from X86 import X86 |
|
265 |
+from Sparc import Sparc |
|
266 |
+from Generic import Generic |