-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.devboost.yaml.example
More file actions
149 lines (137 loc) · 4.67 KB
/
Copy path.devboost.yaml.example
File metadata and controls
149 lines (137 loc) · 4.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
# ~/.devboost.yaml
# Example configuration file for devboost
# Copy this to ~/.devboost.yaml and customize as needed
# Every key below has a default — this file is optional, and every
# key you omit just falls back to what's shown here.
system:
# auto_install_plugins: true installs TPM plugins immediately via CLI after writing tmux config.
# Set to false if you prefer to run prefix+I manually inside a tmux session.
auto_install_plugins: true
# Editor/terminal integration: configure how your terminal emulator and code editor
# attach to the named tmux session so windows persist across restarts.
#
# Ghostty (~/.config/ghostty/config):
# command = /opt/homebrew/bin/tmux new-session -A -s main
#
# Zed (~/.config/zed/settings.json):
# "terminal": { "shell": { "program": "/opt/homebrew/bin/tmux",
# "args": ["new-session", "-A", "-s", "main"] } }
#
# VS Code (settings.json):
# "terminal.integrated.defaultProfile.osx": "tmux",
# "terminal.integrated.profiles.osx": {
# "tmux": { "path": "/opt/homebrew/bin/tmux",
# "args": ["new-session", "-A", "-s", "main"] }
# }
#
# Use "-t main" instead of "-A -s main" for grouped sessions (independent focus,
# shared windows) — both Zed and VS Code work well with this variant.
packages:
base:
- zsh
- zoxide
- fzf
- ripgrep
- fd
- bat
- eza
- jq
- yq
- git-delta
- lazygit
- direnv
- mise
- atuin
- starship
- tmux
- dust
- duf
- procs
zsh:
enable: true
znap_git: https://github.com/marlonrichert/zsh-snap.git
znap_path: ~/.zsh-snap
include_file: ~/.zshrc.devboost # devboost-managed; sourced from user's ~/.zshrc
history:
use_atuin: true
atuin:
# Filter mode controls how command history is shared between shells
# Options: global (all shells), host (same machine), session (isolated),
# directory (same folder), workspace (same git repo)
# Default: global for interactive ctrl-r search (matches atuin's own
# upstream default). filter_mode_shell_up_key_binding below separately
# scopes just the up-arrow key to directory, for quick context-local
# recall without restricting ctrl-r search.
filter_mode: global
filter_mode_shell_up_key_binding: directory
fzf:
enable: true
default_command_files: "fd --type f --hidden --follow --exclude .git"
default_command_dirs: "fd --type d --hidden --follow --exclude .git"
aliases:
enable: true
# Detects and disables shell tooling that duplicates what devboost already
# manages when found in your pre-existing ~/.zshrc/~/.zprofile (a leftover
# zinit setup duplicating znap's plugins, asdf alongside mise, nvm
# alongside mise, or oh-my-zsh itself alongside znap/starship). Redundant
# lines are commented out (never deleted); oh-my-zsh is migrated away from
# with your post-install customizations recovered into .zshrc. Run
# `devboost undo` to reverse any of this, or `devboost clean` to
# permanently remove the disabled lines instead.
optimize:
enable: true
zshrc: ~/.zshrc
zprofile: ~/.zprofile
prompt:
enable_starship: true
starship_config: ~/.config/starship.toml
tmux:
enable: true
tpm_path: ~/.tmux/plugins/tpm
conf_file: ~/.tmux.conf
plugins:
logging:
# tmux-logging has noticeably lower adoption than the other bundled
# plugins (resurrect/continuum/yank) — opt-in rather than default-on.
enable: false
settings:
base_index: 1
pane_base_index: 1
mouse: true
history_limit: 50000
escape_time: 0
focus_events: true
continuum_restore: true
resurrect_capture_pane_contents: true
toolchains:
enable_mise: true
globals:
node: "lts"
python: "3.14"
go: "1.26"
rust: "stable"
deno: "lts"
# direnv is installed by default for plain per-directory env vars
# (arbitrary export lines in a project's .envrc). Toolchain activation is
# handled globally by `mise activate zsh` instead (see toolchains above) —
# mise's own docs describe this split as the current supported way to run
# both tools together, not a workaround. direnv.content is empty by
# default (nothing for devboost to manage); set it if you want devboost
# to own a specific ~/.direnvrc.
direnv:
enable: true
rc_path: ~/.direnvrc
content: ""
git:
delta:
enable: true
line_numbers: true
navigate: true
aesthetics:
lsc_colours: "ExFxCxDxBxegedabagacad"
clicolor: true
security:
# enable: true adds a 'devboost-check' shell alias that summarises outdated packages
# and toolchains. The doctor command warns when toolchains are set to 'latest' or when
# the Homebrew index is stale. Nothing auto-updates — you stay in control.
enable: true