Skip to main content

Python bindings for the nod library.

Project description

py-nod

Python 3.6 bindings for the NOD, a library for traversing, dumping, and authoring GameCube and Wii optical disc images.

Usage

Unpacking

import nod

def progress_callback(path, progress):
    if args.verbose:
        print("Extraction {:.0%} Complete; Current node: {}".format(progress, path))

context = nod.ExtractionContext()
context.set_progress_callback(progress_callback)

try:
    disc, is_wii = nod.open_disc_from_image("game.iso")
    data_partition = disc.get_data_partition()
    if not data_partition:
        raise RuntimeError("Could not find a data partition in the disc.")
    data_partition.extract_to_directory("dir_out", context)
except RuntimeError as e:
    raise Exception("Could not extract disc at 'game.iso' to 'dir_out': {}".format(e))

Packing

import nod

if nod.DiscBuilderGCN.calculate_total_size_required("dir_out") is None:
    raise Exception("Image built with given directory would pass the maximum size.")

def fprogress_callback(progress: float, name: str, bytes: int):
    print("\r" + " " * 100, end="")
    print("\r{:.0%} {} {} B".format(progress, name, bytes), flush=True)

disc_builder = nod.DiscBuilderGCN("game.iso", fprogress_callback)
try:
    disc_builder.build_from_directory("dir_out")    
except RuntimeError as e:
    raise Exception("Failure building the image: {}".format(e))

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nod-1.1.0.tar.gz (113.2 kB view details)

Uploaded Source

Built Distributions

nod-1.1.0-cp37-cp37m-win_amd64.whl (397.8 kB view details)

Uploaded CPython 3.7m Windows x86-64

nod-1.1.0-cp36-cp36m-win_amd64.whl (397.8 kB view details)

Uploaded CPython 3.6m Windows x86-64

nod-1.1.0-cp36-cp36m-manylinux2010_x86_64.whl (702.0 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.12+ x86-64

nod-1.1.0-cp35-cp35m-manylinux2010_x86_64.whl (700.5 kB view details)

Uploaded CPython 3.5m manylinux: glibc 2.12+ x86-64

File details

Details for the file nod-1.1.0.tar.gz.

File metadata

  • Download URL: nod-1.1.0.tar.gz
  • Upload date:
  • Size: 113.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.3

File hashes

Hashes for nod-1.1.0.tar.gz
Algorithm Hash digest
SHA256 6b6d28072506904490d3fbf8c9be63e4137bde307f70737e98daa229b137ea35
MD5 ea69837c104fa75cf854959077d1907f
BLAKE2b-256 d7011a0637725942436485d07ee1501796c4df57f977ef18d0ce3bc542ad8fa0

See more details on using hashes here.

File details

Details for the file nod-1.1.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: nod-1.1.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 397.8 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for nod-1.1.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 89d0d4d0eb5de8f0349aa4a2c7950bd6850e57b7841dad112a5eb306664c01b5
MD5 4fced9f22abac354651757c5ddc70b4f
BLAKE2b-256 267dc4357939501f933bc214d145832c94ba7359e4ca522fbf4d2dadd6fe2104

See more details on using hashes here.

File details

Details for the file nod-1.1.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: nod-1.1.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 397.8 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.6

File hashes

Hashes for nod-1.1.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 bc9476c731a3107d3ac9d38b9a51ab96d38f1999e198cd26c427a0583f5c62b4
MD5 dfe0ccd967c338bcc171d379d07eb091
BLAKE2b-256 b66f40e12621e8c318908208f8b05dc2cc0c410af99994069fc444b0a891d93d

See more details on using hashes here.

File details

Details for the file nod-1.1.0-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: nod-1.1.0-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 702.0 kB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.3

File hashes

Hashes for nod-1.1.0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 25cda144c063827efbcf41bd1215159199c393df6eec9ed5fb0bd13448591745
MD5 53393f522cb8e67d4d7119ab25728c2a
BLAKE2b-256 ccc9ce8ab62629fa587d5c43e6e9c377213ec25d2f1c35eba496338a2a94d3bc

See more details on using hashes here.

File details

Details for the file nod-1.1.0-cp35-cp35m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: nod-1.1.0-cp35-cp35m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 700.5 kB
  • Tags: CPython 3.5m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.5.5

File hashes

Hashes for nod-1.1.0-cp35-cp35m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 df7e5c5bc29ba163c263417e23b4a4dd9a342fbde5397aba4942615ec4ac6f5e
MD5 ad7a138f3e0251dd74f278cd7fa75fd6
BLAKE2b-256 efe2c656a62729187d983e8b6b6eaa80f0642ca75a691f489f86ee5bc780d7ca

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page