Compare commits

..

13 Commits

Author SHA1 Message Date
David Heinemeier Hansson
2453ca6ea4 Revert "fix(aur): add -a flag to yay command to assume AUR packages (#4581)"
This reverts commit b3dd14a038.
2026-02-17 11:55:18 +01:00
Andrej Benz
b3dd14a038 fix(aur): add -a flag to yay command to assume AUR packages (#4581) 2026-02-17 11:53:39 +01:00
Stefan Gründel
7dc638358b disable opencode auto-update feature as we rely on pacman (#4582)
* disable opencode auto-update feature as we rely on pacman

* Refreshing already produces a .bak, so that's enough

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
2026-02-17 11:42:54 +01:00
David Heinemeier Hansson
3e07255fbc Better split 2026-02-17 11:26:41 +01:00
David Heinemeier Hansson
02fd1961b9 Interactive drive picker if a drive is not selected
Co-authored-by: @Mrid22
Closes #4596
2026-02-17 11:25:09 +01:00
Shreyansh Malviya
40bff09c84 Remove Wayland color manager disabling flag from Chromium configs (#4610) (#4615)
Signed-off-by: Shreyansh Malviya <shreyanshmalviya0012@gmail.com>
2026-02-17 10:51:24 +01:00
David Heinemeier Hansson
6ff13fc071 These are window keys, not pane keys 2026-02-16 21:52:19 +01:00
David Heinemeier Hansson
a33cf4f287 Reload the config live when we refresh 2026-02-16 21:48:21 +01:00
David Heinemeier Hansson
2e2d78088a Direct access to windows 2026-02-16 21:47:08 +01:00
David Heinemeier Hansson
b1af966819 Go straight to the new unified screenshot flow 2026-02-16 14:27:29 +01:00
David Heinemeier Hansson
e055358721 Add eff to open the result of the fuzzy find directly in your editor 2026-02-16 14:08:14 +01:00
David Heinemeier Hansson
8b6e2466a3 Add the tmux dev layout 2026-02-16 10:33:56 +01:00
David Heinemeier Hansson
560500d8ec Allow passthrough 2026-02-16 10:26:31 +01:00
10 changed files with 100 additions and 22 deletions

View File

@@ -99,21 +99,13 @@ show_trigger_menu() {
show_capture_menu() {
case $(menu "Capture" " Screenshot\n Screenrecord\n󰃉 Color") in
*Screenshot*) show_screenshot_menu ;;
*Screenshot*) omarchy-cmd-screenshot ;;
*Screenrecord*) show_screenrecord_menu ;;
*Color*) pkill hyprpicker || hyprpicker -a ;;
*) show_trigger_menu ;;
esac
}
show_screenshot_menu() {
case $(menu "Screenshot" " Snap with Editing\n Straight to Clipboard") in
*Editing*) omarchy-cmd-screenshot smart ;;
*Clipboard*) omarchy-cmd-screenshot smart clipboard ;;
*) show_capture_menu ;;
esac
}
get_webcam_list() {
v4l2-ctl --list-devices 2>/dev/null | while IFS= read -r line; do
if [[ "$line" != $'\t'* && -n "$line" ]]; then
@@ -148,7 +140,10 @@ show_screenrecord_menu() {
*"With desktop audio") omarchy-cmd-screenrecord --with-desktop-audio ;;
*"With desktop + microphone audio") omarchy-cmd-screenrecord --with-desktop-audio --with-microphone-audio ;;
*"With desktop + microphone audio + webcam")
local device=$(show_webcam_select_menu) || { back_to show_capture_menu; return; }
local device=$(show_webcam_select_menu) || {
back_to show_capture_menu
return
}
omarchy-cmd-screenrecord --with-desktop-audio --with-microphone-audio --with-webcam --webcam-device="$device"
;;
*) back_to show_capture_menu ;;

View File

@@ -3,3 +3,4 @@
# Overwrite the user tmux config with the Omarchy default and reload tmux.
omarchy-refresh-config tmux/tmux.conf
tmux source-file ~/.config/tmux/tmux.conf

View File

@@ -2,5 +2,3 @@
--ozone-platform-hint=wayland
--enable-features=TouchpadOverscrollHistoryNavigation
--load-extension=~/.local/share/omarchy/default/chromium/extensions/copy-url
# Chromium crash workaround for Wayland color management on Hyprland - see https://github.com/hyprwm/Hyprland/issues/11957
--disable-features=WaylandWpColorManagerV1

View File

@@ -2,5 +2,3 @@
--ozone-platform-hint=wayland
--enable-features=TouchpadOverscrollHistoryNavigation
--load-extension=~/.local/share/omarchy/default/chromium/extensions/copy-url
# Chromium crash workaround for Wayland color management on Hyprland - see https://github.com/hyprwm/Hyprland/issues/11957
--disable-features=WaylandWpColorManagerV1

View File

@@ -1,4 +1,5 @@
{
"$schema": "https://opencode.ai/config.json",
"theme": "system"
"theme": "system",
"autoupdate": false
}

View File

@@ -39,6 +39,16 @@ bind -n C-S-End kill-window
bind -n C-S-PageUp next-window
bind -n C-S-PageDown previous-window
bind -n M-1 select-window -t 1
bind -n M-2 select-window -t 2
bind -n M-3 select-window -t 3
bind -n M-4 select-window -t 4
bind -n M-5 select-window -t 5
bind -n M-6 select-window -t 6
bind -n M-7 select-window -t 7
bind -n M-8 select-window -t 8
bind -n M-9 select-window -t 9
# Session controls
bind R command-prompt -I "#S" "rename-session -- '%%'"
bind C new-session
@@ -60,6 +70,7 @@ set -g history-limit 50000
set -g escape-time 0
set -g focus-events on
set -g set-clipboard on
set -g allow-passthrough on
setw -g aggressive-resize on
set -g detach-on-destroy off

View File

@@ -7,6 +7,7 @@ if command -v eza &> /dev/null; then
fi
alias ff="fzf --preview 'bat --style=numbers --color=always {}'"
alias eff='$EDITOR $(ff)'
if command -v zoxide &> /dev/null; then
alias cd="zd"

View File

@@ -4,15 +4,33 @@ alias decompress="tar -xzf"
# Write iso file to sd card
iso2sd() {
if [ $# -ne 2 ]; then
echo "Usage: iso2sd <input_file> <output_device>"
if [[ $# -lt 1 ]]; then
echo "Usage: iso2sd <input_file> [output_device]"
echo "Example: iso2sd ~/Downloads/ubuntu-25.04-desktop-amd64.iso /dev/sda"
echo -e "\nAvailable SD cards:"
lsblk -d -o NAME | grep -E '^sd[a-z]' | awk '{print "/dev/"$1}'
else
sudo dd bs=4M status=progress oflag=sync if="$1" of="$2"
sudo eject $2
return 1
fi
local iso="$1"
local drive="$2"
if [[ -z $drive ]]; then
local available_sds=$(lsblk -dpno NAME | grep -E '/dev/sd')
if [[ -z $available_sds ]]; then
echo "No SD drives found and no drive specified"
return 1
fi
drive=$(omarchy-drive-select "$available_sds")
if [[ -z $drive ]]; then
echo "No drive selected"
return 1
fi
fi
sudo dd bs=4M status=progress oflag=sync if="$iso" of="$drive"
sudo eject "$drive"
}
# Format an entire drive for a single partition using exFAT
@@ -108,3 +126,41 @@ dip() {
lip() {
pgrep -af "ssh.*-L [0-9]+:localhost:[0-9]+" || echo "No active forwards"
}
# Create a tmux layout for dev with editor, ai, and terminal
tml() {
local current_dir="${PWD}"
local editor_pane ai_pane
local ai="$1"
# Get current pane ID (will become editor pane after splits)
editor_pane=$(tmux display-message -p '#{pane_id}')
# Split window vertically - top 85%, bottom 15%
tmux split-window -v -p 15 -c "$current_dir"
# Go back to top pane (editor_pane) and split it horizontally
tmux select-pane -t "$editor_pane"
tmux split-window -h -p 30 -c "$current_dir"
# After horizontal split, cursor is in the right pane (new pane)
# Get its ID and run ai there
ai_pane=$(tmux display-message -p '#{pane_id}')
tmux send-keys -t "$ai_pane" "$ai" C-m
# Run nvim in the left pane
tmux send-keys -t "$editor_pane" "$EDITOR ." C-m
# Select the nvim pane for focus
tmux select-pane -t "$editor_pane"
}
# Create a dev layout using tmux with editor, opencode, and terminal
nic() {
tml c
}
# Create a dev layout using tmux with editor, claude, and terminal
nicx() {
tml cx
}

3
migrations/1769616857.sh Normal file
View File

@@ -0,0 +1,3 @@
echo "Turn off opencode's own auto-update feature (we rely on pacman)"
omarchy-refresh-config opencode/opencode.json

14
migrations/1771188969.sh Normal file
View File

@@ -0,0 +1,14 @@
echo "Remove temporary Wayland color manager disabling flag from existing Chromium configs"
# This reverts the workaround originally added by migration 1760401344.sh
# Remove flag and comment from chromium-flags.conf only if found
if [[ -f ~/.config/chromium-flags.conf ]]; then
sed -i '/--disable-features=WaylandWpColorManagerV1/d' ~/.config/chromium-flags.conf
sed -i '/# Chromium crash workaround for Wayland color management on Hyprland/d' ~/.config/chromium-flags.conf
fi
# Remove flag and comment from brave-flags.conf only if found
if [[ -f ~/.config/brave-flags.conf ]]; then
sed -i '/--disable-features=WaylandWpColorManagerV1/d' ~/.config/brave-flags.conf
sed -i '/# Chromium crash workaround for Wayland color management on Hyprland/d' ~/.config/brave-flags.conf
fi