Skip to content

Commit e8b96bb

Browse files
committed
Merge origin/quattro
Antigravity replaced Gemini in the agent list while this branch was open, so the Hermes arm, its usage line and the expected-agent set follow upstream's shape rather than the one they were written against.
2 parents 64d9ef3 + 13a969e commit e8b96bb

22 files changed

Lines changed: 395 additions & 37 deletions

bin/omarchy-agent

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ opencode)
5858
command=(opencode --auto)
5959
[[ -n ${prompt:-} ]] && command+=(--prompt "$prompt")
6060
;;
61-
gemini)
62-
command=(gemini --yolo)
61+
agy)
62+
command=(agy --dangerously-skip-permissions)
6363
[[ -n ${prompt:-} ]] && command+=(--prompt-interactive "$prompt")
6464
;;
6565
copilot)

bin/omarchy-default-agent

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/bash
22

33
# omarchy:summary=Set and launch the default coding agent
4-
# omarchy:args=[pi|omp|opencode|claude|codex|grok|hermes|gemini|copilot|crush]
4+
# omarchy:args=[pi|omp|opencode|claude|codex|grok|agy|hermes|copilot|crush]
55
# omarchy:examples=omarchy default agent | omarchy default agent codex | omarchy default agent claude
66

77
installing=false
@@ -31,11 +31,11 @@ claude | claude-code) agent="claude"; name="Claude Code" ;;
3131
codex) agent="codex"; name="Codex" ;;
3232
crush) agent="crush"; name="Crush" ;;
3333
grok) agent="grok"; name="Grok"; agent_package="npm:@xai-official/grok" ;;
34+
agy | antigravity | antigravity-cli | gemini | gemini-cli) agent="agy"; name="Antigravity"; agent_package="antigravity-cli" ;;
3435
hermes) agent="hermes"; name="Hermes"; agent_installer="omarchy-install-hermes-cli" ;;
35-
gemini | gemini-cli) agent="gemini"; name="Gemini" ;;
3636
copilot | github-copilot) agent="copilot"; name="GitHub Copilot" ;;
3737
*)
38-
echo "Usage: omarchy-default-agent <pi|omp|opencode|claude|codex|grok|hermes|gemini|copilot|crush>"
38+
echo "Usage: omarchy-default-agent <pi|omp|opencode|claude|codex|grok|agy|hermes|copilot|crush>"
3939
exit 1
4040
;;
4141
esac

bin/omarchy-hyprland-monitor-clamshell

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,9 +118,17 @@ remember_internal_scale() {
118118
store_internal_scale "$scale"
119119
}
120120

121+
# $1 is the configured scale when the caller has already read it, so one sync
122+
# does not parse the config twice.
121123
read_monitor_scale() {
122124
local scale
123-
scale=$(configured_monitor_scale)
125+
126+
if (( $# )); then
127+
scale="$1"
128+
else
129+
scale=$(configured_monitor_scale)
130+
fi
131+
124132
if valid_scale "$scale"; then
125133
echo "$scale"
126134
return
@@ -159,11 +167,25 @@ enable_internal_output() {
159167

160168
sync_internal_scale() {
161169
[[ -n $INTERNAL ]] || return 0
170+
local configured_scale
162171
local desired_scale
163172
local active_scale
164173

165-
desired_scale=$(read_monitor_scale)
174+
configured_scale=$(configured_monitor_scale)
166175
active_scale=$(current_internal_scale)
176+
177+
# A config without a usable number -- the default "auto", or an expression
178+
# only Hyprland's Lua can evaluate -- delegates the scale to the compositor,
179+
# so whatever it resolved for the enabled panel IS the configured scale.
180+
# There is no number to correct it toward: substituting one makes the scale
181+
# flap between that number and the compositor's own value on every idle-wake.
182+
# Only a panel that is off altogether still gets a hand below, from the
183+
# remembered scale.
184+
if ! valid_scale "$configured_scale" && valid_scale "$active_scale"; then
185+
return 0
186+
fi
187+
188+
desired_scale=$(read_monitor_scale "$configured_scale")
167189
scales_match "$active_scale" "$desired_scale" && return 0
168190

169191
enable_internal_output "$desired_scale"

bin/omarchy-provision-user

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,14 +84,15 @@ fi
8484
# Dev-aware skill symlinks. Cannot live in /etc/skel because OMARCHY_PATH may
8585
# point at a dev checkout (omarchy dev link) where the target differs.
8686
# Loops every skill directory, so shipping a new one needs no edit here.
87-
mkdir -p ~/.agents/skills ~/.claude/skills ~/.codex/skills ~/.pi/agent/skills
87+
mkdir -p ~/.agents/skills ~/.claude/skills ~/.codex/skills ~/.pi/agent/skills ~/.gemini/config/skills
8888
for skill in "$OMARCHY_PATH"/default/agents/skills/*/; do
8989
skill=${skill%/}
9090
name=${skill##*/}
9191
ln -sfn "$skill" ~/.agents/skills/"$name"
9292
ln -sfn "$skill" ~/.claude/skills/"$name"
9393
ln -sfn "$skill" ~/.codex/skills/"$name"
9494
ln -sfn "$skill" ~/.pi/agent/skills/"$name"
95+
ln -sfn "$skill" ~/.gemini/config/skills/"$name"
9596
done
9697

9798
mkdir -p ~/Downloads ~/Pictures ~/Videos ~/.config/gtk-3.0

bin/omarchy-remove-preinstalls

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ if gum confirm "Are you sure you want to remove all preinstalled web apps, TUI w
1313
hyprctl reload
1414

1515
# Remove mise stubs
16-
rm -f ~/.local/bin/codex ~/.local/bin/claude ~/.local/bin/gemini ~/.local/bin/copilot \
16+
rm -f ~/.local/bin/codex ~/.local/bin/claude ~/.local/bin/agy ~/.local/bin/copilot \
1717
~/.local/bin/gh ~/.local/bin/opencode ~/.local/bin/playwright ~/.local/bin/playwright-cli ~/.local/bin/pi \
1818
~/.local/bin/omp ~/.local/bin/grok ~/.local/bin/crush ~/.local/bin/ghui ~/.local/bin/hunk
1919

bin/omarchy-restart-shell

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ relock_session() {
6363

6464
# Each kill stops the oldest matching instance and only returns once it has
6565
# fully exited, so the no-duplicate launch below can't race a dying shell.
66-
# Requires our quickshell-git build; 0.3.0's kill returns immediately.
6766
while timeout 5 quickshell kill -p "$CONFIG_DIR" --any-display >/dev/null 2>&1; do :; done
6867

6968
# Spawn from Hyprland so the shell inherits the canonical session environment,

bin/omarchy-theme-extras

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#!/bin/bash
2+
3+
# omarchy:summary=List the user-installed themes that came from a git clone
4+
# omarchy:examples=omarchy theme extras
5+
6+
# Exits nonzero when there are none, so a caller can ask whether any exist
7+
# without reading the list. A symlinked theme is someone's working copy and a
8+
# `.git` file is a worktree pointing elsewhere; neither is ours to pull.
9+
status=1
10+
11+
for theme in ~/.config/omarchy/themes/*; do
12+
[[ ! -L $theme && -d $theme/.git ]] || continue
13+
echo "$theme"
14+
status=0
15+
done
16+
17+
exit $status

bin/omarchy-theme-update

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
# omarchy:summary=Update user-installed git themes
44

5-
for dir in ~/.config/omarchy/themes/*/; do
6-
if [[ -d $dir ]] && [[ ! -L ${dir%/} ]] && [[ -d $dir/.git ]]; then
7-
echo "Updating: $(basename "$dir")"
8-
git -C "$dir" pull
9-
fi
5+
mapfile -t themes < <(omarchy-theme-extras)
6+
7+
for theme in "${themes[@]}"; do
8+
echo "Updating: $(basename "$theme")"
9+
git -C "$theme" pull
1010
done

config/hypr/monitors.lua

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,22 @@
11
-- See https://wiki.hypr.land/Configuring/Basics/Monitors/
22
-- List current monitors and supported resolutions with: hyprctl monitors all
33

4-
local omarchy_gdk_scale = 2
4+
-- Monitor scale is Hyprland's scale for the output. It sizes everything
5+
-- Wayland-native, accepts fractions (1.6, 1.75), and applies immediately.
6+
-- "auto" lets Hyprland pick per display.
57
local omarchy_monitor_scale = "auto"
6-
7-
hl.env("GDK_SCALE", tostring(omarchy_gdk_scale))
88
hl.monitor({ output = "", mode = "preferred", position = "auto", scale = omarchy_monitor_scale })
99

1010
-- Configure a specific monitor.
1111
-- hl.monitor({ output = "DP-2", mode = "2560x1440@144", position = "0x0", scale = 1 })
1212

1313
-- Portrait/rotated secondary monitor (transform: 1 = 90°, 3 = 270°).
1414
-- hl.monitor({ output = "DP-2", mode = "preferred", position = "auto", scale = 1, transform = 1 })
15+
16+
-- GDK scale is GDK_SCALE, the factor GTK draws its own UI at. It's what
17+
-- sizes X11/XWayland windows, which Omarchy leaves unscaled so they stay
18+
-- crisp instead of being stretched by the compositor. GTK only honors whole
19+
-- numbers, so use the nearest integer to the monitor scale, and restart an
20+
-- app for a change to reach it.
21+
local omarchy_gdk_scale = 2
22+
hl.env("GDK_SCALE", tostring(omarchy_gdk_scale))

default/omarchy/omarchy-menu.jsonc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,11 +135,11 @@
135135
"setup.network.qr": {"icon":"󰐲","label":"QR Code","aliases":["wifi-qr"],"when":"[[ $(omarchy-network-status) == wifi* ]]","action":"omarchy-shell shell summon omarchy.wifiqr"},
136136
"setup.default": {"icon":"","label":"Defaults","aliases":["default","defaults"]},
137137
"setup.default.agent": {"icon":"󰚩","label":"Agent","title":"Default Agent"},
138+
"setup.default.agent.agy": {"icon":"󰫢","label":"Antigravity","checked":"[[ \"$(omarchy-default-agent)\" == \"agy\" ]]","action":"omarchy-default-agent agy"},
138139
"setup.default.agent.claude": {"icon":"󰛄","label":"Claude","checked":"[[ \"$(omarchy-default-agent)\" == \"claude\" ]]","action":"omarchy-default-agent claude"},
139140
"setup.default.agent.codex": {"icon":"","iconFont":"omarchy","label":"Codex","checked":"[[ \"$(omarchy-default-agent)\" == \"codex\" ]]","action":"omarchy-default-agent codex"},
140141
"setup.default.agent.copilot": {"icon":"","label":"Copilot","checked":"[[ \"$(omarchy-default-agent)\" == \"copilot\" ]]","action":"omarchy-default-agent copilot"},
141142
"setup.default.agent.crush": {"icon":"󰋑","label":"Crush","checked":"[[ \"$(omarchy-default-agent)\" == \"crush\" ]]","action":"omarchy-default-agent crush"},
142-
"setup.default.agent.gemini": {"icon":"󰫢","label":"Gemini","checked":"[[ \"$(omarchy-default-agent)\" == \"gemini\" ]]","action":"omarchy-default-agent gemini"},
143143
"setup.default.agent.grok": {"icon":"","iconFont":"omarchy","label":"Grok","checked":"[[ \"$(omarchy-default-agent)\" == \"grok\" ]]","action":"omarchy-default-agent grok"},
144144
"setup.default.agent.hermes": {"icon":"","iconFont":"omarchy","label":"Hermes","checked":"[[ \"$(omarchy-default-agent)\" == \"hermes\" ]]","action":"omarchy-default-agent hermes"},
145145
"setup.default.agent.omp": {"icon":"","iconFont":"omarchy","label":"omp","checked":"[[ \"$(omarchy-default-agent)\" == \"omp\" ]]","action":"omarchy-default-agent omp"},
@@ -341,7 +341,7 @@
341341
"update.omarchy": {"icon":"","iconFont":"omarchy","label":"Omarchy","action":"omarchy-launch-floating-terminal-with-presentation omarchy-update"},
342342
"update.channel": {"icon":"󰔫","label":"Channel"},
343343
"update.config": {"icon":"","label":"Config","title":"Reset to default"},
344-
"update.themes": {"icon":"󰸌","label":"Extra Themes","action":"omarchy-launch-floating-terminal-with-presentation omarchy-theme-update"},
344+
"update.themes": {"icon":"󰸌","label":"Extra Themes","when":"omarchy-theme-extras","action":"omarchy-launch-floating-terminal-with-presentation omarchy-theme-update"},
345345
"update.process": {"icon":"","label":"Process","title":"Restart"},
346346
"update.hardware": {"icon":"󰇅","label":"Hardware","title":"Restart"},
347347
"update.firmware": {"icon":"","label":"Firmware","action":"omarchy-launch-floating-terminal-with-presentation omarchy-update-firmware"},

0 commit comments

Comments
 (0)