scripts

Random scripts
git clone git://git.margiolis.net/scripts.git
Log | Files | Refs | README | LICENSE

commit bf147711da48b5480a8c1f8c3c1bd1a880759b6b
parent 936a4fb999c79e6a52d7a649eaa45ba6d84b9345
Author: Christos Margiolis <christos@FreeBSD.org>
Date:   Thu,  5 Dec 2024 02:38:44 +0100

Some cleanup

Diffstat:
MMakefile | 6++----
Mausplit | 3+--
Mbookmark | 15+--------------
Abright | 6++++++
Mdoccomp | 5+++--
Mdocprev | 7++++---
Dfontupd | 11-----------
Dirssi_torconf | 16----------------
Mscreencast | 10+++++++---
Msetscreens | 2+-
Msysact | 5++---
Atmuxsession | 9+++++++++
Dunix | 26--------------------------
Mupd | 8+-------
Mvdq | 1+
Mvds | 2+-
Dvmb | 121-------------------------------------------------------------------------------
Mwttr | 2+-
18 files changed, 40 insertions(+), 215 deletions(-)

diff --git a/Makefile b/Makefile @@ -5,14 +5,13 @@ TARGS = audl \ autocomp \ backup \ batnfy \ + bright \ buildtrace \ bookmark \ doccomp \ docprev \ extr \ - fontupd \ gitmail \ - irssi_torconf \ mntdroid \ passget \ push \ @@ -23,11 +22,10 @@ TARGS = audl \ sjail \ sysact \ tag \ - unix \ + tmuxsession \ upd \ vdq \ vds \ - vmb \ walset \ wttr diff --git a/ausplit b/ausplit @@ -1,6 +1,5 @@ #!/bin/sh -# ffmpeg and my `tag` script required. main() { test ${#} -ne 2 && usage @@ -23,7 +22,7 @@ main() test -n "${start}" && split_file title="$(echo "${line}" | cut -d' ' -f2-)" titlefmt="$(fmt_name "${title}")" - track="$((track+1))" + track="$((track + 1))" start="${end}" done < "${tfile}" diff --git a/bookmark b/bookmark @@ -25,28 +25,15 @@ bmk_add() if grep -q "^${url}" ${bmkfile}; then echo "Already bookmarked" | nfy else - printf "%s\t%s\n" \ - "${url}" "$(dmenu -p "Bookmark name" </dev/null)" >> \ - ${bmkfile} + echo ${url} >> ${bmkfile} echo "Bookmark added" | nfy fi } -bmk_fmt() -{ - for i in $(find ${BMK_DIR} | sed 1d); do - sed 's/ */\t/' < ${i} | column -ts $'\t' > ${i}.tmp - mv -f ${i}.tmp ${i} - done -} - while getopts "af" arg; do case "${arg}" in a) bmk_getfile bmk_add - bmk_fmt - exit 0 ;; - f) bmk_fmt exit 0 ;; *) echo "usage: ${0##*/} [-af]" 1>&2 exit 1 ;; diff --git a/bright b/bright @@ -0,0 +1,6 @@ +#!/bin/sh + +bright=$(backlight -q -f /dev/backlight/backlight0) +test $# -eq 0 && echo ${bright} && exit +test ${bright} -le 10 -a "$(echo ${1} | grep "^[+|-]")" == "-" && exit +backlight -f /dev/backlight/backlight0 "${1}" diff --git a/doccomp b/doccomp @@ -7,7 +7,8 @@ usage() file_exists() { - test ! -f "${file}" && echo "${0##*/}: ${file}: file not found" 1>&2 && exit 1 + test ! -f "${file}" && + echo "${0##*/}: ${file}: file not found" 1>&2 && exit 1 } test ${#} -eq 0 && usage @@ -26,5 +27,5 @@ case "${ext}" in -V mainfont=Arial \ -o "${base}.pdf" ;; tex) pdflatex ${file} - rm -f *.aux *.log *.out *.bcf *.run.xml *.bbl *.blg *-blx.bib ;; + rm -f *.log *.out .bcf *.run.xml *.bbl *.blg *-blx.bib ;; esac diff --git a/docprev b/docprev @@ -7,8 +7,9 @@ usage() test ${#} -eq 0 && usage base="${1%.*}" +ext="${1##*.}" -case "${1}" in - *.html) setsid -f "${BROWSER}" "${base}.html" ;; - *.tex) setsid -f xdg-open "${base}.pdf" ;; +case "${ext}" in + html) setsid -f "${BROWSER}" "${base}.html" ;; + tex|md) setsid -f xdg-open "${base}.pdf" ;; esac diff --git a/fontupd b/fontupd @@ -1,11 +0,0 @@ -#!/bin/sh - -dir=${HOME}/.fonts - -mkdir -p ${dir} -chmod 755 ${dir} -cd ${dir} -chmod 644 * -mkfontdir -xset fp+ ${dir} -xset fp rehash diff --git a/irssi_torconf b/irssi_torconf @@ -1,16 +0,0 @@ -#!/bin/sh - -echo "mapaddress 10.40.40.40 libera75jm6of4wxpxt4aynol3xjmbtxgfyjpu34ss4d7r7q2v5zrpyd.onion" >> /usr/local/etc/tor/torrc -service tor restart -mkdir -p ~/.irssi/certs && cd ~/.irssi/certs -openssl req -x509 -sha256 -new -newkey rsa:4096 -days 1000 -nodes -out libera.crt -keyout libera.key -cat libera.crt libera.key > ~/.irssi/certs/libera.pem -chmod 600 libera.pem -rm libera.key libera.crt -printf "/msg NickServ CERT ADD " -openssl x509 -in ~/.irssi/certs/libera.pem -outform der | sha1 | cut -d' ' -f1 -echo "/network add -sasl_username cmrg -sasl_password cmrgsasl -sasl_mechanism EXTERNAL LiberaTor" -echo "/server add -ssl -ssl_cert ~/.irssi/certs/libera.pem -net LiberaTor 10.40.40.40 6697" -echo "/ignore * CTCPS" -echo "/save" -echo "/quit" diff --git a/screencast b/screencast @@ -2,8 +2,12 @@ ffmpeg -y \ -f x11grab \ - -s $(xrandr | grep "connected primary" | awk '{print $4}' | sed 's/+0+0//') \ + -s 1920x1080 \ -i :0.0 \ - -f oss -i /dev/dsp -filter:a "asetpts=N/SR/TB" \ - -c:v libx264 -r 30 -c:a mp3 \ + -r 30 \ + -f oss -i /dev/dsp \ + -c:v libx264 \ + -c:a mp3 \ ${1} + #-f oss -i /dev/dsp.loop \ + #-filter_complex:a "amix=inputs=2,asetpts=N/SR/TB" \ diff --git a/setscreens b/setscreens @@ -2,7 +2,7 @@ xrandr \ --output DVI-I-0 \ - --mode 1280x1024 \ + --mode 1920x1080 \ --pos 1920x56 \ --rotate normal \ --output HDMI-0 \ diff --git a/sysact b/sysact @@ -3,9 +3,8 @@ cmds="\ lock slock leave_dwm kill -TERM $(pidof -s dwm) -renew_dwm kill -HUP $(pidof -s dwm) -reboot ${reb:-doas reboot} -shutdown ${shut:-doas shutdown -p now}" +reboot doas reboot +shutdown doas shutdown -p now" choice="$(echo "${cmds}" | cut -d ' ' -f 1 | dmenu)" || exit 1 `echo "${cmds}" | grep "^${choice}" | cut -d ' ' -f2-` diff --git a/tmuxsession b/tmuxsession @@ -0,0 +1,9 @@ +#!/bin/sh + +tmux new-session -s 'dev' \; \ + send-keys 'cd /usr/src' C-m \; \ + new-window \; \ + split-window -h \; send-keys 'cd /usr/src && git branch' C-m \; \ + new-window 'neomutt' \; \ + split-window -h 'irssi' \; \ + new-window 'calcurse' \; diff --git a/unix b/unix @@ -1,26 +0,0 @@ -#!/bin/sh - -#original artwork by http://www.sanderfocus.nl/#/portfolio/tech-heroes -#converted to shell by #nixers @ irc.unix.chat - -cat << 'eof' - ,_ ,_==▄▂ - , ▂▃▄▄▅▅▅▂▅¾. / / - ▄▆<´ "»▓▓▓%\ / / / / - ,▅7" ´>▓▓▓% / / > / >/% - ▐¶▓ ,»▓▓¾´ /> %/%// / / - ▓▃▅▅▅▃,,▄▅▅▅Æ\// ///>// />/ / - V║«¼.;→ ║<«.,`=// />//%/% / / - //╠<´ -²,)(▓~"-╝/¾/ %/>/ /> - / / / ▐% -./▄▃▄▅▐, /7//;//% / / - / ////`▌▐ %zWv xX▓▇▌//&;% / / - / / / %//%/¾½´▌▃▄▄▄▄▃▃▐¶\/& / - </ /</%//`▓!%▓%╣[38;5;255;╣WY<Y)y&/`\ - / / %/%//</%//\i7; ╠N>)VY>7; \_ UNIX IS VERY SIMPLE IT JUST NEEDS A - / /</ //<///<_/%\▓ V%W%£)XY _/%‾\_, GENIUS TO UNDERSTAND ITS SIMPLICITY - / / //%/_,=--^/%/%%\¾%¶%%} /%%%%%%;\, - %/< /_/ %%%%%;X%%\%%;, _/%%%;, \ - / / %%%%%%;, \%%l%%;// _/%;, dmr - / %%%;, <;\-=-/ / - ;, l -eof diff --git a/upd b/upd @@ -10,13 +10,7 @@ case "${1}" in vps) src="${2}" dst="master@margiolis.net:${3}" ;; - lap) src="${2}" - dst="tpad:${3}" - ;; - desk) src="${2}" - dst="pleb:${3}" - ;; - *) echo "usage: ${0##*/} {www | ftp | vps | lap | desk} src dst" 1>&2 + *) echo "usage: ${0##*/} {www | ftp | vps} src dst" 1>&2 exit 1 ;; esac diff --git a/vdq b/vdq @@ -1,4 +1,5 @@ #!/bin/sh QUEUE="${HOME}/n/queue" + mpv $(awk '{print $1}' ${QUEUE}) diff --git a/vds b/vds @@ -9,4 +9,4 @@ case "${arg}" in exit 1 ;; esac done -mpv $(cat ${PLAYLIST} | dmenu -l 30 | awk '{print $1}') +mpv "$(cat ${PLAYLIST} | dmenu -l 30 | awk '{print $1}')" diff --git a/vmb b/vmb @@ -1,121 +0,0 @@ -#!/bin/sh - -# TODO virtio-blk -# TODO is grub complete? - -cpu="2" -mem="2G" -disk="disk.img" -tap="tap0" -uefifile="/usr/local/share/uefi-firmware/BHYVE_UEFI.fd" - -usage() -{ - echo "usage: ${0##*/} start [-Duv] [-c cpu] [-C com] [-d disksiz]" 1>&2 - echo " [-g grub_bootdrv] [-G grub_bootdir] [-i img]" 1>&2 - echo " [-m mem] [-t tap] vmname" 1>&2 - echo " ${0##*/} stop [-t tap] vmname" 1>&2 - echo " -D: pause at first instruction and wait for gdb" 1>&2 - echo " -u: run in uefi mode" 1>&2 - echo " -v: wait until the vnc client has started" 1>&2 - exit 1 -} - -err() -{ - echo "${0##*/}: ${@}" 1>&2 - exit 1 -} - -vmb_start() -{ - while getopts "c:C:d:Dg:G:i:m:t:uv" arg; do - case "${arg}" in - c) cpu="${OPTARG}" ;; - C) com="${OPTARG}" ;; - d) disksiz="${OPTARG}" ;; - D) dbgw="w" ;; - g) grubdrv="${OPTARG}" ;; - G) grubdir="${OPTARG}" ;; - i) img="${OPTARG}" ;; - m) mem="${OPTARG}" ;; - t) tap="${OPTARG}" ;; - u) uefi="-l bootrom,${uefifile}" ;; - v) vncwait=",wait" ;; - *) usage ;; - esac - done - shift $((OPTIND - 1)) - - name="${1}" - test -z "${name}" && usage - - if [ -n "${uefi}" ]; then - test ! -f ${uefifile} && \ - err "uefi file \"${uefifile}\" not found." \ - "Install $(pkg search uefi-edk2 | awk '{print $1}')" - fi - - if [ -n "${grubdrv}" ] || [ -n "${grubdir}" ]; then - test ! "$(pkg info | awk '{print $1}' | grep grub2-bhyve)" && - err "grub driver not found." \ - "Install $(pkg search grub2-bhyve | awk '{print $1}')" - fi - - ifconfig "${tap}" up || exit 1 - - test -n "${disksiz}" && truncate -s "${disksiz}" ${disk} - - if [ -n "${grubdrv}" ]; then - echo "(hd0) disk.img" > device.map - ${img:+(cd0) ${img}} >> device.map - grub-bhyve \ - -m device.map \ - -r ${grubdrv} \ - ${grubdir:+-d ${grubdir}} \ - -M ${mem} \ - ${name} - fi - - bhyve \ - -wHAP \ - -c ${cpu} \ - -m ${mem} \ - -s 0,hostbridge \ - ${img:+-s 3,ahci-cd,${img}} \ - -s 4,ahci-hd,${disk} \ - -s 5,virtio-net,${tap} \ - -s 29,fbuf,tcp=0.0.0.0:5900${vncwait} \ - -s 30,xhci,tablet \ - -s 31,lpc \ - -G ${dbgw}1234 \ - ${com:+-l com1,${com}} \ - ${uefi:+${uefi}} \ - ${name} -} - -vmb_stop() -{ - while getopts "t:" arg; do - case "${arg}" in - t) tap="${OPTARG}" ;; - *) usage ;; - esac - done - shift $((OPTIND - 1)) - - name="${1}" - test -z "${name}" && usage - - ifconfig ${tap} down - bhyvectl --force-poweroff --vm=${name} - bhyvectl --destroy --vm=${name} -} - -cmd="${1}" -shift 1 -case "${cmd}" in - start) vmb_start $@ ;; - stop) vmb_stop $@ ;; - *) usage ;; -esac diff --git a/wttr b/wttr @@ -1,3 +1,3 @@ #!/bin/sh -curl https://wttr.in/Athens+Greece | less -R +curl https://wttr.in/Wroclaw+Poland | less -R