Skip to main content

Generate disk file paths for mkisofs that fit on certain size discs.

Project description

gendisc

Python versions PyPI - Version GitHub tag (with filter) License GitHub commits since latest release (by SemVer including pre-releases) QA Tests Coverage Status Documentation Status mypy pre-commit pydocstyle pytest Ruff Downloads Stargazers

@Tatsh Mastodon Follow

Generate disk file paths for mkisofs that fit on certain size discs.

Installation

Poetry

poetry add gendisc

Pip

pip install gendisc

Usage

Usage: gendisc [OPTIONS] PATH

  Make a file listing filling up discs.

Options:
  --cross-fs                  Allow crossing file systems.
  -D, --drive FILE            Drive path.
  -d, --debug                 Enable debug logging.
  -i, --starting-index INDEX  Index to start with (defaults to 1).  [x>=1]
  -o, --output-dir DIRECTORY  Output directory. Will be created if it does not
                              exist.
  -p, --prefix TEXT           Prefix for volume ID and files.
  -r, --delete                Unlink instead of sending to trash.
  -h, --help                  Show this message and exit.

The output is a series of shell scripts (1 for each disc) that do the following:

  • Generate the ISO image with mkisofs for the current set.
  • Save a SHA256 sum of the image for verification.
  • Save a tree listing for later use (tree must be installed).
  • Save a file listing via find for later use.
  • Requests to insert a blank disc.
  • Uses cdrecord to burn (currently set to burn at 4x speed).
  • Ejects and re-inserts the disc.
  • Verifies the disc.
  • Deletes the source files or sends them to the bin.
  • Ejects the disc.
  • Requests to move the disc to a label printer.
  • If you have GIMP installed, open it to the printer dialogue.

If you have mogrify (ImageMagick) and Inkscape installed, a label will be generated. This can be then opened in a tool that can have your printer (such as an Epson XP-7100) print to disc (GIMP). The image should be ready for printing (under Image Settings you should see it is exactly 12 cm at DPI 600).

Many of the steps above can be skipped by passing flags to the script. Currently the script supports these options:

Usage: script.sh [-h] [-G] [-K] [-k] [-O] [-s] [-S] [-V]
All flags default to no.
  -h: Show this help message.
  -G: Do not open GIMP on completion (if label file exists).
  -K: Keep ISO image after burning.
  -k: Keep source files after burning.
  -O: Only create ISO image.
  -s: Skip clean-up of .directory files.
  -S: Skip ejecting tray for blank disc (assume already inserted).
  -V: Skip verification of burnt disc.

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

gendisc-0.0.4.tar.gz (25.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gendisc-0.0.4-py3-none-any.whl (17.6 kB view details)

Uploaded Python 3

File details

Details for the file gendisc-0.0.4.tar.gz.

File metadata

  • Download URL: gendisc-0.0.4.tar.gz
  • Upload date:
  • Size: 25.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.3 Linux/6.14.6-gentoo-limelight

File hashes

Hashes for gendisc-0.0.4.tar.gz
Algorithm Hash digest
SHA256 d4ba2e1a834e9f500608cd40f89bf55f6861dec5460807ec02b0ee0ee3c110fd
MD5 4ea5173629c8aeca3a7986b909b47a25
BLAKE2b-256 2e83977767a734f5a8ba0c454ec7680da966d5f0597ff267c1ca102ace128383

See more details on using hashes here.

File details

Details for the file gendisc-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: gendisc-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 17.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.3 Linux/6.14.6-gentoo-limelight

File hashes

Hashes for gendisc-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a5042cf6cd5a171da5978aee871708b058f5325cf0be22f5e6ef9814b4b63286
MD5 1deee1b766c2c41c30156fcb6686cd17
BLAKE2b-256 df77f1130f54a9845dab56189f6e0e59060465ecf6514d2bd786c4ee3a2c041e

See more details on using hashes here.

Supported by

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