Rebrand to Offscale and rework the panel header
Forked from omarchy.tailscale at the packaged commit (omarchy-dev 4.0.0.r1744.gf002044). The `tailscale` branch holds the pristine upstream subtree history so upstream changes can still be merged in; `master` is this fork. - Rename the plugin to pastilhas.offscale: manifest id/name, moduleName and ipcTarget, and display strings. Deliberately NOT renamed: the lowercase "tailscale" CLI invocations, the TailscaleIPs/TailscaleIPv6 JSON fields from `tailscale status --json`, and authorizeTailscaleOperator. Renaming those loads fine but silently breaks peer parsing. - TailscaleIcon.qml -> OffscaleIcon.qml, now rendering offscale-logo.png instead of the 3x3 dot grid, keeping the crossed/warning states. - Add OffscaleHero.qml: a copy of qs.Ui.PanelHero with a titleComponent slot, so the wordmark (offscale-text.png) can replace the title text. Otherwise byte-identical to the original, so it stays diffable. - Drop the cycling hero phrases entirely - the array, the 2.8s timer and the metaOpacity fade. - Show the local machine as a PeerRow of its own, so it gets the same layout and copy menu as tailnet peers. Adds `navigable` to PeerRow so that row stays out of the peers keyboard cursor. - Enlarge the bar icon: BarIconButton pins its icon to opticalCanvas, so opticalSize/slotSize are overridden alongside iconSize. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+9
-9
@@ -280,7 +280,7 @@ Item {
|
||||
exitNodes = running ? tailnetExitNodes.concat(mullvadRegions) : []
|
||||
}
|
||||
|
||||
function toggleTailscale() {
|
||||
function toggleOffscale() {
|
||||
if (!installed) return
|
||||
if (active) down()
|
||||
else loginOrUp()
|
||||
@@ -304,7 +304,7 @@ Item {
|
||||
}
|
||||
_loginOutput = ""
|
||||
_loginError = ""
|
||||
if (needsLogin) actionStatus = "Starting Tailscale login…"
|
||||
if (needsLogin) actionStatus = "Starting Offscale login…"
|
||||
else _desired = 1
|
||||
_loginInProgress = needsLogin
|
||||
_loginUrlOpened = false
|
||||
@@ -349,7 +349,7 @@ Item {
|
||||
if (!installed || operatorProcess.running || userName === "") return
|
||||
_operatorOutput = ""
|
||||
_operatorError = ""
|
||||
actionStatus = "Authorizing Tailscale operator..."
|
||||
actionStatus = "Authorizing Offscale operator..."
|
||||
operatorProcess.command = ["pkexec", "tailscale", "set", "--operator=" + userName]
|
||||
operatorProcess.running = true
|
||||
}
|
||||
@@ -449,7 +449,7 @@ Item {
|
||||
if (!root._loginInProgress || root._loginUrlOpened) return
|
||||
if (!root.openAuthUrlFrom(root.authUrl, true)) {
|
||||
root._loginInProgress = false
|
||||
root.actionStatus = "Tailscale login link not available yet"
|
||||
root.actionStatus = "Offscale login link not available yet"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -500,9 +500,9 @@ Item {
|
||||
root.parseAccounts("")
|
||||
if (/profiles access denied/i.test(stderr) || /profiles access denied/i.test(stdout)) {
|
||||
root.accountsAccessDenied = true
|
||||
root.lastError = "Authorize Tailscale operator to show connections"
|
||||
root.lastError = "Authorize Offscale operator to show connections"
|
||||
} else {
|
||||
root.lastError = elideStatus(stderr || stdout || "Could not list Tailscale connections")
|
||||
root.lastError = elideStatus(stderr || stdout || "Could not list Offscale connections")
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -532,7 +532,7 @@ Item {
|
||||
var stderr = String(actionStderr.text || root._actionError || "")
|
||||
if (exitCode !== 0) {
|
||||
root._desired = -1
|
||||
root.lastError = elideStatus(stderr || stdout || "Tailscale command failed")
|
||||
root.lastError = elideStatus(stderr || stdout || "Offscale command failed")
|
||||
root.actionStatus = root.lastError
|
||||
actionStatusTimer.restart()
|
||||
} else {
|
||||
@@ -621,13 +621,13 @@ Item {
|
||||
var stdout = String(operatorStdout.text || root._operatorOutput || "")
|
||||
var stderr = String(operatorStderr.text || root._operatorError || "")
|
||||
if (exitCode !== 0) {
|
||||
root.lastError = elideStatus(stderr || stdout || "Tailscale authorization failed")
|
||||
root.lastError = elideStatus(stderr || stdout || "Offscale authorization failed")
|
||||
root.actionStatus = root.lastError
|
||||
actionStatusTimer.restart()
|
||||
} else {
|
||||
root.accountsAccessDenied = false
|
||||
root.lastError = ""
|
||||
root.actionStatus = "Tailscale operator authorized"
|
||||
root.actionStatus = "Offscale operator authorized"
|
||||
actionStatusTimer.restart()
|
||||
root._lastAccountsRefreshMs = 0
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user