David Heinemeier Hansson and Claude Opus 4.8
e5290b0a12
Add yt-dlp "Download Video" Chromium extension
...
Download the current page's video with yt-dlp via Alt+Shift+D or a click
on the toolbar icon. A native-messaging host runs the download, shows live
progress on the Quickshell OSD, and posts a clickable "Download complete"
toast that opens the file in mpv.
- Extension: pinned key for a stable id, green download-video icon,
keyboard command + toolbar action (reads the active tab URL).
- Native host (omarchy-chromium-ytdlp-host): verifies the URL with
yt-dlp --simulate (else "No video found"), streams progress to the OSD
(time-throttled to ~4/s), saves to ~/Videos, opens mpv on click.
- Installer (omarchy-install-chromium-ytdlp) writes the native-messaging
manifest into installed Chromium/Chrome/Brave/Edge profiles; wired into
browser install and chromium refresh, with a migration for existing users.
- omarchy-osd: add -d/--duration so the OSD can persist during a download.
- Add yt-dlp to base packages, load the extension via --load-extension,
and document the Alt+Shift+D binding.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-04 11:15:28 +02:00
David Heinemeier Hansson
1d6467c91c
Add explicit toggle states
2026-06-04 11:14:04 +02:00
David Heinemeier Hansson
c31825dca4
Apparently this needs to be said
2026-06-04 10:16:00 +02:00
David Heinemeier Hansson
4884f8c64a
Persist watched clipboard text
2026-06-04 10:09:38 +02:00
David Heinemeier Hansson
79470dde92
Refine shell panel and lock theming
2026-06-03 22:14:48 +02:00
David Heinemeier Hansson
3cdfb52a74
Didn't actually like the stock hyprland active color
...
Especially not on the notifications or lock screen
2026-06-03 21:05:19 +02:00
David Heinemeier Hansson
7a47604e27
Show which panel is open
2026-06-03 14:48:47 +02:00
David Heinemeier Hansson
d35957b23c
Better spacing
2026-06-03 13:59:33 +02:00
David Heinemeier Hansson
e1099e4413
Match lock border to Hyprland style
2026-06-03 13:10:48 +02:00
David Heinemeier Hansson
a8080d4016
All click targets should have click hands
2026-06-03 11:27:09 +02:00
David Heinemeier Hansson
198d01f8bc
Reveal all hidden tooling when hovering over the center part of the bar
2026-06-03 08:23:32 +02:00
David Heinemeier Hansson
ddc013aea9
More subtle tweaks to the lock screen
2026-06-03 08:22:50 +02:00
David Heinemeier Hansson
807f500888
More finessing of lock screen proportions
2026-06-03 07:56:48 +02:00
David Heinemeier Hansson
5812a7d04a
No leading zeros on the date in the bar
2026-06-01 11:59:30 +02:00
David Heinemeier Hansson
a4bb7a46f1
Fix tiled fullscreen toggle
2026-05-29 15:59:13 +02:00
David Heinemeier Hansson
6f0d9d53cd
Keep sensitive clipboard contents out of history
...
Restore the clipboard watcher behavior that drops CLIPBOARD_STATE=sensitive events, which password managers use for copied secrets.
Use the same sensitive foreground clipboard path for emoji insertion instead of a custom history marker, and keep the password-manager MIME hint ignored as a fallback.
2026-05-29 15:25:21 +02:00
David Heinemeier Hansson
cd2be9da25
Insert emojis without persisting clipboard entries
...
Keep the first emoji result selected whenever results exist, including after search filtering, so Enter inserts immediately.
Route emoji insertion through a hidden helper that serves a transient sensitive clipboard entry long enough for Shift+Insert, then stops that clipboard owner.
Mark transient emoji inserts so clipboard history skips only that event while continuing to record normal terminal copies.
2026-05-29 14:54:49 +02:00
David Heinemeier Hansson
16a4bc8106
Migrate terminal Shift+Return bindings
...
Update existing terminal configs to encode Shift+Return as CSI-u so Codex and other TUIs can distinguish it from Return without tmux seeing it as Alt+Return. Also ensures Alt+Shift+Return CSI-u bindings remain present for tmux horizontal splits across Kitty, Ghostty, and Foot.
2026-05-29 14:28:03 +02:00
David Heinemeier Hansson
bef9a80c25
Fix Shift+Return terminal encoding
...
Encode Shift+Return as CSI-u across supported terminals so TUIs such as Codex can distinguish it from plain Return. This replaces Alacritty's ambiguous ESC+Return mapping, which tmux interpreted as Alt+Return and used to split panes, while preserving Alt+Shift+Return as CSI-u for tmux's M-S-Enter binding.
2026-05-29 14:18:56 +02:00
David Heinemeier Hansson
a0cf4b07b2
Show clipboard file entries without inline video playback
2026-05-29 14:14:40 +02:00
David Heinemeier Hansson
f60c038050
Open clipboard entries from history
2026-05-29 13:54:55 +02:00
David Heinemeier Hansson
766c3b9a3f
Polish clipboard history display
2026-05-29 13:35:28 +02:00
David Heinemeier Hansson
4b003d2e39
Simplify clipboard preview divider
2026-05-29 13:15:11 +02:00
David Heinemeier Hansson
bb0d9dd2e3
Copy clipboard history selection with Shift Return
2026-05-29 13:15:00 +02:00
David Heinemeier Hansson
cf3a481224
Confirm clearing clipboard history
2026-05-29 12:57:46 +02:00
David Heinemeier Hansson
49ca79081f
Extract confirmation dialog
2026-05-29 12:57:43 +02:00
David Heinemeier Hansson
5bdd264ce0
Delete selected clipboard history entries
2026-05-29 12:23:53 +02:00
David Heinemeier Hansson
e79013adbe
Fix large clipboard history pastes
...
Clipboard history selections passed the full selected text as a process argument to omarchy-clipboard-paste-text. Large entries can exceed Linux's per-argument exec limit, so the helper never starts reliably for big copied blocks.
Pass the original history index instead and have the helper read that entry from clipboard-history.json before wl-copy and Shift+Insert. Also focus the first row when opening the manager, keep filtered rows mapped to their original history indexes, and drop whitespace-only text entries.
2026-05-29 12:21:28 +02:00
David Heinemeier Hansson
6be9b8b6d9
Fix night light indicator state
2026-05-29 09:42:24 +02:00
David Heinemeier Hansson
c795d52201
Paste emojis via clipboard
2026-05-29 09:32:01 +02:00
David Heinemeier Hansson
5104daf212
Restore gap
2026-05-28 21:21:33 +02:00
David Heinemeier Hansson
7bb18c1dd3
Refine Mullvad exit node picker
2026-05-28 21:21:33 +02:00
David Heinemeier Hansson
d3666c5e98
Group Mullvad exit nodes by country
2026-05-28 21:21:33 +02:00
David Heinemeier Hansson
dfc450f2cb
Fix bar config panel reload
2026-05-27 15:20:30 +02:00
David Heinemeier Hansson
bc32980cca
Replace bar settings with inline config panel
2026-05-27 15:11:36 +02:00
David Heinemeier Hansson
eef5668d89
Fix test
2026-05-27 15:11:36 +02:00
David Heinemeier Hansson
7ef5999038
Tighten center bar widget spacing
2026-05-27 14:25:28 +02:00
David Heinemeier Hansson
d6fa701543
Separate transparent bar foreground from panel text
2026-05-27 14:23:13 +02:00
David Heinemeier Hansson
e490f743db
Keep glyph notification hints compact
2026-05-27 14:09:26 +02:00
David Heinemeier Hansson
a09cfc3460
Fix bar module position reset on click
2026-05-27 13:58:07 +02:00
David Heinemeier Hansson
b9e82a5e53
Hide Dropbox tray icon when bar widget is present
2026-05-27 13:48:40 +02:00
David Heinemeier Hansson
ff2a418a25
Use correct highlight for kanagawa
2026-05-27 13:34:39 +02:00
David Heinemeier Hansson
f269adfd25
Add ydotool dev installer
2026-05-27 12:36:47 +02:00
David Heinemeier Hansson
419cd37e14
Fix transparent bar contrast timing
2026-05-27 12:36:45 +02:00
David Heinemeier Hansson
9f81a65732
Add visible bar drag and drop
2026-05-27 12:36:13 +02:00
David Heinemeier Hansson
3986522d6e
Extend shell bar config command
2026-05-27 11:20:42 +02:00
David Heinemeier Hansson
8914d30be7
Use hyphenated gaming command routes
2026-05-27 11:15:21 +02:00
David Heinemeier Hansson
0acac408e4
Namespace service and editor installers
2026-05-27 10:53:30 +02:00
David Heinemeier Hansson
88816ab9be
Extend notification popup lifetime
2026-05-27 10:50:31 +02:00
David Heinemeier Hansson
ee97329aee
Add service removal commands
2026-05-27 10:48:08 +02:00
David Heinemeier Hansson
e91aa9647b
Add shell bar config commands
2026-05-27 10:41:12 +02:00
David Heinemeier Hansson
b03a7cc73c
Use Tab to switch bar panels
2026-05-27 10:40:32 +02:00
David Heinemeier Hansson
848499a76b
Massage it
2026-05-27 10:29:01 +02:00
David Heinemeier Hansson
f520f9ff22
Simplify
2026-05-27 10:28:49 +02:00
David Heinemeier Hansson
8b4525458b
pkexec > sudo
2026-05-27 10:15:12 +02:00
David Heinemeier Hansson
5a08ef33fb
Fix icon placement
2026-05-27 08:56:29 +02:00
David Heinemeier Hansson
8350a792ac
Add exit nodes to the panel
2026-05-27 08:44:32 +02:00
David Heinemeier Hansson
67dd7a2953
Add Tailscale panel connection controls
2026-05-26 22:07:20 +02:00
David Heinemeier Hansson
48a741e3ee
Make the current user a tailscale operator on install
2026-05-26 19:03:17 +02:00
David Heinemeier Hansson
9100bc96be
Launch shell actions through Hyprland
2026-05-26 18:50:24 +02:00
David Heinemeier Hansson
492b420aad
Open recording menu from indicator
2026-05-26 02:11:45 +02:00
David Heinemeier Hansson
dd3080251d
Fix Voxtype install notification hook
2026-05-26 00:11:51 +02:00
David Heinemeier Hansson
953616dd62
Remove borders from menu highlights
2026-05-26 00:11:03 +02:00
David Heinemeier Hansson
af5e918dd5
Improve actionable notification wrapper
2026-05-25 23:51:48 +02:00
David Heinemeier Hansson
322d1bc30d
Gate bluetooth pairing agent on active bluetooth service
2026-05-25 23:05:00 +02:00
David Heinemeier Hansson
9fb52fa37a
Fix cleaning up the first-run sudo rm
2026-05-25 22:50:24 +02:00
David Heinemeier Hansson
e1075e3cd7
No need to scream about important notifications
...
They're already there until you dismiss them
2026-05-25 22:42:53 +02:00
David Heinemeier Hansson
2d86736fb0
Update for the new monitors.lua
2026-05-25 22:41:01 +02:00
David Heinemeier Hansson
106b25e65a
No transparency on the webcam overlay
2026-05-25 21:19:26 +02:00
David Heinemeier Hansson
0d8e1e2dcd
Add shell screenshot sanity test
2026-05-25 20:57:19 +02:00
David Heinemeier Hansson
5300a668d6
Add shell bar widget contract test
2026-05-25 20:57:19 +02:00
David Heinemeier Hansson
2859ec06c7
Add shell plugin registry contract test
2026-05-25 20:57:19 +02:00
David Heinemeier Hansson
38e06bba2d
Add shell manifest entrypoint load test
2026-05-25 20:57:19 +02:00
David Heinemeier Hansson
595dc30e48
Expand shell runtime smoke coverage
2026-05-25 20:57:19 +02:00
David Heinemeier Hansson
0d67bc6cda
Know thy nvidia
2026-05-25 20:28:39 +02:00
David Heinemeier Hansson
8caf5e4b4f
Fix screenrecording webcam selector
2026-05-25 20:28:22 +02:00
David Heinemeier Hansson
32b642e085
Add launcher uninstall confirmation
2026-05-25 18:32:41 +02:00
David Heinemeier Hansson
45e9322d2a
So AI can better test its work (and its tiny)
2026-05-25 18:23:12 +02:00
David Heinemeier Hansson
18fd2a812f
Don't actually need this given that it's just a simple package
2026-05-25 18:20:25 +02:00
David Heinemeier Hansson
984f3368b4
On-demand Signal install
2026-05-25 18:19:06 +02:00
David Heinemeier Hansson
0ff8b5eece
Move Spotify to optional service install
2026-05-25 18:12:40 +02:00
David Heinemeier Hansson
59ef9c44f7
Ensure we always have gum colors
2026-05-25 17:46:34 +02:00
David Heinemeier Hansson
aba64ca864
Switch to the new lighter basic jetbrains mono nerd package
2026-05-25 17:29:27 +02:00
David Heinemeier Hansson
d7adaee06b
Move 1pw to an optional install since we need to install the chrome extension anyway as well as login
2026-05-25 17:29:02 +02:00
David Heinemeier Hansson
3c8aba55e5
Fix tray DBus menu activation
2026-05-25 16:57:53 +02:00
David Heinemeier Hansson
74fb9b0e80
Install GitHub CLI via mise
2026-05-25 16:56:59 +02:00
David Heinemeier Hansson
977e762619
Install Claude via mise
2026-05-25 16:52:23 +02:00
David Heinemeier Hansson
f1f75ee11b
Switch from npm to mise for the lazy-loaded tools
2026-05-25 16:49:18 +02:00
David Heinemeier Hansson
8ffb498168
Move shell tests under shell runner
2026-05-25 15:16:53 +02:00
David Heinemeier Hansson
f05ad16eaf
Add shell bar runtime regression coverage
2026-05-25 15:09:37 +02:00
David Heinemeier Hansson
37e4da524b
Move shell scripts into plugin directories
2026-05-25 14:53:21 +02:00
David Heinemeier Hansson
10898aea16
Move panel plugins under panels
2026-05-25 14:47:08 +02:00
David Heinemeier Hansson
e6d990e31d
Use component-like naming without a repeating namespace
2026-05-25 14:32:41 +02:00
David Heinemeier Hansson
829c1fa4f7
Add shell plugin model tests
2026-05-25 14:18:39 +02:00
David Heinemeier Hansson
4277f5346b
Add shell emoji tests
2026-05-25 13:16:47 +02:00
David Heinemeier Hansson
81f4896879
Get more formal about testing
2026-05-25 13:08:56 +02:00
David Heinemeier Hansson
162e6ce006
Fix launcher filtering and add tests for it
2026-05-25 12:57:58 +02:00
David Heinemeier Hansson
8ad51075c3
Ensure ghostty + alacritty can also use the new tmux extended keys for panes
2026-05-25 11:47:45 +02:00
David Heinemeier Hansson
e9d275298d
Give kitty alt+shift+enter power for tmux vertical splits
2026-05-25 10:30:16 +02:00
David Heinemeier Hansson
41593cd448
Don't show power panel if there's no battery
2026-05-25 10:12:39 +02:00