me like nix
1pragma Singleton
2
3import QtQuick
4import Quickshell
5import Quickshell.Io
6
7QtObject {
8 readonly property int usagePercent: _usagePercent
9 readonly property string usedStr: _usedStr
10 readonly property string totalStr: _totalStr
11
12 property int _usagePercent: 0
13 property string _usedStr: ""
14 property string _totalStr: ""
15
16 property var _proc: Process {
17 command: ["sh", "-c", "df -h / | tail -1"]
18 stdout: SplitParser {
19 onRead: data => {
20 if (!data) return
21 var parts = data.trim().split(/\s+/)
22 _totalStr = parts[1] || ""
23 _usedStr = parts[2] || ""
24 _usagePercent = parseInt((parts[4] || "0").replace("%", "")) || 0
25 }
26 }
27 Component.onCompleted: running = true
28 }
29
30 property var _timer: Timer {
31 interval: 30000
32 running: true
33 repeat: true
34 onTriggered: _proc.running = true
35 }
36}