From 17dec95200d7567ced490dfcbfb7d613609754ca Mon Sep 17 00:00:00 2001 From: midas Date: Tue, 11 Feb 2025 16:17:34 +0100 Subject: [PATCH] add metadata-scrubbing tool --- nix/packages/metadata-scrub/default.nix | 23 +++++++++++++++++++ nix/packages/metadata-scrub/metadata-scrub.sh | 20 ++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 nix/packages/metadata-scrub/default.nix create mode 100644 nix/packages/metadata-scrub/metadata-scrub.sh diff --git a/nix/packages/metadata-scrub/default.nix b/nix/packages/metadata-scrub/default.nix new file mode 100644 index 0000000..b9545e1 --- /dev/null +++ b/nix/packages/metadata-scrub/default.nix @@ -0,0 +1,23 @@ +{ + # Snowfall Lib provides a customized `lib` instance with access to your flake's library + # as well as the libraries available from your flake's inputs. + # You also have access to your flake's inputs. + + # The namespace used for your flake, defaulting to "internal" if not set. + + # All other arguments come from NixPkgs. You can use `pkgs` to pull packages or helpers + # programmatically or you may add the named attributes as arguments here. + pkgs, + ... +}: + +pkgs.resholve.writeScriptBin "metadata-scrub" { + inputs = with pkgs; [ + exiftool + toybox + ]; + execer = [ + "cannot:${pkgs.exiftool}/bin/exiftool" + ]; + interpreter = "${pkgs.bash}/bin/bash"; +} (builtins.readFile ./metadata-scrub.sh) diff --git a/nix/packages/metadata-scrub/metadata-scrub.sh b/nix/packages/metadata-scrub/metadata-scrub.sh new file mode 100644 index 0000000..7da7a74 --- /dev/null +++ b/nix/packages/metadata-scrub/metadata-scrub.sh @@ -0,0 +1,20 @@ + +# Check if a folder is provided +if [[ -z "$1" ]]; then + echo "Usage: $0 " + exit 1 +fi + +FOLDER="$1" + +# Ensure the folder exists +if [[ ! -d "$FOLDER" ]]; then + echo "Error: Folder '$FOLDER' not found." + exit 1 +fi + +# Recursively find and scrub metadata from all image files +find "$FOLDER" -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.gif" -o -iname "*.tiff" -o -iname "*.bmp" \) -exec exiftool -overwrite_original -all= {} \; + +echo "✅ Metadata removed from all images in '$FOLDER'." +