faustedition / faust-macrogen

WIP implementation of the new macrogenesis model
http://faustedition.net/macrogenesis
0 stars 0 forks source link

Macrogenetic Analysis for the Faustedition

These scripts analyze the macrogenetic data from the data/xml/macrogenesis folder. They create the macrogenesis lab area of the edition, i.e. everything below macrogenesis/, and an order of witnesses used in the bargraph and in the variant apparatus.

We only support running this on Linux.

What’s in the box

Installation and Usage – Basic Steps

Python ≥ 3.9 and GraphViz ≤ 2.38 or ≥ 2.41 need to be installed separately.

git submodules update --init --remote
pip install -e .
macrogen

will produce the output.

Installation – Details

The main supported way of installation is to clone the repository and then run pip install . to install the package, potentially into a virtual environment. For development, install Poetry and run poetry install ..

There is one supported optional features (or 'extra'):

There are two additional historical extras, which may still work but are no longer supported:

The bootstrapped environment of the Gradle task

It is possible to bootstrap a Python environment with everything required to run macrogen. This is implemented in the installMacrogen gradle task of the build.gradle script. This is used by the global Gradle task in faust-gen, and it can be triggered by running ./gradlew installMacrogen.

The bootstrapping process will download micromamba and then use that to build a python environment in build/envs/macrogen/ using conda packages. This is controlled using the [environment.yml])(environment.yml) YAML file. Afterwards, pip is used to install the local package into that environment (to make sure we have everything from pyproject.toml).

Additional Configuration

Macrogenesis data structure is documented elsewhere (TODO Link).

Use --help to see a list of options.