mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-04-30 17:42:06 -04:00
Move system update flow to GO, with a CLI (convenient AIO tool) and server integration. All lifecycle, scheduling, execution occurs on backend side. Run some backends via pkexec, some via terminal like paru/yay. Incorporate flatpak as an option to update. Add terminal override setting in GUI, in addition to $TERMINAL env variable. fixes #2307 fixes #822 fixes #1102 fixes #1812 fixes #1087 fixes #1743
32 lines
888 B
QML
32 lines
888 B
QML
import QtQuick
|
|
import qs.Common
|
|
|
|
SettingsDropdownRow {
|
|
id: root
|
|
|
|
readonly property string autoLabel: I18n.tr("Auto")
|
|
|
|
text: I18n.tr("Terminal")
|
|
settingKey: "terminalOverride"
|
|
|
|
options: {
|
|
const opts = [autoLabel];
|
|
const installed = SessionData.installedTerminals || [];
|
|
const list = installed.length > 0 ? installed : SessionData.terminalOptions;
|
|
for (const t of list) {
|
|
opts.push(t);
|
|
}
|
|
if (SessionData.terminalOverride && !opts.includes(SessionData.terminalOverride)) {
|
|
opts.push(SessionData.terminalOverride);
|
|
}
|
|
return opts;
|
|
}
|
|
|
|
currentValue: SessionData.terminalOverride.length > 0 ? SessionData.terminalOverride : autoLabel
|
|
|
|
onValueChanged: label => {
|
|
const next = label === autoLabel ? "" : label;
|
|
SessionData.set("terminalOverride", next);
|
|
}
|
|
}
|