Skip to main content

Crazy way to synchronise a remote Strawberry rated library to Music.app using Python, JXA and SSH.

Project description

clem2itunes

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

@Tatsh Buy Me A Coffee Libera.Chat Mastodon Follow Patreon

Crazy way to synchronise a remote Strawberry rated library with iTunes using Python, JXA and SSH.

Requires the following packages on the source side:

Installation

Poetry

poetry add clem2itunes

Pip

pip install clem2itunes

Usage

Usage: clem2itunes [OPTIONS] COMMAND [ARGS]...

  Tools for Strawberry libraries.

Options:
  -d, --debug  Enable debug level logging.
  -h, --help   Show this message and exit.

Commands:
  create-library (c,cl,create,create-lib)
                                  Create a curated music library.
  sync (s)                        Sync remote library to local machine.

create-library is useful for creating a maximally sized library of music for copying to any device based on song ratings. It tries to avoid duplicates, and splits MP3s (losslessly) using CUE files.

sync is only for use on macOS to copy songs over, add them to iTunes/Music, and set ratings.

Sync a library to an Android device

Assumes the library is at ~/import. You have to create the /sdcard/Music/import directory on the device first.

for i in ~/import/*; do adb push --sync -Z "$(readlink -f "$i")" /sdcard/Music/import; done

If your machine lacks readlink, use perl -MCwd -le 'print Cwd::abs_path shift' ... instead.

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

clem2itunes-0.1.3.tar.gz (30.1 kB view details)

Uploaded Source

Built Distribution

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

clem2itunes-0.1.3-py3-none-any.whl (23.6 kB view details)

Uploaded Python 3

File details

Details for the file clem2itunes-0.1.3.tar.gz.

File metadata

  • Download URL: clem2itunes-0.1.3.tar.gz
  • Upload date:
  • Size: 30.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for clem2itunes-0.1.3.tar.gz
Algorithm Hash digest
SHA256 5150c3d1b2c1a6d2f11333b3be4a8c1ec2f44d92ecac85b6f259addba5f4138d
MD5 81d602b34d4f1f9153d0a83575f8b7b6
BLAKE2b-256 338339ec0af4a92580fca56065e8be6f740f902da5410ad5236d91332c6feceb

See more details on using hashes here.

Provenance

The following attestation bundles were made for clem2itunes-0.1.3.tar.gz:

Publisher: publish.yml on Tatsh/clem2itunes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file clem2itunes-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: clem2itunes-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 23.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for clem2itunes-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 78492b5c08d623fd5c0caaa7ea78357201ff5ad5ce914913f3e0d7b0b4cc7e4d
MD5 13493e8951db11fe3d62d8ceaba7289a
BLAKE2b-256 d241d35ff3683baf57d3394a90b8d8515415728fe238181bcc84dddf6aefa221

See more details on using hashes here.

Provenance

The following attestation bundles were made for clem2itunes-0.1.3-py3-none-any.whl:

Publisher: publish.yml on Tatsh/clem2itunes

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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