25 lines
770 B
Python
25 lines
770 B
Python
# -*- coding: utf-8 -*-
|
|
"""
|
|
This module produces list of enabled network interfaces
|
|
|
|
"""
|
|
import sys
|
|
import subprocess
|
|
from subprocess import check_output
|
|
|
|
class Py3status:
|
|
format = 'NET: {status}'
|
|
|
|
def net_status(self):
|
|
# Retrieve active connections, Ignore bridges
|
|
command = 'nmcli --mode multiline --colors no con show --active | rg DEVICE | awk -F":" \'{ gsub(/ /, ""); print $2}\' | rg \'^[^br-]\''
|
|
return_value = check_output(command, shell=True)
|
|
value = return_value.decode("utf-8")
|
|
value = value.replace('\n', ', ').strip(', ')
|
|
full_text = self.py3.safe_format(self.format, { 'status': value})
|
|
|
|
return {
|
|
'full_text': full_text,
|
|
'cached_until': self.py3.time_in(15)
|
|
}
|