From 1fc622cd0835882d4d565f216af72e2881815b7b Mon Sep 17 00:00:00 2001
From: tv <tv@krebsco.de>
Date: Tue, 22 Mar 2022 19:34:57 +0100
Subject: [PATCH] qrscan: use new one shot scanning mode

---
 krebs/5pkgs/simple/qrscan.nix | 26 +++-----------------------
 1 file changed, 3 insertions(+), 23 deletions(-)

diff --git a/krebs/5pkgs/simple/qrscan.nix b/krebs/5pkgs/simple/qrscan.nix
index 7d99dcee7..df9a98053 100644
--- a/krebs/5pkgs/simple/qrscan.nix
+++ b/krebs/5pkgs/simple/qrscan.nix
@@ -1,27 +1,7 @@
-{ coreutils, gnused, writeDashBin, zbar }:
+{ pkgs }:
 
-writeDashBin "qrscan" ''
+pkgs.writeDashBin "qrscan" ''
   set -efu
 
-  tmpdir=$(${coreutils}/bin/mktemp --tmpdir -d qrscan.XXXXXXXX)
-  codefile=$tmpdir/code
-
-  cleanup() {
-    ${coreutils}/bin/rm "$codefile"
-    ${coreutils}/bin/rmdir "$tmpdir"
-  }
-
-  ${coreutils}/bin/mkfifo "$codefile"
-
-  ${zbar}/bin/zbarcam > "$codefile" &
-  zbarcampid=$!
-
-  exec < "$codefile"
-  while read -r code; do
-    code=$(printf %s "$code" | ${gnused}/bin/sed -n 's/^QR-Code://p')
-    if test -n "$code"; then
-      ${coreutils}/bin/kill "$zbarcampid"
-      echo "$code"
-    fi
-  done
+  ${pkgs.zbar}/bin/zbarcam -1 | ${pkgs.gnused}/bin/sed -n 's/^QR-Code://p'
 ''