#!/usr/bin/env python3
import hashlib
from pathlib import Path
root = Path(__file__).resolve().parents[1]
with (root / 'SHA256SUMS').open('w') as out:
    for p in sorted(root.rglob('*')):
        if '.validation-storage' in p.parts or not p.is_file() or p.name == 'SHA256SUMS' or p.suffix == '.part':
            continue
        h = hashlib.sha256()
        with p.open('rb') as src:
            for chunk in iter(lambda: src.read(1024 * 1024), b''):
                h.update(chunk)
        out.write(f'{h.hexdigest()}  {p.relative_to(root)}\n')
