config: script enhancements
This commit is contained in:
parent
289c583fbe
commit
91d3180a7b
|
@ -3,19 +3,28 @@ set -o pipefail
|
|||
alias localip="ip addr show | grep -E '(ens|eth)' | grep -oP '"'(?<=inet\s)\d+(\.\d+){3}'"' | head -1"
|
||||
|
||||
letsencrypt() {
|
||||
(
|
||||
ip=$(localip)
|
||||
IFS=$'\n'
|
||||
if test $# -eq 0
|
||||
then
|
||||
for user in $(list users)
|
||||
do for domain in $(hestia v-list-web-domains $user | grep $ip | awk '{print $1}')
|
||||
do #echo "Checking $user $domain" >&2
|
||||
hestia v-list-web-domain-ssl $user $domain | grep -q . && continue
|
||||
hestia v-list-web-domain $user $domain | grep -q REDIRECT && continue
|
||||
#echo "Generating Certificate" >&2
|
||||
hestia v-add-letsencrypt-domain $user $domain $(hestia v-list-web-domain $user $domain | grep ALIAS | tr -s ' ' | cut -d' ' -f2- | tr ' ' ',')
|
||||
done
|
||||
do letsencrypt "$user"
|
||||
done
|
||||
)
|
||||
else
|
||||
(
|
||||
ip=$(localip)
|
||||
IFS=$'\n'
|
||||
for user
|
||||
do for domain in $(hestia v-list-web-domains $user | grep $ip | awk '{print $1}')
|
||||
do #echo commented out due to command echoing in hestia alias
|
||||
#echo "Checking $user $domain" >&2
|
||||
hestia v-list-web-domain $user $domain | grep -q REDIRECT && continue
|
||||
hestia v-list-mail-domain-ssl $user $domain | grep -q . || hestia v-add-letsencrypt-domain $user $domain '' yes
|
||||
hestia v-list-web-domain-ssl $user $domain | grep -q . && continue
|
||||
#echo "Generating Certificate" >&2
|
||||
hestia v-add-letsencrypt-domain $user $domain $(hestia v-list-web-domain $user $domain | grep ALIAS | tr -s ' ' | cut -d' ' -f2- | tr ' ' ',')
|
||||
done
|
||||
done
|
||||
)
|
||||
fi
|
||||
}
|
||||
|
||||
list() {
|
||||
|
@ -40,7 +49,7 @@ hestia() {
|
|||
command=$1
|
||||
shift
|
||||
echo '>' sudo $(which $command) "$@" >&2
|
||||
sudo $(which $command) "$@"
|
||||
sudo timeout 30s $(which $command) "$@"
|
||||
}
|
||||
|
||||
accessible() {
|
||||
|
|
|
@ -145,6 +145,7 @@
|
|||
cme = commit -v --edit --message # Commit with message from CLI but edit it
|
||||
cad = !git diff-tree --no-commit-id --name-only -r HEAD | git commit -v --amend --pathspec-from-file=- # Amend commit with all already changed files
|
||||
cap = !git commit --amend --no-edit && git push --force-with-lease
|
||||
journal = !git -C $DATA commit -v $DATA/2-box/journal*
|
||||
|
||||
cp = cherry-pick
|
||||
cpc = cherry-pick --continue
|
||||
|
|
|
@ -27,7 +27,8 @@ if beginswith $'\n#' "$original"; then
|
|||
expr substr "$common" 1 "$count" | sed 's|.local/bin/scripts|bin|') || exit 0
|
||||
case "$path" in ([0-9]-*) path="${path#*-}";; esac
|
||||
{
|
||||
echo "$path" | sed 's|^\.||;s|/\?$|: |'
|
||||
# Remove initial dot and trailing slash/dash/underscore
|
||||
echo "$path" | sed 's|^\.||;s|[/_-]\?$|: |'
|
||||
echo "$original"
|
||||
} > "$COMMIT_MSG_FILE"
|
||||
fi
|
||||
|
|
|
@ -11,8 +11,9 @@ highlight: true
|
|||
indent_character: '|'
|
||||
journals:
|
||||
default: ~/data/2-box/journal/jrnl.txt
|
||||
tug: ~/data/2-box/journal/tug.txt
|
||||
nug: ~/data/2-box/journal/nuggets.txt
|
||||
intentions: ~/data/2-box/journal/intentions.txt
|
||||
nug: ~/data/2-box/journal/nug.txt
|
||||
linewrap: 99
|
||||
tagsymbols: '@'
|
||||
template: false
|
||||
|
|
|
@ -37,11 +37,14 @@ let g:firenvim_config = {
|
|||
\ '.*calendar\.google\.com.*': { 'priority': 9, 'takeover': 'empty', },
|
||||
\ '.*docs\.google\.com.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '.*contacts\.google\.com.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '.*notion\.so.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '.*cloud\.atomtoast\.xyz.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ 'https://bigbluebutton.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ 'https://dhall-lang.org.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ 'https://aur.archlinux.org/account.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '://notion\.so.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '://bbb\..*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '://bigbluebutton.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '://dhall-lang.org.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '://aur.archlinux.org/account.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '.*\.hobbyfarm\..*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '://rancher\..*': { 'priority': 9, 'takeover': 'never', },
|
||||
\
|
||||
\ '.*stackexchange\.com.*': { 'priority': 9, 'takeover': 'never', },
|
||||
\ '.*stackoverflow\.com.*': { 'priority': 9, 'takeover': 'never', },
|
||||
|
|
|
@ -246,7 +246,7 @@ alias dt='python -c "import time;print(time.asctime(time.localtime()))"'
|
|||
# Process
|
||||
alias println='printf "\n"'
|
||||
alias myip="curl ifconfig.me && println && curl icanhazip.com"
|
||||
alias dedup='awk '"'"'!a[$0]++'"'"
|
||||
alias dedup-lines='awk '"'"'!a[$0]++'"'"
|
||||
alias lar='last | tac'
|
||||
alias lst='( last; last -f /var/log/wtmp.1 ) | grep -v "pts/" | tac | less +G'
|
||||
alias hedgedoc="tmux kill-session -t hedgedoc; builtin cd '$d4/dev/_forks/hedgedoc' && tmux new-session -s hedgedoc -d 'yarn run dev' \; split-window -h 'nodemon --watch app.js --watch lib --watch locales --watch config.json app.js' \; ls"
|
||||
|
@ -329,11 +329,12 @@ sshl() {
|
|||
ssh -G "$1" | grep --silent "^user root$" &&
|
||||
! [[ "$1" =~ "pve.*" ]] &&
|
||||
! [[ "$1" =~ "encee.*" ]] &&
|
||||
! [[ "$1" =~ ".*fmh.*" ]] &&
|
||||
! [[ "$1" =~ ".*ofc.*" ]] &&
|
||||
! [[ "$1" =~ "delta*" ]] &&
|
||||
! [[ "$1" =~ "tmtgw" ]] &&
|
||||
local pass=pass
|
||||
test "$all" &&
|
||||
find $XDG_CONFIG_HOME/bash/ \( -name aliases.bash -o -name "$1*.bash" \) -exec cat {} + | $pass ssh "$1" 'cat > .bash_aliases && grep -q .bash_aliases .bashrc || echo "source ~/.bash_aliases" | tee -a .bashrc' &&
|
||||
find $XDG_CONFIG_HOME/bash/ \( -name aliases.bash -o -name "${1%[0-9a-z]}*.bash" \) -exec cat {} + | $pass ssh "$1" 'cat > .bash_aliases && grep -q .bash_aliases .bashrc || echo "source ~/.bash_aliases" | tee -a .bashrc' &&
|
||||
echo 'Updated .bash_aliases!'
|
||||
#$pass ssh "$1" 'grep -q ".bash_aliases" .bashrc || echo "source ~/.bash_aliases" >>.bashrc'
|
||||
if test -n "$pass"
|
||||
|
@ -410,7 +411,7 @@ vrec() {
|
|||
alias vrecd="ls $XDG_DATA_HOME/nvim/swap | head -1 | xargs -r -i mv {} /tmp"
|
||||
|
||||
# I think this was something about recovering backup files
|
||||
unv() { strings $1 | sed 's/5$//' | dedup; }
|
||||
unv() { strings $1 | sed 's/5$//' | dedup-lines; }
|
||||
|
||||
alias hx='sudo hexedit --maximize --color'
|
||||
# Paginated hexyl
|
||||
|
@ -641,3 +642,14 @@ stopswap() {
|
|||
echo "Not enough free memory!"
|
||||
fi
|
||||
}
|
||||
|
||||
extrac() {
|
||||
for var; do
|
||||
arg=${var%.lzo}
|
||||
out=$(basename ${arg%.vma})
|
||||
lzop -x $arg.lzo
|
||||
vma.py $arg $out ||
|
||||
vma.py $(basename $arg) $out &&
|
||||
( cd $out && find *.raw -exec qemu-img convert {} -O qcow2 $out-{}.qcow2 \; )
|
||||
done
|
||||
}
|
||||
|
|
|
@ -58,7 +58,7 @@ arguments = "--rebase --autostash --recurse-submodules"
|
|||
|
||||
[linux]
|
||||
# Arguments to pass yay when updating packages
|
||||
yay_arguments = "--nodiffmenu --ignore android-studio --ignore clion --ignore intellij-idea-ultimate-edition --ignore intellij-idea-ultimate-edition-jre --ignore webstorm --ignore linux --ignore stretchly-xeruf-git --overwrite '/usr/lib/node_modules/npm/**'"
|
||||
yay_arguments = "--nodiffmenu --overwrite '/usr/lib/node_modules/npm/**' --overwrite '/usr/lib/*' --ignore android-studio --ignore clion --ignore intellij-idea-ultimate-edition --ignore intellij-idea-ultimate-edition-jre --ignore webstorm --ignore linux --ignore stretchly-xeruf-git"
|
||||
#trizen_arguments = "--devel"
|
||||
#enable_tlmgr = true
|
||||
#emerge_sync_flags = "-q"
|
||||
|
|
|
@ -10,7 +10,7 @@ XDG_TEMPLATES_DIR="$HOME/.local/templates"
|
|||
XDG_DOWNLOAD_DIR="$HOME/data/5-incubator"
|
||||
XDG_MUSIC_DIR="$HOME/data/4-media/music"
|
||||
XDG_PICTURES_DIR="$HOME/data/4-media/images"
|
||||
XDG_VIDEOS_DIR="$HOME/data/4-media/videos"
|
||||
XDG_VIDEOS_DIR="$HOME/data/4-media/video"
|
||||
XDG_DOCUMENTS_DIR="$HOME/data/4-media/multimedia"
|
||||
XDG_NOTES_DIR="$HOME/data/2-box"
|
||||
#XDG_PUBLICSHARE_DIR="$HOME/data/3-resources/multimedia"
|
||||
|
|
4
.zshenv
4
.zshenv
|
@ -100,7 +100,7 @@ export LS_OPTIONS='--color=auto --human-readable --si --group-directories-first
|
|||
export LESS="--raw-control-chars --ignore-case --LONG-PROMPT --jump-target=5 $(test $(less --version | head -1 | cut -f2 -d' ') -ge 590 && echo --incsearch)"
|
||||
# TODO put into config file and use --exclude-from
|
||||
# -x 'System Volume Information'
|
||||
export DIRS_GENERATED="-x generated -x .gradle -x cmake_build -x dist-newstyle -x node_modules -x __pycache__"
|
||||
export DIRS_GENERATED="-x generated -x .gradle -x cmake_build -x dist-newstyle -x node_modules -x __pycache__ -x .pytest_cache"
|
||||
export DIRS_IGNORE_SAFE="-x .cache -x .cpan -x *Cache -x .pyenv -x .local/cache -x share/baloo -x share/cabal -x share/cargo -x share/digikam -x share/gem -x share/JetBrains -x share/tldr -x share/syncthing -x share/Steam/ubuntu* -x share/Steam/package -x share/virtualenv -x share/Zeal -x state/gradle -x state/android -x Ferdi/Partitions -x oh-my-zsh -x wine/drive_c/windows -x vendor/cache $DIRS_GENERATED"
|
||||
export DIRS_IGNORE="-x .sync -x .stfolder -x *build -x .git -x .idea -x env -x out -x cache -x Partitions -x vendor/bundle -x log $DIRS_IGNORE_SAFE"
|
||||
# red stderr
|
||||
|
@ -148,7 +148,7 @@ FD_BASE="fd --hidden --color=always --no-ignore-vcs"
|
|||
export FZF_DEFAULT_COMMAND="$FD_BASE --type file"
|
||||
export FZF_CTRL_T_COMMAND="$FD_BASE -d 7"
|
||||
## cplusplus - ctest, cmake, ninja
|
||||
SPARE_CORES=$(expr $(lscpu --extended | awk '{print $7}' | sort | uniq -c | head -1 | awk '{print $1}') \* 4 / 5)
|
||||
export SPARE_CORES=$(expr $(lscpu --extended | awk '{print $7}' | sort | uniq -c | head -1 | awk '{print $1}') \* 2 / 3)
|
||||
export CMAKE_BUILD_PARALLEL_LEVEL=${SPARE_CORES}
|
||||
export CTEST_PARALLEL_LEVEL=${SPARE_CORES}
|
||||
export CTEST_PROGRESS_OUTPUT=1
|
||||
|
|
Loading…
Reference in New Issue