X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=brc2;h=6ee207c10b126f440bd4952fff223a3a8fda2f7f;hb=f46ee5570766081a5a73ce0d2132c8a06ee966fb;hp=4877c3f25e0af35708135e86e5ee72b64d7bd73a;hpb=103a2e153f844343c359882079936b2521c82f15;p=distro-setup diff --git a/brc2 b/brc2 index 4877c3f..6ee207c 100644 --- a/brc2 +++ b/brc2 @@ -6,7 +6,10 @@ # * settings -if [[ $HISTFILE ]]; then +if [[ $LESSHISTFILE == - ]]; then + HISTFILE= + c() { cd "$@"; } +elif [[ $HISTFILE ]]; then HISTFILE=$HOME/.bh fi @@ -22,6 +25,7 @@ path-add --end ~/.local/bin path-add --ifexists --end /a/work/libremanage path-add --ifexists --end /a/opt/adt-bundle*/tools /a/opt/adt-bundle*/platform-tools path-add --ifexists --end /a/opt/scancode-toolkit-3.10. +path-add --ifexists --end /p/bin case $HOSTNAME in sy|bo) @@ -110,6 +114,12 @@ rootrsync() { s rsync -e "ssh -F /root/.ssh/confighome" "$@" } +zcheck() { + ssh bow DISPLAY=:0 scrot /tmp/oegu.jpg + scp bow:/tmp/oegu.jpg /t + ssh bow rm /tmp/oegu.jpg + feh /t/oegu.jpg +} slemacs() { local arg rtime v @@ -293,19 +303,6 @@ abrowserrmcompat() { fi ngreset } -ngset() { - if shopt nullglob >/dev/null; then - ngreset=false - else - shopt -s nullglob - ngreset=true - fi -} -ngreset() { - if $ngreset; then - shopt -u nullglob - fi -} checkre() { s checkrestart -b /a/bin/ds/checkrestart-blacklist -pv @@ -504,7 +501,7 @@ srun() { fg &>/dev/null ||: } -sm() { +sm() { # switch mail host local tmp keyhash c / # run latest @@ -517,6 +514,19 @@ sm() { s jrun switch-mail-host "$@" return $ret } +sh2() { # switch host2 + local tmp keyhash + c / + # run latest + keyhash=$(s ssh-keygen -lf /root/.ssh/home | awk '{print $2}') + tmp=$(s ssh-add -l | awk '$2 == "'$keyhash'"') + if [[ ! $tmp ]]; then + s ssh-add /root/.ssh/home + fi + install-my-scripts + s jrun switch-host2 "$@" + return $ret +} # shellcheck disable=SC2120 lipush() { @@ -1035,8 +1045,9 @@ hstatus() { # work log wlog() { - local day now i - for (( i=0; i<60; i++ )); do + local day now i days_back + days_back=${1:-16} + for (( i=0; i/dev/null; then s ip netns add nonet fi @@ -1264,48 +1276,60 @@ mp() { done } -# these might need a mu index or something added. -mbenable() { - local mb=$1 - dst=/m/4e/$mb - src=/m/md/$mb - [[ -e $src ]] || { echo "src:$src does not exist"; return 1; } - m mv -T $src $dst - m ln -s -T $dst $src -} -mb2enable() { - local mb - for mb; do - dst=/m/4e2/$mb - link=/m/md/$mb - src=/m/md/$mb - if [[ ! -e $src || -L $src ]]; then - src=/m/4e/$mb +# maildir enable +mdenable() { + local md dst ln_path src two + + two=false + case $1 in + -2) two=true shift ;; + esac + + for md; do + src= + if $two; then + dst=/m/4e2/$md + else + dst=/m/4e/$md + fi + + ln_path=/m/md/$md + for d in /m/md/$md /m/4e2/$md; do + if [[ -d $d && ! -L $d ]]; then + src=$d + break + fi + done + if [[ ! $src ]]; then + echo "error: could not find $md" >&2 + return 1 fi - [[ -e $src ]] || { echo "src:$src does not exist"; return 1; } m mv -T $src $dst - m ln -sf -T $dst $link + m ln -sf -T $dst $ln_path done } -mbdisable() { - local mb=$1 - dst=/m/md/$mb - src=/m/4e/$mb - set -x - [[ -e $src ]] || { set +x; return 1; } - if [[ -L $dst ]]; then rm $dst; fi - mv -T $src $dst - set +x +md2enable() { + mdenable -2 "$@" } -mb2disable() { - local mb=$1 - dst=/m/md/$mb - src=/m/4e2/$mb - set -x - [[ -e $src ]] || { set +x; return 1; } - if [[ -L $dst ]]; then rm $dst; fi - mv -T $src $dst - set +x +mddisable() { + local md=$1 + dst=/m/md/$md + + ### begin copied from mdenable, but different d ### + for d in /m/4e/$md /m/4e2/$md; do + if [[ -d $d && ! -L $d ]]; then + src=$d + break + fi + done + if [[ ! $src ]]; then + echo "error: could not find $md" >&2 + return 1 + fi + ### end copy from mdenable ### + + if [[ -L $dst ]]; then m rm $dst; fi + m mv -T $src $dst } @@ -1384,8 +1408,8 @@ mpvm() { arg+=(")") dir=${1:-.} # debug: - #find $dir "${arg[@]}" -size +1M - find $dir "${arg[@]}" -size +1M -exec mpv --profile=d '{}' + + #find $dir "${arg[@]}" -size +200k + find $dir "${arg[@]}" -size +200k -exec mpv --profile=d '{}' + } mpvs() { mpv --profile=s "$@"; @@ -1412,7 +1436,8 @@ allmyirc() { } mygajim() { - local time time_sec time_pretty + local time time_sec time_pretty days + days=${1:-16} sqlite3 -separator ' ' /p/c/subdir_files/.local/share/gajim/logs.db "select time, message from logs where contact_name = 'iank' and jid_id = 17;" | while read -r time l; do case $time in 16*) : ;; @@ -1425,7 +1450,7 @@ mygajim() { echo $time_pretty "$l" time_sec=${time%%.*} # only look at the last 18 days. generally just use this for timesheet. - if (( time_sec < EPOCHSECONDS - 60 * 60 * 24 * 18 )); then break; fi + if (( time_sec < EPOCHSECONDS - 60 * 60 * 24 * days )); then break; fi done } @@ -1437,6 +1462,7 @@ gajlogs() { sqlite3 -separator ' ' /p/c/subdir_files/.local/share/gajim/logs.db "select time, message from logs" | less } + net-dev-info() { e "lspci -nnk|gr -iA2 net" lspci -nnk|gr -iA2 net @@ -1541,6 +1567,7 @@ rebr() { } +r2e() { command r2e -d /p/c/rss2email.json -c /p/c/rss2email.cfg "$@"; } # only run on MAIL_HOST. simpler to keep this on one system. r2eadd() { # usage: name url # initial setup of rss2email: @@ -1559,7 +1586,6 @@ r2eadd() { # usage: name url # get up to date and dont send old entries now: r2e run --no-send $1 } -r2e() { command r2e -d /p/c/rss2email.json -c /p/c/rss2email.cfg "$@"; } rspicy() { # usage: HOST DOMAIN # connect to spice vm remote host. use vspicy for local host @@ -1718,16 +1744,28 @@ EOF fi } -# alert when a page goes live. not urgent. +# alert when a page goes live. alert200() { + local quiet url tmpdir + quiet=false + case $1 in + # dont send a diff of the html. some html is not very readable + -q) quiet=true + shift + ;; + esac url="$1" tmpdir="$(mktemp -d)" cd $tmpdir while true; do - if torsocks wget -q "$url"; then - alertme $tmpdir + if wget -q "$url"; then + if $quiet; then + echo | daylert 200 + else + alertme $tmpdir + fi fi - sleep $(( 600 + RANDOM % 300 )) + sleep $(( 120 + RANDOM % 300 )) done } @@ -1789,15 +1827,29 @@ testexim() { # exim -t 'test@zroe.org, t2@zroe.org' <<'EOF' # # -t = get recipient from header - exim -d -t <<'EOF' -From: root@$(hostname-f) -To: root@$(hostname-f) + exim -d -t <' $to < +To: $to +Subject: Mail delivery failed: returning message to sender + +This message was created automatically by mail delivery software. +EOF + +} + + # toggle keyboard tk() { # based on @@ -1902,6 +1954,18 @@ sdnbash() { # systemd namespace bash m sudo nsenter -t $pid -n -m sudo -u $USER -i bash } +sdnbashroot() { # systemd namespace bash + local unit pid + if (( $# != 1 )); then + echo $0: error wrong number of args >&2 + return 1 + fi + unit=$1 + pid=$(servicepid $unit) + m sudo nsenter -t $pid -n -m bash +} + + sdncmd() { # systemd namespace cmd local unit pid if (( $# <= 2 )); then