Update dotfiles

This commit is contained in:
Santiago Lo Coco 2024-12-28 23:16:30 +01:00
parent 497a318230
commit 3cff779b6c
Signed by: slococo
GPG Key ID: F995EFC8B68B1ADF
3 changed files with 73 additions and 286 deletions

View File

@ -25,6 +25,7 @@ application/x-ica=citrix-wfica.desktop
application/x-wine-extension-ini=citrix-wfica.desktop; application/x-wine-extension-ini=citrix-wfica.desktop;
x-scheme-handler/fleet=jetbrains-fleet.desktop x-scheme-handler/fleet=jetbrains-fleet.desktop
x-scheme-handler/magnet=magnet.desktop x-scheme-handler/magnet=magnet.desktop
video/x-matroska=mpv.desktop
[Added Associations] [Added Associations]
x-scheme-handler/http=librewolf.desktop; x-scheme-handler/http=librewolf.desktop;
@ -46,3 +47,8 @@ application/octet-stream=vim.desktop;
application/x-ica=citrix-wfica.desktop; application/x-ica=citrix-wfica.desktop;
application/x-wine-extension-ini=citrix-wfica.desktop; application/x-wine-extension-ini=citrix-wfica.desktop;
application/vnd.sqlite3=nvim.desktop; application/vnd.sqlite3=nvim.desktop;
application/x-executable=nvim-terminal.desktop;
application/vnd.sqlite3=nvim-terminal.desktop;
application/octet-stream=nvim-terminal.desktop;
text/plain=nvim-terminal.desktop;

View File

@ -2,6 +2,8 @@
alias mpvgui='mpv --player-operation-mode=pseudo-gui' alias mpvgui='mpv --player-operation-mode=pseudo-gui'
alias wget='wget --hsts-file="$XDG_DATA_HOME/wget-hsts"' alias wget='wget --hsts-file="$XDG_DATA_HOME/wget-hsts"'
alias adb='HOME="$XDG_DATA_HOME"/android adb'
alias nvidia-settings='nvidia-settings --config="$XDG_CONFIG_HOME"/nvidia/settings'
alias ll='ls -l' alias ll='ls -l'
alias la='ls -al' alias la='ls -al'
@ -11,32 +13,35 @@ alias lh='ls -lh'
alias vim='nvim' alias vim='nvim'
alias svim='sudo nvim' alias svim='sudo nvim'
alias ga='git add'
alias gaa='git add .'
alias gaaa='git add -A'
alias gc='git commit'
alias gcm='git commit -m'
alias gd='git diff'
alias gi='git init'
alias gl='git log'
alias gp='git pull'
alias gpsh='git push'
alias gss='git status -s'
# Undo commit (https://stackoverflow.com/questions/2845731/how-to-uncommit-my-last-commit-in-git)
alias gundo='git reset --soft HEAD~1'
alias gck='git checkout'
gacp() { gacp() {
git add . git add .
local var="$@" local var="$@"
git commit -m "$var" if [ $(echo "$var" | wc -c) -gt 70 ]; then
echo "Maximum characters: 72"
return 1
fi
git commit -m "$var" -S
git push git push
} }
gac() { gac() {
git add . git add .
local var="$@" local var="$@"
git commit -m "$var" if [ $(echo "$var" | wc -c) -gt 70 ]; then
echo "Maximum characters: 72"
return 1
fi
git commit -m "$var" -S
}
gcmp() {
local var="$@"
if [ $(echo "$var" | wc -c) -gt 70 ]; then
echo "Maximum characters: 72"
return 1
fi
git commit -m "$var" -S
git push
} }
alias exiftcl='exiftool -all=' alias exiftcl='exiftool -all='
@ -45,10 +50,8 @@ alias exift='exiftool'
alias upgraded='grep -i upgraded /var/log/pacman.log | tac | less' alias upgraded='grep -i upgraded /var/log/pacman.log | tac | less'
alias installed='grep -i installed /var/log/pacman.log | tac | less' alias installed='grep -i installed /var/log/pacman.log | tac | less'
# https://archlinux.org/mirrorlist/
alias mirrors='reflector --country Brazil,Chile,Colombia --protocol https --sort rate --save /etc/pacman.d/mirrorlist' alias mirrors='reflector --country Brazil,Chile,Colombia --protocol https --sort rate --save /etc/pacman.d/mirrorlist'
# https://stackoverflow.com/questions/9449778/what-is-the-benefit-of-using-instead-of-backticks-in-shell-scripts#
alias open='xdg-open $(fzf)' alias open='xdg-open $(fzf)'
alias o='xdg-open' alias o='xdg-open'
@ -60,10 +63,6 @@ alias trash-dir='cd $HOME/.local/share/Trash'
alias val='valgrind --leak-check=full ./listdir prueba/ > valgrind.output 2>&1' alias val='valgrind --leak-check=full ./listdir prueba/ > valgrind.output 2>&1'
alias pampero='ssh slococo@pampero.itba.edu.ar'
alias bd='systemctl start postgresql.service'
alias copy='xclip -selection clipboard' alias copy='xclip -selection clipboard'
function compile() { function compile() {
@ -75,246 +74,24 @@ function rcomp() {
R -e "rmarkdown::render('$file.rmd', 'pdf_document')" && op $file.pdf R -e "rmarkdown::render('$file.rmd', 'pdf_document')" && op $file.pdf
} }
function cl() { function fcd() {
nasm -f elf $1 local fd_options fzf_options target
local program="${1//.asm/}"
ld -melf_i386 $program.o -o $program fd_options=(
if [[ $# -ge 3 ]]; then --hidden
./$program "${@:3}" --type directory
else --exclude '.git'
./$program )
fi
} fzf_options=(
--preview='tree -L 1 {}'
function cld() { --bind=ctrl-space:toggle-preview
nasm -f elf $1 && nasm -f elf $2 --exit-0
local program="${1//.asm/}" --keep-right
local library="${2//.asm/}" )
ld -melf_i386 $program.o $library.o -o $program
if [[ $# -ge 3 ]]; then target="$(fd . "${1:-.}" "${fd_options[@]}" | fzf "${fzf_options[@]}")"
./$program "${@:3}"
else cd "$target" || return 1
./$program
fi
}
function asc() {
nasm -f elf32 $1
gcc -c -m32 $2
local assem="${1//.asm/}"
local cprog="${2//.c/}"
gcc -m32 -no-pie $assem.o $cprog.o -o $assem
if [[ $# -ge 3 ]]; then
./$assem "${@:3}"
else
./$assem
fi
}
function ascn() {
nasm -f elf32 $1
local assem="${1//.asm/}"
gcc -m32 -no-pie $assem.o -o $assem
if [[ $# -ge 2 ]]; then
./$assem "${@:2}"
else
./$assem
fi
}
function ascld() {
nasm -f elf32 $1
gcc -c -m32 $2
local assem="${1//.asm/}"
local cprog="${2//.c/}"
ld -melf_i386 $assem.o $cprog.o -o $assem
if [[ $# -ge 3 ]]; then
./$assem "${@:3}"
else
./$assem
fi
}
function gci() {
echo "Copy after 'git@github.com:'"
git clone git@itba.github.com:$1
}
function gcir() {
echo "Copy after 'git@github.com:'"
git remote add origin git@itba.github.com:$1
}
function gcn() {
echo "Copy after 'git@github.com:'"
git clone git@github.com:$1
}
function gcin() {
echo "Copy after 'git@github.com:'"
git remote add origin git@github.com:$1
}
# Start an ssh-agent and run KeePass in order to cache the ssh passwords
function gith() {
#eval $(ssh-agent)
keepass &
~/.local/bin/waitForSSH &
}
# https://vsupalov.com/docker-shared-permissions/
# https://medium.com/redbubble/running-a-docker-container-as-a-non-root-user-7d2e00f8ee15
#alias dcom='docker run -v ${PWD}:/root -ti -w /root agodio/itba-so:1.0 ${1}'
#alias dcom='docker run -v ${PWD}:/root --security-opt seccomp:unconfined -ti agodio/itba-so:1.0'
alias dcom='docker run -v ${PWD}:/root --security-opt seccomp:unconfined --user $(id -u):$(id -g) -w /root -ti agodio/itba-so:1.0'
#alias dcom='docker run -v ${PWD}:/root --security-opt seccomp:unconfined --user $(id -u):$(id -g) -w /root --name TPE-ARQUI -ti agodio/itba-so:1.0'
alias dcr='checkIfStarted'
function dcreate() {
echo "Do you want to create a container with root or user (as the owner)?"
chosen=$(echo "root\nuser" | dmenu)
echo "Enter a name for the container"
read name
if [ $chosen = "root" ]; then
docker run -v ${PWD}:/root --security-opt seccomp:unconfined -w /root --name $name -ti agodio/itba-so:1.0
else
docker run -v ${PWD}:/root --security-opt seccomp:unconfined --user $(id -u):$(id -g) -w /root --name $name -ti agodio/itba-so:1.0
fi
}
function checkIfStarted() {
if systemctl status docker | grep -q "inactive"; then
systemctl start docker
fi
}
# https://stackoverflow.com/a/61390489
function docom() {
local dockerID=`docker ps -l -q`
docker start $dockerID > /dev/null
docker exec -it $dockerID $@
docker stop $dockerID > /dev/null
}
function dcrun() {
local dockerID=`docker ps -l -q`
docker start $dockerID > /dev/null
docker exec -it $dockerID bash -c 'make all 2>&1 1>/dev/null | grep --color -iP "\^|warning:|error:|"'
docker stop $dockerID > /dev/null
./run.sh
}
function dcmake() {
local dockerID=`docker ps -l -q`
docker start $dockerID > /dev/null
docker exec -it $dockerID bash -c 'make all 2>&1 1>/dev/null | grep --color -iP "\^|warning:|error:|"'
docker stop $dockerID > /dev/null
}
function dcstacho() {
checkIfStarted
#echo `docker ps -a | awk '{ print $12 }'`
#read line
#if [ $line -eq 2 ]; then
# local dockerID=`docker ps -a | awk 'NR==2 { print $12 }'`
#else
# local dockerID=`docker ps -a | awk 'NR==3 { print $12 }'`
#fi
#local dockerID=$(docker ps -a | awk -F"\t" '{print $12}' | tail -n +2 | dmenu)
local dockerID=$(docker ps -a --format "{{.Names}}" | dmenu)
docker start $dockerID > /dev/null
#docker exec -it $dockerID bash -c 'make all 2>&1 1>/dev/null | grep --color -iP "\^|warning:|error:|"'
#docker stop $dockerID > /dev/null
#./run.sh
docker start $dockerID > /dev/null
docker exec -it $dockerID bash $@
}
function dcruntpe() {
checkIfStarted
local dockerID='TPE-ARQUI'
docker start $dockerID > /dev/null
docker exec -it $dockerID bash -c 'make all 2>&1 1>/dev/null | grep --color -iP "\^|warning:|error:|"'
docker stop $dockerID > /dev/null
./run.sh
}
function dcgdbtpe() {
checkIfStarted
local dockerID='TPE-ARQUI-GDB'
docker start $dockerID > /dev/null
docker exec -it $dockerID bash -c 'make all 2>&1 1>/dev/null | grep --color -iP "\^|warning:|error:|"'
docker stop $dockerID > /dev/null
./run.sh gdb
}
function dcstatpe() {
checkIfStarted
local dockerID='TPE-ARQUI-GDB'
docker start $dockerID > /dev/null
docker exec -it $dockerID bash $@
}
function dcstotpe() {
local dockerID='TPE-ARQUI-GDB'
docker stop $dockerID > /dev/null
}
function dcstatpe2() {
checkIfStarted
local dockerID='TPE-ARQUI'
docker start $dockerID > /dev/null
docker exec -it $dockerID bash $@
}
function dcsta() {
checkIfStarted
#local dockerID=`docker ps -l -q`
local dockerID=`docker ps -l`
docker start $dockerID > /dev/null
docker exec -it $dockerID bash $@
}
function dcsto() {
local dockerID=`docker ps -l -q`
docker stop $dockerID > /dev/null
}
function extract {
if [ -z "$1" ]; then
echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>"
else
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xvjf ../$1 ;;
*.tar.gz) tar xvzf ../$1 ;;
*.tar.xz) tar xvJf ../$1 ;;
*.lzma) unlzma ../$1 ;;
*.bz2) bunzip2 ../$1 ;;
*.rar) unrar x -ad ../$1 ;;
*.gz) gunzip ../$1 ;;
*.tar) tar xvf ../$1 ;;
*.tbz2) tar xvjf ../$1 ;;
*.tgz) tar xvzf ../$1 ;;
*.zip) unzip ../$1 ;;
*.Z) uncompress ../$1 ;;
*.7z) 7z x ../$1 ;;
*.xz) unxz ../$1 ;;
*.exe) cabextract ../$1 ;;
*) echo "extract: '$1' - unknown archive method" ;;
esac
else
echo "$1 - file does not exist"
fi
fi
}
function maketar() {
tar cvzf "${1%%/}.tar.gz" "${1%%/}/"
}
function makezip() {
zip -r "${1%%/}.zip" "$1"
} }

View File

@ -1,40 +1,46 @@
# Runs only once https://unix.stackexchange.com/questions/71253/what-should-shouldnt-go-in-zshenv-zshrc-zlogin-zprofile-zlogout #!/bin/sh
export XDG_CONFIG_HOME="$HOME"/.config export EDITOR=nvim
export XDG_CACHE_HOME="$HOME"/.cache
export XDG_DATA_HOME="$HOME"/.local/share
export XDG_STATE_HOME="$HOME"/.local/state
export TERM=st-256color export TERM=st-256color
export TERMINAL=st export TERMINAL=st
export GOPATH="$XDG_CONFIG_HOME"/go export TERMINAL_PROG=st
export CM_DIR="$XDG_CACHE_HOME/clipmenu" export BROWSER=librewolf
export PAGER='nvimpager -p'
export CM_SELECTIONS="clipboard" export CM_SELECTIONS="clipboard"
export CM_DEBUG=1 export CM_DEBUG=1
export CM_OUTPUT_CLIP=0 export CM_OUTPUT_CLIP=0
export CM_MAX_CLIPS=1000 export CM_MAX_CLIPS=1000
export CM_IGNORE_WINDOW="Bitwarden|KeePass" export CM_IGNORE_WINDOW="Bitwarden|KeePass"
export _JAVA_AWT_WM_NONREPARENTING=1 export _JAVA_AWT_WM_NONREPARENTING=1
export PAGER='nvimpager -p' export QT_QPA_PLATFORMTHEME=gtk2
export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
export XDG_CONFIG_HOME="$HOME"/.config
export XDG_CACHE_HOME="$HOME"/.cache
export XDG_DATA_HOME="$HOME"/.local/share
export XDG_STATE_HOME="$HOME"/.local/state
export CM_DIR="$XDG_CACHE_HOME"/clipmenu
export GOPATH="$XDG_CONFIG_HOME"/go
export R_HOME_USER="$XDG_CONFIG_HOME"/R export R_HOME_USER="$XDG_CONFIG_HOME"/R
export R_PROFILE_USER="$XDG_CONFIG_HOME"/R/.Rprofile export R_PROFILE_USER="$XDG_CONFIG_HOME"/R/.Rprofile
export R_LIBS_USER="$XDG_CONFIG_HOME"/R/library export R_LIBS_USER="$XDG_CONFIG_HOME"/R/library
export R_HISTFILE="$XDG_CONFIG_HOME"/R/.Rhistory export R_HISTFILE="$XDG_CONFIG_HOME"/R/.Rhistory
export QT_QPA_PLATFORMTHEME=gtk2
export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
export CARGO_HOME="$XDG_DATA_HOME"/cargo export CARGO_HOME="$XDG_DATA_HOME"/cargo
export CUDA_CACHE_PATH="$XDG_CACHE_HOME"/nv export CUDA_CACHE_PATH="$XDG_CACHE_HOME"/nv
#export GNUPGHOME="$XDG_DATA_HOME"/gnupg #export GNUPGHOME="$XDG_DATA_HOME"/gnupg
export GRADLE_USER_HOME="$XDG_DATA_HOME"/gradle export GRADLE_USER_HOME="$XDG_DATA_HOME"/gradle
export GTK2_RC_FILES="$XDG_CONFIG_HOME"/gtk-2.0/gtkrc export GTK2_RC_FILES="$XDG_CONFIG_HOME"/gtk-2.0/gtkrc
export XCURSOR_PATH=/usr/share/icons:${XDG_DATA_HOME}/icons export XCURSOR_PATH=/usr/share/icons:"$XDG_DATA_HOME"/icons
export LESSHISTFILE="$XDG_CACHE_HOME"/less/history export LESSHISTFILE="$XDG_CACHE_HOME"/less/history
export TERMINFO="$XDG_DATA_HOME"/terminfo export TERMINFO="$XDG_DATA_HOME"/terminfo
export TERMINFO_DIRS="$XDG_DATA_HOME"/terminfo:/usr/share/terminfo export TERMINFO_DIRS="$XDG_DATA_HOME"/terminfo:/usr/share/terminfo
export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME"/npm/npmrc export NPM_CONFIG_USERCONFIG="$XDG_CONFIG_HOME"/npm/npmrc
export NVM_DIR="$XDG_DATA_HOME"/nvm export NVM_DIR="$XDG_DATA_HOME"/nvm
export PASSWORD_STORE_DIR="$XDG_DATA_HOME"/pass export PASSWORD_STORE_DIR="$XDG_DATA_HOME"/pass
export PSQL_HISTORY="$XDG_DATA_HOME/psql_history" export PSQL_HISTORY="$XDG_DATA_HOME"/psql_history
export ZSH="$XDG_DATA_HOME"/oh-my-zsh #export ZSH="$XDG_DATA_HOME"/oh-my-zsh
export ZDOTDIR="$XDG_CONFIG_HOME"/zsh export ZDOTDIR="$XDG_CONFIG_HOME"/zsh
export BUNDLE_USER_CONFIG="$XDG_CONFIG_HOME"/bundle export BUNDLE_USER_CONFIG="$XDG_CONFIG_HOME"/bundle
export BUNDLE_USER_CACHE="$XDG_CACHE_HOME"/bundle export BUNDLE_USER_CACHE="$XDG_CACHE_HOME"/bundle
@ -42,21 +48,19 @@ export BUNDLE_USER_PLUGIN="$XDG_DATA_HOME"/bundle
export NUGET_PACKAGES="$XDG_CACHE_HOME"/NuGetPackages export NUGET_PACKAGES="$XDG_CACHE_HOME"/NuGetPackages
export DOCKER_CONFIG="$XDG_CONFIG_HOME"/docker export DOCKER_CONFIG="$XDG_CONFIG_HOME"/docker
export MINIKUBE_HOME="$XDG_DATA_HOME"/minikube export MINIKUBE_HOME="$XDG_DATA_HOME"/minikube
# export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR"/gcr/ssh export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR"/gcr/ssh
export XINITRC="$XDG_CONFIG_HOME"/x11/xinitrc
export ANDROID_USER_HOME="$XDG_DATA_HOME"/android
export W3M_DIR="$XDG_DATA_HOME"/w3m
export DBUS_SESSION_BUS_ADDRESS=unix:path=$XDG_RUNTIME_DIR/bus export DBUS_SESSION_BUS_ADDRESS="unix:path=$XDG_RUNTIME_DIR/bus"
export PATH="$HOME/.local/bin:$PATH:$HOME/.local/share/gem/ruby/3.0.0/bin" export PATH="$HOME/.local/bin:$PATH"
export PATH="$PATH:$HOME/.local/share/JetBrains/Toolbox/scripts"
if grep -q "i5" /proc/cpuinfo; then if grep -q "i5" /proc/cpuinfo; then
export LAPTOP="" export LAPTOP=""
fi fi
if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then
if [ -v LAPTOP ]; then exec startx &> /dev/null
exec startx &> /dev/null
else
exec startx
fi
fi fi