aboutsummaryrefslogtreecommitdiffstats
path: root/.local/bin/print_codes
diff options
context:
space:
mode:
authorla-ninpre <leobrekalini@gmail.com>2021-07-12 16:27:52 +0300
committerla-ninpre <leobrekalini@gmail.com>2021-07-12 16:27:52 +0300
commite3bbee81de559c1b4dea7a83d46da3b4e00cc2a8 (patch)
tree697bca3add8a534bd6ed6a82308ef5869cc78393 /.local/bin/print_codes
parent2d5fa70da78d05147a4055c51c983b93a4bc32dd (diff)
downloaddotfiles-e3bbee81de559c1b4dea7a83d46da3b4e00cc2a8.tar.gz
dotfiles-e3bbee81de559c1b4dea7a83d46da3b4e00cc2a8.zip
move to GNU stow approach on managing dotfiles
Diffstat (limited to '.local/bin/print_codes')
-rwxr-xr-x.local/bin/print_codes97
1 files changed, 0 insertions, 97 deletions
diff --git a/.local/bin/print_codes b/.local/bin/print_codes
deleted file mode 100755
index bb8b708..0000000
--- a/.local/bin/print_codes
+++ /dev/null
@@ -1,97 +0,0 @@
-#!/bin/sh
-
-# Copyright (c) 2021, la-ninpre
-#
-# Permission to use, copy, modify, and/or distribute this software for any
-# purpose with or without fee is hereby granted, provided that the above
-# copyright notice and this permission notice appear in all copies.
-#
-# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
-# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
-# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
-
-# small script to create page with qr-coded recovery tokens for otp
-# uses: qrencode, imagemagick(convert, montage)
-#
-# file with codes should be in following format:
-# - recovery codes should be on separate lines
-# - every line beginning with # is ignored
-
-QRENCODE_ERR_CORR_LEVEL=H
-CODES_KEEP_PNG=0
-CODES_MAKE_PDF=0
-
-usage() {
- echo "create qr-coded recovery tokens for easy printing"
- echo
- echo "USAGE:"
- echo " $0 [OPTIONS] <text-file>"
- echo
- echo "OPTIONS:"
- echo " -k keep png files with qrcodes"
- echo " -l {L,M,Q,H}"
- echo " set qrencode error correction level"
- echo " -p produce pdf instead of image"
- echo " -h print this help message"
- echo
-}
-
-while getopts kl:ph arg
-do
- case "$arg" in
- k) CODES_KEEP_PNG=1
- ;;
- l) case $OPTARG in
- [lL]) QRENCODE_ERR_CORR_LEVEL=L ;;
- [mM]) QRENCODE_ERR_CORR_LEVEL=M ;;
- [qQ]) QRENCODE_ERR_CORR_LEVEL=Q ;;
- [hH]) QRENCODE_ERR_CORR_LEVEL=H ;;
- *) echo "error correction level should be one of L, M, Q or H"
- exit 1 ;;
- esac
- ;;
- p) CODES_MAKE_PDF=1
- ;;
- h|*) usage && exit 1
- ;;
- esac
-done
-
-shift $((OPTIND - 1))
-
-[ $# -ne 1 ] && usage && exit 1
-
-CODES_FILE="$1"
-CODES_BASENAME="${CODES_FILE%%.*}"
-CODES_EXT="${CODES_FILE##*.}"
-CODES_DIR="$PWD/${CODES_BASENAME}_${CODES_EXT}_dir"
-CODES_DATE="$(date +'%Y-%m-%d %H:%M')"
-CODES_OUTPUT="${CODES_BASENAME}_qrcodes"
-CODES_OUT_IMG="${CODES_OUTPUT}.png"
-CODES_OUT_PDF="${CODES_OUTPUT}.pdf"
-
-rm -f "$CODES_OUT_IMG" "$CODES_OUT_PDF"
-[ -d "$CODES_DIR" ] && rm -rf "$CODES_DIR"
-mkdir "$CODES_DIR"
-
-sed -e '/^#.*/ d' -e '/^\s*$/ d' < "$CODES_FILE" \
- | xargs -I{} \
- qrencode -l "$QRENCODE_ERR_CORR_LEVEL" -t png -d 150 \
- -o "$CODES_DIR/{}-code.png" {}
-
-montage -title "\n$CODES_FILE\n$CODES_DATE" \
- "$CODES_DIR/*-code.png" -page a4 -geometry 128x128\> "$CODES_OUT_IMG"
-
-[ "$CODES_MAKE_PDF" -ne 0 ] && {
- convert \( -size 1240x1754 xc: \) "$CODES_OUT_IMG" \
- -composite "$CODES_OUT_PDF"
- [ "$CODES_KEEP_PNG" -eq 0 ] && rm -f "$CODES_OUT_IMG"
- }
-
-[ "$CODES_KEEP_PNG" -eq 0 ] && rm -rf "$CODES_DIR" || exit 0
-