Update. Rename simple_timer
This commit is contained in:
parent
114144f6e9
commit
4fb8226e98
124
.bash_xinitrc
124
.bash_xinitrc
|
|
@ -24,7 +24,7 @@ setxkbmap -layout us
|
||||||
# read iid; xinput list-props $iid |
|
# read iid; xinput list-props $iid |
|
||||||
# grep "Typing Enabled (" |
|
# grep "Typing Enabled (" |
|
||||||
# awk '{gsub(/\(|\)|:/,""); print $6}' |
|
# awk '{gsub(/\(|\)|:/,""); print $6}' |
|
||||||
# xargs -I 'pid' xinput set-prop $iid 'pid' 0;
|
# xargs -I pid xinput set-prop "$iid" pid 0;
|
||||||
# }
|
# }
|
||||||
|
|
||||||
updatebar
|
updatebar
|
||||||
|
|
@ -32,86 +32,104 @@ updatebar
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
######################## More or less shell specific #####################
|
######################## More or less shell specific #####################
|
||||||
pathappend () {
|
pathappend () {
|
||||||
# just works
|
# appending a path to the PATH variable
|
||||||
|
# if it's already in the PATH, move it to the end
|
||||||
|
# POSIX compliant version
|
||||||
|
|
||||||
|
test -n "$1" ||
|
||||||
|
{ echo "Usage: pathappend PATH_TO_ADD"; return 1; }
|
||||||
|
|
||||||
|
test "$(printf %s $- | sed s/r//)" = $- ||
|
||||||
|
{ echo 'Restricted shell, cannot change PATH'; return 2; }
|
||||||
|
|
||||||
|
test -d "$1" ||
|
||||||
|
{ echo "PATH_TO_ADD not a directory"; return 3; }
|
||||||
|
|
||||||
|
test "$(printf %s "$1" | sed s/://)" = "$1" ||
|
||||||
|
{ echo 'Cannot add path with colon'; return 4; }
|
||||||
|
|
||||||
|
norm_path=$(printf %s "$PATH" | head -n 1 | sed 's|/\+|/|g; s|/$//') # ensure one line, deduplicate slashes, trim trailing
|
||||||
|
norm_path_to_add=$(printf %s "$1" | head -n 1 | sed 's|/\+|/|g; s|/$//') # ensure one line, deduplicate slashes, trim trailing
|
||||||
|
norm_path=$(printf %s "$norm_path" | sed "s/$(printf %s "$norm_path_to_add" | sed -f /proc/self/fd/3 3<<- 'EOF'
|
||||||
|
# escape BRE meta-characters
|
||||||
|
s/\\/\\./g # backslash first
|
||||||
|
s/\./\\./g
|
||||||
|
s/\^/\\^/g
|
||||||
|
s/\$/\\$/g
|
||||||
|
s/\*/\\*/g
|
||||||
|
s/\[/\\[/g
|
||||||
|
s|/|\\/|g # escape delimiter for outer sed
|
||||||
|
EOF
|
||||||
|
)//g") # remove all instances of PATH_TO_ADD from PATH
|
||||||
|
norm_path=$(printf %s "$norm_path" | sed 's/:\+/:/g; s/^://; s/:$//') # deduplicate colons, trim leading and trailing
|
||||||
|
PATH=$norm_path:$norm_path_to_add # append with colon
|
||||||
|
} && export -f pathappend
|
||||||
|
|
||||||
|
ld_lib_path_append () {
|
||||||
|
# just works, posix compliant
|
||||||
NORM_PATH=":${PATH}:"
|
NORM_PATH=":${PATH}:"
|
||||||
NORM_PATH="$(printf '%s' "${NORM_PATH}" | sed 's/::/:/g')"
|
NORM_PATH="$(printf '%s' "${NORM_PATH}" | sed 's/:+/:/g')"
|
||||||
# TODO: Handle Slashes
|
# TODO: Handle Slashes
|
||||||
NORM_PATH_TO_ADD=":${1}:"
|
NORM_PATH_TO_ADD=":${1}:"
|
||||||
NORM_PATH_TO_ADD="$(printf '%s' "${NORM_PATH_TO_ADD}" | sed 's/::/:/g' | sed 's/::/:/g')"
|
NORM_PATH_TO_ADD="$(printf '%s' "${NORM_PATH_TO_ADD}" | sed 's/::/:/g' | sed 's/::/:/g')"
|
||||||
if [ "$(printf '%s' "${-}" | sed 's/r//')" = "${-}" ] && [ -d "${1}" ] && [ "$(printf '%s' "${NORM_PATH}" | sed "s/$(printf '%s' "${NORM_PATH_TO_ADD}" | awk '{gsub("\x2f", "\x5c\x2f"); print $0}')//")" = "${NORM_PATH}" ]; then
|
if [ "$(printf '%s' "${-}" | sed 's/r//')" = "${-}" ] && [ -d "${1}" ] && [ "$(printf '%s' "${NORM_PATH}" | sed "s/$(printf '%s' "${NORM_PATH_TO_ADD}" | awk '{gsub("\x2f", "\x5c\x2f"); print $0}')//")" = "${NORM_PATH}" ]; then
|
||||||
PATH="${PATH:+"${PATH%:}"}${NORM_PATH_TO_ADD%:}"
|
PATH="${PATH:+"${PATH%:}"}${NORM_PATH_TO_ADD%:}"
|
||||||
fi
|
fi
|
||||||
}
|
} && export -f ld_lib_path_append
|
||||||
export pathappend
|
|
||||||
|
|
||||||
ld_lib_path_add () {
|
|
||||||
# just works
|
|
||||||
NORM_PATH=":${PATH}:"
|
|
||||||
NORM_PATH="$(printf '%s' "${NORM_PATH}" | sed 's/::/:/g')"
|
|
||||||
# TODO: Handle Slashes
|
|
||||||
NORM_PATH_TO_ADD=":${1}:"
|
|
||||||
NORM_PATH_TO_ADD="$(printf '%s' "${NORM_PATH_TO_ADD}" | sed 's/::/:/g' | sed 's/::/:/g')"
|
|
||||||
if [ "$(printf '%s' "${-}" | sed 's/r//')" = "${-}" ] && [ -d "${1}" ] && [ "$(printf '%s' "${NORM_PATH}" | sed "s/$(printf '%s' "${NORM_PATH_TO_ADD}" | awk '{gsub("\x2f", "\x5c\x2f"); print $0}')//")" = "${NORM_PATH}" ]; then
|
|
||||||
PATH="${PATH:+"${PATH%:}"}${NORM_PATH_TO_ADD%:}"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
export ld_lib_path_add
|
|
||||||
|
|
||||||
eval "$(pyenv init --path)"
|
|
||||||
|
|
||||||
# shellcheck disable=SC2155
|
# shellcheck disable=SC2155
|
||||||
export XDG_RUNTIME_DIR=/run/user/"$(id -u)"
|
export XDG_RUNTIME_DIR="/run/user/$(id -u)"
|
||||||
export SSH_AUTH_SOCK="${XDG_RUNTIME_DIR}"/ssh-agent.socket
|
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket"
|
||||||
# export SUDO_ASKPASS='/usr/bin/sudo-askpass'
|
# export SUDO_ASKPASS="/usr/bin/sudo-askpass"
|
||||||
# export SSH_ASKPASS='/usr/bin/sudo-askpass'
|
# export SSH_ASKPASS="/usr/bin/sudo-askpass"
|
||||||
# export SSH_ASKPASS_REQUIRE='prefer'
|
# export SSH_ASKPASS_REQUIRE="prefer"
|
||||||
export GIT_CONFIG_GLOBAL="${HOME}"/.gitconfig
|
export GIT_CONFIG_GLOBAL="$HOME/.gitconfig"
|
||||||
# shellcheck disable=SC2155
|
# shellcheck disable=SC2155
|
||||||
export GPG_TTY="$(tty)"
|
export GPG_TTY="$(tty)"
|
||||||
export _JAVA_AWT_WM_NONREPARENTING='1'
|
export _JAVA_AWT_WM_NONREPARENTING="1"
|
||||||
|
|
||||||
export USER42='tischmid'
|
export USER42="tischmid"
|
||||||
export EMAIL42='timo42@proton.me'
|
export EMAIL42="timo42@proton.me"
|
||||||
export MAIL='timo42@proton.me'
|
export MAIL="timo42@proton.me"
|
||||||
|
|
||||||
# export LANG='en_US.UTF-8'
|
# export LANG="en_US.UTF-8"
|
||||||
# export LC_ALL='en_US.UTF-8'
|
# export LC_ALL="en_US.UTF-8"
|
||||||
|
|
||||||
export GOPATH="${HOME}"/go
|
export GOPATH="$HOME/go"
|
||||||
|
|
||||||
ld_lib_path_add "${LD_LIBRARY_PATH}:${HOME}/.local/lib"
|
ld_lib_path_append "${LD_LIBRARY_PATH}:${HOME}/.local/lib"
|
||||||
export LD_LIBRARY_PATH
|
export LD_LIBRARY_PATH
|
||||||
|
|
||||||
pathappend '/bin'
|
pathappend "/bin"
|
||||||
pathappend '/sbin'
|
pathappend "/sbin"
|
||||||
pathappend '/usr/bin'
|
pathappend "/usr/bin"
|
||||||
pathappend '/usr/sbin'
|
pathappend "/usr/sbin"
|
||||||
pathappend '/usr/local/bin'
|
pathappend "/usr/local/bin"
|
||||||
pathappend '/usr/lcoal/sbin'
|
pathappend "/usr/lcoal/sbin"
|
||||||
pathappend '/usr/local/games'
|
pathappend "/usr/local/games"
|
||||||
pathappend '/usr/games'
|
pathappend "/usr/games"
|
||||||
pathappend '/snap/bin'
|
pathappend "/snap/bin"
|
||||||
pathappend "${HOME}"/bin
|
pathappend "${HOME}/bin"
|
||||||
pathappend "${HOME}"/.local/bin
|
pathappend "${HOME}/.local/bin"
|
||||||
pathappend "${HOME}"/.local/include
|
pathappend "${HOME}/.local/include"
|
||||||
pathappend "${HOME}"/.brew/bin
|
pathappend "${HOME}/.brew/bin"
|
||||||
pathappend "${GOPATH}"/bin
|
pathappend "${GOPATH}/bin"
|
||||||
export PATH
|
export PATH
|
||||||
|
|
||||||
# add cargo bin to path
|
# add cargo bin to path
|
||||||
if [ -f "${HOME}"/.cargo/env ] || [ -r "${HOME}"/.cargo/env ]; then
|
if [ -f "$HOME/.cargo/env" ] || [ -r "$HOME/.cargo/env" ]; then
|
||||||
# shellcheck disable=SC1091
|
# shellcheck disable=SC1091
|
||||||
. "${HOME}"/.cargo/env
|
. "$HOME/.cargo/env"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export NVM_DIR="${HOME}"/.nvm
|
export NVM_DIR="$HOME/.nvm"
|
||||||
# shellcheck disable=SC1091
|
# shellcheck disable=SC1091
|
||||||
[ -s "${NVM_DIR}"/nvm.sh ] && . "${NVM_DIR}"/nvm.sh
|
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
|
||||||
# shellcheck disable=SC1091
|
# shellcheck disable=SC1091
|
||||||
[ -s "${NVM_DIR}"/bash_completion ] && . "${NVM_DIR}"/bash_completion
|
[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"
|
||||||
######################## More or less shell specific END #####################
|
######################## More or less shell specific END #####################
|
||||||
|
|
||||||
picom &
|
picom &
|
||||||
|
|
|
||||||
29
.bashrc
29
.bashrc
|
|
@ -100,11 +100,12 @@ alias colors='bash -c "$(curl --silent --location \
|
||||||
alias sl='sl -GwFdcal'
|
alias sl='sl -GwFdcal'
|
||||||
alias cmatrix='cmatrix -u3 -Cred'
|
alias cmatrix='cmatrix -u3 -Cred'
|
||||||
alias r='ranger'
|
alias r='ranger'
|
||||||
alias q='docker run --rm -it ghcr.io/natesales/q'
|
alias q-dig='docker run --rm -it ghcr.io/natesales/q'
|
||||||
alias make='compiledb make'
|
alias make='compiledb make'
|
||||||
alias dotconf='git --git-dir="${HOME-}"/.dotfiles/ --work-tree="${HOME-}"'
|
alias dotconf='git --git-dir="${HOME-}"/.dotfiles/ --work-tree="${HOME-}"'
|
||||||
|
|
||||||
#################### CDPATHS #############################
|
#################### CDPATHS #############################
|
||||||
|
CDPATH="."
|
||||||
CDPATH="${CDPATH}:${HOME}"
|
CDPATH="${CDPATH}:${HOME}"
|
||||||
CDPATH="${CDPATH}:${HOME}/projects"
|
CDPATH="${CDPATH}:${HOME}/projects"
|
||||||
CDPATH="${CDPATH}:${HOME}/projects/aoc"
|
CDPATH="${CDPATH}:${HOME}/projects/aoc"
|
||||||
|
|
@ -194,16 +195,24 @@ function paruuu () {
|
||||||
}
|
}
|
||||||
|
|
||||||
function skill () {
|
function skill () {
|
||||||
while [ -n "${1:-}" ] ; do
|
exit_status=0
|
||||||
# shellcheck disable=SC2046,SC2009
|
while [ -n "${1-}" ] ; do
|
||||||
2>/dev/null kill -9 \
|
# pids="$(ps -eo pid,cmd)"
|
||||||
-- $(ps auxww | grep -v grep | grep "${1-}" | awk '{print $2}') \
|
# pids="$(echo "$pids" | cut -d " " -f3- | grep -n -- "$1" | cut -d ":" -f1 | awk 'BEGIN{printf "NR=="}ORS="||NR=="' | head -n 1 | pids="$pids" xargs --no-run-if-empty -I {} bash -c 'echo "$pids" | cut -d " " -f2 | awk "${1}0"' bash {})"
|
||||||
&& return 0
|
pgrep -f -- "$1" | xargs -r kill -9 && return 0 || {
|
||||||
ps auxww | grep -v grep | grep -q "${1-}" || { echo "Process not found"; return 2; }
|
printf '\033[31m%s\033[m\n' "These processes couldn't be killed without sudo:"
|
||||||
2>/dev/null sudo kill -9 \
|
pgrep -f "$1" | xargs ps -o user,ruser,pid,c,stime,tty,time,cmd
|
||||||
-- $(ps auxww | grep "${1-}" | grep -v grep | awk '{print $2}') ||
|
}
|
||||||
{ echo "Couldn't kill process"; return 3; }
|
pgrep -f -- "$1" | sudo xargs -r kill -9 || {
|
||||||
|
if [ $? = 1 ]; then
|
||||||
|
printf '\033[41;30m%s\033[m\n' "These processes couldn't be killed with root:"
|
||||||
|
pgrep -f "$1" | xargs ps -o user,ruser,pid,c,stime,tty,time,cmd
|
||||||
|
fi
|
||||||
|
exit_status=1
|
||||||
|
}
|
||||||
|
shift
|
||||||
done
|
done
|
||||||
|
return $exit_status
|
||||||
}
|
}
|
||||||
|
|
||||||
function wpa_restart () {
|
function wpa_restart () {
|
||||||
|
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
||||||
#! /bin/sh -
|
|
||||||
|
|
||||||
min="${1-}"
|
|
||||||
sec="${2-}"
|
|
||||||
|
|
||||||
if [ -z "${min}" ] || [ -z "${sec}" ] || [ -n "${3-}" ] ; then
|
|
||||||
printf '%s\n' "Usage: ${0-} MIN SEC"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
print_as_minutes () {
|
|
||||||
_total_sec="${1}"
|
|
||||||
min="$((_total_sec / 60))"
|
|
||||||
sec="$((_total_sec % 60))"
|
|
||||||
clear -x
|
|
||||||
n_lines="$(($(tput lines) / 2 - 4))"
|
|
||||||
while [ "${n_lines}" -ge "0" ] ; do
|
|
||||||
printf '\n'
|
|
||||||
n_lines="$((n_lines - 1))"
|
|
||||||
done
|
|
||||||
figlet -w "$(tput cols)" -c "${min} : ${sec}"
|
|
||||||
}
|
|
||||||
|
|
||||||
total_sec="$((min * 60 + sec))"
|
|
||||||
while [ "${total_sec}" -ge "0" ] ; do
|
|
||||||
print_as_minutes "${total_sec}"
|
|
||||||
sleep 1s
|
|
||||||
total_sec="$((total_sec - 1))"
|
|
||||||
done
|
|
||||||
Loading…
Reference in New Issue