# * settings
-HISTFILE=$HOME/.bh
+if [[ $HISTFILE ]]; then
+ HISTFILE=$HOME/.bh
+fi
source /a/bin/distro-setup/path-add-function
path-add /a/exe
ccomp journalctl jtail jr jrf
-kff() { # keyboardio firmware flash
- pushd /a/bin/distro-setup/Arduino/Model01-Firmware
- yes $'\n' | make flash
+kff() { # keyboardio firmware flash. you must hold down the tilde key
+ pushd /a/opt/Model01-Firmware
+ # if we didn't want this yes hack, then remove "shell read" from
+ # /a/opt/Kaleidoscope/etc/makefiles/sketch.mk
+ yes $'\n' | VERBOSE=1 make flash
popd
}
m sudo -E /usr/bin/nsenter --mount=/root/mount_namespaces/$ns "$@"
}
+mnsr() { # mns run
+ local ns=$1
+ shift
+ mns $ns sudo -u iank -E env "PATH=$PATH" "$@"
+}
+
mnsnonet() {
ns=$1
if ! s ip netns list | grep -Fx nonet &>/dev/null; then
s ip netns add nonet
fi
mns $ns --net=/var/run/netns/nonet sudo -E -u iank /bin/bash
+ lomh
}
m sudo mkdir -p /mnt/$base
m mns $base mount /dev/mapper/$base /mnt/$base
m mns $base chown $USER:$USER /mnt/$base
+ lomh
else
base=$1
if mns $base mountpoint /mnt/$base &>/dev/null; then
mpvd() {
mpv --profile=d "$@";
}
+# mpv all media files in . or $1
+mpvm() {
+ local -a extensions arg
+ # get page source of https://en.wikipedia.org/w/index.php?title=Video_file_format&action=edit
+ # into /a/x.log, then
+ # grep '^| *\.' /a/x.log | sed 's/| *//;s/,//g'
+ extensions=(
+ .webm
+ .mkv
+ .flv
+ .flv
+ .vob
+ .ogv .ogg
+ .drc
+ .gif
+ .gifv
+ .mng
+ .avi
+ .MTS .M2TS .TS
+ .mov .qt
+ .wmv
+ .yuv
+ .rm
+ .rmvb
+ .viv
+ .asf
+ .amv
+ .mp4 .m4p .m4v
+ .mpg .mp2 .mpeg .mpe .mpv
+ .mpg .mpeg .m2v
+ .m4v
+ .svi
+ .3gp
+ .3g2
+ .mxf
+ .roq
+ .nsv
+ )
+ arg=("(" -iname "*${extensions[0]}")
+ for (( i=1 ; i < ${#extensions[@]}; i++ )); do
+ arg+=(-o -iname "*${extensions[i]}")
+ done
+ arg+=(")")
+ dir=${1:-.}
+ # debug:
+ #find $dir "${arg[@]}" -size +1M
+ find $dir "${arg[@]}" -size +1M -exec mpv --profile=d '{}' +
+}
mpvs() {
mpv --profile=s "$@";
}
vpncmd() {
m sudo -E env "PATH=$PATH" nsenter -t $(pgrep -f "/usr/sbin/openvpn .* --config /etc/openvpn/.*client.conf") -n "$@"
}
-vpnf() {
- sudo -v
- vpncmd sudo -E -u iank env "PATH=$PATH" abrowser -no-remote -P vpn &
- sleep 5
- r
-}
-vpn2f() {
- sudo -v
- vpncmd sudo -u iank env "PATH=$PATH" abrowser -no-remote -P vpn2 & r
-}
vpni() {
vpncmd sudo -u iank env "PATH=$PATH" "$@"
unset SUDOD
elif [[ -d /a ]] && [[ $PWD == "$HOME" ]] && [[ $- == *i* ]]; then
cd /a
+ OLDPWD=
fi
# 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.15
+
+## i should have documented this...
+# based on https://github.com/keyboardio/Kaleidoscope
export KALEIDOSCOPE_DIR=/a/opt/Kaleidoscope
# They want to be added to the start, but i think