dotfiles/auto/shells/bash
DuckDuckWhale 2df4e7a091
Misc: SSH, Vim, Helix, Ubuntu, setup, shells, ...
- SSH config: disable password and send COLORTERM
- Vim: use <space>u instead of <space>w
- Helix:
	- Update for bug fixes after 23.10
	- Install bash completions, desktop file, and icon
	- Fix bufferline and inlay hints color
	- Reenable auto pairs since smart tabs is a thing now
- Ubuntu:
	- Update to 23.10
	- Change naming convention
	- Add podman and qemu-user-static
- Setup:
	- Update install and swap config
	- Add fish, Pods, Steam
	- Fix CJK font config path
	- Remove Firefox Wayland override now that it's the default
- Shells: configure fish
- Manual:
	- Configure starship
	- Use cargo locked install
	- Remove sparse protocol config now that it's the default
	- Fix failure when fish config directory is not found
- tmux: fix truecolor support for Alacritty
2024-01-19 16:21:22 -08:00

82 lines
1.5 KiB
Bash
Executable File

#!/bin/sh
if grep -q '# custom' ~/.bashrc; then
echo 'found custom bash config, skipping'
exit 0
fi
cat >> ~/.bashrc << 'EOF'
# custom
umask 007
export EDITOR='vim'
export VISUAL='vim'
export GPG_TTY=$(tty)
if [[ -d "$HOME/.local/bin" && ":$PATH:" != *":$HOME/.local/bin:"* ]]; then
PATH="$HOME/.local/bin:$PATH"
fi
# cool colored command prompt
PS1='${debian_chroot:+($debian_chroot)}\[\e[01;38;5;11m\]\u\[\e[00;38;5;208m\]@\[\e[01;38;5;27m\]\h\[\e[00m\]:\[\e[00;38;5;45m\]\w\[\e[0m\]\$ '
PROMPT_DIRTRIM=3
alias ls='ls --color'
alias bat='batcat'
alias mosh='mosh -o'
alias cargo='cargo auditable'
alias md='pulldown-cmark -TFSLH'
alias auto-av1='nice ab-av1 auto-encode --min-samples 2 --keyint 2s --scd true'
# Shows a oneline preview of all files under the folder after changing directory.
cd() {
builtin cd "$@" && ls -v -w $COLUMNS --color=always --format=commas --group-directories-first | head -n 1
}
pushd() {
builtin pushd "$@"
cd .
}
popd() {
builtin popd "$@"
cd .
}
EOF
if [ -f ~/.bash_profile ]; then
mv ~/.bash_profile ~/.bash_login
fi
if [ -f ~/.bash_login ]; then
cat >> ~/.bash_login << 'EOF'
# custom
EOF
else
cat >> ~/.bash_login << 'EOF'
# custom
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
EOF
fi
cat >> ~/.bash_login << 'EOF'
if [ -z "$TMUX" ] && [ -n "$SSH_TTY" ]; then
tput sc
tput smso
echo -n 'tmux: space / shell: any key'
tput sgr0
read -rsN1 input
tput rc
tput el
if [ "$input" = ' ' ]; then
exec tmux new -As default
fi
fi
EOF