mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-05 21:15:38 -05:00
36 lines
1010 B
QML
36 lines
1010 B
QML
pragma Singleton
|
|
pragma ComponentBehavior: Bound
|
|
|
|
import QtQuick
|
|
import Quickshell
|
|
import qs.Common
|
|
|
|
Singleton {
|
|
id: root
|
|
|
|
property string username: ""
|
|
property string fullName: ""
|
|
property string profilePicture: ""
|
|
property string hostname: ""
|
|
property bool profileAvailable: false
|
|
|
|
function getUserInfo() {
|
|
Proc.runCommand("userInfo", ["sh", "-c", "echo \"$USER|$(getent passwd $USER | cut -d: -f5 | cut -d, -f1)|$(hostname)\""], (output, exitCode) => {
|
|
if (exitCode !== 0) {
|
|
root.username = "User";
|
|
root.fullName = "User";
|
|
root.hostname = "System";
|
|
return;
|
|
}
|
|
const parts = output.trim().split("|");
|
|
if (parts.length >= 3) {
|
|
root.username = parts[0] || "";
|
|
root.fullName = parts[1] || parts[0] || "";
|
|
root.hostname = parts[2] || "";
|
|
}
|
|
}, 0);
|
|
}
|
|
|
|
Component.onCompleted: getUserInfo()
|
|
}
|