7 files changed,
73 insertions(+),
79 deletions(-)
Author:
Oleksandr Smirnov
olexsmir@gmail.com
Committed at:
2026-08-27 15:32:52 +0300
Authored at:
2026-08-24 17:08:50 +0300
Parent:
7a287b1
M
bin/go-install-bins.sh
··· 1 1 #!/usr/bin/env bash 2 2 echo -e "\e[32m[gopls]\e[0m"; go install golang.org/x/tools/gopls@latest 3 +echo -e "\e[32m[dlv]\e[0m"; go install github.com/go-delve/delve/cmd/dlv@latest 3 4 echo -e "\e[32m[staticcheck]\e[0m"; go install honnef.co/go/tools/cmd/staticcheck@latest 4 -echo -e "\e[32m[revive]\e[0m"; go install github.com/mgechev/revive@latest 5 5 echo -e "\e[32m[gofumpt]\e[0m"; go install mvdan.cc/gofumpt@latest 6 6 echo -e "\e[32m[goimports]\e[0m"; go install golang.org/x/tools/cmd/goimports@latest 7 -echo -e "\e[32m[golines]\e[0m"; go install github.com/segmentio/golines@latest 8 -echo -e "\e[32m[task]\e[0m"; go install github.com/go-task/task/v3/cmd/task@latest 9 -echo -e "\e[32m[yaegi]\e[0m"; go install github.com/traefik/yaegi/cmd/yaegi@latest 10 7 echo -e "\e[32m[govulncheck]\e[0m"; go install golang.org/x/vuln/cmd/govulncheck@latest 11 -echo -e "\e[32m[natscli]\e[0m"; go install github.com/nats-io/natscli/nats@latest 12 -echo -e "\e[32m[dlv]\e[0m"; go install github.com/go-delve/delve/cmd/dlv@latest 13 -echo -e "\e[32m[gotestsum]\e[0m"; go install gotest.tools/gotestsum@latest 14 - 15 -echo -e "\e[32m[:GoInstallDepsSync<CR>]\e[0m"; nvim --headless +GoInstallDepsSync +q
M
config/fish/config.fish
··· 1 +set -gx SHELL fish 1 2 set -gx GOPATH $HOME/.local/share/go 2 3 set -gx GOBIN $GOPATH/bin 3 4 set -gx CARGO_HOME $HOME/.local/share/cargo ··· 36 37 if status is-interactive 37 38 zoxide init fish | source 38 39 direnv hook fish | source 39 - 40 - function fish_user_key_bindings 41 - fish_vi_key_bindings 42 - end 43 40 44 41 alias ":q" exit 45 42 alias ... "cd ../.."
M
config/fish/functions/fish_prompt.fish
··· 3 3 set -l cwd (prompt_pwd --full-length-dirs 1) 4 4 set -l vcs (prompt_vcs) 5 5 6 - set -l session '' 7 - if set -q ZMX_SESSION 8 - set session (set_color --dim blue)"($ZMX_SESSION) "(set_color normal) 9 - end 6 + set -l close_color normal 7 + test $last_status -ne 0; and set close_color red 10 8 11 - switch $fish_bind_mode 12 - case default 13 - set mode_char "❮" 14 - set mode_color (set_color cyan) 15 - case '*' 16 - set mode_char "❯" 17 - if test $last_status -eq 0 18 - set mode_color (set_color green) 19 - else 20 - set mode_color (set_color red) 21 - end 22 - end 9 + set -l vcs_segment '' 10 + test -n "$vcs"; and set vcs_segment (printf ' (%s%s%s%s)' (set_color blue) $vcs (set_color $close_color) '') 23 11 24 - printf '%s%s%s%s%s%s%s%s ' $session (set_color cyan) $cwd (set_color normal) $vcs $mode_color $mode_char (set_color normal) 12 + printf '%s%s%s%s ' (set_color cyan) $cwd (set_color normal) $vcs_segment(set_color normal) 25 13 end
M
config/fish/functions/prompt_vcs.fish
··· 1 1 function prompt_vcs 2 2 set -l dir $PWD 3 - set -l repo_root "" 4 - set -l vcs_type "" 5 3 set -l depth 0 6 4 7 - while test "$dir" != "/" -a $depth -lt 20 5 + while test "$dir" != / # -a $depth -lt 20 8 6 if test -d "$dir/.jj" 9 - set vcs_type jj 10 - set repo_root $dir 11 - break 12 - end 13 - if test -d "$dir/.git" 14 - set vcs_type git 15 - set repo_root $dir 16 - break 7 + _prompt_vcs_jj 8 + return 9 + else if test -d "$dir/.git" 10 + _prompt_vcs_git $dir 11 + return 17 12 end 18 13 set dir (path dirname $dir) 19 - set depth (math $depth + 1) 20 14 end 15 +end 21 16 22 - test -n "$vcs_type"; or return 17 +function _prompt_vcs_seg -a label 18 + printf '%s%s%s' (set_color normal) (set_color blue) $label (set_color normal) (set_color normal) 19 +end 23 20 24 - if test "$vcs_type" = jj; and command -sq jj 25 - set -l head (jj log --no-graph -r "@" -T "change_id.shortest()" 2>/dev/null) 26 - printf ' %s(jj: %s%s%s)%s' (set_color normal) (set_color blue) $head (set_color normal) (set_color normal) 27 - return 28 - end 21 +function _prompt_vcs_jj 22 + command -sq jj; or return 23 + set -l head (jj log --no-graph -r @ -T 'change_id.shortest()' 2>/dev/null) 24 + test -n "$head"; and _prompt_vcs_seg "jj: $head" 25 +end 29 26 30 - # git 31 - set -l git_dir "$repo_root/.git" 27 +function _prompt_vcs_git -a root 28 + set -l git_dir "$root/.git" 32 29 if test -f "$git_dir" 33 30 read -l gitdir_line < "$git_dir" 34 - set git_dir (string replace "gitdir: " "" -- $gitdir_line) 31 + set git_dir (string replace 'gitdir: ' '' -- $gitdir_line) 35 32 end 36 33 37 34 set -l head_file "$git_dir/HEAD" 38 35 test -f "$head_file"; or return 39 - 40 - read -l head_content < "$head_file" 36 + read -l head < "$head_file" 41 37 42 - if string match -qr '^ref: refs/heads/' -- $head_content 43 - set -l branch (string replace 'ref: refs/heads/' '' -- $head_content) 44 - printf ' %s(%s%s%s)%s' (set_color normal) (set_color blue) $branch (set_color normal) (set_color normal) 38 + set -l m (string match -r '^ref: refs/heads/(.*)' -- $head) 39 + if test -n "$m[2]" 40 + _prompt_vcs_seg $m[2] 45 41 else 46 - printf ' %s(%s%s%s)%s' (set_color normal) (set_color blue) (string sub -l 7 -- $head_content) (set_color normal) (set_color normal) 42 + _prompt_vcs_seg (string sub -l 7 -- $head) 47 43 end 48 44 end
M
config/ghostty/config
··· 1 1 command = fish 2 +mouse-hide-while-typing = true 3 + 2 4 theme = dark:TokyoNight Night,light:Zenbones Light 3 5 # font-family = Jetbrains Mono 4 6 font-family = Maple Mono 5 7 font-size = 13 6 -font-feature = -calt, -liga, -dlig 7 -mouse-hide-while-typing = true 8 +font-feature = -calt -liga -dlig 8 9 9 -gtk-custom-css = ~/.config/ghostty/tab-style.css 10 +cursor-style = bar 11 +cursor-style-blink = false 12 +shell-integration-features = no-cursor 10 13 11 14 keybind = ctrl+,=unbind 12 15 keybind = ctrl+shift+.=move_tab:1
M
config/kitty/kitty.conf
··· 1 1 hide_window_decorations yes 2 2 update_check_interval 0 3 -enabled_layouts horizontal 3 +enabled_layouts splits,stack 4 4 5 5 ## some non terminal things 6 6 shell fish ··· 10 10 listen_on unix:/tmp/kitty 11 11 12 12 ## Font 13 -font_size 12.6 14 -font_family Jetbrains Mono 15 -bold_font auto 16 -italic_font auto 17 -bold_italic_font auto 18 -disable_ligatures never 13 +font_size 13 14 +font_family Maple Mono 15 +disable_ligatures yes 16 +font_hinting full 19 17 20 18 ## Tabs 21 19 tab_bar_style fade ··· 37 35 focus_follows_mouse no 38 36 39 37 ## Mappings 40 -# map alt+1 goto_tab 1 41 -# map alt+2 goto_tab 2 42 -# map alt+3 goto_tab 3 43 -# map alt+4 goto_tab 4 44 -# map alt+5 goto_tab 5 45 -# map alt+6 goto_tab 6 46 -# map alt+7 goto_tab 7 47 -# map alt+8 goto_tab 8 48 -# map alt+9 goto_tab 9 49 -map kitty_mod+t new_tab_with_cwd 50 -map kitty_mod+enter new_window_with_cwd 38 +map alt+1 goto_tab 1 39 +map alt+2 goto_tab 2 40 +map alt+3 goto_tab 3 41 +map alt+4 goto_tab 4 42 +map alt+5 goto_tab 5 43 +map alt+6 goto_tab 6 44 +map alt+7 goto_tab 7 45 +map alt+8 goto_tab 8 46 +map alt+9 goto_tab 9 47 +# map kitty_mod+t new_tab_with_cwd 48 +# map kitty_mod+enter new_window_with_cwd 51 49 52 50 map ctrl+equal change_font_size all +1 53 51 map ctrl+minus change_font_size all -1 54 52 map ctrl+backspace change_font_size all 0 55 53 map ctrl+0 change_font_size all 0 54 + 55 +map ctrl+t>ctrl+t send_key ctrl+t 56 +map ctrl+t>t new_tab_with_cwd 57 +map ctrl+t>e launch --cwd=current ~/bin/time.sh 58 +map ctrl+t>n launch --location=vsplit --cwd=current 59 +map ctrl+t>shift+n launch --location=hsplit --cwd=current 60 +map ctrl+t>w close_window 61 +map ctrl+t>f toggle_layout stack 62 +map ctrl+t>/ show_scrollback 63 +map ctrl+t>shift+comma move_tab_backward 64 +map ctrl+t>shift+dot move_tab_forward 65 +map ctrl+t>h neighboring_window left 66 +map ctrl+t>j neighboring_window down 67 +map ctrl+t>k neighboring_window up 68 +map ctrl+t>l neighboring_window right 69 +map ctrl+t>left resize_window narrower 2 70 +map ctrl+t>down resize_window shorter 2 71 +map ctrl+t>up resize_window taller 2 72 +map ctrl+t>right resize_window wider 2 56 73 57 74 ## Theme 58 75 background #1a1b26
M
config/niri/config.kdl
··· 6 6 environment { 7 7 XDG_CURRENT_DESKTOP "niri" 8 8 ELECTRON_OZONE_PLATFORM_HINT "auto" 9 + DISPLAY null 9 10 GTK_IM_MODULE "simple" 10 11 MOZ_ENABLE_WAYLAND "1" 11 - QT_QPA_PLATFORM "wayland" 12 + QT_QPA_PLATFORM "wayland;xcb" 12 13 QT_QPA_PLATFORMTHEME "gtk3" 13 14 QT_QPA_PLATFORMTHEME_QT6 "gtk3" 14 15 QT_WAYLAND_DISABLE_WINDOWDECORATION "1"