modify .bashrc and alike

This commit is contained in:
2025-05-30 15:06:32 +02:00
parent 5c12f2207d
commit c965ff22bc
3 changed files with 34 additions and 17 deletions

View File

@@ -1,3 +1,5 @@
# shellcheck shell=bash
#
# ~/.bash_logout
# sourced when an interactive login shell exits, or a non-interactive login shell executes `exit`
#

View File

@@ -1,8 +1,33 @@
#!/bin/bash
# shellcheck shell=bash
# shellcheck disable=1091
#
# ~/.bash_profile
# sourced upon new login shells
#
[[ -d ~/.local/bin ]] && PATH="$PATH:$HOME/.local/bin" # add path variable
[[ -x ~/.bashrc ]] && source "$HOME/.bashrc" #execute bashrc
# https://specifications.freedesktop.org/basedir-spec/latest/
export XDG_CONFIG_HOME="$HOME/.config" # where user configuration files are stored (default: ~/.config)
export XDG_STATE_HOME="$HOME/.local/state" # state data that should persist between (application) restarts, but not important enough to be stored in XDG_DATA_HOME (default: ~/.local/state)
export XDG_DATA_HOME="$HOME/.local/share" # where user data files are stored (default: ~/.local/share)
export PATH="$HOME/bin:$PATH" # add our bin in front of PATH, making it take precedence
if which nvim 1>/dev/null; then
export EDITOR=nvim # use neovim as an editor
export VISUAL=nvim # use neovim for visual-based editors
export MANPAGER='nvim +Man!' # use neovim as a manual pager
fi
# coloured GCC warnings and errors
export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
# # export Microsoft's bullshit outta here
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export VCPKG_DISABLE_METRICS=1
export VCPKG_ROOT="$XDG_DATA_HOME/vcpkg"
export PATH+=":$VCPKG_ROOT"
# if executing interactively
# execute .bashrc in the current login context
[[ $- != *i* ]] && return
[[ -z ${PS1-} ]] && retrun
[[ -f $HOME/.bashrc ]] && . "$HOME/.bashrc"

18
.bashrc
View File

@@ -1,7 +1,8 @@
#!/usr/bin/env bash
# shellcheck shell=bash
# shellcheck disable=SC1090,SC1091
#
# ~/.bashrc
# sourced upon launch of an interactive shell, which isn't a login shell has been executed
#
# If not running interactively, don't do anything
@@ -11,9 +12,9 @@
# wrapper for lazily loading __git_ps1 whenever it is actually needed
_lazy_git_ps1() {
if [[ -z $__GIT_PROMPT_SOURCED ]]; then
if [[ -d .git || $(git rev-parse --is-inside-work-tree 2>/dev/null) == true ]]; then
source /usr/share/bash-completion/completions/git &>/dev/null
source /usr/share/git/completion/git-prompt.sh &>/dev/null
if [ -d .git ] || git worktree list &>/dev/null; then
export __GIT_PROMPT_SOURCED=1
__git_ps1 "$@"
fi
@@ -44,7 +45,7 @@ _make() {
# set PS1
PS1=
PS1="$PS1"'\[\033[01;35m\]\u@\h' # user@host
PS1="$PS1"'\[\033[00m\]:' # seperator
PS1="$PS1"'\[\033[00m\]:' # separator
PS1="$PS1"'\[\033[01;34m\]\w' # working directory
PS1="$PS1"'\[\033[01;93m\]$(_lazy_git_ps1)' # github branch
PS1="$PS1"'\[\033[00m\]\$ ' # shell sign
@@ -54,18 +55,7 @@ HISTCONTROL=ignoreboth # don't put duplicate lines or lines starting with space
HISTSIZE=1000
HISTFILESIZE=2000
export MANPAGER='nvim +Man!' # use neovim as a manual pager
export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' # coloured GCC warnings and errors
export EDITOR=nvim # use neovim as an editor
export VISUAL=nvim # use neovim for visual-based editors
# export Microsoft's bullshit outta here
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export VCPKG_DISABLE_METRICS=1
# vcpkg shit
export VCPKG_ROOT=$HOME/.local/share/vcpkg
export PATH=$VCPKG_ROOT:$PATH
source /home/user/.local/share/vcpkg/scripts/vcpkg_completion.bash &>/dev/null
# check the window size after each command (and if necessary, the values of LINES and COLUMNS)