X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=brc;h=f003263c7e37a8a187def9b2a3994003c39e9394;hb=45bb8be590318ef8f34df0d22aa9b54a83adc42e;hp=a8e4d5f8bccfc1ade53ebd7b25a5a5b30d514f1a;hpb=b6c69a0915fdc162184279f94448e6ff929a06c6;p=distro-setup diff --git a/brc b/brc index a8e4d5f..f003263 100644 --- a/brc +++ b/brc @@ -157,6 +157,7 @@ HISTIGNORE='pass *:[ ]*:lom*:gram*' export BC_LINE_LENGTH=0 +export PROFILE_TASKS_TASK_OUTPUT_LIMIT=100 # note, if I use a machine I dont want files readable by all users, set # umask 077 # If fewer than 4 digits are entered, leading zeros are assumed @@ -313,7 +314,7 @@ khcopy() { } a() { - local x=$(readlink -nf "$@") + local x=$(readlink -nf "${1:-$PWD}") # yes, its kinda dumb that xclip/xsel cant do this in one invocation echo -n "$x" | xclip -selection clipboard echo -n "$x" | xclip @@ -329,6 +330,23 @@ anki() { fi } +ap() { + # pushd in case current directory has an ansible.cfg file + pushd /a/xans >/dev/null + ansible-playbook -v -l ${1:- $(hostname -f)} site.yml + popd >/dev/null +} +aw() { + pushd /a/work/ansible-configs >/dev/null + time ansible-playbook -v -i inventory adhoc.yml "$@" + popd >/dev/null +} +ad() { + pushd /a/bin/distro-setup/a >/dev/null + ansible-playbook site.yml + popd >/dev/null +} + astudio() { # googling android emulator libGL error: failed to load driver: r600 # lead to http://stackoverflow.com/a/36625175/14456 @@ -366,12 +384,21 @@ bigclock() { } bpull() { + [[ $1 ]] || return 1 + c / + # run latest + install-my-scripts + switch-mail-host $1 $HOSTNAME +} +bpush() { + [[ $1 ]] || return 1 c / # run latest install-my-scripts - switch-mail-host $1 $HOSTNAMEs + switch-mail-host $HOSTNAME $1 } + btc() { local f=/etc/bitcoin/bitcoin.conf # importprivkey will timeout if using the default of 15 mins. @@ -597,7 +624,7 @@ envload() { # load environment from a previous: export > file # mail related etail() { - sudo tail -f /var/log/exim4/mainlog + sudo tail -F /var/log/exim4/mainlog -n 50 } f() { @@ -615,7 +642,7 @@ fa() { } faf() { # find all files - find -L $1 -not \( -name .svn -prune -o -name .git -prune \ + find -L $1 -type f -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 } @@ -936,7 +963,11 @@ gpg() { } gse() { - git send-email --notes '--envelope-sender=' \ + local email=ian@iankelling.org + if readlink ~/.mu | grep fsf &>/dev/null; then + email=iank@fsf.org + fi + git send-email --notes "--envelope-sender=<$email>" \ --suppress-cc=self "$@" } @@ -1276,6 +1307,20 @@ pfind() { #find *$1* in $PATH find "${pathArray[@]}" -iname "*$1*" } +pkx() { # package extract + c `mktemp -d` + pkg=$1 + cached=$(ls -t /var/cache/apt/archives/$pkg* | tail -n1) + if [[ $cached ]]; then + cp $cached . + else + aptitude download $pkg + fi + f=(*) + ex $f + rm -f $f +} + pk1() { local pid pid=($(pgrep -f "$*")) @@ -1373,6 +1418,17 @@ r() { rbpipe() { rbt post -o --diff-filename=- "$@"; } rbp() { rbt post -o "$@"; } +resolvcat() { + local f + f=/etc/resolv.conf + echo $f:; ccat $f + hr; echo dnsmasq is $(systemctl is-active dnsmasq) + f=/var/run/dnsmasq/resolv.conf + hr; echo $f:; ccat $f + f=/etc/dnsmasq-servers.conf + hr; echo $f:; ccat $f +} + rl() { # rsync, root is required to keep permissions right. # rsync --archive --human-readable --verbose --itemize-changes --checksum \(-ahvic\) \ @@ -1510,12 +1566,16 @@ srestart() { systemctl restart $service fi } -serstopnm() { +stopnm() { ser stop NetworkManager ser stop dnsmasq s resolvconf -d NetworkManager ser start dnsmasq } +startnm() { + ser start NetworkManager + s nmtui-connect +} setini() { # set a value in a .ini style file key="$1" value="$2" section="$3" file="$4" @@ -1617,7 +1677,7 @@ splay() { # script replay scriptreplay "$1.t" "$1.s" } -smeld() { # usage host1 host2 file +smeld() { # ssh meld usage host1 host2 file meld <(ssh $1 cat $3) <(ssh $2 cat $3) } @@ -1967,6 +2027,8 @@ xl() { xscreensaver-command -activate } +xevkb() { xev -event keyboard; } + # * misc stuff # from curl cheat.sh/:bash_completion @@ -2125,6 +2187,9 @@ if [[ $- == *i* ]]; then if [[ -e /nocow/btrfs-stale ]] && ((`command ls -AUq /nocow/btrfs-stale|wc -l`)); then ps_char="! $ps_char" fi + if [[ ! $SSH_CLIENT && $MAIL_HOST != $HOSTNAME ]]; then + ps_char="@ $ps_char" + fi PS1="${PS1%"${PS1#*[wW]}"} \[$ps_color\]$ps_char\[$(get_term_color nocolor)\] " # emacs completion doesnt like the git prompt atm, so disabling it. #PS1="${PS1%"${PS1#*[wW]}"}$(__git_ps1 ' (%s)') \[$ps_color\]$ps_char\[$(get_term_color nocolor)\] " @@ -2230,7 +2295,11 @@ export GOPATH=$HOME/go path_add $GOPATH/bin path_add /usr/local/go/bin -export ARDUINO_PATH=/a/opt/Arduino/build/linux/work +# I have the git repo and a release. either one should work. +# I have both because I was trying to solve an issue that +# turned out to be unrelated. +# ARDUINO_PATH=/a/opt/Arduino/build/linux/work +export ARDUINO_PATH=/a/opt/arduino-1.8.9 path_add --end ~/.npm-global