Compare commits

...

46 Commits

Author SHA1 Message Date
Anthony Oteri 782db4970c feat(opencode): add opencode.json
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-04-29 10:29:29 -04:00
Anthony Oteri e67b7b173c chore(nvim): update lazy-lock file
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-04-29 10:27:32 -04:00
Anthony Oteri 414c68c6a0 feat(zsh): add google cloud integration
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-04-29 10:27:05 -04:00
Anthony Oteri bb13297bf0 fix(tmux): adjust mouse wheel scroll speed
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-04-29 10:26:50 -04:00
Anthony Oteri 7008bd9895 fix(ghostty): set TERM environment variable to xterm-256color
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-04-29 10:26:17 -04:00
Anthony Oteri 50632db60d fix(ghostty): just use dark mode
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-16 08:05:35 -04:00
Anthony Oteri 7e64c92952 feat: switch everything to catppuccin-mocha
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-15 14:58:07 -04:00
Anthony Oteri 1ee9a0612e fix(lazygit): fix display issues
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-12 08:12:56 -04:00
Anthony Oteri 1afd770d70 fix(ghostty): shell-integration fixes
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-12 08:12:32 -04:00
Anthony Oteri 437895a732 fix(lazygit): clean up configuration
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-11 11:32:14 -04:00
Anthony Oteri b5d91fff53 feat(ghostty): update font
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-11 11:31:57 -04:00
Anthony Oteri 7fad0b791b feat(lazygit): update configuration
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-11 08:22:40 -04:00
Anthony Oteri c7864a4419 fix: remove nvim config
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-11 08:18:57 -04:00
Anthony Oteri 7f772fb12e feat(ghostty): change theme
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-11 08:18:21 -04:00
Anthony Oteri 51863c443a fix: remove breaking configuration option
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-11 08:18:08 -04:00
Anthony Oteri 9d4f2f8521 fix: configure dotenv in zshrc
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-10 19:28:35 -04:00
Anthony Oteri f34d38bb14 fix: enable updateRefs and fetch properties in gitconfig
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-10 19:28:18 -04:00
Anthony Oteri 789a48ecc4 feat: update tmux config
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-10 19:27:55 -04:00
Anthony Oteri 4db79927de feat: update oh-my-posh config
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-10 19:27:46 -04:00
Anthony Oteri f5d8915f85 fix: update lazyvim config
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-10 19:27:35 -04:00
Anthony Oteri b338f35a15 feat: add ghostty config
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-10 19:27:26 -04:00
Anthony Oteri 9e8ca3ee17 feat: update btop config
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-03-10 19:27:17 -04:00
Anthony Oteri fa8928aa08 deps: update oh-my-posh
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2026-01-07 08:49:51 -05:00
Anthony Oteri 573b623c2a feat: rustup zsh integration
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2025-12-02 15:16:43 -05:00
Anthony Oteri a918bf5a0c feat: optimize the .ssh/config file
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2025-11-10 09:09:58 -05:00
Anthony Oteri 7ab7172424 feat: optimize gitconfig
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2025-11-10 08:01:48 -05:00
Anthony Oteri 6ad478aa80 feat: add alias for lazygit to use the correct config file
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2025-11-08 12:13:41 -05:00
Anthony Oteri 067f864373 feat: add lazygit config
Signed-off-by: Anthony Oteri <4360016+anthonyoteri@users.noreply.github.com>
2025-11-08 12:13:14 -05:00
Anthony Oteri 4558617127 docs: update readme 2025-11-08 11:56:50 -05:00
Anthony Oteri a3cf3d1d0c feat: optimize topgrade configuration 2025-11-08 11:56:44 -05:00
Anthony Oteri 53029f1070 feat: update btop configuration 2025-11-08 11:56:37 -05:00
Anthony Oteri a62f1ebd2c feat: improve tmux config 2025-11-08 11:42:51 -05:00
Anthony Oteri af6dc8195f feat: adjust prompt configuration 2025-11-08 11:38:13 -05:00
Anthony Oteri b3eee10269 feat: improve kitty config for efficiency, performance, and readability 2025-11-08 11:33:32 -05:00
Anthony Oteri c2aafeaafe feat: optimize zsh with lazy-loading, and other improvements 2025-11-08 11:27:40 -05:00
Anthony Oteri 0e2cc815b2 deps: minor updates from upstream packages 2025-11-03 17:04:57 -05:00
Anthony Oteri a49433e28b feat: use double-line for tmux borders 2025-09-20 14:47:18 -04:00
Anthony Oteri d23a1feb99 feat: additional plugins and opions for tmux 2025-09-18 07:56:52 -04:00
Anthony Oteri dd087379d9 feat: use gpg-agent for ssh-agent 2025-09-18 07:56:33 -04:00
Anthony Oteri fd1c366381 feat: add .config/tmux/tmux.conf 2025-09-17 20:34:46 -04:00
Anthony Oteri 9b85a097a0 fix: set xterm-256color as the default kitty TERM variable 2025-09-17 20:34:33 -04:00
Anthony Oteri 51e81d66c8 feat: update topgrade configuration 2025-09-16 21:08:14 -04:00
Anthony Oteri a4e83fe3a6 core: remove lazy-lock.json from being tracked 2025-09-16 20:51:00 -04:00
Anthony Oteri 717dd45e00 chore: update lazy-lock.json 2025-09-16 18:14:43 -04:00
Anthony Oteri 92f233f3b6 chore: update nvim lazy-lock 2025-09-12 20:59:16 -04:00
Anthony Oteri 6d637a2aca feat: add newline in oh-my-posh prompt 2025-09-12 20:58:56 -04:00
21 changed files with 901 additions and 598 deletions
+62 -50
View File
@@ -1,18 +1,18 @@
#? Config file for btop v. 1.4.4 #? Config file for btop v.1.4.6
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes. #* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes" #* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
color_theme = "Default" color_theme = "gruvbox"
#* If the theme set background should be shown, set to False if you want terminal background transparency. #* If the theme set background should be shown, set to False if you want terminal background transparency.
theme_background = True theme_background = true
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. #* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
truecolor = True truecolor = true
#* Set to true to force tty mode regardless if a real tty has been detected or not. #* Set to true to force tty mode regardless if a real tty has been detected or not.
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols. #* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
force_tty = False force_tty = false
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets. #* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box. #* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
@@ -22,29 +22,32 @@ presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:defaul
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists. #* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift. #* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
vim_keys = False vim_keys = true
#* Rounded corners on boxes, is ignored if TTY mode is ON. #* Rounded corners on boxes, is ignored if TTY mode is ON.
rounded_corners = True rounded_corners = true
#* Use terminal synchronized output sequences to reduce flickering on supported terminals.
terminal_sync = true
#* Default symbols to use for graph creation, "braille", "block" or "tty". #* Default symbols to use for graph creation, "braille", "block" or "tty".
#* "braille" offers the highest resolution but might not be included in all fonts. #* "braille" offers the highest resolution but might not be included in all fonts.
#* "block" has half the resolution of braille but uses more common characters. #* "block" has half the resolution of braille but uses more common characters.
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY. #* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view. #* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
graph_symbol = "braille" graph_symbol = "block"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_cpu = "default" graph_symbol_cpu = "block"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_mem = "default" graph_symbol_mem = "block"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_net = "default" graph_symbol_net = "block"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_proc = "default" graph_symbol_proc = "block"
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace. #* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
shown_boxes = "cpu mem net proc" shown_boxes = "cpu mem net proc"
@@ -57,37 +60,40 @@ update_ms = 2000
proc_sorting = "cpu lazy" proc_sorting = "cpu lazy"
#* Reverse sorting order, True or False. #* Reverse sorting order, True or False.
proc_reversed = False proc_reversed = false
#* Show processes as a tree. #* Show processes as a tree.
proc_tree = False proc_tree = false
#* Use the cpu graph colors in the process list. #* Use the cpu graph colors in the process list.
proc_colors = True proc_colors = true
#* Use a darkening gradient in the process list. #* Use a darkening gradient in the process list.
proc_gradient = True proc_gradient = true
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power. #* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
proc_per_core = False proc_per_core = false
#* Show process memory as bytes instead of percent. #* Show process memory as bytes instead of percent.
proc_mem_bytes = True proc_mem_bytes = true
#* Show cpu graph for each process. #* Show cpu graph for each process.
proc_cpu_graphs = True proc_cpu_graphs = true
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate) #* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
proc_info_smaps = False proc_info_smaps = false
#* Show proc box on left side of screen instead of right. #* Show proc box on left side of screen instead of right.
proc_left = False proc_left = false
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). #* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
proc_filter_kernel = False proc_filter_kernel = false
#* In tree-view, always accumulate child process resources in the parent process. #* In tree-view, always accumulate child process resources in the parent process.
proc_aggregate = False proc_aggregate = false
#* Should cpu and memory usage display be preserved for dead processes when paused.
keep_dead_proc_usage = false
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available. #* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu. #* Select from a list of detected attributes from the options menu.
@@ -98,25 +104,28 @@ cpu_graph_upper = "Auto"
cpu_graph_lower = "Auto" cpu_graph_lower = "Auto"
#* Toggles if the lower CPU graph should be inverted. #* Toggles if the lower CPU graph should be inverted.
cpu_invert_lower = True cpu_invert_lower = true
#* Set to True to completely disable the lower CPU graph. #* Set to True to completely disable the lower CPU graph.
cpu_single_graph = False cpu_single_graph = false
#* Show cpu box at bottom of screen instead of top. #* Show cpu box at bottom of screen instead of top.
cpu_bottom = False cpu_bottom = false
#* Shows the system uptime in the CPU box. #* Shows the system uptime in the CPU box.
show_uptime = True show_uptime = true
#* Shows the CPU package current power consumption in watts. Requires running `make setcap` or `make setuid` or running with sudo.
show_cpu_watts = true
#* Show cpu temperature. #* Show cpu temperature.
check_temp = True check_temp = true
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors. #* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
cpu_sensor = "Auto" cpu_sensor = "Auto"
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found. #* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
show_coretemp = True show_coretemp = true
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core. #* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine. #* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
@@ -128,17 +137,17 @@ cpu_core_map = ""
temp_scale = "celsius" temp_scale = "celsius"
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024. #* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
base_10_sizes = False base_10_sizes = false
#* Show CPU frequency. #* Show CPU frequency.
show_cpu_freq = True show_cpu_freq = true
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable. #* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime #* Special formatting: /host = hostname | /user = username | /uptime = system uptime
clock_format = "%X" clock_format = "%X"
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort. #* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
background_update = True background_update = true
#* Custom cpu model name, empty string to disable. #* Custom cpu model name, empty string to disable.
custom_cpu_name = "" custom_cpu_name = ""
@@ -148,43 +157,43 @@ custom_cpu_name = ""
disks_filter = "" disks_filter = ""
#* Show graphs instead of meters for memory values. #* Show graphs instead of meters for memory values.
mem_graphs = True mem_graphs = true
#* Show mem box below net box instead of above. #* Show mem box below net box instead of above.
mem_below_net = False mem_below_net = false
#* Count ZFS ARC in cached and available memory. #* Count ZFS ARC in cached and available memory.
zfs_arc_cached = True zfs_arc_cached = true
#* If swap memory should be shown in memory box. #* If swap memory should be shown in memory box.
show_swap = True show_swap = true
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk. #* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
swap_disk = True swap_disk = true
#* If mem box should be split to also show disks info. #* If mem box should be split to also show disks info.
show_disks = True show_disks = true
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar. #* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
only_physical = True only_physical = true
#* Read disks list from /etc/fstab. This also disables only_physical. #* Read disks list from /etc/fstab. This also disables only_physical.
use_fstab = True use_fstab = true
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool) #* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
zfs_hide_datasets = False zfs_hide_datasets = false
#* Set to true to show available disk space for privileged users. #* Set to true to show available disk space for privileged users.
disk_free_priv = False disk_free_priv = false
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view. #* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
show_io_stat = True show_io_stat = true
#* Toggles io mode for disks, showing big graphs for disk read/write speeds. #* Toggles io mode for disks, showing big graphs for disk read/write speeds.
io_mode = False io_mode = false
#* Set to True to show combined read/write io graphs in io mode. #* Set to True to show combined read/write io graphs in io mode.
io_graph_combined = False io_graph_combined = false
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ". #* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
#* Example: "/mnt/media:100 /:20 /boot:1". #* Example: "/mnt/media:100 /:20 /boot:1".
@@ -196,10 +205,10 @@ net_download = 100
net_upload = 100 net_upload = 100
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest. #* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
net_auto = True net_auto = true
#* Sync the auto scaling for download and upload to whichever currently has the highest scale. #* Sync the auto scaling for download and upload to whichever currently has the highest scale.
net_sync = True net_sync = true
#* Starts with the Network Interface specified here. #* Starts with the Network Interface specified here.
net_iface = "" net_iface = ""
@@ -208,14 +217,17 @@ net_iface = ""
base_10_bitrate = "Auto" base_10_bitrate = "Auto"
#* Show battery stats in top right if battery is present. #* Show battery stats in top right if battery is present.
show_battery = True show_battery = true
#* Which battery to use if multiple are present. "Auto" for auto detection. #* Which battery to use if multiple are present. "Auto" for auto detection.
selected_battery = "Auto" selected_battery = "Auto"
#* Show power stats of battery next to charge indicator. #* Show power stats of battery next to charge indicator.
show_battery_watts = True show_battery_watts = true
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". #* Set loglevel for "~/.local/state/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info. #* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
log_level = "WARNING" log_level = "WARNING"
#* Automatically save current settings to config file on exit.
save_config_on_exit = true
+1
View File
@@ -0,0 +1 @@
eza/catppuccin-mocha-mauve.yaml
+1
View File
@@ -0,0 +1 @@
+10
View File
@@ -0,0 +1,10 @@
theme = catppuccin mocha
font-family = "JetBrainsMonoNL Nerd Font Mono"
font-size = 14
copy-on-select = clipboard
background-opacity = 0.9
background-blur = 90
adjust-cell-height = 5%
window-colorspace = "display-p3"
shell-integration-features = cursor,sudo,title,ssh-env,ssh-terminfo,path
term = xterm-256color
+18 -5
View File
@@ -1,3 +1,5 @@
# Enable GPU rendering for performance
enable_gpu_renderer yes
# vim:fileencoding=utf-8:foldmethod=marker # vim:fileencoding=utf-8:foldmethod=marker
#: Fonts {{{ #: Fonts {{{
@@ -19,8 +21,11 @@
#: fonts manually, read the font specification syntax #: fonts manually, read the font specification syntax
#: <https://sw.kovidgoyal.net/kitty/kittens/choose-fonts/#font-spec- #: <https://sw.kovidgoyal.net/kitty/kittens/choose-fonts/#font-spec-
#: syntax>. #: syntax>.
# font_family Hack # Recommended: FiraCode or JetBrains Mono for ligatures
font_family FiraCode
font_size 15.0 font_size 15.0
# Add padding for readability
window_padding_width 8
# font_size 11.0 # font_size 11.0
#: Font size (in pts). #: Font size (in pts).
@@ -71,7 +76,7 @@ font_size 15.0
#: narrow_symbols codepoints [optionally the number of cells] #: narrow_symbols codepoints [optionally the number of cells]
# disable_ligatures never disable_ligatures never
#: Choose how you want to handle multi-character ligatures. The #: Choose how you want to handle multi-character ligatures. The
#: default is to always render them. You can tell kitty to not render #: default is to always render them. You can tell kitty to not render
@@ -376,6 +381,14 @@ font_size 15.0
#: Scrollback {{{ #: Scrollback {{{
# scrollback_lines 2000 # scrollback_lines 2000
# Fast scrolling and mouse support
scrollback_lines 5000
wheel_scroll_multiplier 5.0
wheel_scroll_min_lines 1
touch_scroll_multiplier 1.0
detect_urls yes
copy_on_select clipboard
mouse_map middle release ungrabbed paste_from_selection
#: Number of lines of history to keep in memory for scrolling back. #: Number of lines of history to keep in memory for scrolling back.
#: Memory is allocated on demand. Negative numbers are (effectively) #: Memory is allocated on demand. Negative numbers are (effectively)
@@ -1232,7 +1245,7 @@ tab_bar_style powerline
#: The maximum number of cells that can be used to render the text in #: The maximum number of cells that can be used to render the text in
#: a tab. A value of zero means that no limit is applied. #: a tab. A value of zero means that no limit is applied.
# tab_title_template "{fmt.fg.red}{bell_symbol}{activity_symbol}{fmt.fg.tab}{tab.last_focused_progress_percent}{title}" tab_title_template "{index}:{title} [{tab.active_wd}]@{hostname}"
#: A template to render the tab title. The default just renders the #: A template to render the tab title. The default just renders the
#: title with optional symbols for bell and activity. If you wish to #: title with optional symbols for bell and activity. If you wish to
@@ -1314,7 +1327,7 @@ tab_bar_style powerline
#: Color scheme {{{ #: Color scheme {{{
# foreground #dddddd # foreground #dddddd
# background #000000 # background #181825
#: The foreground and background colors. #: The foreground and background colors.
@@ -1872,7 +1885,7 @@ tab_bar_style powerline
#: # Do not clear previous notification when next command finishes or window regains focus #: # Do not clear previous notification when next command finishes or window regains focus
#: notify_on_cmd_finish invisible 5.0 notify #: notify_on_cmd_finish invisible 5.0 notify
# term xterm-kitty term xterm-256color
#: The value of the TERM environment variable to set. Changing this #: The value of the TERM environment variable to set. Changing this
#: can break many terminal programs, only change it if you know what #: can break many terminal programs, only change it if you know what
+130
View File
@@ -0,0 +1,130 @@
gui:
scrollHeight: 2
scrollPastBottom: true
scrollOffMargin: 2
scrollOffBehavior: margin
tabWidth: 4
mouseEvents: true
skipAmendWarning: false
skipDiscardChangeWarning: false
skipStashWarning: false
skipNoStagedFilesWarning: false
skipRewordInEditorWarning: false
skipSwitchWorktreeOnCheckoutWarning: false
sidePanelWidth: 0.4
expandFocusedSidePanel: true
expandedSidePanelWeight: 3
mainPanelSplitMode: flexible
enlargedSideViewLocation: left
wrapLinesInStagingView: true
useHunkModeInStagingView: true
commitLength:
show: true
showListFooter: true
showFileTree: true
showRootItemInFileTree: false
showNumstatInFilesView: false
showRandomTip: false
showCommandLog: false
showBottomLine: true
showPanelJumps: true
showIcons: true
nerdFontsVersion: ""
showFileIcons: true
commitAuthorShortLength: 2
commitAuthorLongLength: 17
commitHashLength: 8
showBranchCommitHash: false
showDivergenceFromBaseBranch: none
commandLogSize: 8
splitDiff: auto
screenMode: normal
border: rounded
animateExplosion: true
portraitMode: auto
filterMode: substring
statusPanelView: dashboard
switchToFilesAfterStashPop: true
switchToFilesAfterStashApply: true
switchTabsWithPanelJumpKeys: false
theme:
activeBorderColor:
- '#89b4fa'
- bold
inactiveBorderColor:
- '#a6adc8'
optionsTextColor:
- '#89b4fa'
selectedLineBgColor:
- '#313244'
cherryPickedCommitBgColor:
- '#45475a'
cherryPickedCommitFgColor:
- '#89b4fa'
unstagedChangesColor:
- '#f38ba8'
defaultFgColor:
- '#cdd6f4'
searchingActiveBorderColor:
- '#f9e2af'
authorColors:
'*': '#b4befe'
git:
diffCommand: "delta --dark --paging=always"
fzfIntegration: true
pagers: []
commit:
signOff: true
gpgSign: true
autoWrapCommitMessage: true
autoWrapWidth: 72
merging:
manualCommit: false
args: ""
squashMergeMessage: Squash merge {{selectedRef}} into {{currentBranch}}
mainBranches:
- master
- main
skipHookPrefix: WIP
autoFetch: true
autoRefresh: true
autoForwardBranches: onlyMainBranches
fetchAll: true
autoStageResolvedConflicts: true
branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} --
allBranchesLogCmds:
- git log --graph --all --color=always --abbrev-commit --decorate --date=relative --pretty=medium
ignoreWhitespaceInDiffView: false
diffContextSize: 3
renameSimilarityThreshold: 50
overrideGpg: false
disableForcePushing: false
commitPrefix: []
commitPrefixes: {}
branchPrefix: ""
parseEmoji: false
log:
order: topo-order
showGraph: always
showWholeGraph: false
localBranchSortOrder: date
remoteBranchSortOrder: date
truncateCopiedCommitHashesTo: 12
paging:
colorArg: always
pager: delta --dark --paging=never --syntax-theme base16-256 -s
update:
method: prompt
days: 14
refresher:
refreshInterval: 10
fetchInterval: 60
confirmOnQuit: false
quitOnTopLevelReturn: false
disableStartupPopups: false
customCommands: []
services: {}
notARepository: prompt
promptToReturnFromSubprocess: false
+54 -32
View File
@@ -1,37 +1,59 @@
{ {
"LazyVim": { "branch": "main", "commit": "25abbf546d564dc484cf903804661ba12de45507" }, "LazyVim": { "branch": "main", "commit": "fca0af57cc3851b14f96a795a9c9bfafc5096dd1" },
"blink.cmp": { "branch": "main", "commit": "bae4bae0eedd1fa55f34b685862e94a222d5c6f8" }, "SchemaStore.nvim": { "branch": "main", "commit": "157fa3f37a3be55ceb375274e2f3ea2d7d2f9ef6" },
"blink-copilot": { "branch": "main", "commit": "7ad8209b2f880a2840c94cdcd80ab4dc511d4f39" },
"blink.cmp": { "branch": "main", "commit": "451168851e8e2466bc97ee3e026c3dcb9141ce07" },
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
"catppuccin": { "branch": "main", "commit": "30fa4d122d9b22ad8b2e0ab1b533c8c26c4dde86" }, "catppuccin": { "branch": "main", "commit": "384f304c8b04664c9e0091fbfb3923c5f97c1bcf" },
"conform.nvim": { "branch": "master", "commit": "b4aab989db276993ea5dcb78872be494ce546521" }, "cmake-tools.nvim": { "branch": "master", "commit": "b3a5d4d3e889d0f8f0c94ccd910407c6ce466b25" },
"flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" }, "conform.nvim": { "branch": "master", "commit": "086a40dc7ed8242c03be9f47fbcee68699cc2395" },
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" }, "copilot.lua": { "branch": "master", "commit": "8e2a91828210d6043744468f6d7027d256a41f42" },
"fzf-lua": { "branch": "main", "commit": "cb6ef028cacc1d855d152917993fefd12300f24e" }, "crates.nvim": { "branch": "main", "commit": "ac9fa498a9edb96dc3056724ff69d5f40b898453" },
"gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" }, "dial.nvim": { "branch": "master", "commit": "f2634758455cfa52a8acea6f142dcd6271a1bf57" },
"grug-far.nvim": { "branch": "main", "commit": "50d9ee2b5a19634670441948e7e4afaa042f1059" }, "flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" },
"gruvbox.nvim": { "branch": "main", "commit": "5e0a460d8e0f7f669c158dedd5f9ae2bcac31437" }, "friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "fzf-lua": { "branch": "main", "commit": "6e41ba7505f35a6f054ca682b043aa0cea36c2ef" },
"lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, "gh.nvim": { "branch": "main", "commit": "6f367b2ab8f9d4a0a23df2b703a3f91137618387" },
"lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" }, "gitsigns.nvim": { "branch": "main", "commit": "7c4faa3540d0781a28588cafbd4dd187a28ac6e3" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, "grug-far.nvim": { "branch": "main", "commit": "dc4684e163971bb1f5bfb93fbd4bb3e892bf9b15" },
"mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, "inc-rename.nvim": { "branch": "main", "commit": "0074b551a17338ccdcd299bd86687cc651bcb33d" },
"mini.ai": { "branch": "main", "commit": "45a26d032d8703f280c69c2ed9fb4e1bfc8f24f9" }, "lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
"mini.icons": { "branch": "main", "commit": "f9a177c11daa7829389b7b6eaaec8b8a5c47052d" }, "lazydev.nvim": { "branch": "main", "commit": "ff2cbcba459b637ec3fd165a2be59b7bbaeedf0d" },
"mini.pairs": { "branch": "main", "commit": "3738ea30ff33e0cbf2983dc67319a5468d25b0a9" }, "litee.nvim": { "branch": "main", "commit": "4efaf373322d9e71eaff31164abb393417cc6f6a" },
"neo-tree.nvim": { "branch": "main", "commit": "e01ca7de8e6dbc6118bcb12c4cbe1f88162a337f" }, "lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" },
"noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "a676ab7282da8d651e175118bcf54483ca11e46d" },
"mason.nvim": { "branch": "main", "commit": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65" },
"mini.ai": { "branch": "main", "commit": "4b0a6207341d895b6cfe9bcb1e4d3e8607bfe4f4" },
"mini.hipatterns": { "branch": "main", "commit": "2c5dce6dc7443de814d16f7470549811ee86e664" },
"mini.icons": { "branch": "main", "commit": "5b9076dae1bfbe47ba4a14bc8b967cde0ab5d77e" },
"mini.pairs": { "branch": "main", "commit": "b7fde3719340946feb75017ef9d75edebdeb0566" },
"neotest": { "branch": "master", "commit": "deadfb1af5ce458742671ad3a013acb9a6b41178" },
"neotest-golang": { "branch": "main", "commit": "58d07a76d714f8f768bbe27711b06d41ca237728" },
"neotest-python": { "branch": "master", "commit": "b0d3a861bd85689d8ed73f0590c47963a7eb1bf9" },
"neotest-zig": { "branch": "main", "commit": "de63f3b9a182d374d2e71cf44385326682ec90e7" },
"noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
"nvim-lint": { "branch": "master", "commit": "f126af5345c7472e9a0cdbe1d1a29209be72c4c4" }, "nvim-ansible": { "branch": "main", "commit": "c7f595d568b588942d4d0c37b5cd6cae3764a148" },
"nvim-lspconfig": { "branch": "master", "commit": "d89f4891f0720cd2598e4bdd60010d8784b2ac8a" }, "nvim-lint": { "branch": "master", "commit": "606b823a57b027502a9ae00978ebf4f5d5158098" },
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, "nvim-lspconfig": { "branch": "master", "commit": "dd261ad5266ab5bbec249d21efeceda98ff3e1a6" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "71385f191ec06ffc60e80e6b0c9a9d5daed4824c" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
"nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" }, "nvim-treesitter": { "branch": "main", "commit": "ebc3201290b8372df2b3a1c23b71b9f007d972ff" },
"persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" }, "nvim-treesitter-textobjects": { "branch": "main", "commit": "4e91b5d0394329a229725b021a8ea217099826ef" },
"nvim-ts-autotag": { "branch": "main", "commit": "8e1c0a389f20bf7f5b0dd0e00306c1247bda2595" },
"persistence.nvim": { "branch": "main", "commit": "b20b2a7887bd39c1a356980b45e03250f3dce49c" },
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" }, "render-markdown.nvim": { "branch": "main", "commit": "e3c18ddd27a853f85a6f513a864cf4f2982b9f26" },
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, "rustaceanvim": { "branch": "master", "commit": "f2f0c1231a5b019dbc1fd6dafac1751c878925a3" },
"tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, "snacks.nvim": { "branch": "main", "commit": "a049339328e2599ad6e85a69fa034ac501e921b2" },
"trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" },
"ts-comments.nvim": { "branch": "main", "commit": "1bd9d0ba1d8b336c3db50692ffd0955fe1bb9f0c" }, "tokyonight.nvim": { "branch": "main", "commit": "5da1b76e64daf4c5d410f06bcb6b9cb640da7dfd" },
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } "trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" },
"ts-comments.nvim": { "branch": "main", "commit": "123a9fb12e7229342f807ec9e6de478b1102b041" },
"venv-selector.nvim": { "branch": "main", "commit": "42e8faadf9b819654f29eb1a785797a3a328f301" },
"vim-dadbod": { "branch": "master", "commit": "6d1d41da4873a445c5605f2005ad2c68c99d8770" },
"vim-dadbod-completion": { "branch": "master", "commit": "a8dac0b3cf6132c80dc9b18bef36d4cf7a9e1fe6" },
"vim-dadbod-ui": { "branch": "master", "commit": "07e92e22114cc5b1ba4938d99897d85b58e20475" },
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" },
"yanky.nvim": { "branch": "main", "commit": "784188e0a7363e762e53140f39124d786aec0832" }
} }
+27 -3
View File
@@ -1,10 +1,34 @@
{ {
"extras": [ "extras": [
"lazyvim.plugins.extras.ai.copilot",
"lazyvim.plugins.extras.coding.yanky",
"lazyvim.plugins.extras.editor.dial",
"lazyvim.plugins.extras.editor.fzf",
"lazyvim.plugins.extras.editor.inc-rename",
"lazyvim.plugins.extras.formatting.black",
"lazyvim.plugins.extras.formatting.prettier",
"lazyvim.plugins.extras.lang.ansible",
"lazyvim.plugins.extras.lang.cmake",
"lazyvim.plugins.extras.lang.docker",
"lazyvim.plugins.extras.lang.git",
"lazyvim.plugins.extras.lang.go",
"lazyvim.plugins.extras.lang.json",
"lazyvim.plugins.extras.lang.markdown",
"lazyvim.plugins.extras.lang.python",
"lazyvim.plugins.extras.lang.rust",
"lazyvim.plugins.extras.lang.sql",
"lazyvim.plugins.extras.lang.toml",
"lazyvim.plugins.extras.lang.yaml",
"lazyvim.plugins.extras.lang.zig",
"lazyvim.plugins.extras.test.core",
"lazyvim.plugins.extras.util.dot",
"lazyvim.plugins.extras.util.gh",
"lazyvim.plugins.extras.util.gitui",
"lazyvim.plugins.extras.util.mini-hipatterns"
], ],
"install_version": 7, "install_version": 8,
"news": { "news": {
"NEWS.md": "10960" "NEWS.md": "11866"
}, },
"version": 8 "version": 8
} }
+45 -45
View File
@@ -1,53 +1,53 @@
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then if not (vim.uv or vim.loop).fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git" local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({ vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" }, { "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" }, { out, "WarningMsg" },
{ "\nPress any key to exit..." }, { "\nPress any key to exit..." },
}, true, {}) }, true, {})
vim.fn.getchar() vim.fn.getchar()
os.exit(1) os.exit(1)
end end
end end
vim.opt.rtp:prepend(lazypath) vim.opt.rtp:prepend(lazypath)
require("lazy").setup({ require("lazy").setup({
spec = { spec = {
-- add LazyVim and import its plugins -- add LazyVim and import its plugins
{ "LazyVim/LazyVim", import = "lazyvim.plugins" }, { "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- import/override with your plugins -- import/override with your plugins
{ import = "plugins" }, { import = "plugins" },
}, },
defaults = { defaults = {
-- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup. -- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
-- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default. -- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
lazy = false, lazy = false,
-- It's recommended to leave version=false for now, since a lot the plugin that support versioning, -- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
-- have outdated releases, which may break your Neovim install. -- have outdated releases, which may break your Neovim install.
version = false, -- always use the latest git commit version = false, -- always use the latest git commit
-- version = "*", -- try installing the latest stable version for plugins that support semver -- version = "*", -- try installing the latest stable version for plugins that support semver
}, },
install = { colorscheme = { "tokyonight", "habamax" } }, install = { colorscheme = { "catppuccin" } },
checker = { checker = {
enabled = true, -- check for plugin updates periodically enabled = true, -- check for plugin updates periodically
notify = false, -- notify on update notify = false, -- notify on update
}, -- automatically check for plugin updates }, -- automatically check for plugin updates
performance = { performance = {
rtp = { rtp = {
-- disable some rtp plugins -- disable some rtp plugins
disabled_plugins = { disabled_plugins = {
"gzip", "gzip",
-- "matchit", -- "matchit",
-- "matchparen", -- "matchparen",
-- "netrwPlugin", -- "netrwPlugin",
"tarPlugin", "tarPlugin",
"tohtml", "tohtml",
"tutor", "tutor",
"zipPlugin", "zipPlugin",
}, },
},
}, },
},
}) })
+24
View File
@@ -0,0 +1,24 @@
return {
{
"catppuccin/nvim",
name = "catppuccin",
priority = 1000,
opts = {
flavour = "mocha", -- Choose: latte, frappe, macchiato, mocha
transparent_background = true,
integrations = {
cmp = true,
gitsigns = true,
nvimtree = true,
notify = true,
mini = { enabled = true },
navic = { enabled = true, custom_bg = "lualine" },
telescope = true,
which_key = true,
-- Add other integrations as needed
},
dim_inactive = { enabled = false },
},
},
{ "LazyVim/LazyVim", opts = { colorscheme = "catppuccin" } },
}
-12
View File
@@ -1,12 +0,0 @@
return {
-- add gruvbox
{ "ellisonleao/gruvbox.nvim" },
-- Configure LazyVim to load gruvbox
{
"LazyVim/LazyVim",
opts = {
colorscheme = "gruvbox",
},
},
}
+102 -140
View File
@@ -1,165 +1,127 @@
console_title_template = '{{ .Shell }} in {{ .Folder }}' console_title_template = '{{ .Shell }} in {{ .Folder }}'
version = 3 version = 4
final_space = true final_space = true
[palette] [palette]
black = '#262B44' black = '#1e1e2e' # Base
blue = '#4B95E9' surface = '#313244' # Surface0
green = '#59C9A5' white = '#cdd6f4' # Text
orange = '#F07623' blue = '#89b4fa' # Blue
red = '#D81E5B' sapphire = '#74c7ec' # Sapphire
white = '#E0DEF4' lavender = '#b4befe' # Lavender
yellow = '#F3AE35' green = '#a6e3a1' # Green
mauve = '#cba6f7' # Mauve
red = '#f38ba8' # Red
yellow = '#f9e2af' # Yellow
[secondary_prompt] [secondary_prompt]
template = '<p:yellow,transparent></><,p:yellow> > </><p:yellow,transparent></> ' template = '<p:mauve,transparent></><,p:mauve> > </><p:mauve,transparent></> '
foreground = 'p:black' foreground = 'p:black'
background = 'transparent' background = 'transparent'
[transient_prompt] [transient_prompt]
template = '<p:yellow,transparent></><,p:yellow> {{ .Folder }} </><p:yellow,transparent></> ' template = '<p:mauve,transparent></><,p:mauve> {{ .Folder }} </><p:mauve,transparent></> '
foreground = 'p:black' foreground = 'p:black'
background = 'transparent' background = 'transparent'
[upgrade] [upgrade]
source = 'cdn' source = 'cdn'
interval = '168h' interval = '168h'
auto = false auto = false
notice = false notice = false
[[blocks]] [[blocks]]
type = 'prompt' type = 'prompt'
alignment = 'left' alignment = 'left'
newline = true
[[blocks.segments]] [[blocks.segments]]
leading_diamond = '' leading_diamond = ''
trailing_diamond = '' trailing_diamond = ''
template = ' {{ if .SSHSession }} {{ end }}{{ .UserName }} ' template = ' {{ if .SSHSession }} {{ end }}{{ .UserName }} '
foreground = 'p:black' foreground = 'p:black'
background = 'p:yellow' background = 'p:mauve'
type = 'session' type = 'session'
style = 'diamond' style = 'diamond'
[[blocks.segments]] [[blocks.segments]]
template = ' {{ path .Path .Location }} ' template = '  <b>{{ path .Path .Location }}</b> '
foreground = 'p:white' foreground = 'p:sapphire'
powerline_symbol = '' powerline_symbol = ''
background = 'p:orange' background = 'p:surface'
type = 'path' type = 'path'
style = 'powerline' style = 'powerline'
[blocks.segments.properties] [[blocks.segments]]
style = 'folder' template = '  <b>{{ .HEAD }}</b>{{ if .BranchStatus }} {{ .BranchStatus }}{{ end }}{{ if .Working.Changed }}  {{ .Working.String }}{{ end }}{{ if .Staging.Changed }}  {{ .Staging.String }}{{ end }} '
foreground = 'p:green'
powerline_symbol = ''
background = 'p:surface'
type = 'git'
style = 'powerline'
foreground_templates = [
'{{ if or (.Working.Changed) (.Staging.Changed) }}p:black{{ end }}',
]
background_templates = [
'{{ if or (.Working.Changed) (.Staging.Changed) }}p:yellow{{ end }}',
]
[[blocks.segments]] [[blocks.segments]]
template = ' {{ if .UpstreamURL }}{{ url .UpstreamIcon .UpstreamURL }} {{ end }}{{ .HEAD }}{{if .BranchStatus }} {{ .BranchStatus }}{{ end }}{{ if .Working.Changed }}  {{ .Working.String }}{{ end }}{{ if .Staging.Changed }}  {{ .Staging.String }}{{ end }} ' template = ' '
foreground = 'p:black' foreground = 'p:yellow'
powerline_symbol = '' powerline_symbol = ''
background = 'p:green' background = 'p:surface'
type = 'git' type = 'root'
style = 'powerline' style = 'powerline'
foreground_templates = ['{{ if or (.Working.Changed) (.Staging.Changed) }}p:black{{ end }}', '{{ if and (gt .Ahead 0) (gt .Behind 0) }}p:white{{ end }}', '{{ if gt .Ahead 0 }}p:white{{ end }}']
background_templates = ['{{ if or (.Working.Changed) (.Staging.Changed) }}p:yellow{{ end }}', '{{ if and (gt .Ahead 0) (gt .Behind 0) }}p:red{{ end }}', '{{ if gt .Ahead 0 }}#49416D{{ end }}', '{{ if gt .Behind 0 }}#7A306C{{ end }}']
[blocks.segments.properties] [[blocks.segments]]
branch_template = '{{ trunc 25 .Branch }}' leading_diamond = '<transparent,background></>'
fetch_status = true trailing_diamond = ''
fetch_upstream_icon = true template = ' {{ if gt .Code 0 }}{{ else }}{{ end }} '
foreground = 'p:lavender'
[[blocks.segments]] background = 'p:surface'
template = '' type = 'status'
foreground = 'p:white' style = 'diamond'
powerline_symbol = '' background_templates = ['{{ if gt .Code 0 }}p:red{{ end }}']
background = 'p:yellow' foreground_templates = ['{{ if gt .Code 0 }}p:black{{ end }}']
type = 'root'
style = 'powerline'
[[blocks.segments]]
leading_diamond = '<transparent,background></>'
trailing_diamond = ''
template = ' {{ if gt .Code 0 }}{{ else }}{{ end }} '
foreground = 'p:white'
background = 'p:blue'
type = 'status'
style = 'diamond'
background_templates = ['{{ if gt .Code 0 }}p:red{{ end }}']
[blocks.segments.properties]
always_enabled = true
[[blocks]] [[blocks]]
type = 'rprompt' type = 'rprompt'
[[blocks.segments]] [[blocks.segments]]
template = ' ' template = ' <b>{{ .Version }}</b>'
foreground = 'p:green' foreground = 'p:green'
background = 'transparent' background = 'transparent'
type = 'node' type = 'node'
style = 'plain' style = 'plain'
[blocks.segments.properties] [[blocks.segments]]
display_mode = 'files' template = ' <b>{{ .Version }}</b>'
fetch_package_manager = false foreground = 'p:blue'
home_enabled = false background = 'transparent'
type = 'python'
style = 'plain'
[[blocks.segments]] [[blocks.segments]]
template = '' template = ' <b>{{ .Version }}</b>'
foreground = 'p:blue' foreground = 'p:red' # Rust looks great in Red/Maroon for Mocha
background = 'transparent' background = 'transparent'
type = 'go' type = 'rust'
style = 'plain' style = 'plain'
[blocks.segments.properties] [[blocks.segments]]
fetch_version = false template = 'at <p:mauve><b>{{ .CurrentDate | date "15:04:05" }}</b></>'
foreground = 'p:white'
[[blocks.segments]] background = 'transparent'
template = '' type = 'time'
foreground = 'p:yellow' style = 'plain'
background = 'transparent'
type = 'python'
style = 'plain'
[blocks.segments.properties]
display_mode = 'files'
fetch_version = false
fetch_virtual_env = false
[[blocks.segments]]
template = 'in <p:blue><b>{{ .Name }}</b></> '
foreground = 'p:white'
background = 'transparent'
type = 'shell'
style = 'plain'
[[blocks.segments]]
template = 'at <p:blue><b>{{ .CurrentDate | date "15:04:05" }}</b></>'
foreground = 'p:white'
background = 'transparent'
type = 'time'
style = 'plain'
[[tooltips]] [[tooltips]]
leading_diamond = '' leading_diamond = ''
trailing_diamond = '' trailing_diamond = ''
template = '  {{ .Profile }}{{ if .Region }}@{{ .Region }}{{ end }} ' template = '  {{ .Profile }}{{ if .Region }}@{{ .Region }}{{ end }} '
foreground = 'p:white' foreground = 'p:black'
background = 'p:orange' background = 'p:blue'
type = 'aws' type = 'aws'
style = 'diamond' style = 'diamond'
tips = ['aws'] tips = ['aws']
[tooltips.properties]
display_default = true
[[tooltips]]
leading_diamond = ''
trailing_diamond = ''
template = '  {{ .Name }} '
foreground = 'p:white'
background = 'p:blue'
type = 'az'
style = 'diamond'
tips = ['az']
[tooltips.properties]
display_default = true
+42
View File
@@ -0,0 +1,42 @@
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"*": "ask",
"todowrite": "allow",
"read": {
"*": "allow",
"*.env": "deny"
},
"edit": "ask",
"webfetch": "allow",
"websearch": "allow",
"question": "allow",
"grep": "allow",
"glob": "allow",
"lsp": "allow",
"skill": "allow",
"bash": {
"*": "ask",
"ls": "allow",
"ls *": "allow",
"pwd": "allow",
"git status": "allow",
"git status *": "allow",
"git diff *": "allow",
"git log": "allow",
"git log *": "allow",
"grep *": "allow",
"just *": "allow",
"cargo test *": "allow",
"cargo fmt": "allow",
"cargo fmt *": "allow",
"cargo check": "allow",
"cargo check *": "allow",
"cargo clippy": "allow",
"cargo clippy *": "allow",
"gh issue view *": "allow",
"gh issue list *": "allow",
"gh pr view *": "allow",
}
}
}
+1
View File
@@ -0,0 +1 @@
eza/themes
+89
View File
@@ -0,0 +1,89 @@
# Additional: Make pane resizing easier with vim-style keys
bind -r h resize-pane -L 5
bind -r j resize-pane -D 5
bind -r k resize-pane -U 5
bind -r l resize-pane -R 5
# Status bar customization
set -g status-bg '#1e1e2e'
set -g status-fg '#cdd6f4'
set -g status-left-length 40
set -g status-right-length 100
set -g status-interval 2
set -g status-left "#[fg=#1e1e2e,bg=#cba6f7,bold] #S #[fg=#cba6f7,bg=#74c7ec,nobold]#[fg=#1e1e2e,bg=#74c7ec,bold] #(whoami)@#H #[fg=#74c7ec,bg=#313244,nobold]#[fg=#cdd6f4,bg=#313244] #(basename #{pane_current_path}) #[fg=#313244,bg=default,nobold]"
set -g status-right "#[fg=#b4befe,bg=default]#[fg=#1e1e2e,bg=#b4befe,bold] #(git rev-parse --abbrev-ref HEAD 2>/dev/null || echo '-') #[fg=#313244,bg=#b4befe,nobold]#[fg=#cdd6f4,bg=#313244] %Y-%m-%d %H:%M "
# --- Terminal & Compatibility ---
# Use 256-color mode and ensure compatibility with xterm
set-option -g default-terminal 'screen-256color'
set-option -sa terminal-overrides ",xterm-256color:RGB"
# --- Mouse & Key Bindings ---
# Enable mouse support for pane/window selection and resizing
set -g mouse on
# Reduce scroll speed (3 lines per notch)
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'copy-mode -e; send-keys -N 3 Up'"
bind -n WheelDownPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'send-keys -N 3 Down'"
# (Optional) Change prefix to Ctrl+Space instead of default Ctrl+B
# Alt+Shift+H/L to switch windows (vim-style)
bind -n M-H previous-window
bind -n M-L next-window
# Start windows and panes at 1 for easier navigation
set -g base-index 1
set -g pane-base-index 1
set-window-option -g pane-base-index 1
set-option -g renumber-windows on
# --- Miscellaneous ---
# Various usability and performance tweaks
set -g detach-on-destroy off # don't exit from tmux when closing a session
set -g escape-time 0 # zero-out escape time delay
set -g history-limit 1000000 # increase history size
set -g set-clipboard on # use system clipboard
set -g status-position top # macOS / darwin style
set -g default-terminal "${TERM}"
# --- Copy & Selection ---
# Use vi-style keys in copy mode
set-window-option -g mode-keys vi
# Keybindings for copy mode (vim-style selection and yanking)
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
# Split panes in the current working directory
bind '"' split-window -v -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
# Use double lines for pane borders
set -g pane-border-lines double
# --- Plugins ---
# Plugin Manager (TPM) and useful plugins:
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'catppuccin/tmux#v2.1.3'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-yank'
set -g @plugin 'fcsonline/tmux-thumbs'
set -g @plugin 'sainnhe/tmux-fzf'
set -g @plugin 'wfxr/tmux-fzf-url'
set -g @plugin 'christoomey/vim-tmux-navigator'
set -g @plugin 'omerxx/tmux-floax'
# Floax plugin settings (floating windows)
set -g @floax-width '80%'
set -g @floax-height '80%'
set -g @floax-bind 'p'
set -g @floax-change-path 'true'
# Theme settings
set -g @catppuccin_flavor 'mocha'
# Initialize TPM (Tmux Plugin Manager)
run '~/.tmux/plugins/tpm/tpm'
+11 -91
View File
@@ -1,101 +1,21 @@
# Include any additional configuration file(s)
# [include] sections are processed in the order you write them # Topgrade configuration for seamless integration with tmux, kitty, and btop (Gruvbox dark theme)
# Files in $CONFIG_DIR/topgrade.d/ are automatically included before this file
[include] [include]
# paths = ["/etc/topgrade.toml"] # paths = ["/etc/topgrade.toml"]
[misc] [misc]
# Run `sudo -v` to cache credentials at the start of the run pre_sudo = true
# This avoids a blocking password prompt in the middle of an unattended run no_retry = true
# (default: false) cleanup = true
# pre_sudo = false assume_yes = true
only = []
# Sudo command to be used display_time = true
# sudo_command = "sudo" notify_each_step = true
# Disable specific steps - same options as the command line flag
# disable = ["system", "emacs"]
# Ignore failures for these steps
# ignore_failures = ["powershell"]
# List of remote machines with Topgrade installed on them
# remote_topgrades = ["toothless", "pi", "parnas"]
# Path to Topgrade executable on remote machines
# remote_topgrade_path = ".cargo/bin/topgrade"
# Arguments to pass to SSH when upgrading remote systems
# ssh_arguments = "-o ConnectTimeout=2"
# Arguments to pass tmux when pulling Repositories
# tmux_arguments = "-S /var/tmux.sock"
# Do not set the terminal title (default: true)
# set_title = true
# Display the time in step titles (default: true)
# display_time = true
# Don't ask for confirmations (no default value)
# assume_yes = true
# Do not ask to retry failed steps (default: false)
# no_retry = true
# Run inside tmux (default: false)
# run_in_tmux = true
# Changes the way topgrade interacts with
# the tmux session, creating the session
# and only attaching to it if not inside tmux
# (default: "attach_if_not_in_session", allowed values: "attach_if_not_in_session", "attach_always")
# tmux_session_mode = "attach_if_not_in_session"
# Cleanup temporary or old files (default: false)
# cleanup = true
# Send a notification for every step (default: false)
# notify_each_step = false
# Skip sending a notification at the end of a run (default: false)
# skip_notify = true
# The Bash-it branch to update (default: "stable")
# bashit_branch = "stable"
# Run specific steps - same options as the command line flag
# only = ["system", "emacs"]
# Whether to self update
#
# this will be ignored if the binary is built without self update support
#
# available also via setting the environment variable TOPGRADE_NO_SELF_UPGRADE)
# no_self_update = true
# Extra tracing filter directives
# These are prepended to the `--log-filter` argument
# See: https://docs.rs/tracing-subscriber/latest/tracing_subscriber/filter/struct.EnvFilter.html#directives
# log_filters = ["topgrade::command=debug", "warn"]
# Commands to run before anything
[pre_commands]
# "Emacs Snapshot" = "rm -rf ~/.emacs.d/elpa.bak && cp -rl ~/.emacs.d/elpa ~/.emacs.d/elpa.bak"
# Commands to run after anything
[post_commands]
# "Emacs Snapshot" = "rm -rf ~/.emacs.d/elpa.bak && cp -rl ~/.emacs.d/elpa ~/.emacs.d/elpa.bak"
# Custom commands
[commands]
# "Python Environment" = "~/dev/.env/bin/pip install -i https://pypi.python.org/simple -U --upgrade-strategy eager jupyter"
# "Custom command using interactive shell (unix)" = "-i vim_upgrade"
[python] [python]
# enable_pip_review = true ###disabled by default # enable_pip_review = true ###disabled by default
@@ -135,7 +55,7 @@
# For the BrewFormula step # For the BrewFormula step
# Execute `brew autoremove` after the step. # Execute `brew autoremove` after the step.
# autoremove = true autoremove = true
# For the BrewFormula step # For the BrewFormula step
# Upgrade formulae built from the HEAD branch; `brew upgrade --fetch-HEAD` # Upgrade formulae built from the HEAD branch; `brew upgrade --fetch-HEAD`
+103 -109
View File
@@ -1,151 +1,145 @@
[alias] [alias]
a = add a = add
aa = add --all aa = add --all
ap = add --patch ap = add --patch
au = add --update au = add --update
b = branch
b = branch ba = branch --all
ba = branch --all bd = branch --delete
bd = branch --delete bD = branch --delete --force
bD = branch --delete --force bm = branch --move
bm = branch --move bM = branch --move --force
bM = branch --move --force c = commit
cs = commit --signoff
c = commit ca = commit --amend
cs = commit --signoff cas = commit --amend --signoff
ca = commit --amend can = commit --amend --no-edit
cas = commit --amend --signoff cans = commit --amend --no-edit --signoff
can = commit --amend --no-edit ci = commit --interactive
cans == commit --amend --no-edit --signoff cis = commit --amend --signoff
ci = commit --interactive cm = commit --message
cis = commit --amend --signoff cms = commit --signoff --message
cm = commit --message cv = commit --verbose
cms = commit --signoff --message cvs = commit --verbose --signoff
cv = commit --verbose cl = clone
cvs = commit --verbose --signoff clb = clone --bare
clm = clone --mirror
cl = clone clr = clone --recurse-submodules
clb = clone --bare d = diff
clm = clone --mirror dc = diff --cached
clr = clone --recurse-submodules ds = diff --staged
dw = diff --word-diff
d = diff f = fetch --atomic
dc = diff --cached F = fetch --force
ds = diff --staged fa = fetch --all
dw = diff --word-diff fp = fetch --atomic --prune --prune-tags
fpa = fetch --prune --prune-tags --all
f = fetch --atomic l = log
F = fetch --force lc = log --pretty=format:'- %s by %an %h' --no-merges
fa = fetch --all lg = log --graph
fp = fetch --atomic --prune --prune-tags lk = log --graph --topo-order --abbrev-commit --date=short --decorate --all --boundary --pretty=format:'%Cgreen%ad %Cred%h%Creset -%C(yellow)%d%Creset %s %Cblue[%cn]%Creset'
fpa = fetch --prune --prune-tags --all lo = log --oneline
lp = log --patch
l = log lt = log --topo-order
lc = log --pretty=format:'- %s by %an %h' --no-merges o = checkout
lg = log --graph ob = checkout -b
lk = log --graph --topo-order --abbrev-commit --date=short --decorate --all --boundary --pretty=format:'%Cgreen%ad %Cred%h%Creset -%C(yellow)%d%Creset %s %Cblue[%cn]%Creset' p = push
lo = log --oneline pf = push --force
lp = log --patch puh = push -u origin HEAD
lt = log --topo-order r = rebase
ri = rebase --interactive
o = checkout rim = rebase --interactive origin/master
ob = checkout -b s = status --short --branch
branch-list-merged = "!git branch --merged master | grep -v -E '(origin|master)'"
p = push branch-delete-merged = "!git branch-list-merged | xargs git branch --delete"
pf = push --force unstage = reset HEAD
puh = push -u origin HEAD undo-commit = reset --soft HEAD^
set-upstream = !git branch --set-upstream-to=origin/`git symbolic-ref --short HEAD`
r = rebase
ri = rebase --interactive
rim = rebase --interactive origin/master
s = status --short --branch
branch-list-merged = "!git branch --merged master | grep -v -E '(origin|master)'"
branch-delete-merged = "!git branch-list-merged | xargs git branch --delete"
unstage = reset HEAD
undo-commit = reset --soft HEAD^
set-upstream = !git branch --set-upstream-to=origin/`git symbolic-ref --short HEAD`
[color] [color]
ui = auto ui = auto
status = auto status = auto
[commit] [commit]
gpgsign = true gpgsign = true
signoff = true
[core] [core]
editor = nvim editor = nvim
autocrlf = input autocrlf = input
excludesfile = ~/.gitignore excludesfile = ~/.gitignore
attributesfile = ~/.gitattributes attributesfile = ~/.gitattributes
pager = delta pager = delta
[credential]
helper = cache --timeout 21600
helper = oauth
helper = !/opt/homebrew/bin/gh auth git-credential
helper = !/usr/bin/glab auth git-credential
[credential "https://github.com"] [credential "https://github.com"]
helper = !/opt/homebrew/bin/gh auth git-credential helper = !/opt/homebrew/bin/gh auth git-credential
[credential "https://gitlab.oteri.xyz"] [credential "https://gitlab.oteri.xyz"]
helper = !/usr/bin/glab auth git-credential helper = !/usr/bin/glab auth git-credential
[delta] [delta]
line-numbers = true line-numbers = true
syntax-theme = Dracula syntax-theme = Gruvbox
plus-style = "syntax #2A363B" plus-style = "syntax #3c3836"
plus-emph-style = "syntax #2D4E45" plus-emph-style = "syntax #504945"
minus-style = "syntax #3B2C37" minus-style = "syntax #282828"
minux-emph-style = "syntax #613038" minux-emph-style = "syntax #fb4934"
[diff] [diff]
colorMoved = default colorMoved = default
[fetch] [fetch]
prune = true prune = true
[filter "lfs"] [filter "lfs"]
clean = git-lfs clean -- %f clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f smudge = git-lfs smudge -- %f
process = git-lfs filter-process process = git-lfs filter-process
required = true required = true
[gpg] [gpg]
program = gpg program = gpg
[help] [help]
autocorrect = 10 autocorrect = 10
[include] [include]
path = ~/.gitconfig.local path = ~/.gitconfig.local
[init] [init]
defaultBranch = master defaultBranch = master
[interactive] [interactive]
diffFilter = delta --color-only diffFilter = delta --color-only
[merge] [merge]
conflictstyle = diff3 conflictstyle = zdiff3
[pull] [pull]
autosetupmerge = true autosetupmerge = true
autosetuprebase = true autosetuprebase = true
rebase = true rebase = true
[push] [push]
default = current default = simple
[rerere] [rerere]
enabled = true enabled = true
[user] [user]
name = Anthony Oteri name = Anthony Oteri
email = 4360016+anthonyoteri@users.noreply.github.com email = 4360016+anthonyoteri@users.noreply.github.com
signingkey = D0B1B355AF8E6121 signingkey = D0B1B355AF8E6121
# vim: set commentstring=#\ %s:
[credential]
helper = cache --timeout 21600
helper = oauth
[safe] [safe]
directory = * directory = *
# vim: set commentstring=#\ %s:
[rebase]
updateRefs = true
+6
View File
@@ -0,0 +1,6 @@
# Start the gpg-agent if not already running
if ! pgrep -x -u "${USER}" gpg-agent >/dev/null 2>&1; then
gpg-connect-agent /bye >/dev/null 2>&1
fi
alias gpg-unlock "gpg-connect-agent updatestartuptty /bye"
+29 -46
View File
@@ -1,53 +1,36 @@
Host ol8-dev # Disable strict host key checking for Edgeware hosts
HostName ol8-dev
User anthony
Host srv-nebula-master srv-nebula-master.edgeware.tv
User=oneadmin
Compression=yes
Host 10.16.48.100 anthony-acd-router
User root
StrictHostKeyChecking no
UserKnownHostsFile=/dev/null
Compression=yes
ForwardAgent=yes
Host anthony-remote.edgeware.tv
User root
Compression=yes
ForwardAgent=yes
DynamicForward 12345
Host 10.16.*.* 10.19.* orbit-* anthony-* *.edgeware.tv Host 10.16.*.* 10.19.* orbit-* anthony-* *.edgeware.tv
User root
StrictHostKeyChecking no StrictHostKeyChecking no
UserKnownHostsFile=/dev/null UserKnownHostsFile=/dev/null
Compression=yes ForwardAgent yes
ForwardAgent=yes Compression yes
Host 192.168.11.13, anthony-dev # Example for non-standard port
User root Host custom-port-host
StrictHostKeyChecking no HostName custom.example.com
UserKnownHostsFile=/dev/null User anthony
Compression=yes Port 2222
ForwardAgent=yes ForwardAgent yes
Compression yes
Host convoy # Specific hosts
User=edgeware Host srv-nebula-master srv-nebula-master.edgeware.tv
HostName=convoy.local.oteri.xyz User oneadmin
Compression yes
Host acd-router
User=edgeware
HostName=acd-router.local.oteri.xyz
Host streamer
User=edgeware
HostName=streamer.local.oteri.xyz
Host repackager
User=edgeware
HostName=repackager.local.oteri.xyz
# Production host
Host newenglandsalts.com Host newenglandsalts.com
User=root User root
# Global SSH options for productivity
Host *
ForwardAgent yes
AddKeysToAgent yes
ControlMaster auto
ControlPath ~/.ssh/control-%r@%h:%p
ControlPersist 10m
ServerAliveInterval 60
ServerAliveCountMax 3
User root
Compression yes
StrictHostKeyChecking yes
+87 -48
View File
@@ -1,7 +1,11 @@
############################################################
# Homebrew integration # Homebrew integration
############################################################
eval "$(/opt/homebrew/bin/brew shellenv)" eval "$(/opt/homebrew/bin/brew shellenv)"
# Set the directory we want to store zinit and plugins ############################################################
# Zinit plugin manager setup
############################################################
ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git" ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git"
# Download Zinit, if it's not there yet # Download Zinit, if it's not there yet
@@ -13,89 +17,124 @@ fi
# Source / Load Zinit # Source / Load Zinit
source "${ZINIT_HOME}/zinit.zsh" source "${ZINIT_HOME}/zinit.zsh"
# Configure EZA snippet ############################################################
# EZA configuration
############################################################
zstyle ':omz:plugins:eza' 'dirs-first' yes zstyle ':omz:plugins:eza' 'dirs-first' yes
zstyle ':omz:plugins:eza' 'git-status' yes zstyle ':omz:plugins:eza' 'git-status' yes
zstyle ':omz:plugins:eza' 'icons' yes zstyle ':omz:plugins:eza' 'icons' yes
zstyle ':omz:plugins:eza' 'show-group' yes zstyle ':omz:plugins:eza' 'show-group' yes
# Add in ZSH Plugins ############################################################
# ZSH Plugins (essential and lazy-loaded)
############################################################
zinit light zsh-users/zsh-syntax-highlighting zinit light zsh-users/zsh-syntax-highlighting
zinit light zsh-users/zsh-completions zinit ice wait"1"; zinit light zsh-users/zsh-completions
zinit light zsh-users/zsh-autosuggestions zinit ice wait"1"; zinit light zsh-users/zsh-autosuggestions
zinit light Aloxaf/fzf-tab zinit ice wait"2"; zinit light Aloxaf/fzf-tab
# Add in snippets ############################################################
zinit snippet OMZP::aliases # Oh-My-Zsh Snippets (lazy-loaded)
zinit snippet OMZP::ansible ############################################################
zinit snippet OMZP::aws zinit ice wait"1"; zinit snippet OMZP::aliases
zinit snippet OMZP::brew zinit ice wait"2"; zinit snippet OMZP::ansible
zinit snippet OMZP::command-not-found zinit ice wait"2"; zinit snippet OMZP::aws
zinit snippet OMZP::common-aliases zinit ice wait"1"; zinit snippet OMZP::brew
zinit snippet OMZP::debian zinit ice wait"2"; zinit snippet OMZP::command-not-found
zinit snippet OMZP::docker zinit ice wait"2"; zinit snippet OMZP::common-aliases
zinit snippet OMZP::docker-compose zinit ice wait"2"; zinit snippet OMZP::debian
zinit snippet OMZP::dotenv zinit ice wait"2"; zinit snippet OMZP::docker
zinit snippet OMZP::eza zinit ice wait"2"; zinit snippet OMZP::docker-compose
zinit snippet OMZP::gh #zinit ice wait"2"; zinit snippet OMZP::dotenv
zinit snippet OMZP::git zinit ice wait"1"; zinit snippet OMZP::eza
zinit snippet OMZP::github zinit ice wait"2"; zinit snippet OMZP::gh
zinit snippet OMZP::kitty zinit ice wait"1"; zinit snippet OMZP::git
zinit snippet OMZP::kubectl zinit ice wait"2"; zinit snippet OMZP::github
zinit snippet OMZP::kubectx zinit ice wait"2"; zinit snippet OMZP::kitty
zinit snippet OMZP::nmap zinit ice wait"2"; zinit snippet OMZP::kubectl
zinit snippet OMZP::rust zinit ice wait"2"; zinit snippet OMZP::kubectx
zinit snippet OMZP::ssh zinit ice wait"2"; zinit snippet OMZP::nmap
zinit snippet OMZP::ssh-agent zinit ice wait"2"; zinit snippet OMZP::rust
zinit snippet OMZP::sudo zinit ice wait"2"; zinit snippet OMZP::ssh
zinit ice wait"2"; zinit snippet OMZP::ssh-agent
zinit ice wait"2"; zinit snippet OMZP::sudo
# Load completions ############################################################
autoload -U compinit && compinit # Completion system
############################################################
autoload -U compinit && compinit -C
zinit cdreplay -q zinit cdreplay -q
# Add in Oh-My-Posh Prompt ############################################################
# Oh-My-Posh Prompt
############################################################
if [ "$TERM_PROGRAM" != "Apple_Terminal" ]; then if [ "$TERM_PROGRAM" != "Apple_Terminal" ]; then
eval "$(oh-my-posh init zsh --config ${HOME}/.config/ohmyposh/omp.toml)" eval "$(oh-my-posh init zsh --config ${HOME}/.config/ohmyposh/omp.toml)"
fi fi
# History ############################################################
# History configuration
############################################################
HISTSIZE=5000 HISTSIZE=5000
HISTFILE=~/.zsh_history HISTFILE=~/.zsh_history
SAVEHIST=$HISTSIZE SAVEHIST=$HISTSIZE
HISTDUP=erase HISTDUP=erase
setopt appendhistory # History options grouped for clarity
setopt sharehistory setopt appendhistory sharehistory hist_ignore_space hist_ignore_all_dups hist_save_no_dups hist_ignore_dups
setopt hist_ignore_space
setopt hist_ignore_all_dups
setopt hist_save_no_dups
setopt hist_ignore_dups
############################################################
# Completion styling # Completion styling
############################################################
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'
zstyle ':completion:*' list-colors "${(s.:.)LS_COLOR}" zstyle ':completion:*' list-colors "${(s.:.)LS_COLOR}"
zstyle ':completion:*' menu no zstyle ':completion:*' menu no
zstyle ':fzf-tab:complete:cd:*' fzf-preview 'ls --color $realpath' zstyle ':fzf-tab:complete:cd:*' fzf-preview 'ls --color $realpath'
zstyle ':fzf-tab:complete:__zoxide_z:*' fzf-preview 'ls --color $realpath' zstyle ':fzf-tab:complete:__zoxide_z:*' fzf-preview 'ls --color $realpath'
############################################################
# Shell integrations # Shell integrations
############################################################
eval "$(fzf --zsh)" eval "$(fzf --zsh)"
eval "$(zoxide init --cmd cd zsh)" eval "$(zoxide init --cmd cd zsh)"
# Export custom environment variables ############################################################
# Google Cloud SDK
############################################################
if [ -f "${HOME}/.google-cloud-sdk/path.zsh.inc" ]; then
. "${HOME}/.google-cloud-sdk/path.zsh.inc"
fi
if [ -f "${HOME}/.google-cloud-sdk/completion.zsh.inc" ]; then
. "${HOME}/.google-cloud-sdk/completion.zsh.inc"
fi
############################################################
# Custom environment variables
############################################################
export LANG=en_US.UTF-8 export LANG=en_US.UTF-8
export EDITOR='nvim' export EDITOR='nvim'
export ARCHFLAGS='-arch x86_64' export ARCHFLAGS='-arch x86_64'
export BAT_CONFIG_PATH=~/.config/bat/config.conf export BAT_CONFIG_PATH=~/.config/bat/config.conf
export GPG_TTY=$(tty) export GPG_TTY=$(tty)
export PATH=${HOME}/.local/bin:${HOME}/.cargo/bin:${HOME}/go/bin:${PATH} export PATH="$(brew --prefix rustup)/bin:$HOME/.local/bin:$HOME/.cargo/bin:$HOME/go/bin:$PATH"
export MONOREPO_ROOT=${HOME}/Projects/monorepo export MONOREPO_ROOT="$HOME/Projects/monorepo"
export DOCKER_BUILDKIT=1 export DOCKER_BUILDKIT=1
# Custom aliases ############################################################
alias cat='bat ' # SSH/GPG agent integration
alias vim=$(which nvim) ############################################################
alias vimdiff="$(which nvim) -d" export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
alias docker-compose="$(which docker) compose" gpgconf --launch gpg-agent
alias neofetch=fastfetch
############################################################
# Custom aliases
############################################################
alias cat='bat'
alias vim='nvim'
alias vimdiff='nvim -d'
alias docker-compose='docker compose'
alias neofetch='fastfetch'
alias lazygit='lazygit -ucd $HOME/.config/lazygit'
+58 -16
View File
@@ -1,33 +1,75 @@
# dotfiles # dotfiles
My Dotfiles managed by Gnu Stow
## Usage: Personal dotfiles managed by Gnu Stow for a modular, reproducible, and portable
development environment.
Clone this repository to ~/dotfiles with the following command: ## Usage
Clone this repository to `~/dotfiles`:
```sh ```sh
git clone https://github.com/anthonyoteri/dotfiles ~/dotfiles git clone https://github.com/anthonyoteri/dotfiles ~/dotfiles
``` ```
Change into the `~/dotfiles` directory and create the symlink tree using Change into the `~/dotfiles` directory and create the symlink tree:
```sh ```sh
stow . stow .
``` ```
## Adding a new file. ## Adding a New File
Move the file into the `~/dotfiles` folder under the same directory structure Move the file into the `~/dotfiles` folder under the same directory structure as
as if the root of the repository were the home folder, then run `stow .` to if the root of the repository were the home folder, then run `stow .` to create a
create a symlink. symlink.
## How it works ## How It Works
The original files should live under the `~/dotfiles` directory in the same The original files should live under the `~/dotfiles` directory in the same layout
layout as they would appear in the home directory. Gnu Stow will walk the as they would appear in the home directory. Gnu Stow will walk the directory tree
directory tree, and create symlinks in the parent directory of any files it and create symlinks in the parent directory of any files it finds there. For
finds there. E.g. `~/dotfiles/.foobar` will be mapped as a symlink to example, `~/dotfiles/.foobar` will be mapped as a symlink to `~/.foobar`, and
`~/.foobar`, and `~/dotfiles/some/path/.barfoo` will be mapped as a symlink `~/dotfiles/some/path/.barfoo` will be mapped as a symlink to
to `~/some/path/.barfoo`. `~/some/path/.barfoo`.
---
## Managed Configurations
This repository manages configuration for the following tools:
- **Zsh** (`.zshrc`, `.zprofile`, `.profile`): Shell configuration, plugins,
aliases, and environment variables.
- **Kitty** (`.config/kitty/kitty.conf`): GPU terminal emulator with Gruvbox dark
theme, powerline separators, and font/padding customizations.
- **Tmux** (`.config/tmux/tmux.conf`): Terminal multiplexer with Gruvbox theme,
vim-style navigation, mouse support, and plugin management via TPM.
- **Oh My Posh** (`.config/ohmyposh/omp.toml`): Prompt theme for Zsh, with
multi-line, icons, language versions, and git status.
- **btop** (`.config/btop/btop.conf`): Resource monitor with Gruvbox theme, block
graphs, mouse and vim key support, and matching font/padding.
- **Topgrade** (`.config/topgrade.toml`): Unified system upgrade tool, configured
for notifications, cleanup, and parallel upgrades.
- **Neovim** (`.config/nvim/`): Editor configuration, plugins, and custom Lua
scripts.
- **Zellij** (`.config/zellij/config.kdl`): Terminal workspace manager (if used).
---
## Customization & Extensibility
- All configs are modular and can be extended by adding new files or folders and
running `stow .`.
- Each tools config is documented and tuned for performance, appearance, and
seamless integration.
- Gruvbox dark theme is used for a consistent look across terminal, prompt, and
resource monitor.
---
## License
See [LICENSE](LICENSE) for details.