config: add gpu type config

This commit is contained in:
2 * r + 2 * t 2025-08-25 17:37:04 +10:00
parent 54921ee354
commit 842249e05a
3 changed files with 7 additions and 3 deletions

View file

@ -316,6 +316,7 @@ All configuration options are in `~/.config/caelestia/shell.json`.
"services": {
"audioIncrement": 0.1,
"defaultPlayer": "Spotify",
"gpuType": "",
"playerAliases": [{
"com.github.th_ch.youtube_music": "YT Music"
}],

View file

@ -5,6 +5,7 @@ JsonObject {
property string weatherLocation: "" // A lat,long pair or empty for autodetection, e.g. "37.8267,-122.4233"
property bool useFahrenheit: [Locale.ImperialUSSystem, Locale.ImperialSystem].includes(Qt.locale().measurementSystem)
property bool useTwelveHourClock: Qt.locale().timeFormat(Locale.ShortFormat).toLowerCase().includes("a")
property string gpuType: ""
property real audioIncrement: 0.1
property bool smartScheme: true
property string defaultPlayer: "Spotify"

View file

@ -1,5 +1,6 @@
pragma Singleton
import qs.config
import Quickshell
import Quickshell.Io
import QtQuick
@ -9,7 +10,8 @@ Singleton {
property real cpuPerc
property real cpuTemp
property string gpuType: "NONE"
readonly property string gpuType: Config.services.gpuType.toUpperCase() || autoGpuType
property string autoGpuType: "NONE"
property real gpuPerc
property real gpuTemp
property real memUsed
@ -141,10 +143,10 @@ Singleton {
Process {
id: gpuTypeCheck
running: true
running: !Config.services.gpuType
command: ["sh", "-c", "if command -v nvidia-smi &>/dev/null && nvidia-smi -L &>/dev/null; then echo NVIDIA; elif ls /sys/class/drm/card*/device/gpu_busy_percent 2>/dev/null | grep -q .; then echo GENERIC; else echo NONE; fi"]
stdout: StdioCollector {
onStreamFinished: root.gpuType = text.trim()
onStreamFinished: root.autoGpuType = text.trim()
}
}