Add dotfiles org tangle
This commit is contained in:
parent
209825d3c4
commit
928964f6d0
1 changed files with 141 additions and 0 deletions
141
dotfiles.org
Normal file
141
dotfiles.org
Normal file
|
|
@ -0,0 +1,141 @@
|
||||||
|
#+PROPERTY: header-args :mkdirp yes
|
||||||
|
#+title:Dotfiles Configuration
|
||||||
|
|
||||||
|
* Configurations
|
||||||
|
This file contains all configurations across all my machines. Well, most of them anyway.
|
||||||
|
#+TOC: headlines 2
|
||||||
|
|
||||||
|
* Shell Environment
|
||||||
|
#+begin_src sh :tangle ~/.profile
|
||||||
|
alias k=kubectl
|
||||||
|
|
||||||
|
export EDITOR=vim
|
||||||
|
export PATH="~/.dotfiles/scripts:$PATH"
|
||||||
|
export PATH="/usr/local/bin:$PATH"
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* Bluetooth
|
||||||
|
#+begin_src lua :tangle /sudo::/etc/wireplumber/bluetooth.lua.d/51-bluez-config.lua
|
||||||
|
bluez_monitor.properties = {
|
||||||
|
["bluez5.enable-sbc-xq"] = true,
|
||||||
|
["bluez5.enable-msbc"] = true,
|
||||||
|
["bluez5.enable-hw-volume"] = true,
|
||||||
|
["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag ]"
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* Emacs Pinentry
|
||||||
|
#+begin_src txt :tangle ~/.gnupg/gpg-agent.conf
|
||||||
|
allow-emacs-pinentry
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* Wezterm
|
||||||
|
#+begin_src lua :tangle ~/.config/wezterm/wezterm.lua
|
||||||
|
local wezterm = require 'wezterm'
|
||||||
|
local config = {}
|
||||||
|
|
||||||
|
-- config.color_scheme = 'OceanicNext (base16)'
|
||||||
|
-- config.color_scheme = 'Wzoreck (Gogh)'
|
||||||
|
-- config.color_scheme = 'Whimsy'
|
||||||
|
-- config.color_scheme = 'Grey-green
|
||||||
|
-- config.color_scheme = 'Gruvbox light, soft (base16)'
|
||||||
|
-- config.color_scheme = 'Obsidian'
|
||||||
|
|
||||||
|
config.color_scheme = 'OceanicNext (base16)'
|
||||||
|
|
||||||
|
config.font = wezterm.font 'DejaVuSansMono.tff'
|
||||||
|
config.font_size = 20
|
||||||
|
|
||||||
|
config.enable_tab_bar = false
|
||||||
|
|
||||||
|
return config
|
||||||
|
#+end_src
|
||||||
|
* Fish
|
||||||
|
OMF must be installed separately (nix package for this is broken)
|
||||||
|
- =curl https://raw.githubusercontent.com/oh-my-fish/oh-my-fish/master/bin/install | fish=
|
||||||
|
- =omf install pie=
|
||||||
|
- remove fortune line from .local/share/omf/themes/pie/fish_greeting.fish
|
||||||
|
#+begin_src fish :tangle ~/.config/fish/config.fish
|
||||||
|
fish_vi_key_bindings
|
||||||
|
omf theme pie
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
#+begin_src fish :tangle ~/.config/fish/functions/fish_mode_prompt.fish
|
||||||
|
function fish_mode_prompt
|
||||||
|
end
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* Tmux
|
||||||
|
#+begin_src txt :tangle ~/.config/tmux/tmux.conf
|
||||||
|
# set-option -g default-shell /usr/bin/fish
|
||||||
|
# set -g default-terminal "screen-256color"
|
||||||
|
# # set-window-option -g mode-keys vi
|
||||||
|
|
||||||
|
# set-window-option -g automatic-rename on
|
||||||
|
set-window-option -g mode-keys vi
|
||||||
|
|
||||||
|
# Blank space between status and bottom of window
|
||||||
|
set -Fg 'status-format[1]' '#{status-format[0]}'
|
||||||
|
set -g 'status-format[0]' '#[bg=black] '
|
||||||
|
set -g status 2
|
||||||
|
|
||||||
|
# Smart pane switching with awareness of Vim splits.
|
||||||
|
# See: https://github.com/christoomey/vim-tmux-navigator
|
||||||
|
# Adapted to avoid fzf conflicts
|
||||||
|
|
||||||
|
is_vim="ps -o state= -o comm= -t '#{pane_tty}' \
|
||||||
|
| grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'"
|
||||||
|
|
||||||
|
multiple_panes="[ $(tmux list-panes | wc -l) -gt 1 ]"
|
||||||
|
|
||||||
|
bind-key -n 'C-h' if-shell "$is_vim && $multiple_panes" 'send-keys C-h' 'select-pane -L'
|
||||||
|
bind-key -n 'C-j' if-shell "$is_vim && $multiple_panes" 'send-keys C-j' 'select-pane -D'
|
||||||
|
bind-key -n 'C-k' if-shell "$is_vim && $multiple_panes" 'send-keys C-k' 'select-pane -U'
|
||||||
|
bind-key -n 'C-l' if-shell "$is_vim && $multiple_panes" 'send-keys C-l' 'select-pane -R'
|
||||||
|
|
||||||
|
|
||||||
|
# bind-key -n C-\ if-shell "$is_vim" "send-keys C-\\" "select-pane -l"
|
||||||
|
|
||||||
|
bind a resize-pane -Z
|
||||||
|
|
||||||
|
# Shift arrow to switch windows
|
||||||
|
bind -n C-S-Space previous-window
|
||||||
|
bind -n C-Space next-window
|
||||||
|
|
||||||
|
# Remove escape delay
|
||||||
|
set -g escape-time 0
|
||||||
|
|
||||||
|
# Enable mouse scroll
|
||||||
|
set -g mouse on
|
||||||
|
|
||||||
|
set-option -g status-right-length 140
|
||||||
|
set-option -g status-right "#(curl 'wttr.in/?format=%%c%%t%%20')|#[bg=default] %a %l:%M %p#[default]#(curl 'wttr.in/?format=%%20%%m%%20(%%M)%') |#(sugar --tmux)#[bg=default]"
|
||||||
|
|
||||||
|
set-option -g status-left-length 140
|
||||||
|
set-option -g status-left " Session: #[bold,fg=green,bg=black] #S #[fg=black,bg=green] "
|
||||||
|
|
||||||
|
set-option -g status-justify centre
|
||||||
|
set-option -g window-status-current-format '#[bold,fg=green,bg=black] #{window_name} '
|
||||||
|
set-option -g window-status-format '#{window_name}'
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* Helix
|
||||||
|
|
||||||
|
#+begin_src toml :tangle ~/.config/helix/config.toml
|
||||||
|
theme = "base16_default"
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
* Special Exceptions
|
||||||
|
** Tdrop
|
||||||
|
- Must be installed from the repo, doesn't work from nix repos
|
||||||
|
- Must be moved to /usr/local/bin and given same permissions that come from make install
|
||||||
|
|
||||||
|
* TODO
|
||||||
|
- Better polybar config
|
||||||
|
- BSPWM / sxhkd / startup stuff / xinitrc
|
||||||
|
- Consider configuring flavours
|
||||||
|
- taskwarrior
|
||||||
|
- vit
|
||||||
|
- vimrc
|
||||||
|
- tmuxinator setup
|
||||||
|
- special popup for emacs, chat, gpt, etc
|
||||||
Loading…
Add table
Add a link
Reference in a new issue