diff options
| author | la-ninpre <leobrekalini@gmail.com> | 2021-07-12 16:27:52 +0300 |
|---|---|---|
| committer | la-ninpre <leobrekalini@gmail.com> | 2021-07-12 16:27:52 +0300 |
| commit | e3bbee81de559c1b4dea7a83d46da3b4e00cc2a8 (patch) | |
| tree | 697bca3add8a534bd6ed6a82308ef5869cc78393 /.local/bin/print_codes | |
| parent | 2d5fa70da78d05147a4055c51c983b93a4bc32dd (diff) | |
| download | dotfiles-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_codes | 97 |
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 - |
