import QtQuick import Quickshell import Quickshell.Io Item { id: root signal cavaDataChanged(string data) Process { id: cavaProcess command: ["cat", "/tmp/cava.fifo"] stdout: SplitParser { splitMarker: "\n" // fires onRead() for each newline-delimited chunk onRead: data => { root.cavaDataChanged(data); } } } Component.onCompleted: { cavaProcess.running = true; } }