mirror of
https://github.com/Horhik/dotfiles.git
synced 2024-11-01 06:27:18 +00:00
408 lines
13 KiB
Bash
408 lines
13 KiB
Bash
# If you come from bash you might have to change your $PATH.
|
|
# export PATH=$HOME/bin:/usr/local/bin:$PATH
|
|
|
|
# Path to your oh-my-zsh installation.
|
|
#installation via script from github
|
|
#export ZSH="/home/$USER/.oh-my-zsh"
|
|
#installation via yay -S oh-my-zsh-git
|
|
export ZSH=/usr/share/oh-my-zsh/
|
|
|
|
# Set name of the theme to load --- if set to "random", it will
|
|
# load a random theme each time oh-my-zsh is loaded, in which case,
|
|
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
|
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
|
# if you installed the package oh-my-zsh-powerline-theme-git then you type here "powerline" as zsh theme
|
|
ZSH_THEME="robyshell"
|
|
|
|
# Set list of themes to pick from when loading at random
|
|
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
|
# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
|
|
# If set to an empty array, this variable will have no effect.
|
|
|
|
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
|
|
|
# ZSH_THEME_RANDOM_IGNORED=(pygmalion tjkirch_mod)
|
|
|
|
# Uncomment the following line to use case-sensitive completion.
|
|
# CASE_SENSITIVE="true"
|
|
|
|
# Uncomment the following line to use hyphen-insensitive completion.
|
|
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
|
# HYPHEN_INSENSITIVE="true"
|
|
|
|
# Uncomment the following line to disable bi-weekly auto-update checks.
|
|
# DISABLE_AUTO_UPDATE="true"
|
|
|
|
# Uncomment the following line to automatically update without prompting.
|
|
# DISABLE_UPDATE_PROMPT="true"
|
|
|
|
# Uncomment the following line to change how often to auto-update (in days).
|
|
# export UPDATE_ZSH_DAYS=13
|
|
|
|
# Uncomment the following line if pasting URLs and other text is messed up.
|
|
# DISABLE_MAGIC_FUNCTIONS=true
|
|
|
|
# Uncomment the following line to disable colors in ls.
|
|
# DISABLE_LS_COLORS="true"
|
|
|
|
# Uncomment the following line to disable auto-setting terminal title.
|
|
# DISABLE_AUTO_TITLE="true"
|
|
|
|
# Uncomment the following line to enable command auto-correction.
|
|
# ENABLE_CORRECTION="true"
|
|
|
|
# Uncomment the following line to display red dots whilst waiting for completion.
|
|
# COMPLETION_WAITING_DOTS="true"
|
|
|
|
# Uncomment the following line if you want to disable marking untracked files
|
|
# under VCS as dirty. This makes repository status check for large repositories
|
|
# much, much faster.
|
|
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
|
|
|
# Uncomment the following line if you want to change the command execution time
|
|
# stamp shown in the history command output.
|
|
# You can set one of the optional three formats:
|
|
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
|
# or set a custom format using the strftime function format specifications,
|
|
# see 'man strftime' for details.
|
|
# HIST_STAMPS="mm/dd/yyyy"
|
|
|
|
# Would you like to use another custom folder than $ZSH/custom?
|
|
# ZSH_CUSTOM=/path/to/new-custom-folder
|
|
|
|
# Which plugins would you like to load?
|
|
# Standard plugins can be found in ~/.oh-my-zsh/plugins/*
|
|
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
|
|
# Example format: plugins=(rails git textmate ruby lighthouse)
|
|
# Add wisely, as too many plugins slow down shell startup.
|
|
|
|
#source $ZSH/oh-my-zsh.sh
|
|
|
|
# User configuration
|
|
|
|
# export MANPATH="/usr/local/man:$MANPATH"
|
|
|
|
# You may need to manually set your language environment
|
|
# export LANG=en_US.UTF-8
|
|
|
|
# Preferred editor for local and remote sessions
|
|
# if [[ -n $SSH_CONNECTION ]]; then
|
|
# export EDITOR='vim'
|
|
# else
|
|
# export EDITOR='mvim'
|
|
# fi
|
|
|
|
# Compilation flags
|
|
# export ARCHFLAGS="-arch x86_64"
|
|
|
|
|
|
#### ARCOLINUX SETTINGS ####
|
|
|
|
|
|
#source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
|
|
|
setopt GLOB_DOTS
|
|
|
|
# If not running interactively, don't do anything
|
|
[[ $- != *i* ]] && return
|
|
|
|
export HISTCONTROL=ignoreboth:erasedups
|
|
|
|
# Make nano the default editor
|
|
|
|
export EDITOR='nvim'
|
|
export VISUAL='nvim'
|
|
|
|
#PS1='[\u@\h \W]\$ '
|
|
|
|
if [ -d "$HOME/.bin" ] ;
|
|
then PATH="$HOME/.bin:$PATH"
|
|
fi
|
|
|
|
if [ -d "$HOME/.local/bin" ] ;
|
|
then PATH="$HOME/.local/bin:$PATH"
|
|
fi
|
|
|
|
#list
|
|
alias ls='ls --color=auto'
|
|
alias la='ls -a'
|
|
alias ll='ls -la'
|
|
alias l='ls'
|
|
alias l.="ls -A | egrep '^\.'"
|
|
|
|
#fix obvious typo's
|
|
alias cd..='cd ..'
|
|
alias pdw="pwd"
|
|
alias udpate='sudo pacman -Syyu'
|
|
alias upate='sudo pacman -Syyu'
|
|
alias updte='sudo pacman -Syyu'
|
|
alias updqte='sudo pacman -Syyu'
|
|
alias upqll="yay -Syu --noconfirm"
|
|
alias upal="yay -Syu --noconfirm"
|
|
|
|
## Colorize the grep command output for ease of use (good for log files)##
|
|
alias grep='grep --color=auto'
|
|
alias egrep='egrep --color=auto'
|
|
alias fgrep='fgrep --color=auto'
|
|
|
|
#readable output
|
|
alias df='df -h'
|
|
|
|
#pacman unlock
|
|
alias unlock="sudo rm /var/lib/pacman/db.lck"
|
|
alias rmpacmanlock="sudo rm /var/lib/pacman/db.lck"
|
|
|
|
#arcolinux logout unlock
|
|
alias rmlogoutlock="sudo rm /tmp/arcologout.lock"
|
|
|
|
#free
|
|
alias free="free -mt"
|
|
|
|
#use all cores
|
|
alias uac="sh ~/.bin/main/000*"
|
|
|
|
#continue download
|
|
alias wget="wget -c"
|
|
|
|
#userlist
|
|
alias userlist="cut -d: -f1 /etc/passwd"
|
|
|
|
#merge new settings
|
|
alias merge="xrdb -merge ~/.Xresources"
|
|
|
|
# Aliases for software managment
|
|
# pacman or pm
|
|
alias pacman='sudo pacman --color auto'
|
|
alias update='sudo pacman -Syyu'
|
|
|
|
# yay as aur helper - updates everything
|
|
alias pksyua="yay -Syu --noconfirm"
|
|
alias upall="yay -Syu --noconfirm"
|
|
|
|
#ps
|
|
alias psa="ps auxf"
|
|
alias psgrep="ps aux | grep -v grep | grep -i -e VSZ -e"
|
|
|
|
#grub update
|
|
alias update-grub="sudo grub-mkconfig -o /boot/grub/grub.cfg"
|
|
|
|
#add new fonts
|
|
alias update-fc='sudo fc-cache -fv'
|
|
|
|
#copy/paste all content of /etc/skel over to home folder - backup of config created - beware
|
|
alias skel='cp -Rf ~/.config ~/.config-backup-$(date +%Y.%m.%d-%H.%M.%S) && cp -rf /etc/skel/* ~'
|
|
#backup contents of /etc/skel to hidden backup folder in home/user
|
|
alias bupskel='cp -Rf /etc/skel ~/.skel-backup-$(date +%Y.%m.%d-%H.%M.%S)'
|
|
|
|
#copy bashrc-latest over on bashrc - cb= copy bashrc
|
|
#alias cb='sudo cp /etc/skel/.bashrc ~/.bashrc && source ~/.bashrc'
|
|
#copy /etc/skel/.zshrc over on ~/.zshrc - cb= copy zshrc
|
|
alias cz='sudo cp /etc/skel/.zshrc ~/.zshrc && exec zsh'
|
|
|
|
#switch between bash and zsh
|
|
alias tobash="sudo chsh $USER -s /bin/bash && echo 'Now log out.'"
|
|
alias tozsh="sudo chsh $USER -s /bin/zsh && echo 'Now log out.'"
|
|
|
|
#switch between lightdm and sddm
|
|
alias tolightdm="sudo pacman -S lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings --noconfirm --needed ; sudo systemctl enable lightdm.service -f ; echo 'Lightm is active - reboot now'"
|
|
alias tosddm="sudo pacman -S sddm --noconfirm --needed ; sudo systemctl enable sddm.service -f ; echo 'Sddm is active - reboot now'"
|
|
|
|
#quickly kill conkies
|
|
alias kc='killall conky'
|
|
|
|
#hardware info --short
|
|
alias hw="hwinfo --short"
|
|
|
|
#skip integrity check
|
|
alias yayskip='yay -S --mflags --skipinteg'
|
|
alias trizenskip='trizen -S --skipinteg'
|
|
|
|
#check vulnerabilities microcode
|
|
alias microcode='grep . /sys/devices/system/cpu/vulnerabilities/*'
|
|
|
|
#get fastest mirrors in your neighborhood
|
|
alias mirror="sudo reflector -f 30 -l 30 --number 10 --verbose --save /etc/pacman.d/mirrorlist"
|
|
alias mirrord="sudo reflector --latest 30 --number 10 --sort delay --save /etc/pacman.d/mirrorlist"
|
|
alias mirrors="sudo reflector --latest 30 --number 10 --sort score --save /etc/pacman.d/mirrorlist"
|
|
alias mirrora="sudo reflector --latest 30 --number 10 --sort age --save /etc/pacman.d/mirrorlist"
|
|
#our experimental - best option for the moment
|
|
alias mirrorx="sudo reflector --age 6 --latest 20 --fastest 20 --threads 5 --sort rate --protocol https --save /etc/pacman.d/mirrorlist"
|
|
alias mirrorxx="sudo reflector --age 6 --latest 20 --fastest 20 --threads 20 --sort rate --protocol https --save /etc/pacman.d/mirrorlist"
|
|
|
|
#mounting the folder Public for exchange between host and guest on virtualbox
|
|
alias vbm="sudo /usr/local/bin/arcolinux-vbox-share"
|
|
|
|
#shopt
|
|
#shopt -s autocd # change to named directory
|
|
#shopt -s cdspell # autocorrects cd misspellings
|
|
#shopt -s cmdhist # save multi-line commands in history as single line
|
|
#shopt -s dotglob
|
|
#shopt -s histappend # do not overwrite history
|
|
#shopt -s expand_aliases # expand aliases
|
|
|
|
#youtube-dl
|
|
alias yta-aac="youtube-dl --extract-audio --audio-format aac "
|
|
alias yta-best="youtube-dl --extract-audio --audio-format best "
|
|
alias yta-flac="youtube-dl --extract-audio --audio-format flac "
|
|
alias yta-m4a="youtube-dl --extract-audio --audio-format m4a "
|
|
alias yta-mp3="youtube-dl --extract-audio --audio-format mp3 "
|
|
alias yta-opus="youtube-dl --extract-audio --audio-format opus "
|
|
alias yta-vorbis="youtube-dl --extract-audio --audio-format vorbis "
|
|
alias yta-wav="youtube-dl --extract-audio --audio-format wav "
|
|
|
|
alias ytv-best="youtube-dl -f bestvideo+bestaudio "
|
|
|
|
#Recent Installed Packages
|
|
alias rip="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -200 | nl"
|
|
alias riplong="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -3000 | nl"
|
|
|
|
#iso and version used to install ArcoLinux
|
|
alias iso="cat /etc/dev-rel | awk -F '=' '/ISO/ {print $2}'"
|
|
|
|
#Cleanup orphaned packages
|
|
alias cleanup='sudo pacman -Rns $(pacman -Qtdq)'
|
|
|
|
#search content with ripgrep
|
|
alias rg="rg --sort path"
|
|
|
|
#get the error messages from journalctl
|
|
alias jctl="journalctl -p 3 -xb"
|
|
|
|
#nano for important configuration files
|
|
#know what you do in these files
|
|
alias nlightdm="sudo $EDITOR /etc/lightdm/lightdm.conf"
|
|
alias npacman="sudo $EDITOR /etc/pacman.conf"
|
|
alias ngrub="sudo $EDITOR /etc/default/grub"
|
|
alias nconfgrub="sudo $EDITOR /boot/grub/grub.cfg"
|
|
alias nmkinitcpio="sudo $EDITOR /etc/mkinitcpio.conf"
|
|
alias nmirrorlist="sudo $EDITOR /etc/pacman.d/mirrorlist"
|
|
alias nsddm="sudo $EDITOR /etc/sddm.conf"
|
|
alias nfstab="sudo $EDITOR /etc/fstab"
|
|
alias nnsswitch="sudo $EDITOR /etc/nsswitch.conf"
|
|
alias nsamba="sudo $EDITOR /etc/samba/smb.conf"
|
|
alias nb="$EDITOR ~/.bashrc"
|
|
alias nz="$EDITOR ~/.zshrc"
|
|
|
|
#gpg
|
|
#verify signature for isos
|
|
alias gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify"
|
|
alias fix-gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify"
|
|
#receive the key of a developer
|
|
alias gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys"
|
|
alias fix-gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys"
|
|
alias fix-key="[ -d ~/.gnupg ] || mkdir ~/.gnupg ; cp /etc/pacman.d/gnupg/gpg.conf ~/.gnupg/ ; echo 'done'"
|
|
|
|
#maintenance
|
|
alias big="expac -H M '%m\t%n' | sort -h | nl"
|
|
alias downgrada="sudo downgrade --ala-url https://bike.seedhost.eu/arcolinux/"
|
|
|
|
#systeminfo
|
|
alias probe="sudo -E hw-probe -all -upload"
|
|
|
|
#shutdown or reboot
|
|
alias ssn="sudo shutdown now"
|
|
alias sr="sudo reboot"
|
|
|
|
#update betterlockscreen images
|
|
alias bls="betterlockscreen -u /usr/share/backgrounds/arcolinux/"
|
|
|
|
#give the list of all installed desktops - xsessions desktops
|
|
alias xd="ls /usr/share/xsessions"
|
|
|
|
# # ex = EXtractor for all kinds of archives
|
|
# # usage: ex <file>
|
|
ex ()
|
|
{
|
|
if [ -f $1 ] ; then
|
|
case $1 in
|
|
*.tar.bz2) tar xjf $1 ;;
|
|
*.tar.gz) tar xzf $1 ;;
|
|
*.bz2) bunzip2 $1 ;;
|
|
*.rar) unrar x $1 ;;
|
|
*.gz) gunzip $1 ;;
|
|
*.tar) tar xf $1 ;;
|
|
*.tbz2) tar xjf $1 ;;
|
|
*.tgz) tar xzf $1 ;;
|
|
*.zip) unzip $1 ;;
|
|
*.Z) uncompress $1;;
|
|
*.7z) 7z x $1 ;;
|
|
*.deb) ar x $1 ;;
|
|
*.tar.xz) tar xf $1 ;;
|
|
*.tar.zst) tar xf $1 ;;
|
|
*) echo "'$1' cannot be extracted via ex()" ;;
|
|
esac
|
|
else
|
|
echo "'$1' is not a valid file"
|
|
fi
|
|
}
|
|
|
|
#create a file called .zshrc-personal and put all your personal aliases
|
|
#in there. They will not be overwritten by skel.
|
|
|
|
[[ -f ~/.zshrc-personal ]] && . ~/.zshrc-personal
|
|
|
|
# reporting tools - install when not installed
|
|
# install neofetch
|
|
#neofetch
|
|
# install screenfetch
|
|
#screenfetch
|
|
# install ufetch-git
|
|
#ufetch
|
|
# install ufetch-arco-git
|
|
#ufetch-arco
|
|
# install arcolinux-paleofetch-git
|
|
#paleofetch
|
|
# install alsi
|
|
#alsi
|
|
# install arcolinux-bin-git - standard on ArcoLinux isos (or sfetch - smaller)
|
|
#hfetch
|
|
# install lolcat
|
|
#sfetch | lolcat
|
|
|
|
|
|
|
|
|
|
|
|
export CC=/usr/bin/clang
|
|
export CXX=/usr/bin/clang++
|
|
export _JAVA_AWT_WM_NONREPARENTING=1
|
|
export ANDROID_SDK_ROOT=/home/horhik/Android/Sdk/
|
|
export NDK_HOME=/home/horhik/Android/Sdk/ndk/22.0.7026061/
|
|
plugins=(git colorize colored-man-pages emoji rustup sudo zsh-syntax-highlighting zsh-autosuggestions zsh-completions)
|
|
autoload -U compinit && compinit
|
|
export PATH=$HOME/.local/bin:$PATH
|
|
export PATH=/usr/local/bin:$PATH
|
|
export PATH=$HOME/.cargo/bin:$PATH
|
|
export PATH=$HOME/.emacs.d/bin:$PATH
|
|
export PATH=$HOME/Desktop:$PATH
|
|
export PATH=/home/horhik/code/projects/potato-notify:$PATH
|
|
export PATH="/root/.deno/bin:$PATH"
|
|
alias vim=nvim
|
|
alias vi=vim
|
|
alias libvirtdaemon="sudo start-stop-daemon --start libvirtd"
|
|
alias virtm="sudo start-stop-daemon --start virtlogd &; sudo start-stop-daemon --start libvirtd &; virt-manager &"
|
|
alias clip=xclip -selection clipboard
|
|
alias suspend="loginctl suspend"
|
|
if [ -f '/home/horhik/yandex-cloud/path.bash.inc' ]; then source '/home/horhik/yandex-cloud/path.bash.inc'; fi
|
|
if [ -f '/home/horhik/yandex-cloud/completion.zsh.inc' ]; then source '/home/horhik/yandex-cloud/completion.zsh.inc'; fi
|
|
alias rd='rustc -g --emit="obj,link"'
|
|
|
|
compile_and_run() {
|
|
rustc -g --emit="obj,link" $1 && gdb ${1%.*}
|
|
}
|
|
|
|
alias rdr=compile_and_run
|
|
alias aia=ankiaudio
|
|
alias picom="killall picom; picom --experimental-backends &;"
|
|
alias cc="cargo check"
|
|
alias ct="cargo test"
|
|
alias gc="git clone"
|
|
alias gs="git status"
|
|
alias vim="nvim"
|
|
|
|
|
|
# eval $(thefuck --alias)
|
|
|
|
if [ -e /home/horhik/.nix-profile/etc/profile.d/nix.sh ]; then . /home/horhik/.nix-profile/etc/profile.d/nix.sh; fi # added by Nix installer
|
|
|