diff --git a/.gitignore b/.gitignore index 079dad0..a136337 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ *.pdf -__pycache__ diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 2155089..0000000 --- a/flake.lock +++ /dev/null @@ -1,27 +0,0 @@ -{ - "nodes": { - "nixpkgs": { - "locked": { - "lastModified": 1758427187, - "narHash": "sha256-pHpxZ/IyCwoTQPtFIAG2QaxuSm8jWzrzBGjwQZIttJc=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "554be6495561ff07b6c724047bdd7e0716aa7b46", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "root": { - "inputs": { - "nixpkgs": "nixpkgs" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/flake.nix b/flake.nix index ef747b6..917110b 100644 --- a/flake.nix +++ b/flake.nix @@ -7,53 +7,14 @@ nixpkgs, } @ inputs: let system = "x86_64-linux"; - pkgs = import nixpkgs { - inherit system; - config.allowUnfree = true; - }; + pkgs = nixpkgs.legacyPackages."${system}"; in { - devShells.${system}.default = pkgs.mkShell { - packages = with pkgs; [ - python313 - python313Packages.flask - python313Packages.waitress - ]; + packages."${system}".default = pkgs.writeShellApplication { + name = "hello_world"; - shellHook = '' - python --version - exec zsh - ''; - }; - packages.${system} = let - scanbuddy = pkgs.writeShellApplication { - name = "scanbuddy-script"; + runtimeInputs = with pkgs; [sane-backends brscan5 ghostscript]; - runtimeInputs = with pkgs; [sane-backends brscan5 ghostscript]; - - text = builtins.readFile ./scanbuddy.bash; - }; - wrapper = pkgs.writeShellApplication { - name = "scanbuddy-wrapper"; - - text = - /* - bash - */ - '' - #!/usr/bin/env bash - readarray -d '_' args < <(printf "%s" "$1") - - scanbuddy "''${args[@]}" - ''; - }; - package = pkgs.symlinkJoin { - name = "scanbuddy"; - paths = [scanbuddy wrapper]; - }; - in { - default = package; - inherit scanbuddy; - inherit wrapper; + text = builtins.readFile ./scanbuddy.bash; }; }; } diff --git a/scanbuddy.bash b/scanbuddy.bash index 0fd8e4c..54b57e0 100755 --- a/scanbuddy.bash +++ b/scanbuddy.bash @@ -103,9 +103,9 @@ case "$1" in "${PAPERLESS_URL}/api/documents/post_document/") || FAILED=1 if [ -v FAILED ]; then - printf "Paperless failed with message:\n%s" "$PAPERLESS_STATUS" + echo "Paperless failed with message:\n$PAPERLESS_STATUS" else - printf "Paperless consumption job: %s\n" "$PAPERLESS_STATUS" + echo "Paperless consumption job: '$PAPERLESS_STATUS'" fi ;; *) diff --git a/server.py b/server.py deleted file mode 100755 index ba2632b..0000000 --- a/server.py +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env python3 - -# Run this stuff with `waitress-serve --port=5000 --call server:create_app` - -import os -import subprocess -from flask import Flask, request - -app = Flask(__name__) - -@app.route("/") -def hello_world(): - return "Hello, World! Yoyoyo" - -@app.route("/scan") -def scan(): - command = ["bash", f"{os.getcwd()}/scanbuddy.bash", "scan"] - - command += ["-d"] if (request.args.get("duplex", "n") == 'y') else [] - - result = subprocess.run(command, stdout=subprocess.PIPE, text=True) - output = result.stdout.strip() - - print("Scanbuddy output: ") - print(output) - - return output - # return f"Scanning {'duplex' if duplex == 'y' else ''}..." - -@app.route("/dispatch") -def dispatch(): - command = ["bash", f"{os.getcwd()}/scanbuddy.bash", "dispatch"] - user = request.args.get("user", "") - - result = subprocess.run(command, stdout=subprocess.PIPE, text=True) - output = result.stdout.strip() - - print("Scanbuddy output: ") - print(output) - - return "Dispatching..." - -@app.route("/unscan") -def unscan(): - return "Unscanning..." - -def create_app(): - return app - -if __name__=='__main__': - from waitress import serve - serve(app, host="0.0.0.0", port=8080)