#!/bin/sh
# Usage: home-print status | home-print [--duplex] FILE.pdf|FILE.png|FILE.jpg
set -eu
printer=home-brother
if [ "${1:-}" = status ]; then
    lpstat -p "$printer"
    lpstat -W not-completed -o "$printer"
    exit
fi
sides=one-sided
if [ "${1:-}" = --duplex ]; then
    sides=two-sided-long-edge
    shift
fi
if [ "$#" -ne 1 ] || [ ! -f "$1" ]; then
    echo 'Укажите один существующий PDF/PNG/JPEG-файл' >&2
    exit 2
fi
case "$1" in
    *.pdf|*.PDF|*.png|*.PNG|*.jpg|*.JPG|*.jpeg|*.JPEG) ;;
    *) echo 'Поддерживаются PDF/PNG/JPEG; Word сначала преобразуйте в PDF' >&2; exit 2 ;;
esac
# Absolute path prevents a filename from becoming an lp option.
file=$(realpath -- "$1")
exec lp -d "$printer" -n 1 -o media=A4 -o fit-to-page -o sides="$sides" "$file"
