all repos — slstatus @ c3eb0c401200320151770680b9291197e759bfc9

my build of slstatus (tools.suckless.org/slstatus/)

Add "uname -r" functionality
Mike Coddington mike@coddington.us
Thu, 03 Nov 2016 11:49:09 -0500
commit

c3eb0c401200320151770680b9291197e759bfc9

parent

bcd5732b04d5b8b6572b2d1f122a2762316ea476

4 files changed, 15 insertions(+), 0 deletions(-)

jump to
M CONTRIBUTORS.mdCONTRIBUTORS.md

@@ -8,3 +8,4 @@ - [pfannkuckengesicht](https://github.com/pfannkuchengesicht)

- [sahne](https://github.com/sahne) - [Ali H. Fardan](http://raiz.duckdns.org) - [Quentin Rameau](https://fifth.space) +- [Mike Coddington](https://coddington.us)
M README.mdREADME.md

@@ -17,6 +17,7 @@ - Available entropy

- Username/GID/UID - Hostname - IP addresses +- Kernel version - Load averages - Memory status (free memory, percentage, total memory and used memory) - Swap status (free swap, percentage, total swap and used swap)
M config.def.hconfig.def.h

@@ -19,6 +19,7 @@ - entropy (available entropy) [argument: NULL]

- gid (gid of current user) [argument: NULL] - hostname [argument: NULL] - ip (ip address) [argument: interface] +- kernel_release (uname -r) [argument: NULL] - load_avg (load average) [argument: NULL] - ram_free (free ram in GB) [argument: NULL] - ram_perc (ram usage in percent) [argument: NULL]
M slstatus.cslstatus.c

@@ -20,6 +20,7 @@ #include <sys/statvfs.h>

#include <sys/socket.h> #include <sys/sysinfo.h> #include <sys/types.h> +#include <sys/utsname.h> #include <time.h> #include <unistd.h> #include <X11/Xlib.h>

@@ -68,6 +69,7 @@ static char *username(void);

static char *vol_perc(const char *card); static char *wifi_perc(const char *iface); static char *wifi_essid(const char *iface); +static char *kernel_release(void); static void set_status(const char *str); static void sighandler(const int signo); static void usage(void);

@@ -719,6 +721,16 @@ if (strcmp((char *)wreq.u.essid.pointer, "") == 0)

return smprintf(UNKNOWN_STR); else return smprintf("%s", (char *)wreq.u.essid.pointer); +} + +static char * +kernel_release(void) +{ + struct utsname udata; + if (uname(&udata) < 0) + return smprintf(UNKNOWN_STR); + + return smprintf("%s", udata.release); } static void