Le lundi 22 mai 2023 à 20:00 +0200, Jean Abou Samra a écrit : > Hi, > As I was annoyed by the code needed to automatically download LilyPond in the > “extending-lilypond” guide, I created a “lilypond” project on PyPI... > https://pypi.org/project/lilypond > ... and uploaded wheels to it using a tiny script which lives at ... > https://gitlab.com/jeanas/lilypond-wheels > Ok, if that was all Chinese to you, what this basically means is that just > like there is a LilyPond package in Linux distros, on Homebrew, MacPorts, > Chocolatey, and so on, there is now also a Python > package, making it convenient to use LilyPond in Python scripts. It's used > like this: > import subprocess > import lilypond > > subprocess.run([lilypond.executable(), "file.ly"]) > It can be installed with pip, the standard tool for installing Python > packages. The whole point is that this doesn't just install a wrapper that > looks for LilyPond on the system. It really comes > with its own copy of LilyPond. That means you can just add "lilypond" as a > dependency to your pyproject.toml, tox.ini, requirements.txt, or wherever > your other Python dependencies are, and Bob's > your uncle, without requiring your users to install LilyPond separately from > your Python module. You can pin the LilyPond version by writing the > requirement as “lilypond==2.24.1”, or do basically > anything you can do with plain Python packages. > I'll try to remember to update it with each LilyPond release. > Note that I have not tested the macOS and Windows wheels, I'd be interested > to know whether they are working...
Well... Mere minutes after I sent this email, I discovered that there was already a project that I had missed, doing something almost but not quite similar, https://pypi.org/project/lilyponddist The “not quite” part is that it does not bundle LilyPond, it downloads it (always the same version) the first time the module is imported.
signature.asc
Description: This is a digitally signed message part