X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=brc2;h=d85511fa086d7c6d1592e8e782acd820c1175471;hb=56c55d8e02cdd6ec67d2fe53cc03785d8876442e;hp=c233c9288354125d0d679f04deee6ee862666188;hpb=40dd151ec6ba75633c74568da59e35a45351f194;p=distro-setup diff --git a/brc2 b/brc2 index c233c92..d85511f 100644 --- a/brc2 +++ b/brc2 @@ -12,6 +12,8 @@ source /a/bin/distro-setup/path-add-function path-add /a/exe # add this with absolute paths as needed for better security #path-add --end /path/to/node_modules/.bin +## for yarn, etc +#path-add --end /usr/lib/node_modules/corepack/shims/ # pip3 --user things go here: path-add --end ~/.local/bin @@ -48,6 +50,32 @@ fi # * functions +multimic() { + local i + local -a sources + + m pactl unload-module module-loopback + m pactl unload-module module-null-sink + m pactl unload-module module-remap-source + + sources=($(pacmd list-sources | sed -rn 's/.*name: <([^>]+).*/\1/p')) + + if (( ! $# )); then + i=0 + for s in ${sources[@]}; do + e $i $s + i=$(( i+1 )) + done + read -r l + set -- $l + fi + m pactl load-module module-null-sink sink_name=ianinput sink_properties=device.description=ianinputs + for i; do + m pactl load-module module-loopback source=${sources[i]} sink_dont_move=true sink=ianinput + done + pactl load-module module-remap-source source_name=iancombine master=ianinput.monitor source_properties=device.description=iancombine +} + hstest() { install-my-scripts d=$(mktemp -d) @@ -513,15 +541,15 @@ EOF dnsup() { conflink -f - m ser reload bind9 + m ser reload named } dnsb8() { local f=/var/lib/bind/db.b8.nz - ser stop bind9 - sleep 1 - sudo rm -fv $f.jnl - sudo install -m 644 -o bind -g bind /p/c/machine_specific/vps/bind-initial/db.b8.nz $f - ser restart bind9 + m ser stop named + m sleep 1 + m sudo rm -fv $f.jnl + m sudo install -m 644 -o bind -g bind /p/c/machine_specific/vps/bind-initial/db.b8.nz $f + m ser restart named } dnsecgen() { # keys generated like this @@ -723,6 +751,10 @@ fastboot() { kdecd() { /usr/lib/x86_64-linux-gnu/libexec/kdeconnectd; } +bat() { + cat /sys/class/power_supply/BAT0/capacity +} + # List of apps to install/update # Create from existing manually installed apps by doing # fdroidcl update @@ -971,10 +1003,9 @@ hstatus() { # work log wlog() { local day now i - now=$(date +%s) for (( i=0; i<60; i++ )); do - day=$( date +%F -d @$((now - 86400*i )) ) - date "+%a %b %d" -d @$((now - 86400*i )) | tr '\n' ' ' + day=$( date +%F -d @$((EPOCHSECONDS - 86400*i )) ) + date "+%a %b %d" -d @$((EPOCHSECONDS - 86400*i )) | tr '\n' ' ' /a/opt/timetrap/bin/t d -ftotal -s $day -e $day all -m '^w|lunch$' done } @@ -1232,8 +1263,7 @@ allmyirc() { } mygajim() { - local now time time_sec time_pretty - now=$(date +%s) + local time time_sec time_pretty 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*) : ;; @@ -1246,7 +1276,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 < now - 60 * 60 * 24 * 18 )); then break; fi + if (( time_sec < EPOCHSECONDS - 60 * 60 * 24 * 18 )); then break; fi done } @@ -1647,18 +1677,24 @@ enn() { sdnbash() { # systemd namespace bash local unit=$1 - m sudo nsenter -t $(systemctl show --property MainPID --value $unit') -n -m sudo -u $USER -i bash + m sudo nsenter -t $(systemctl show --property MainPID --value $unit) -n -m sudo -u $USER -i bash } mailnnbash() { - m sudo nsenter -t $(systemctl show --property MainPID --value mailnn') -n -m sudo -u $USER -i bash + m sudo nsenter -t $(systemctl show --property MainPID --value mailnn) -n -m sudo -u $USER -i bash } mailvpnbash() { m sudo nsenter -t $(pgrep -f "/usr/sbin/openvpn .* --config /etc/openvpn/.*mail.conf") -n -m sudo -u $USER -i bash } eximbash() { - m sudo nsenter -t $(pgrep -f "/usr/sbin/exim4 -bd -q30m -C /etc/exim4/my.conf"|h1) -n -m sudo -u $USER -i bash + local pid + pid=$(pgrep -f "/usr/sbin/exim4 -bd -q30m -C /etc/exim4/my.conf"|h1) + if [[ ! $pid ]]; then + echo "eximbash: failed to find exim pid. systemctl -n 30 status exim4:" + systemctl status exim4 + fi + m sudo nsenter -t $pid -n -m } spamnn() { local spamdpid @@ -1741,7 +1777,7 @@ vpn() { sudo systemd-tty-ask-password-agent } -ufix() { +fixu() { ls -lad /run/user/1000 s chmod 700 /run/user/1000; s chown iank.iank /run/user/1000 }