{ writeShellApplication, writeText, # Dependencies sane-backends, imagemagick, coreutils, fd, }: writeShellApplication { name = "con2pdf"; text = builtins.readFile ./con2pdf.sh; inheritPath = false; runtimeInputs = [ sane-backends imagemagick coreutils fd ]; runtimeEnv = { DEVICE_FUNCTION = # This is here, because escaping the whole function, to use it in the shell script # directly just isn't possible writeText "DEVICE_FUNCTION" /* bash */ '' scanimage -L | awk 'BEGIN { FS = "`" } { gsub(/'.*/, "", $2); print $2 }' ''; }; }