bash: init

This commit is contained in:
frosty 2024-08-25 01:55:51 -04:00
parent fb7fecabba
commit 1597c36749
2 changed files with 93 additions and 0 deletions

43
.bash_profile Normal file
View file

@ -0,0 +1,43 @@
# shellcheck shell=sh disable=SC1091
[ -f "$HOME/.bashrc" ] && . "$HOME/.bashrc"
# XDG base directories
export XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}"
export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
export XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}"
export XDG_CACHE_HOME="${XDG_CACHE_HOME:-$HOME/.cache}"
# Default programs
export TERMINAL="${TERMINAL:-st}"
export EDITOR="${EDITOR:-nvim}"
export BROWSER="${BROWSER:-firefox}"
# $HOME cleanup
export XAUTHORITY="$XDG_RUNTIME_DIR/Xauthority"
export XINITRC="$XDG_CONFIG_HOME/X11/xinitrc"
export XCURSOR_PATH="/usr/share/icons:$XDG_DATA_HOME/icons"
export GNUPGHOME="$XDG_DATA_HOME/gnupg"
export GOPATH="$XDG_DATA_HOME/go"
export RUSTUP_HOME="$XDG_DATA_HOME/rustup"
export CARGO_HOME="$XDG_DATA_HOME/cargo"
export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME/npm/npmrc"
export NODE_REPL_HISTORY="$XDG_DATA_HOME/node_repl_history"
export CUDA_CACHE_PATH="$XDG_CACHE_HOME/nv"
# Other program settings
export SVDIR="$XDG_CONFIG_HOME/service"
export _JAVA_OPTIONS="-Djava.util.prefs.userRoot=$XDG_CONFIG_HOME/java"
export XIDLEHOOK_SOCK="$XDG_STATE_HOME/xidlehook.sock"
# $PATH additions
export PATH="$PATH:$HOME/.local/bin"
export PATH="$PATH:$HOME/.local/bin/screenlayouts"
export PATH="$PATH:$HOME/.ghcup/bin"
export PATH="$PATH:$HOME/.cabal/bin"
export PATH="$PATH:$GOPATH/bin"
export PATH="$PATH:$CARGO_HOME/bin"
export PATH="$PATH:$XDG_DATA_HOME/npm/bin"
# Automatic graphical start on tty1
[ "$(tty)" = "/dev/tty2" ] && ! pidof -s Xorg >/dev/null 2>&1 && exec startx >/dev/null 2>&1

50
.bashrc Normal file
View file

@ -0,0 +1,50 @@
# shellcheck shell=sh
case "$-" in
*i*) ;;
*) return ;;
esac
export HISTFILE="$XDG_STATE_HOME/bash/history"
lfcd() {
cd "$(command lf -print-last-dir "$@")" || return
}
# Default options
alias cp='cp -iv'
alias mv='mv -iv'
alias rm='rm -vI'
alias mkdir='mkdir -pv'
alias lf='lfub'
alias ls='ls --color=auto -AF'
cd() {
builtin cd "$@" && ls
}
alias grep='grep --color=auto'
# alias wget='wget --no-hsts-file'
alias vim='nvim'
# Utilities
alias ipp='curl https://ipinfo.io/ip && echo'
alias ipl='monitors local_ip'
# Shorthands
alias l='ls'
alias t='tmux'
alias c='cd'
alias v='nvim'
alias g='git'
alias ff='fastfetch'
# Commands or options
alias ll='ls -l'
alias ge='git clone'
alias ga='git add'
alias gc='git commit'
alias gs='git status'
alias gd='git diff'
alias gp='git push'
alias gl='git pull'
. ~/docs/repos/iceline/iceline.sh