Sync config from arch

- hypr/apps.lua
- hypr/autostart.lua
- hypr/envs.lua
- hypr/hyprland.lua
- hypr/hyprsunset.conf
- hypr/input.lua
- hypr/looknfeel.lua
- hypr/omasettings.lua
- hypr/xdph.conf
- omarchy/branding/about.txt
- omarchy/branding/screensaver.txt
- omarchy/extensions/omarchy-menu.jsonc
- omarchy/hooks/battery-low.d/play-warning-sound.sample
- omarchy/hooks/font-set.d/show-font-notification.sample
- omarchy/hooks/post-boot.d/weather.sample
- omarchy/hooks/post-update.d/install-voxtype.hook
- omarchy/hooks/post-update.d/setup-agent.hook
- omarchy/hooks/post-update.d/setup-fingerprint.hook
- omarchy/hooks/post-update.d/show-update-notification.sample
- omarchy/hooks/pre-refresh-pacman.d/add-custom-repo.sample
- omarchy/hooks/theme-set.d/show-theme-notification.sample
- omarchy/shell.json
- omarchy/shell.toml
- omarchy/theme.name
- omarchy/themes/azure-glow/README.md
- omarchy/themes/azure-glow/alacritty.toml
- omarchy/themes/azure-glow/btop.theme
- omarchy/themes/azure-glow/hyprland.conf
- omarchy/themes/azure-glow/hyprlock.conf
- omarchy/themes/azure-glow/icons.theme
- … 269 more
This commit is contained in:
asepharyana
2026-09-23 15:19:12 +07:00
commit 1cdb82a76f
300 changed files with 78143 additions and 0 deletions
@@ -0,0 +1,253 @@
import QtQuick
import qs.Commons
import qs.Ui
import "BitwardenModel.js" as Model
// The SSH agent's own settings sections, lifted out of Panel.qml so that file
// is not the only place this feature can be read.
//
// Two separate things, deliberately drawn apart. The top half is what the
// feature is doing; the bottom half is whether the user's terminals will
// reach it. Neither one gates the other. The approval screen lives with the
// other screens in Panel.qml, because that is what it is.
//
// `panel` is the Panel root: this section reads its vault and agent state and
// calls back into it for every action. Nothing here holds state of its own.
Column {
id: section
required property var panel
// The bar's foreground and font family, not the global theme's -- the same
// values the rest of the panel draws with. PanelSectionHeader and Text both
// default to the globals, so every text element here states them.
component SshSectionHeader: PanelSectionHeader {
textFormat: Text.PlainText
foreground: section.panel.fg
fontFamily: section.panel.fontFamily
}
component SshCaption: Text {
textFormat: Text.PlainText
width: parent ? parent.width : 0
color: section.panel.dim
font.family: section.panel.fontFamily
font.pixelSize: Style.font.caption
wrapMode: Text.WordWrap
}
visible: panel.sshUiAvailable
width: parent.width
spacing: Style.space(6)
Item { width: parent.width; height: Style.space(10) }
SshSectionHeader {
text: "SSH AGENT STATUS"
}
Row {
width: parent.width
spacing: Style.space(8)
Text {
textFormat: Text.PlainText
anchors.verticalCenter: parent.verticalCenter
text: panel.sshAgentSetup.state === "enabled"
? (panel.sshAgentSetup.busy ? "󰔟" : "󰄬")
: (panel.sshAgentSetup.state === "error" ? "󰀪" : "󰅘")
color: panel.sshAgentSetup.state === "error"
? panel.urgent
: (panel.sshAgentSetup.state === "enabled" && !panel.sshAgentSetup.busy ? Color.accent : panel.dim)
font.family: panel.fontFamily
font.pixelSize: Style.font.body
}
SshCaption {
width: parent.width - Style.space(30)
text: panel.sshAgentSetup.message
color: panel.sshAgentSetup.state === "error" ? panel.urgent : panel.dim
}
}
// Which helper is running. A developer with a local build and a
// user on a release see the same panel otherwise, and confusing
// the two wastes an afternoon.
SshCaption {
visible: panel.sshAgentHelper.source !== ""
text: "Using " + Model.sshAgentHelperSourceLabel(panel.sshAgentHelper.source)
+ (panel.sshAgentHelper.checksum === "match" ? " (checksum verified)" : "")
color: panel.sshAgentHelper.source === "development" ? panel.urgent : panel.dim
}
// Why the feature is unavailable, when it is. These are the
// failures a real clone produces: a stale binary, a dropped file
// mode, an LFS placeholder.
SshCaption {
visible: panel.sshAgentEnabled && panel.sshAgentHelper.message !== ""
text: panel.sshAgentHelper.message
color: panel.urgent
}
// The helper's own version, once it has said hello. Non-secret,
// and the quickest way to tell a stale bundled binary apart from
// a working one.
SshCaption {
visible: panel.sshAgentVersion !== ""
text: "Helper version " + panel.sshAgentVersion
}
// Routing is the thing most likely to be missing when the agent looks
// healthy and SSH still does not use it. Said here because this is the
// block a user reads first, and decided by the routing file rather than by
// this session's SSH_AUTH_SOCK -- see sshAgentRoutingNotice for why.
SshCaption {
visible: panel.sshAgentSetup.state === "enabled" && !panel.sshAgentSetup.busy
&& panel.sshRoutingNotice.text !== ""
text: panel.sshRoutingNotice.text
color: panel.sshRoutingNotice.urgent ? panel.urgent : panel.dim
}
Item { width: parent.width; height: Style.space(10) }
SshSectionHeader {
text: "CLIENT ROUTING"
}
SshCaption {
text: panel.sshRouting.message
color: panel.sshRouting.state === "matches" ? panel.dim : panel.fg
}
// The check the user runs in the terminal they actually use --
// which is the only place the answer is authoritative.
Text {
textFormat: Text.PlainText
width: parent.width
text: " " + panel.sshRouting.terminalCheck
color: Color.accent
font.family: panel.fontFamily
font.pixelSize: Style.font.caption
wrapMode: Text.WrapAnywhere
}
SshCaption {
text: panel.uwsmFragment.message
}
// Replacing the session's primary agent is a real decision, so the
// conflict is stated and confirmed rather than absorbed by the
// first click.
SshCaption {
visible: panel.uwsmConfirmPending
text: "This will make Bitwarden your session's SSH agent at the next login, replacing "
+ (panel.sshRouting.owner !== "" ? panel.sshRouting.owner : "the one you have now")
+ ". Continue?"
color: panel.urgent
}
SshCaption {
visible: panel.uwsmFlash !== ""
text: panel.uwsmFlash
color: panel.fg
}
// A Flow, because which of these four are showing is decided by the routing
// state: the idle pair and the confirming pair are each narrow enough, but
// nothing in a Row enforces that, and a Row answers a set that is too wide by
// laying the last button out past the panel edge rather than wrapping it.
Flow {
width: parent.width
spacing: Style.space(8)
Button {
visible: !panel.uwsmConfirmPending && panel.uwsmFragment.state !== "managed"
text: "Route SSH Clients Here"
iconText: "󰌘"
tooltipText: "Write " + Model.uwsmFragmentDisplayPath() + " so the next login points SSH clients at this agent"
fontFamily: panel.fontFamily
fontSize: Style.font.bodySmall
enabled: !panel.uwsmBusy
onClicked: panel.beginUwsmSetup()
}
Button {
visible: panel.uwsmConfirmPending
text: "Yes, Replace It"
iconText: "󰄬"
fontFamily: panel.fontFamily
fontSize: Style.font.bodySmall
enabled: !panel.uwsmBusy
onClicked: panel.beginUwsmSetup()
}
Button {
visible: panel.uwsmConfirmPending
text: "Cancel"
iconText: "󰅘"
fontFamily: panel.fontFamily
fontSize: Style.font.bodySmall
onClicked: panel.cancelUwsmSetup()
}
Button {
visible: !panel.uwsmConfirmPending && panel.uwsmFragment.removable
text: "Remove Routing File"
iconText: "󰩹"
tooltipText: "Delete " + Model.uwsmFragmentDisplayPath()
fontFamily: panel.fontFamily
fontSize: Style.font.bodySmall
enabled: !panel.uwsmBusy
onClicked: panel.removeUwsmFragment()
}
}
Item {
visible: panel.sshGrants.length > 0
width: parent.width
height: visible ? Style.space(10) : 0
}
SshSectionHeader {
visible: panel.sshGrants.length > 0
text: "ACTIVE APPROVALS"
}
// Every live grant, with the process it belongs to and what is
// left of it. A grant is a window in which signing happens with
// no prompt, so it has to be visible and revocable while it runs.
Repeater {
model: panel.sshGrants
delegate: Row {
required property var modelData
width: parent.width
spacing: Style.space(8)
SshCaption {
width: parent.width - Style.space(110)
text: modelData.keyName + " · "
+ modelData.processName
+ " · " + modelData.remainingLabel
}
Button {
anchors.verticalCenter: parent.verticalCenter
text: "Revoke"
iconText: "󰩹"
fontFamily: panel.fontFamily
fontSize: Style.font.caption
onClicked: panel.revokeSshGrant(modelData.grantId)
}
}
}
Button {
visible: panel.sshGrants.length > 1
text: "Revoke All Approvals"
iconText: "󰩹"
tooltipText: "Drop every live approval; the next signature asks again"
fontFamily: panel.fontFamily
fontSize: Style.font.bodySmall
onClicked: panel.revokeAllSshGrants()
}
}