return 1
;;
esac
- # run latest
- install-my-scripts
# todo: consider changing this to srun and having the args come
# from a file like /etc/default/btrbk, like is done in exim
s jdo btrbk-run "$@"
if [[ ! $tmp ]]; then
s ssh-add /root/.ssh/home
fi
- install-my-scripts
s jdo switch-mail-host "$@"
return $ret
}
local p a
# excluding emacs for now
#p=(/a/opt/{emacs-debian11{,-nox},mu,emacs} /a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts})
- p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts})
+ p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts} /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter)
a="-ahviSAXPH --specials --devices --delete --relative --exclude-from=/p/c/li-rsync-excludes"
ret=0
for h in li je bk; do
return $ret
}
bkpush() { # no emacs. for running faster.
- p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts})
+ p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts} /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter)
a="-ahviSAXPH --specials --devices --delete --relative --exclude-from=/p/c/li-rsync-excludes"
ret=0
m rsync "$@" $a ${p[@]} /p/c/machine_specific/bk root@bk.b8.nz:/ || ret=$?
return $ret
}
jepush() { # no emacs. for running faster.
- p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts})
+ p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts} /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter)
a="-ahviSAXPH --specials --devices --delete --relative --exclude-from=/p/c/li-rsync-excludes"
ret=0
m rsync "$@" $a ${p[@]} /p/c/machine_specific/je root@je.b8.nz:/ || ret=$?
e expected 2-3 arg of hostname, ip suffix, and extrahost >&2
return 1
fi
- local host ipsuf umask_orig
+ local host ipsuf umask_orig vpn_allowed
host=$1
ipsuf=$2
if [[ $3 ]]; then
lom() {
# l = the loopback device
local l base
+ # get sudo pass cached right away
+ if ! sudo -nv 2>/dev/null; then
+ sudo -v
+ fi
if [[ $1 == /* ]]; then
base=${1##*/}
fs_file=$1
paths="/p/c /b"
find $paths -not \( -name .svn -prune -o -name .git -prune \
-o -name .hg -prune -o -name .editor-backups -prune \
- -o -name .undo-tree-history -prune \) 2>/dev/null | grep -iP --color=auto "$*"
- rgv -m 5 "$*" $paths ||:
+ -o -name .undo-tree-history -prune \) 2>/dev/null | grep -iP --color=auto "$*" ||:
+ rgv -m 5 "$*" $paths /a/t.org /p/w.org /a/work.org ||:
}
# setup:
# rg with respecting vcs ignore files
rgv() {
ret=0
- command rg -. -z --no-messages -L -i -M 900 -g '!auto-save-list' -g '!.savehist' "$@" || ret=$?
+ # -. = search dotfiles
+ # -z = search zipped files
+ # -i = case insensitive
+ # -M = max columns
+ # --no-messages because of annoying errors on broken symlinks
+ command rg -. -z --no-messages -i -M 900 -g '!.git' -g '!auto-save-list' -g '!.savehist' "$@" || ret=$?
return $ret
}
+amall() {
+ printf "$(tput setaf 5 2>/dev/null ||:)█ coresite █$(tput sgr0 2>/dev/null||:)"
+ amfsf "$@"
+ printf "$(tput setaf 5 2>/dev/null ||:)█ office █$(tput sgr0 2>/dev/null||:)"
+ amoffice "$@"
+}
+amallq() { # amall quiet
+ amfsf "$@"
+ amoffice "$@"
+}
+amfsf() {
+ sedi -r '/alertmanager.url/s/@office//' ~/.config/amtool/config.yml
+ amtool "$@"
+}
+amoffice() {
+ sedi -r '/alertmanager.url/s/@fsf/@office.fsf/' ~/.config/amtool/config.yml
+ amtool "$@"
+}
+amls() {
+ amall silence query "$@"
+}
+amrmall() {
+ amfsf silence expire $(amfsf silence query -q)
+ amoffice silence expire $(amoffice silence query -q)
+}
+
+
+youtube-dl-update() {
+ sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
+ sudo chmod a+rx /usr/local/bin/youtube-dl
+}
+
+# https://github.com/yt-dlp/yt-dlp/wiki/Installation
+yt-dlp-update() {
+ sudo curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp
+sudo chmod a+rx /usr/local/bin/yt-dlp # Make executable
+ }
+
+mpvyt() {
+ mpv --ytdl ytdl_path=/usr/local/bin/yt-dlp "$@"
+ }
# taken from default changes to bashrc and bash_profile
path-add --end --ifexists $HOME/.rvm/bin