Local builds
Local with pixi
To build a package locally, the easiest way is to use pixi
(see /pixi.sh/latest/#installation for installation instructions).
Under the hood, pixi
uses rattler-build
to build the package.
# this only needs to be done once
pixi run setup
# this builds the package
pixi run build-emscripten-wasm32-pkg recipes/recipes_emscripten/regex
Local builds with rattler-build
We recommend using the pixi
command to build packages locally. However, if you want to use rattler-build
directly, you can do so with the following steps:
Create the environment
Create a new conda environment from ci_env.yml
and install playwright in this environment:
On a Linux / MacOS this can be done with:
All further steps should be executed in this environment.
I.e. if you open a new terminal, you have to activate the environment again with micromamba activate emscripten-forge
.
Setup emsdk
We currently need a patched version of emsdk. This is because emscripten had some regressions in the 3.1.45
release wrt. dynamic loading of shared libraries. We use the ./emsdk/setup_emsdk.sh
which takes
two arguments: the emsdk version and the path where emsdk should be installed.
In this example we choose ~/emsdk
as the installation path. You have to use version 3.1.45
.
Build compiler packages / meta packages:
This is only needed for MacOS. On Linux, the compiler packages are already built and available in the emscripten-forge
channel.
rattler-build build --recipe recipes/recipes/emscripten_emscripten-wasm32/recipe.yaml -c https://repo.mamba.pm/emscripten-forge -c conda-forge -c microsoft -m conda_build_config.yaml
rattler-build build --recipe recipes/recipes/cross-python_emscripten-wasm32/recipe.yaml -c https://repo.mamba.pm/emscripten-forge -c conda-forge -c microsoft -m conda_build_config.yaml
rattler-build build --recipe recipes/recipes/pytester/recipe.yaml -c https://repo.mamba.pm/emscripten-forge -c conda-forge -c microsoft -m conda_build_config.yaml