Files
dotstate-storage/default/.config/zsh/functions.zsh
T

33 lines
965 B
Bash

info() { printf "\033[1;34m%s\033[0m\n" "$*"; }
warn() { printf "\033[1;33m%s\033[0m\n" "$*"; }
error() { printf "\033[1;31m%s\033[0m\n" "$*"; }
fix_btopbg(){
sed -i 's/theme_background = true/theme_background = false/' ~/.config/btop/btop.conf
}
install_opencode(){
curl -fsSL https://opencode.ai/install | bash
}
dotstate_update() {
local REPO_URL="https://git.jeremymcclure.com/jeremy/dotstate-storage.git"
local TARGET_DIR="$HOME/.config/dotstate/storage"
[[ "$(id -u)" -ne "$(stat -c '%u' "$TARGET_DIR" 2>/dev/null)" ]] && return 0
[[ ! -d "$TARGET_DIR/.git" ]] && return 0
cd "$TARGET_DIR" || return 0
local remote_sha local_sha
remote_sha=$(timeout 5 git ls-remote "$REPO_URL" HEAD | awk '{print $1}')
[[ -z "$remote_sha" ]] && return 0
local_sha=$(git rev-parse HEAD)
[[ "$remote_sha" == "$local_sha" ]] && return 0
info "Repository out of date. Pulling updates..."
git pull &>/dev/null
dotstate activate
exec zsh
}