X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=brc;h=487ee8f1dae06254b7bc6280e0053d8c18423c3b;hb=25d20d07292550e8701e33aa409e4947f3075ede;hp=6389c0466b5ce31d4f602f672c7da95cbbe2755b;hpb=88a54cdff583fe1acdd0e441a331b5fcb570e258;p=distro-setup diff --git a/brc b/brc index 6389c04..487ee8f 100644 --- a/brc +++ b/brc @@ -153,7 +153,7 @@ HISTCONTROL=ignoredups # works in addition to HISTCONTROL to do more flexible things # it could also do the same things as HISTCONTROL and thus replace it, # but meh. dunno why, but just " *" does glob expansion, so use [ ] to avoid it. -HISTIGNORE='pass *:[ ]*:lom ' +HISTIGNORE='pass *:[ ]*:lom*:gram*' export BC_LINE_LENGTH=0 @@ -167,6 +167,7 @@ C_DEFAULT_DIR=/a # https://superuser.com/questions/366930/how-do-i-get-the-git-pager-to-clean-up-screen-output-after-exit # and reading the man export LESS=RXi +export SYSTEMD_LESS=$LESS # * include files for _x in /a/bin/distro-functions/src/* /a/bin/!(githtml)/*-function?(s); do @@ -181,7 +182,14 @@ if [[ -e /a/bin/errhandle/err ]]; then source /a/bin/errhandle/err err-allow fi +# if someone exported $SOE (stop on error), catch errors +if [[ $SOE ]]; then + err-catch +fi + path_add /a/exe +# end just because it seems safer +path_add --end node_modules/.bin # pip3 --user things go here: path_add --end ~/.local/bin path_add --ifexists --end /a/work/libremanage @@ -332,9 +340,11 @@ b() { c - } -bkrun() { - # use -p from interactive shell - btrbk-run -p "$@" +bbk() { + c / + # run latest + install-my-scripts + btrbk-run "$@" } bfg() { java -jar /a/opt/bfg-1.12.14.jar "$@"; } @@ -343,6 +353,21 @@ bigclock() { xclock -digital -update 1 -face 'arial black-80:bold' } +bpush() { + case $HOSTNAME in + tp) target=x2 ;; + x2) target=tp ;; + esac + btrbk-run -t $target && switch-mail-host $HOSTNAME $target +} +bpull() { + case $HOSTNAME in + tp) source=x2 ;; + x2) source=tp ;; + esac + btrbk-run -s $source && switch-mail-host $source $HOSTNAME +} + btc() { local f=/etc/bitcoin/bitcoin.conf # importprivkey will timeout if using the default of 15 mins. @@ -971,8 +996,10 @@ hrcat() { local f; for f; do [[ -f $f ]] || continue; hr; echo "$f"; cat "$f"; d # get latest hub and run it # main command to use: -# hub pull-request -# on first use, you input username/pass and it gets an oath token so you dont have to repeat +# hub pull-request --no-edit +# --no-edit means to use the first commit\'s message as the pull request message. +# Also, you need to use a feature branch, not master in your fork. +# On first use, you input username/pass and it gets an oath token so you dont have to repeat # it\'s at ~/.config/hub hub() { local up uptar updir p @@ -1060,23 +1087,19 @@ ipdrop() { s iptables -A INPUT -s $1 -j DROP } -net-dev-info() { - e "lspci -nnk|gr -iA2 net" - lspci -nnk|gr -iA2 net - hr - e "s lshw -C network" - hr - s lshw -C network - -} istext() { grep -Il "" "$@" &>/dev/null } +jfilter() { + grep -Evi -e "^(\S+\s+){4}(sudo|sshd|cron)\[\S*:" \ + -e "^(\S+\s+){4}systemd\[\S*: (starting|started) (btrfsmaintstop|dynamicipupdate|spamd dns bug fix cronjob|rss2email)\.*$" +} jtail() { - journalctl -n 10000 -f "$@" | grep -Evi "^(\S+\s+){4}(sudo|sshd|cron)" + journalctl -n 10000 -f "$@" | jfilter } +jr() { journalctl "$@" | jfilter | less ; } kff() { # keyboardio firmware flash pushd /a/bin/distro-setup/Arduino/Model01-Firmware @@ -1104,9 +1127,12 @@ lld() { ll -d "$@"; } lom() { local l base if [[ $1 == /* ]]; then + base=${1##*/} + if mountpoint /mnt/$base; then + return 0 + fi l=$(sudo losetup -f) sudo losetup $l $1 - base=${1##*/} if ! sudo cryptsetup luksOpen $l $base; then sudo losetup -d $l return 1 @@ -1118,7 +1144,7 @@ lom() { base=$1 sudo umount /mnt/$base l=$(sudo cryptsetup status /dev/mapper/$base|sed -rn 's/^\s*device:\s*(.*)/\1/p') - sudo cryptsetup luksClose /dev/mapper/$base + sudo cryptsetup luksClose /dev/mapper/$base || return 1 sudo losetup -d $l fi } @@ -1211,6 +1237,15 @@ mkdir() { command mkdir -p "$@"; } mo() { xset dpms force off; } # monitor off +net-dev-info() { + e "lspci -nnk|gr -iA2 net" + lspci -nnk|gr -iA2 net + hr + e "s lshw -C network" + hr + s lshw -C network + +} nopanic() { sudo tee -a /var/log/exim4/paniclog-archive /dev/null; then $s systemctl $1 $2 else @@ -1468,7 +1503,7 @@ srestart() { local service=$1 if [[ $(s systemctl --no-pager show -p ActiveState $service ) == ActiveState=active ]]; then systemctl restart $service - fi + fi } serstopnm() { ser stop NetworkManager @@ -1735,8 +1770,8 @@ testexim() { # adding -d, etc to COMMONOPTIONS in # /etc/default/exim4 exim -d -t <<'EOF' -From: root@gnu.org -To: ian@iankelling.org +From: ian@iankelling.org +To: root@lists0p.fsf.org Subject: Testing Exim This is a test message. @@ -1766,14 +1801,6 @@ tm() { (sleep $(calc "$@ * 60") && mpv --no-config --volume 50 /a/bin/data/alarm.mp3) > /dev/null 2>&1 & } -tpx2() { - case $HOSTNAME in - tp) target=x2 ;; - x2) target=tp ;; - esac - btrbk-run -t $target -pv && switch-mail-host $HOSTNAME $target -} - trg() { transmission-remote-gtk&r; } trc() { # example, set global upload limit to 100 kilobytes: @@ -2155,12 +2182,14 @@ reset-xscreensaver() { # xscreensaver-command -demo # then finding the corresponding option in .xscreensaver # spash, i happened to notice in .xscreensaver + # + # dpmsOff, monitor doesnt come back on using old free software supported nvidia card cat > /home/iank/.xscreensaver <<'EOF' mode: blank dpmsEnabled: True dpmsStandby: 0:02:00 -dpmsSuspend: 0:02:00 -dpmsOff: 0:03:00 +dpmsSuspend: 0:03:00 +dpmsOff: 0:00:00 timeout: 0:02:00 lock: True lockTimeout: 0:03:00 @@ -2183,11 +2212,6 @@ fi unset IFS -# if someone exported $SOE, catch errors -if [[ $SOE ]]; then - errcatch -fi - # for mitmproxy to get a newer python. # commented until i want to use it because it # noticably slows bash startup @@ -2198,37 +2222,24 @@ fi # eval "$(pyenv virtualenv-init -)" #fi -# id prefer to have system-wide, plus user ruby, due to bug in it -# https://github.com/rubygems/rubygems/pull/1002 -# further problems: installing multi-user ruby and user ruby, -# you dont get multi-user ruby when you sudo to root, unless its sudo -i. -# There a third hybrid form, which passenger error suggested I use, -# but it didnt actually work. - -# in cased I never need this -# rvm for non-interactive shell: modified from https://rvm.io/rvm/basics -#if [[ $(type -t rvm) == file && ! $(type -t ruby) ]]; then -# source $(rvm 1.9.3 do rvm env --path) -#fi - -# based on warning from rvmsudo -export rvmsudo_secure_path=1 -if [[ -s "/usr/local/rvm/scripts/rvm" ]]; then - source "/usr/local/rvm/scripts/rvm" -elif [[ -s $HOME/.rvm/scripts/rvm ]]; then - source $HOME/.rvm/scripts/rvm -fi export GOPATH=$HOME/go path_add $GOPATH/bin +path_add /usr/local/go/bin export ARDUINO_PATH=/a/opt/Arduino/build/linux/work path_add --end ~/.npm-global +# taken from default changes to bashrc and bash_profile +path_add --end $HOME/.rvm/bin +[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function* + export BASEFILE_DIR=/a/bin/fai-basefiles +export ANDROID_HOME=/opt/android + # didnt get drush working, if I did, this seems like the # only good thing to include for it. # Include Drush completion.