summaryrefslogtreecommitdiff
path: root/plugins/disk.py
blob: 7797447b11db1af47aefa5c6c6182f726a2ce40a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import plugins
import psutil


DISK_DEFAULTS = {'partition': '/', 'problem': 80, 'freq': 15}


class PluginThread(plugins.PluginThreadCommon):
    def __init__(self, config):
        super(PluginThread, self).__init__(config, DISK_DEFAULTS)
        if 'title' not in self.conf:
            self.conf['title'] = self.conf['partition']

    def main(self):
        du_stat = psutil.disk_usage(self.conf['partition'])
        if du_stat.percent >= self.conf['problem']:
            self.hide = False
            self.status['urgent'] = True
        else:
            self.hide = True
            self.status['urgent'] = False

        status = '{:.2f}G'.format(du_stat.free / 2**30)
        self.format_status(status)