X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=brc2;h=ddfe816e236aff742d1b75e95f6c8c10d400f0ad;hb=b18dade73dedfe69aa741f8417947d83c4208f2d;hp=bd959d82dc824b6e597a10df51f9906f2c8633ec;hpb=d4366929e6e200155b010dc05ce74255ee6a45ed;p=distro-setup diff --git a/brc2 b/brc2 index bd959d8..ddfe816 100644 --- a/brc2 +++ b/brc2 @@ -169,8 +169,10 @@ EOF fi sudo chroot $d apt-get update sudo DEBIAN_FRONTEND=noninteractive chroot $d apt-get -y dist-upgrade --purge --auto-remove - sudo DEBIAN_FRONTEND=noninteractive schroot -c $n -- apt-get install --allow-unauthenticated -y ${apps[@]} sudo cp -P {,$d}/etc/localtime + if (( ${#apps[@]} )); then + sudo DEBIAN_FRONTEND=noninteractive schroot -c $n -- apt-get install --allow-unauthenticated -y ${apps[@]} + fi } @@ -1085,31 +1087,31 @@ lom() { l=$(losetup -j $1 | sed -rn 's/^([^ ]+): .*/\1/p' | head -n1 ||:) if [[ ! $l ]]; then l=$(sudo losetup -f) - sudo losetup $l $1 + m sudo losetup $l $1 fi if ! sudo cryptsetup status /dev/mapper/$base &>/dev/null; then if ! sudo cryptsetup luksOpen $l $base; then - sudo losetup -d $l + m sudo losetup -d $l return 1 fi fi - sudo mkdir -p /mnt/$base - sudo mount /dev/mapper/$base /mnt/$base - sudo chown $USER:$USER /mnt/$base + m sudo mkdir -p /mnt/$base + m sudo mount /dev/mapper/$base /mnt/$base + m sudo chown $USER:$USER /mnt/$base else base=$1 if mountpoint /mnt/$base &>/dev/null; then - sudo umount /mnt/$base + m sudo umount /mnt/$base fi if sudo cryptsetup status /dev/mapper/$base &>/dev/null; then - if ! sudo cryptsetup luksClose /dev/mapper/$base; then + if ! m sudo cryptsetup luksClose /dev/mapper/$base; then echo lom: failed cryptsetup luksClose /dev/mapper/$base return 1 fi fi - l=$(losetup -j $1 | sed -rn 's/^([^ ]+): .*/\1/p' | head -n1 ||:) + l=$(losetup -l --noheadings | awk '$6 ~ /\/'$1'$/ {print $1}') if [[ $l ]]; then - sudo losetup -d $l + m sudo losetup -d $l else echo lom: warning: no loopback device found fi @@ -1266,6 +1268,9 @@ ngo() { otp() { oathtool --totp -b "$*" | xclip -selection clipboard } +j() { + "$@" |& pee "xclip -r -selection clipboard" +} pakaraoke() { @@ -1470,7 +1475,6 @@ testmail() { # always run this first, edit the test files, then run the following testsieve() { sieve-filter ~/sieve/maintest.sieve ${1:-INBOX} delete 2> >(head; tail) >/tmp/testsieve.log && sed -rn '/^Performed actions:/,/^[^ ]/{/^ /p}' /tmp/testsieve.log | sort | uniq -c - _dosieve } runsieve() { c ~/sieve; cp personal{test,}.sieve; cp lists{test,}.sieve; cp personalend{test,}.sieve @@ -1478,6 +1482,62 @@ runsieve() { sed -r '/^info: filtering:/{h;d};/^info: msgid=$/N;/^info: msgid=.*left message in mailbox [^ ]+$/d;/^info: msgid=/{H;g};/^info: message kept in source mailbox.$/d' /tmp/testsieve.log } +# usage: +# alertme SUBJECT +# printf "subject\nbody\n" | alertme +alertme() { + if [[ -t 0 ]]; then + exim -t <