diff options
| author | Mattias Andrée <maandree@operamail.com> | 2014-03-01 10:48:19 +0100 | 
|---|---|---|
| committer | Mattias Andrée <maandree@operamail.com> | 2014-03-01 10:48:19 +0100 | 
| commit | 9acbaee29b2ea501a0132a85e4c6c190c1c5c5aa (patch) | |
| tree | 3d891e719c58a47ae974410fede88dd91216a4c7 | |
| parent | add delay parameter to watch (diff) | |
| download | xpybar-9acbaee29b2ea501a0132a85e4c6c190c1c5c5aa.tar.gz xpybar-9acbaee29b2ea501a0132a85e4c6c190c1c5c5aa.tar.bz2 xpybar-9acbaee29b2ea501a0132a85e4c6c190c1c5c5aa.tar.xz | |
add uname
Signed-off-by: Mattias Andrée <maandree@operamail.com>
Diffstat (limited to '')
| -rw-r--r-- | examples/plugin-test | 14 | ||||
| -rw-r--r-- | src/plugins/uname.py | 52 | 
2 files changed, 63 insertions, 3 deletions
| diff --git a/examples/plugin-test b/examples/plugin-test index db316ee..d9ead29 100644 --- a/examples/plugin-test +++ b/examples/plugin-test @@ -7,6 +7,7 @@ import os  from plugins.uptime import Uptime  from plugins.loadavg import AverageLoad  from plugins.users import Users +from plugins.uname import Uname  OUTPUT, HEIGHT, YPOS, TOP = 0, 24, 24, True @@ -15,6 +16,8 @@ OUTPUT, HEIGHT, YPOS, TOP = 0, 24, 24, True  def redraw():      bar.clear() +    time = spawn_read('date', '+%Y-(%m)%b-%d %T, %a w%V, %Z') +          uptime_ = Uptime()      uptime = '%id %02i:%02i:%0.2f' % uptime_.uptime      tot_idle = '%id %02i:%02i:%0.2f' % uptime_.total_idle @@ -41,9 +44,14 @@ def redraw():      users = ['%s{%i}' % (colour_user(u) % u, len(users_[u])) for u in users_.keys()]      users = 'Users: %s' % (' '.join(users)) -    time = spawn_read('date', '+%Y-(%m)%b-%d %T, %a w%V, %Z') +    uname_ = Uname() +    nodename = uname_.nodename +    kernel_release = uname_.kernel_release +    operating_system = uname_.operating_system +    uname = '%s %s %s' +    uname %= (nodename, kernel_release, operating_system) -    text = '%s │ %s │ %s │ %s │ %s' -    text %= (time, uptime, idle, loadavg, users) +    text = '%s │ %s │ %s │ %s │ %s │ %s' +    text %= (time, uptime, idle, loadavg, users, uname)      bar.draw_coloured_text(0, 10, 0, 2, text) diff --git a/src/plugins/uname.py b/src/plugins/uname.py new file mode 100644 index 0000000..6b05a96 --- /dev/null +++ b/src/plugins/uname.py @@ -0,0 +1,52 @@ +# -*- python -*- +''' +xpybar – xmobar replacement written in python +Copyright © 2014  Mattias Andrée (maandree@member.fsf.org) + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program.  If not, see <http://www.gnu.org/licenses/>. +''' + +from util import * + + +class Uname: +    ''' +    Retrieve certain system information +     +    @variable  kernel_name:str         The kernel name +    @variable  nodename:str            The network node hostname +    @variable  kernel_release:str      The kernel release +    @variable  kernel_version:str      The kernel version +    @variable  machine:str             The machine hardware name +    @variable  processor:str?          The processor type, `None` if unknown +    @variable  hardware_platform:str?  The hardware platform, `None` if unknown +    @variable  operating_system:str    The operating system +    ''' +     +     +    def __init__(self): +        ''' +        Constructor +        ''' +        u = lambda s : None if s == 'unknown' else s +        self.kernel_name       = spawn_read('uname', '-s') +        self.nodename          = spawn_read('uname', '-n') +        self.kernel_release    = spawn_read('uname', '-r') +        self.kernel_version    = spawn_read('uname', '-v') +        self.machine           = spawn_read('uname', '-m') +        self.processor         = u(spawn_read('uname', '-p')) +        self.hardware_platform = u(spawn_read('uname', '-i')) +        self.operating_system  = spawn_read('uname', '-o') + + | 
