mirror of
https://github.com/FULU-Foundation/OrcaSlicer-bambulab.git
synced 2026-05-14 06:53:47 -07:00
Initial release
This commit is contained in:
36
scripts/generate_linux_payload_manifest.py
Normal file
36
scripts/generate_linux_payload_manifest.py
Normal file
@@ -0,0 +1,36 @@
|
||||
#!/usr/bin/env python3
|
||||
import argparse, hashlib, json
|
||||
from pathlib import Path
|
||||
|
||||
def sha256(p: Path) -> str:
|
||||
h = hashlib.sha256()
|
||||
with p.open('rb') as f:
|
||||
for chunk in iter(lambda: f.read(1024 * 1024), b''):
|
||||
h.update(chunk)
|
||||
return h.hexdigest()
|
||||
|
||||
def main():
|
||||
ap = argparse.ArgumentParser()
|
||||
ap.add_argument('plugin_dir', type=Path)
|
||||
ap.add_argument('--abi-version', default='02.05.02.58')
|
||||
ap.add_argument('--out', type=Path, default=None)
|
||||
args = ap.parse_args()
|
||||
net = args.plugin_dir / 'libbambu_networking.so'
|
||||
src = args.plugin_dir / 'libBambuSource.so'
|
||||
if not net.exists() or not src.exists():
|
||||
raise SystemExit('missing linux payload files')
|
||||
files = [
|
||||
{'name': net.name, 'sha256': sha256(net), 'abi_version': args.abi_version},
|
||||
{'name': src.name, 'sha256': sha256(src)},
|
||||
]
|
||||
for extra_name in ('liblive555.so', 'libagora_rtc_sdk.so', 'libagora-fdkaac.so'):
|
||||
extra = args.plugin_dir / extra_name
|
||||
if extra.exists():
|
||||
files.append({'name': extra.name, 'sha256': sha256(extra)})
|
||||
manifest = {'files': files}
|
||||
out = args.out or (args.plugin_dir / 'linux_payload_manifest.json')
|
||||
out.write_text(json.dumps(manifest, indent=2) + '\n')
|
||||
print(out)
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
Reference in New Issue
Block a user