Compare commits

...

3 Commits

Author SHA1 Message Date
David Heinemeier Hansson
ffafe1727e Add Tmux (#4562)
* Add Tmux

Being able to use a unified terminal setup between local and remote
hosts has some real advantages.

* Renaming is more important than reloading

* Self-explanatory, really

* Add alias for it

* Attach to last used session or start a new if we have none

* Just stick to n/p

* Make it a clean 10x

* We don't need this

* Keep similar fixes together

* Keep bindings together

* Hate looking at that 0

* Add way to refresh theme from its templates (when they've changed)

* Fix
2026-02-09 23:01:46 +01:00
Serpent
f2f306269a Avoid error if opencode isn't running. (#4566) 2026-02-09 22:58:34 +01:00
David Heinemeier Hansson
e4913ca2db Update boot entry 2026-02-09 22:34:43 +01:00
8 changed files with 88 additions and 2 deletions

View File

@@ -76,9 +76,10 @@ if grep -q "\[s2idle\]" /sys/power/mem_sleep 2>/dev/null; then
fi
fi
# Regenerate initramfs
# Regenerate initramfs and boot entry
echo "Regenerating initramfs..."
sudo limine-mkinitcpio
sudo limine-update
echo

View File

@@ -2,4 +2,6 @@
# Reload opencode configuration (used by the Omarchy theme switching).
killall -SIGUSR2 opencode
if pgrep -x opencode >/dev/null; then
killall -SIGUSR2 opencode
fi

9
bin/omarchy-theme-refresh Executable file
View File

@@ -0,0 +1,9 @@
#!/bin/bash
# Refresh the current theme from its templates.
THEME_NAME_PATH="$HOME/.config/omarchy/current/theme.name"
if [[ -f $THEME_NAME_PATH ]]; then
omarchy-theme-set "$(cat $THEME_NAME_PATH)"
fi

52
config/tmux/tmux.conf Normal file
View File

@@ -0,0 +1,52 @@
# Theme
source-file ~/.config/omarchy/current/theme/tmux.conf
# General
set -g default-terminal "tmux-256color"
set -ag terminal-overrides ",*:RGB"
set -g mouse on
set -g base-index 1
setw -g pane-base-index 1
set -g renumber-windows on
set -g history-limit 50000
set -g escape-time 0
set -g focus-events on
set -g set-clipboard on
setw -g aggressive-resize on
set -g detach-on-destroy off
# Status bar
set -g status-position top
set -g status-interval 5
set -g status-left-length 30
set -g status-right-length 50
set -g window-status-separator ""
# Reload config
bind M-r source-file ~/.config/tmux/tmux.conf
# Rename window / session
bind r command-prompt -I "#W" "rename-window -- '%%'"
bind R command-prompt -I "#S" "rename-session -- '%%'"
# Vi mode for copy
setw -g mode-keys vi
bind -T copy-mode-vi v send -X begin-selection
bind -T copy-mode-vi y send -X copy-selection-and-cancel
# Pane resizing
bind -r S-Left resize-pane -L 10
bind -r S-Down resize-pane -D 10
bind -r S-Up resize-pane -U 10
bind -r S-Right resize-pane -R 10
# Saner splits that open in the same directory
bind | split-window -h -c "#{pane_current_path}"
bind - split-window -v -c "#{pane_current_path}"
# New windows in same directory
bind c new-window -c "#{pane_current_path}"
# Sessions
bind C new-session
bind X kill-session

View File

@@ -34,6 +34,7 @@ alias ....='cd ../../..'
alias c='opencode'
alias d='docker'
alias r='rails'
alias t='tmux attach || tmux new -s Work'
n() { if [ "$#" -eq 0 ]; then nvim .; else nvim "$@"; fi; }
# Git

View File

@@ -0,0 +1,11 @@
set -g status-style "bg={{ background }},fg={{ foreground }}"
set -g status-left "#[fg={{ background }},bg={{ accent }},bold] #S #[bg={{ background }}] "
set -g status-right "#[fg={{ accent }}]#{?client_prefix,PREFIX ,}#[fg={{ color8 }}]#h "
set -g window-status-format "#[fg={{ color8 }}] #I:#W "
set -g window-status-current-format "#[fg={{ accent }},bold] #I:#W "
set -g pane-border-style "fg={{ color8 }}"
set -g pane-active-border-style "fg={{ accent }}"
set -g message-style "bg={{ background }},fg={{ accent }}"
set -g message-command-style "bg={{ background }},fg={{ accent }}"
set -g mode-style "bg={{ accent }},fg={{ background }}"
setw -g clock-mode-colour "{{ accent }}"

View File

@@ -120,6 +120,7 @@ swayosd
system-config-printer
tldr
tree-sitter-cli
tmux
tobi-try
ttf-cascadia-mono-nerd
ttf-ia-writer

9
migrations/1770638893.sh Normal file
View File

@@ -0,0 +1,9 @@
echo "Add Tmux as an option with themed styling"
omarchy-pkg-add tmux
if [[ ! -f ~/.config/tmux/tmux.conf ]]; then
mkdir -p ~/.config/tmux
cp $OMARCHY_PATH/config/tmux/tmux.conf ~/.config/tmux/tmux.conf
omarchy-theme-refresh
fi