From aba50a2b28b95c97ce33c3425c970aac5d9fe048 Mon Sep 17 00:00:00 2001 From: Jean Abou-Samra Date: Mon, 16 Oct 2023 12:36:18 +0200 Subject: [PATCH] Build Linux wheels in GitHub CI (#60) Apart from the usual benefit of CI for testing proposed changes, this will eventually make installing python-poppler-qt5 much easier. Currently, installing from PyPI compiles from source, which results in a bad user experience since lots of tools and a somewhat delicate setup are needed. The added CI job builds precompiled packages ("wheels") that can be uploaded to PyPI and should be compatible with current Linux distributions. The eventual goal is to improve this to build macOS and Windows wheels too. Relates to #42 --- .github/workflows/build_wheels.yml | 28 + README.rst | 7 - ci/README.md | 36 + ci/build.sh | 97 ++ ci/environment/README.md | 63 + ci/environment/conda-linux-64.lock | 164 ++ ci/environment/conda-lock.yml | 2283 ++++++++++++++++++++++++++++ ci/environment/environment.yml | 22 + poppler-qt5.sip | 2 +- popplerqt5.py | 6 + project.py | 10 + pyproject.toml | 12 +- 12 files changed, 2720 insertions(+), 10 deletions(-) create mode 100644 .github/workflows/build_wheels.yml create mode 100644 ci/README.md create mode 100755 ci/build.sh create mode 100644 ci/environment/README.md create mode 100644 ci/environment/conda-linux-64.lock create mode 100644 ci/environment/conda-lock.yml create mode 100644 ci/environment/environment.yml create mode 100644 popplerqt5.py diff --git a/.github/workflows/build_wheels.yml b/.github/workflows/build_wheels.yml new file mode 100644 index 0000000..a8b69ac --- /dev/null +++ b/.github/workflows/build_wheels.yml @@ -0,0 +1,28 @@ +on: [push, pull_request] + + +# For now only Linux wheels with Python 3.11. TODO: cover other Python +# versions and macOS / Windows. + +jobs: + build_wheels_linux: + name: Build Linux wheels + # The Docker container the job is run in. + container: quay.io/pypa/manylinux2014_x86_64 + # The host system that runs Docker. + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: conda-incubator/setup-miniconda@v2 + with: + miniconda-version: latest + environment-file: ci/environment/conda-linux-64.lock + - name: Build the wheels + # The following line here and elsewhere is needed for our Conda environment to + # be activated. See: + # https://github.com/marketplace/actions/setup-miniconda#important + shell: bash -el {0} + run: ci/build.sh + - uses: actions/upload-artifact@v3 + with: + path: "fixed-wheel/*.whl" diff --git a/README.rst b/README.rst index 61ee5d0..67c9f35 100644 --- a/README.rst +++ b/README.rst @@ -24,12 +24,6 @@ Documentation The Python API closely follows the Poppler Qt5 C++ interface library API, documented at https://poppler.freedesktop.org/api/qt5/ . -Note: Releases of PyQt5 < 5.4 currently do not support the QtXml module, -all methods that use the QDomDocument, QDomElement and QDomNode types are -disabled. This concerns the ``Document::toc()`` method and some constructors -and the ``store()`` methods in the ``Annotation`` subclasses. So, using -PyQt5 >= 5.4 is recommended. - Wherever the C++ API requires ``QList``, ``QSet`` or ``QLinkedList``, any Python sequence can be used. API calls that return ``QList``, ``QSet`` or ``QLinkedList`` all return Python lists. @@ -71,4 +65,3 @@ functions: This is determined at build time. If at build time the Poppler-Qt5 version could not be determined and was not specified, an empty tuple might be returned. - diff --git a/ci/README.md b/ci/README.md new file mode 100644 index 0000000..260b98e --- /dev/null +++ b/ci/README.md @@ -0,0 +1,36 @@ +The CI setup is made of this directory (`ci/`) as well as the GitHub workflow +definition in `.github/workflows/`. + +This CI builds wheels (precompiled packages) of python-poppler-qt5, currently +only for Linux. These wheels can be used on any reasonably recent Linux +system. + +Building the wheels is an involved process. First, we need to get a version of +PyQt5 that can be used for compilation, i.e., it must contain the C++ headers +and CMake helper files. Unfortunately, this is not the case of the PyQt5-Qt5 +distribution on PyPI. This is why we use Conda to get Qt5 (as well as other +stuff). + +Since Linux binaries link to the system glibc, which is binary +backwards-compatible but not forwards-compatible, getting a wheel that is +actually compatible with many Linux systems requires compiling against an old +glibc. This is also nicely achieved by using the libc in Conda's build +environment. + +(Note that this assumes that the compiler and compiler flags in use in the Conda +environment are ABI-compatible with the PyQt5-Qt5 wheels on PyPI. If by +misfortune that ceases being the case in the future, we will need to find +another strategy.) + +We build Poppler itself from source because it links to a large number of +external libraries by default and it would be impractical to bundle them all in +the wheels: not only would it increase the size, but for some of these +libraries, it is questionable that bundling them is the right thing to do (e.g., +graphics libraries that might need to be system-dependent). By turning off lots +of features, we reduce the set of external libraries to link to only libjpeg and +libopenjp2. + +Note: Searching for fonts on the system (for PDFs that don't embed their own +fonts, which are rare) is disabled since it would require also shipping +libfontconfig. Users who want this feature should get a different build of +python-poppler-qt5. diff --git a/ci/build.sh b/ci/build.sh new file mode 100755 index 0000000..32b4e32 --- /dev/null +++ b/ci/build.sh @@ -0,0 +1,97 @@ +#!/bin/bash + +set -eu # exit on error +set -o xtrace # show each command before running + +# Sync with pyproject.toml. POPPLER_VERSION is for the download of Poppler and may contain +# leading zeroes, while PYTHON_POPPLER_QT5_VERSION does not. +POPPLER_VERSION="21.03.0" +PYTHON_POPPLER_QT5_VERSION="21.3.0" + +# These compiler flags add an RPATH entry with value $ORIGIN (literally), +# to make the built shared libraries search for Qt and Poppler in the +# same directory instead of using the system ones. --disable-new-dtags +# is to generate an RPATH and not a RUNPATH; the latter doesn't apply +# to transitive dependencies. +RPATH_OPTION="-Wl,-rpath,'\$ORIGIN',--disable-new-dtags" +# Shell quoting madness to survive through qmake and make ... +RPATH_OPTION_2="-Wl,-rpath,'\\'\\\$\\\$ORIGIN\\'',--disable-new-dtags" + +# Download and extract the Poppler source code + +POPPLER=poppler-$POPPLER_VERSION +curl -O https://poppler.freedesktop.org/$POPPLER.tar.xz +tar -xf $POPPLER.tar.xz +# Patch Poppler to avoid building the tests. Newer Poppler versions have a config +# variable for this. +sed -i 's/add_subdirectory(test)//g' $POPPLER/CMakeLists.txt + + +pushd $POPPLER + +# Construct build options + +CMAKE_OPTIONS= +# We don't need the Qt6, GLib (GTK) and C++ wrappers, only the Qt5 one. +CMAKE_OPTIONS+="-DENABLE_QT5=ON" +CMAKE_OPTIONS+=" -DENABLE_QT6=OFF" +CMAKE_OPTIONS+=" -DENABLE_GLIB=OFF" +CMAKE_OPTIONS+=" -DENABLE_CPP=OFF" +# We don't need the command line utilities (pdfimages, pdfattach, etc.) +CMAKE_OPTIONS+=" -DENABLE_UTILS=OFF" +# We don't need libpng or libtiff. Apparently, only they're used in pdfimages. +# However, the build is not smart enough to avoid searching them if the utilities +# aren't built. +CMAKE_OPTIONS+=" -DWITH_PNG=OFF" +CMAKE_OPTIONS+=" -DWITH_TIFF=OFF" +# Disable network stuff that's apparently used to validate signatures and the like. +# We don't need this. +CMAKE_OPTIONS+=" -DWITH_NSS3=OFF" +CMAKE_OPTIONS+=" -DENABLE_LIBCURL=OFF" +# Disable the use of Little CMS. (TODO: maybe this would actually be +# useful? Investigate.) +CMAKE_OPTIONS+=" -DENABLE_CMS=none" +# Disable Cairo backend, it's (famously) not supported in the Qt5 wrapper anyway. +CMAKE_OPTIONS+=" -DWITH_Cairo=OFF" +# Disable the use of Fontconfig, it's only needed for PDFs that use external +# fonts. We don't care to support these. +CMAKE_OPTIONS+=" -DFONT_CONFIGURATION=generic" +# Don't build the tests. +CMAKE_OPTIONS+=" -DBUILD_QT5_TESTS=OFF" +# Install locally +CMAKE_OPTIONS+=" -DCMAKE_INSTALL_PREFIX==../../../installed-poppler" + +# Generate Poppler Makefile +LDFLAGS=$RPATH_OPTION \ +PKG_CONFIG_LIBDIR=$CONDA_PREFIX/lib/pkgconfig \ +LIBRARY_PATH=$CONDA_BUILD_SYSROOT/lib:$CONDA_PREFIX/lib \ + cmake -S . -B build $CMAKE_OPTIONS + +# Build Poppler +pushd build +make -j$(nproc) +make install +popd + +popd + +# Now build python-poppler-qt5. Add a RUNPATH just like for poppler. +PKG_CONFIG_LIBDIR=installed-poppler/lib64/pkgconfig:$CONDA_PREFIX/lib/pkgconfig \ +LIBRARY_PATH=$CONDA_BUILD_SYSROOT/lib:$CONDA_PREFIX/lib \ + sip-wheel --verbose --link-args=$RPATH_OPTION_2 --build-dir=build + +# Unpack wheel to tinker with it +WHEEL=(python_poppler_qt5*.whl) +wheel unpack $WHEEL +pushd python_poppler_qt5-$PYTHON_POPPLER_QT5_VERSION + +# Vendor libopenjp2 and libjpeg +cp ../installed-poppler/lib64/*.so* \ + $CONDA_PREFIX/lib/libopenjp2.so* \ + $CONDA_PREFIX/lib/libjpeg.so* \ + PyQt5/Qt5/lib/ + +# Repack the wheel +popd +mkdir fixed-wheel +wheel pack --dest-dir=fixed-wheel python_poppler_qt5-$PYTHON_POPPLER_QT5_VERSION diff --git a/ci/environment/README.md b/ci/environment/README.md new file mode 100644 index 0000000..7fa4690 --- /dev/null +++ b/ci/environment/README.md @@ -0,0 +1,63 @@ +This directory contains a lock file that specifies the CI environment used to +build python-poppler-qt5 wheels. This is used to make the build environment +reproducible across CI runs, and makes the CI setup much faster. + +The `environment.yml` file contains the names of the packages to be +installed. See [environment-doc] about the format of this file. + +The lock file is `conda-lock.yml` and is generated using [conda-lock]. To +regenerate it: + +- Install [Miniconda], + +- Install conda-lock into the Conda base environment using + + ``` + conda install --channel=conda-forge --name=base conda-lock + ``` + + (you may also create a dedicated environment for it, different than `base`). + +- Optional but highly recommended: set the libmamba dependency solver. + + ``` + conda install --channel=conda-forge --name=base conda-libmamba-solver + conda config --set solver libmamba + ``` + + The dependency resolution takes a lot of time. The libmamba solver is not fast + (generating the lock file is expected to take several minutes), but it's + faster than conda's default solver. + +- Activate the Conda environment where you installed `conda-lock`, e.g., + + ``` + conda activate base + ``` + +- Run the command `conda-lock`, which updates `conda-lock.yml`. + +- Run `conda-lock render` to also update `conda-linux-64.lock` + from `conda-lock.yml`. + +To test your platform's environment locally, first run: + +``` +conda-lock install --name python-poppler-qt5-test-env conda-lock.yml +``` + +You may give the environment a different name than +`python-poppler-qt5-test-env`. Afterwards, activate the newly created +environment with + +``` +conda activate python-poppler-qt5-test-env +``` + +(use the environment name you chose) + + + +[environment-doc]: https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html#create-env-file-manually +[conda-lock]: https://github.com/conda/conda-lock +[Miniconda]: https://docs.conda.io/en/latest/miniconda.html diff --git a/ci/environment/conda-linux-64.lock b/ci/environment/conda-linux-64.lock new file mode 100644 index 0000000..06cc1b0 --- /dev/null +++ b/ci/environment/conda-linux-64.lock @@ -0,0 +1,164 @@ +# Generated by conda-lock. +# platform: linux-64 +# input_hash: afeb5c8cdf75d920f9debd406375534c990a233682b17f04f72e8a5172413307 +@EXPLICIT +https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2#d7c89558ba9fa0495403155b64376d81 +https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2023.7.22-hbcca054_0.conda#a73ecd2988327ad4c8f2c331482917f2 +https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2#0c96522c6bdaed4b1566d11387caaf45 +https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2#34893075a5c9e55cdafac56607368fc6 +https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2#4d59c254e01d9cde7957100457e2d5fb +https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-hab24e00_0.tar.bz2#19410c3df09dfb12d1206132a1d357c5 +https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-2.6.32-he073ed8_16.conda#7ca122655873935e02c91279c5b03c8c +https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda#7aca3059a1729aa76c597603f10b0dd3 +https://conda.anaconda.org/conda-forge/linux-64/libgcc-devel_linux-64-12.3.0-h8bca6fd_0.conda#b9ae31bc2e565684ebaf82d4bd954d55 +https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.1.0-h15d22d2_0.conda#afb656a334c409dd9805508af1c89c7a +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-devel_linux-64-12.3.0-h8bca6fd_0.conda#7c80158949230e6d837186b20b2fcf13 +https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.1.0-hfd8a6a1_0.conda#067bcc23164642f4c226da631f2a2e1d +https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.11-3_cp311.conda#c2e2630ddb68cf52eec74dc7dfab20b5 +https://conda.anaconda.org/conda-forge/noarch/tzdata-2023c-h71feb2d_0.conda#939e3e74d8be4dac89ce83b20de2492a +https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2#f766549260d6815b0c52253f1fb1bb29 +https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.1.0-h69a702a_0.conda#506dc07710dd5b0ba63cbf134897fc10 +https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.1.0-he5830b7_0.conda#56ca14d57ac29a75d23a39eb3ee0ddeb +https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.12-he073ed8_16.conda#071ea8dceff4d30ac511f4a2f8437cd1 +https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2#73aaf86a425cc6e73fcf236a5a46396d +https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-hf600244_0.conda#33084421a8c0af6aef1b439707f7662a +https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2#fee5683a3f04bd15cbd8318b096a27ab +https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-hdd6e379_0.conda#ccc940fddbc3fcd3d79cd4c654c4b5c4 +https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-64-2.40-hbdbef99_1.conda#855757cf4cf920cc9b6130a32fdcaa81 +https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.1.0-he5830b7_0.conda#cd93f779ff018dd85c7544c015c9db3c +https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.8-h166bdaf_0.tar.bz2#be733e69048951df1e4b4b7bb8c7666f +https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2#d9c69a24ad678ffce24c6543a0176b00 +https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h7f98852_4.tar.bz2#a1fd65c7ccbf10880423d82bca54eb54 +https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.19.1-hd590300_0.conda#e8c18d865be43e2fb3f7a145b6adf1f5 +https://conda.anaconda.org/conda-forge/linux-64/fftw-3.3.10-nompi_hc118613_108.conda#6fa90698000b05dfe8ce6515794fe71a +https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2#14947d8770185e5153fdd04d4673ed37 +https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2#8c54672728e8ec6aa6db90cf2806d220 +https://conda.anaconda.org/conda-forge/linux-64/gstreamer-orc-0.4.34-hd590300_0.conda#7ea223fa114cc8134b8c4d398d3e5afe +https://conda.anaconda.org/conda-forge/linux-64/icu-70.1-h27087fc_0.tar.bz2#87473a15119779e021c314249d4b4aed +https://conda.anaconda.org/conda-forge/linux-64/jpeg-9e-h0b41bf4_3.conda#c7a069243e1fbe9a556ed2ec030e6407 +https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2#30186d27e2c9fa62b45fb1476b7200e3 +https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2#a8832b479f93521a9e7b5b743803be51 +https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2#76bbff344f0134279f225174e9064c8f +https://conda.anaconda.org/conda-forge/linux-64/libdb-6.2.32-h9c3ff4c_0.tar.bz2#3f3258d8f841fbac63b36b75bdac1afd +https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.17-h0b41bf4_0.conda#5cc781fd91968b11a8a7fdbee0982676 +https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-h516909a_1.tar.bz2#6f8720dff19e17ce5d48cfe7f3d2f0a3 +https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.5.0-hcb278e6_1.conda#6305a3dd2752c76335295da4e581f2fd +https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2#d645c6d2ac96843a2bfaccd2d62b3ac3 +https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-h166bdaf_0.tar.bz2#b62b52da46c39ee2bc3c162ac7f1804d +https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-2.1.5.1-h0b41bf4_0.conda#1edd9e67bdb90d78cea97733ff6b54e6 +https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.0-h7f98852_0.tar.bz2#39b1328babf85c7c3a61636d9cd50206 +https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2#6e8cc2173440d77708196c5b93771680 +https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2#15345e56d527b330e1cacbdf58676e8f +https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-12.3.0-h0f45ef3_0.conda#bbc8fef17925480272a671b1d83431fa +https://conda.anaconda.org/conda-forge/linux-64/libtool-2.4.7-h27087fc_0.conda#f204c8ba400ec475452737094fb81d52 +https://conda.anaconda.org/conda-forge/linux-64/libunistring-0.9.10-h7f98852_0.tar.bz2#7245a044b4a1980ed83196176b78b73a +https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda#40b61aab5c7ba9ff276c41cfffe6b80b +https://conda.anaconda.org/conda-forge/linux-64/libuv-1.44.2-hd590300_1.conda#d5447f6f8c208232db63db85e053574d +https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.1-hd590300_0.conda#82bf6f63eb15ef719b556b63feec3a77 +https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda#f36c115f1ee199da648e0597ec2047ad +https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda#318b08df404f9c9be5712aaa5a6f0bb0 +https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.31.3-hcb278e6_0.conda#141a126675b6d1a4eabb111a4a353898 +https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-hcb278e6_0.conda#681105bccc2a3f7f1a837d47d39c9179 +https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda#da0ec11a6454ae19bff5b02ed881a2b1 +https://conda.anaconda.org/conda-forge/linux-64/openssl-3.1.2-hd590300_0.conda#e5ac5227582d6c83ccf247288c0eb095 +https://conda.anaconda.org/conda-forge/linux-64/pixman-0.40.0-h36c2ea0_0.tar.bz2#660e72c82f2e75a6b3fe6a6e75c79f19 +https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2#22dad4df6e8630e8dff2428f6f6a7036 +https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.3-hd590300_1.conda#899f432216154b3c60164667c1c598a0 +https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.38-h0b41bf4_0.conda#9ac34337e5101a87e5d91da05d84aa48 +https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2#4b230e8381279d76131116660f5a241a +https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda#b462a33c0be1421532f28bfe8f4a7514 +https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.11-hd590300_0.conda#2c80dc38fface310c9bd81b17037fee5 +https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2#be93aabceefa2fac576e971aef407908 +https://conda.anaconda.org/conda-forge/linux-64/xorg-renderproto-0.11.1-h7f98852_1002.tar.bz2#06feff3d2634e3097ce2fe681474b534 +https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h0b41bf4_1003.conda#bce9f945da8ad2ae9b1d7165a64d0f87 +https://conda.anaconda.org/conda-forge/linux-64/xorg-xf86vidmodeproto-2.3.1-h7f98852_1002.tar.bz2#3ceea9668625c18f19530de98b15d5b0 +https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2#b4a4381d54784606820704f7b5f05a15 +https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2#2161070d867d1b1204ea749c8eec4ef0 +https://conda.anaconda.org/conda-forge/linux-64/expat-2.5.0-hcb278e6_1.conda#8b9b5aca60558d02ddaa09d599e55920 +https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-12.3.0-he2b93b0_0.conda#1e41f51d89695fd3f810e2245517460b +https://conda.anaconda.org/conda-forge/linux-64/jack-1.9.22-h11f4161_0.conda#504fa9e712b99494a9cf4630e3ca7d78 +https://conda.anaconda.org/conda-forge/linux-64/libcap-2.67-he9d0100_0.conda#d05556c80caffff164d17bdea0105a1a +https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2#4d331e44109e3f0e19b4cb8f9b82f3e1 +https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.10-h28343ad_4.tar.bz2#4a049fc560e00e43151dc51368915fdd +https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda#ee48bf17cc83a00f59ca1494d5646869 +https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.47-h71f35ed_0.conda#c2097d0b46367996f09b4e8e4920384a +https://conda.anaconda.org/conda-forge/linux-64/libidn2-2.3.4-h166bdaf_0.tar.bz2#7440fbafd870b8bab68f83a064875d34 +https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.52.0-h61bc06f_0.conda#613955a50485812985c059e7b269f42e +https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.39-h753d276_0.conda#e1c890aebdebbfbf87e2c917187b4416 +https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.42.0-h2797004_0.conda#fdaae20a1cf7cd62130a0973190a31b7 +https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda#1f5a58e686b13bcfde88b93f547d23fe +https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2#309dec04b70a3cc0f1e84a4013683bc0 +https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.13-h7f98852_1004.tar.bz2#b3653fdc58d03face9724f602218a904 +https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.10.3-hca2bb57_4.conda#bb808b654bdc3c783deaf107a2ffb503 +https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_2.conda#a55ff0ed12efd86cf3a3dfb750adb950 +https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.40-hc3806b6_0.tar.bz2#69e2c796349cd9b273890bee0febfe1b +https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda#47d31b792659ce70f470b5c82fdfb7a4 +https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.12-h27826a3_0.tar.bz2#5b8c42eb62e9fc961af70bdd6a26e168 +https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda#93ee23f12bc2e684548181256edd2cf6 +https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda#68c34ec6149623be41a1933ab996a209 +https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.2-hfc55251_7.conda#32ae18eb2a687912fc9e92a501c0a11b +https://conda.anaconda.org/conda-forge/linux-64/boost-cpp-1.81.0-he95ae9e_0.conda#bbd81de5abcf7434074f37cb5fe0eaa3 +https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-hca18f0e_1.conda#e1232042de76d24539a436d37597eb06 +https://conda.anaconda.org/conda-forge/linux-64/gcc-12.3.0-h8d2909c_1.conda#cb7c7892032ecf45fcad76d67b6a3e9b +https://conda.anaconda.org/conda-forge/linux-64/gcc_linux-64-12.3.0-h76fc315_1.conda#70b65b994853c64c631b6addfbaea487 +https://conda.anaconda.org/conda-forge/linux-64/gfortran_impl_linux-64-12.3.0-hfcedea8_0.conda#4cc7e96285bfbca093531d116724ec6d +https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-12.3.0-he2b93b0_0.conda#3f00aa0a8f8d3924890fecae937cc6bd +https://conda.anaconda.org/conda-forge/linux-64/krb5-1.20.1-h81ceb04_0.conda#89a41adce7106749573d883b2f657d78 +https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.1-h166bdaf_0.tar.bz2#f967fc95089cd247ceed56eda31de3a9 +https://conda.anaconda.org/conda-forge/linux-64/libglib-2.76.4-hebfc3b9_0.conda#c6f951789c888f7bbd2dd6858eab69de +https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hadd5161_1.conda#17d91085ccf5934ce652cb448d0cb65a +https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-h5cf9203_2.conda#dbfb446bd165f61f9c82aed9188e297a +https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.0-hb75c966_0.conda#c648d19cd9c8625898d5d370414de7c7 +https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.5.0-h6adf6a1_2.conda#2e648a34072eb39d7c4fc2a9981c5f0c +https://conda.anaconda.org/conda-forge/linux-64/libudev1-253-h0b41bf4_1.conda#bb38b19a41bb94e8a19dbfb062d499c7 +https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.5.0-h79f4944_0.conda#3f67368c9b0e77a693acad193310baf1 +https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_2.conda#b2f09078f50b9e859aca3f0dc1cc8b7e +https://conda.anaconda.org/conda-forge/linux-64/nss-3.89-he45b914_0.conda#2745719a58eeaab6657256a3f142f099 +https://conda.anaconda.org/conda-forge/linux-64/python-3.11.4-hab00c5b_0_cpython.conda#1c628861a2a126b9fc9363ca1b7d014e +https://conda.anaconda.org/conda-forge/linux-64/wget-1.20.3-ha35d2d1_1.tar.bz2#c990e108f39e1b43adf61e984360c9a1 +https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-h166bdaf_0.tar.bz2#384e7fcb3cd162ba3e4aed4b687df566 +https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h166bdaf_0.tar.bz2#637054603bb7594302e3bf83f0a99879 +https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.9-h166bdaf_0.tar.bz2#732e22f1741bccea861f5668cf7342a7 +https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.1-h166bdaf_0.tar.bz2#0a8e20a8aef954390b9481a527421a8c +https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.4-h0b41bf4_0.conda#ea8fbfeb976ac49cbeb594e985393514 +https://conda.anaconda.org/conda-forge/linux-64/c-compiler-1.6.0-hd590300_0.conda#ea6c792f792bdd7ae6e7e2dee32f0a48 +https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2#ecfff944ba3960ecb334b9a2663d708d +https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda#0f69b688f52ff6da70bccb7ff7001d1d +https://conda.anaconda.org/conda-forge/linux-64/gfortran-12.3.0-h499e0f7_1.conda#d93122c45011981d840864197e7d92a4 +https://conda.anaconda.org/conda-forge/linux-64/gfortran_linux-64-12.3.0-h7fe76b4_1.conda#284a064d6fa813f1e4d16570e02e7ead +https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.76.4-hfc55251_0.conda#76ac435b8668f636a39fcb155c3543fd +https://conda.anaconda.org/conda-forge/linux-64/gxx-12.3.0-h8d2909c_1.conda#52061516ce5d0aebb4282f72ef2347e5 +https://conda.anaconda.org/conda-forge/linux-64/gxx_linux-64-12.3.0-h8a814eb_1.conda#6445e3f748b36c1b361f0def984d1763 +https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_h9986a30_3.conda#1720df000b48e31842500323cb7be18c +https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h36d4200_3.conda#c9f4416a34bc91e0eb029f912c68f81f +https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.1.2-h409715c_0.conda#50c873c9660ed116707ae15b663928d8 +https://conda.anaconda.org/conda-forge/linux-64/libpq-15.3-hbcd7760_1.conda#8afb2a97d256ffde95b91a6283bc598c +https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-253-h8c4010b_1.conda#9176b1e2cb8beca37a7510b0e801e38f +https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.0-hfec8fc6_2.conda#5ce6a42505c6e9e6151c54c3ec8d68ea +https://conda.anaconda.org/conda-forge/noarch/packaging-23.1-pyhd8ed1ab_0.conda#91cda59e66e1e4afe9476f8ef98f5c30 +https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2#7205635cd71531943440fbfe3b6b5727 +https://conda.anaconda.org/conda-forge/noarch/setuptools-68.0.0-pyhd8ed1ab_0.conda#5a7739d0f57ee64133c9d32e6507c46d +https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2#f832c45a477c78bebd107098db465095 +https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2#5844808ffab9ebdb694585b50ba02a96 +https://conda.anaconda.org/conda-forge/noarch/wheel-0.41.1-pyhd8ed1ab_0.conda#8f467ba2db2b5470d297953d9c1f9c7d +https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h166bdaf_0.tar.bz2#c9b568bd804cb2903c6be6f5f68182e4 +https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h0b41bf4_2.conda#82b6df12252e6f32402b96dacc656fec +https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.10-h7f98852_1003.tar.bz2#f59c1242cc1dd93e72c2ee2b360979eb +https://conda.anaconda.org/conda-forge/linux-64/cairo-1.16.0-ha61ee94_1014.tar.bz2#d1a88f3ed5b52e1024b80d4bcd26a7a0 +https://conda.anaconda.org/conda-forge/linux-64/cmake-3.26.4-hcfe8598_0.conda#1714cf0f0facaeb609a0846e4270aff2 +https://conda.anaconda.org/conda-forge/linux-64/cxx-compiler-1.6.0-h00ab1b0_0.conda#364c6ae36c4e36fcbd4d273cf4db78af +https://conda.anaconda.org/conda-forge/linux-64/fortran-compiler-1.6.0-heb67821_0.conda#b65c49dda97ae497abcbdf3a8ba0018f +https://conda.anaconda.org/conda-forge/linux-64/glib-2.76.4-hfc55251_0.conda#dbcec5fd9c6c8be24b23575048755a59 +https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_h7634d5b_3.conda#0922208521c0463e690bbaebba7eb551 +https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-h5195f5e_3.conda#caeb3302ef1dc8b342b20c710a86f8a9 +https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.11-py311hb755f60_0.conda#17d25ab64a32872b349579fdb07bbdb2 +https://conda.anaconda.org/conda-forge/linux-64/compilers-1.6.0-ha770c72_0.conda#e2259de4640a51a28c21931ae98e4975 +https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.0-h25f0c4b_2.conda#461541cb1b387c2a28ab6217f3d38502 +https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-6.0.0-h8e241bc_0.conda#448fe40d2fed88ccf4d9ded37cbb2b38 +https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-daemon-16.1-ha8d29e2_3.conda#34d9d75ca896f5919c372a34e25f23ea +https://conda.anaconda.org/conda-forge/noarch/pyqt-builder-1.15.2-pyhd8ed1ab_0.conda#30e48be9aa44c5296efb575502fa349e +https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py311hb755f60_4.conda#3cff4c98f775ff6439b95bb7917702e9 +https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.0-h4243ec0_2.conda#0d0c6604c8ac4ad5e51efa7bb58da05c +https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-16.1-hcb278e6_3.conda#8b452ab959166d91949af4c2d28f81db +https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5d23da1_6.conda#59c73debd9405771690ddbbad6c57b69 +https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py311hf0fb5b6_4.conda#afe5363b88d2e97266063558a6599bd0 diff --git a/ci/environment/conda-lock.yml b/ci/environment/conda-lock.yml new file mode 100644 index 0000000..073e886 --- /dev/null +++ b/ci/environment/conda-lock.yml @@ -0,0 +1,2283 @@ +# This lock file was generated by conda-lock (https://github.com/conda/conda-lock). DO NOT EDIT! +# +# A "lock file" contains a concrete list of package versions (with checksums) to be installed. Unlike +# e.g. `conda env create`, the resulting environment will not change as new package versions become +# available, unless you explicitly update the lock file. +# +# Install this environment as "YOURENV" with: +# conda-lock install -n YOURENV --file conda-lock.yml +# To update a single package to the latest version compatible with the version constraints in the source: +# conda-lock lock --lockfile conda-lock.yml --update PACKAGE +# To re-solve the entire environment, e.g. after changing a version constraint in the source file: +# conda-lock -f environment.yml --lockfile conda-lock.yml +version: 1 +metadata: + content_hash: + linux-64: afeb5c8cdf75d920f9debd406375534c990a233682b17f04f72e8a5172413307 + channels: + - url: conda-forge + used_env_vars: [] + platforms: + - linux-64 + sources: + - environment.yml +package: +- name: _libgcc_mutex + version: '0.1' + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 + hash: + md5: d7c89558ba9fa0495403155b64376d81 + sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726 + category: main + optional: false +- name: ca-certificates + version: 2023.7.22 + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2023.7.22-hbcca054_0.conda + hash: + md5: a73ecd2988327ad4c8f2c331482917f2 + sha256: 525b7b6b5135b952ec1808de84e5eca57c7c7ff144e29ef3e96ae4040ff432c1 + category: main + optional: false +- name: font-ttf-dejavu-sans-mono + version: '2.37' + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-dejavu-sans-mono-2.37-hab24e00_0.tar.bz2 + hash: + md5: 0c96522c6bdaed4b1566d11387caaf45 + sha256: 58d7f40d2940dd0a8aa28651239adbf5613254df0f75789919c4e6762054403b + category: main + optional: false +- name: font-ttf-inconsolata + version: '3.000' + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-inconsolata-3.000-h77eed37_0.tar.bz2 + hash: + md5: 34893075a5c9e55cdafac56607368fc6 + sha256: c52a29fdac682c20d252facc50f01e7c2e7ceac52aa9817aaf0bb83f7559ec5c + category: main + optional: false +- name: font-ttf-source-code-pro + version: '2.038' + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-source-code-pro-2.038-h77eed37_0.tar.bz2 + hash: + md5: 4d59c254e01d9cde7957100457e2d5fb + sha256: 00925c8c055a2275614b4d983e1df637245e19058d79fc7dd1a93b8d9fb4b139 + category: main + optional: false +- name: font-ttf-ubuntu + version: '0.83' + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/noarch/font-ttf-ubuntu-0.83-hab24e00_0.tar.bz2 + hash: + md5: 19410c3df09dfb12d1206132a1d357c5 + sha256: 470d5db54102bd51dbb0c5990324a2f4a0bc976faa493b22193338adb9882e2e + category: main + optional: false +- name: kernel-headers_linux-64 + version: 2.6.32 + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/noarch/kernel-headers_linux-64-2.6.32-he073ed8_16.conda + hash: + md5: 7ca122655873935e02c91279c5b03c8c + sha256: aaa8aa6dc776d734a6702032588ff3c496721da905366d91162e3654c082aef0 + category: main + optional: false +- name: ld_impl_linux-64 + version: '2.40' + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda + hash: + md5: 7aca3059a1729aa76c597603f10b0dd3 + sha256: f6cc89d887555912d6c61b295d398cff9ec982a3417d38025c45d5dd9b9e79cd + category: main + optional: false +- name: libgcc-devel_linux-64 + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-devel_linux-64-12.3.0-h8bca6fd_0.conda + hash: + md5: b9ae31bc2e565684ebaf82d4bd954d55 + sha256: 257495088b78d4344c7ea21145581ed6da1c5bf8320f49b659ce2ed2d6265f76 + category: main + optional: false +- name: libgfortran5 + version: 13.1.0 + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-13.1.0-h15d22d2_0.conda + hash: + md5: afb656a334c409dd9805508af1c89c7a + sha256: a06235f4c4b85b463d9b8a73c9e10c1b5b4105f8a0ea8ac1f2f5f64edac3dfe7 + category: main + optional: false +- name: libstdcxx-devel_linux-64 + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-devel_linux-64-12.3.0-h8bca6fd_0.conda + hash: + md5: 7c80158949230e6d837186b20b2fcf13 + sha256: b311dad92ffafd29668fca6330dc707f4d7f154a4fa4c3859832897416de39ec + category: main + optional: false +- name: libstdcxx-ng + version: 13.1.0 + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.1.0-hfd8a6a1_0.conda + hash: + md5: 067bcc23164642f4c226da631f2a2e1d + sha256: 6f9eb2d7a96687938c0001166a3b308460a8eb02b10e9d0dd9e251f0219ea05c + category: main + optional: false +- name: python_abi + version: '3.11' + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.11-3_cp311.conda + hash: + md5: c2e2630ddb68cf52eec74dc7dfab20b5 + sha256: 2966a87dcb0b11fad28f9fe8216bfa4071115776b47ffc7547492fed176e1a1f + category: main + optional: false +- name: tzdata + version: 2023c + manager: conda + platform: linux-64 + dependencies: {} + url: https://conda.anaconda.org/conda-forge/noarch/tzdata-2023c-h71feb2d_0.conda + hash: + md5: 939e3e74d8be4dac89ce83b20de2492a + sha256: 0449138224adfa125b220154408419ec37c06b0b49f63c5954724325903ecf55 + category: main + optional: false +- name: fonts-conda-forge + version: '1' + manager: conda + platform: linux-64 + dependencies: + font-ttf-dejavu-sans-mono: '' + font-ttf-inconsolata: '' + font-ttf-source-code-pro: '' + font-ttf-ubuntu: '' + url: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-forge-1-0.tar.bz2 + hash: + md5: f766549260d6815b0c52253f1fb1bb29 + sha256: 53f23a3319466053818540bcdf2091f253cbdbab1e0e9ae7b9e509dcaa2a5e38 + category: main + optional: false +- name: libgfortran-ng + version: 13.1.0 + manager: conda + platform: linux-64 + dependencies: + libgfortran5: 13.1.0 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-13.1.0-h69a702a_0.conda + hash: + md5: 506dc07710dd5b0ba63cbf134897fc10 + sha256: 429e1d8a3e70b632df5b876e3fc322a56f769756693daa07114c46fa5098684e + category: main + optional: false +- name: libgomp + version: 13.1.0 + manager: conda + platform: linux-64 + dependencies: + _libgcc_mutex: '0.1' + url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.1.0-he5830b7_0.conda + hash: + md5: 56ca14d57ac29a75d23a39eb3ee0ddeb + sha256: 5d441d80b57f857ad305a65169a6b915d4fd6735cdc9e9bded35d493c91ef16d + category: main + optional: false +- name: sysroot_linux-64 + version: '2.12' + manager: conda + platform: linux-64 + dependencies: + kernel-headers_linux-64: 2.6.32 + url: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.12-he073ed8_16.conda + hash: + md5: 071ea8dceff4d30ac511f4a2f8437cd1 + sha256: 4c024b2eee24c6da7d3e08723111ec02665c578844c5b3e9e6b38f89000bec41 + category: main + optional: false +- name: _openmp_mutex + version: '4.5' + manager: conda + platform: linux-64 + dependencies: + _libgcc_mutex: '0.1' + libgomp: '>=7.5.0' + url: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 + hash: + md5: 73aaf86a425cc6e73fcf236a5a46396d + sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22 + category: main + optional: false +- name: binutils_impl_linux-64 + version: '2.40' + manager: conda + platform: linux-64 + dependencies: + ld_impl_linux-64: '2.40' + sysroot_linux-64: '' + url: https://conda.anaconda.org/conda-forge/linux-64/binutils_impl_linux-64-2.40-hf600244_0.conda + hash: + md5: 33084421a8c0af6aef1b439707f7662a + sha256: a7e0ea2b71a5b03d82e5a58fb6b612ab1c44d72ce161f9aa441f7ba467cd4c8d + category: main + optional: false +- name: fonts-conda-ecosystem + version: '1' + manager: conda + platform: linux-64 + dependencies: + fonts-conda-forge: '' + url: https://conda.anaconda.org/conda-forge/noarch/fonts-conda-ecosystem-1-0.tar.bz2 + hash: + md5: fee5683a3f04bd15cbd8318b096a27ab + sha256: a997f2f1921bb9c9d76e6fa2f6b408b7fa549edd349a77639c9fe7a23ea93e61 + category: main + optional: false +- name: binutils + version: '2.40' + manager: conda + platform: linux-64 + dependencies: + binutils_impl_linux-64: '>=2.40,<2.41.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/binutils-2.40-hdd6e379_0.conda + hash: + md5: ccc940fddbc3fcd3d79cd4c654c4b5c4 + sha256: 35f3b042f295fd7387de11cf426ca8ee5257e5c98b88560c6c5ad4ef3c85d38c + category: main + optional: false +- name: binutils_linux-64 + version: '2.40' + manager: conda + platform: linux-64 + dependencies: + binutils_impl_linux-64: 2.40.* + sysroot_linux-64: '' + url: https://conda.anaconda.org/conda-forge/linux-64/binutils_linux-64-2.40-hbdbef99_1.conda + hash: + md5: 855757cf4cf920cc9b6130a32fdcaa81 + sha256: 43b9900975f4fcb9972a2c012600d74dea02944b4646e3dcf51b13cdc7a8f1f9 + category: main + optional: false +- name: libgcc-ng + version: 13.1.0 + manager: conda + platform: linux-64 + dependencies: + _libgcc_mutex: '0.1' + _openmp_mutex: '>=4.5' + url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.1.0-he5830b7_0.conda + hash: + md5: cd93f779ff018dd85c7544c015c9db3c + sha256: fba897a02f35b2b5e6edc43a746d1fa6970a77b422f258246316110af8966911 + category: main + optional: false +- name: alsa-lib + version: 1.2.8 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/alsa-lib-1.2.8-h166bdaf_0.tar.bz2 + hash: + md5: be733e69048951df1e4b4b7bb8c7666f + sha256: 2c0a618d0fa695e4e01a30e7ff31094be540c52e9085cbd724edb132c65cf9cd + category: main + optional: false +- name: attr + version: 2.5.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/attr-2.5.1-h166bdaf_1.tar.bz2 + hash: + md5: d9c69a24ad678ffce24c6543a0176b00 + sha256: 82c13b1772c21fc4a17441734de471d3aabf82b61db9b11f4a1bd04a9c4ac324 + category: main + optional: false +- name: bzip2 + version: 1.0.8 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h7f98852_4.tar.bz2 + hash: + md5: a1fd65c7ccbf10880423d82bca54eb54 + sha256: cb521319804640ff2ad6a9f118d972ed76d86bea44e5626c09a13d38f562e1fa + category: main + optional: false +- name: c-ares + version: 1.19.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.19.1-hd590300_0.conda + hash: + md5: e8c18d865be43e2fb3f7a145b6adf1f5 + sha256: c4276b1a0e8f18ab08018b1881666656742b325e0fcf2354f714e924d28683b6 + category: main + optional: false +- name: fftw + version: 3.3.10 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libgfortran-ng: '' + libgfortran5: '>=11.4.0' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/fftw-3.3.10-nompi_hc118613_108.conda + hash: + md5: 6fa90698000b05dfe8ce6515794fe71a + sha256: 1952dbb3c40931fc4608e053e32cbebbdcd8f3ea5b6a050156df6dd66ad64912 + category: main + optional: false +- name: gettext + version: 0.21.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/gettext-0.21.1-h27087fc_0.tar.bz2 + hash: + md5: 14947d8770185e5153fdd04d4673ed37 + sha256: 4fcfedc44e4c9a053f0416f9fc6ab6ed50644fca3a761126dbd00d09db1f546a + category: main + optional: false +- name: graphite2 + version: 1.3.13 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=7.5.0' + libstdcxx-ng: '>=7.5.0' + url: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h58526e2_1001.tar.bz2 + hash: + md5: 8c54672728e8ec6aa6db90cf2806d220 + sha256: 65da967f3101b737b08222de6a6a14e20e480e7d523a5d1e19ace7b960b5d6b1 + category: main + optional: false +- name: gstreamer-orc + version: 0.4.34 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-orc-0.4.34-hd590300_0.conda + hash: + md5: 7ea223fa114cc8134b8c4d398d3e5afe + sha256: 4552b512b72a55d78cd7c76132965fa5c21472a44a0370cc6ca7042280f542c8 + category: main + optional: false +- name: icu + version: '70.1' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=10.3.0' + libstdcxx-ng: '>=10.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/icu-70.1-h27087fc_0.tar.bz2 + hash: + md5: 87473a15119779e021c314249d4b4aed + sha256: 1d7950f3be4637ab915d886304e57731d39a41ab705ffc95c4681655c459374a + category: main + optional: false +- name: jpeg + version: 9e + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/jpeg-9e-h0b41bf4_3.conda + hash: + md5: c7a069243e1fbe9a556ed2ec030e6407 + sha256: 8f73194d09c9ea4a7e2b3562766b8d72125cc147b62c7cf83393e3a3bbfd581b + category: main + optional: false +- name: keyutils + version: 1.6.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=10.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 + hash: + md5: 30186d27e2c9fa62b45fb1476b7200e3 + sha256: 150c05a6e538610ca7c43beb3a40d65c90537497a4f6a5f4d15ec0451b6f5ebb + category: main + optional: false +- name: lame + version: '3.100' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/lame-3.100-h166bdaf_1003.tar.bz2 + hash: + md5: a8832b479f93521a9e7b5b743803be51 + sha256: aad2a703b9d7b038c0f745b853c6bb5f122988fe1a7a096e0e606d9cbec4eaab + category: main + optional: false +- name: lerc + version: 4.0.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 + hash: + md5: 76bbff344f0134279f225174e9064c8f + sha256: cb55f36dcd898203927133280ae1dc643368af041a48bcf7c026acb7c47b0c12 + category: main + optional: false +- name: libdb + version: 6.2.32 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + libstdcxx-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libdb-6.2.32-h9c3ff4c_0.tar.bz2 + hash: + md5: 3f3258d8f841fbac63b36b75bdac1afd + sha256: 21fac1012ff05b131d4b5d284003dbbe7b5c4c652aa9e401b46279ed5a784372 + category: main + optional: false +- name: libdeflate + version: '1.17' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.17-h0b41bf4_0.conda + hash: + md5: 5cc781fd91968b11a8a7fdbee0982676 + sha256: f9983a8ea03531f2c14bce76c870ca325c0fddf0c4e872bff1f78bc52624179c + category: main + optional: false +- name: libev + version: '4.33' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=7.5.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-h516909a_1.tar.bz2 + hash: + md5: 6f8720dff19e17ce5d48cfe7f3d2f0a3 + sha256: 8c9635aa0ea28922877dc96358f9547f6a55fc7e2eb75a556b05f1725496baf9 + category: main + optional: false +- name: libexpat + version: 2.5.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.5.0-hcb278e6_1.conda + hash: + md5: 6305a3dd2752c76335295da4e581f2fd + sha256: 74c98a563777ae2ad71f1f74d458a8ab043cee4a513467c159ccf159d0e461f3 + category: main + optional: false +- name: libffi + version: 3.4.2 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.4.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 + hash: + md5: d645c6d2ac96843a2bfaccd2d62b3ac3 + sha256: ab6e9856c21709b7b517e940ae7028ae0737546122f83c2aa5d692860c3b149e + category: main + optional: false +- name: libiconv + version: '1.17' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=10.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-h166bdaf_0.tar.bz2 + hash: + md5: b62b52da46c39ee2bc3c162ac7f1804d + sha256: 6a81ebac9f1aacdf2b4f945c87ad62b972f0f69c8e0981d68e111739e6720fd7 + category: main + optional: false +- name: libjpeg-turbo + version: 2.1.5.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-2.1.5.1-h0b41bf4_0.conda + hash: + md5: 1edd9e67bdb90d78cea97733ff6b54e6 + sha256: b19de7bda34eac4fa931be11fa8d7640cdf1441dfd51c91786586a4a4c64c92f + category: main + optional: false +- name: libnsl + version: 2.0.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.4.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.0-h7f98852_0.tar.bz2 + hash: + md5: 39b1328babf85c7c3a61636d9cd50206 + sha256: 32f4fb94d99946b0dabfbbfd442b25852baf909637f2eed1ffe3baea15d02aad + category: main + optional: false +- name: libogg + version: 1.3.4 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libogg-1.3.4-h7f98852_1.tar.bz2 + hash: + md5: 6e8cc2173440d77708196c5b93771680 + sha256: b88afeb30620b11bed54dac4295aa57252321446ba4e6babd7dce4b9ffde9b25 + category: main + optional: false +- name: libopus + version: 1.3.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libopus-1.3.1-h7f98852_1.tar.bz2 + hash: + md5: 15345e56d527b330e1cacbdf58676e8f + sha256: 0e1c2740ebd1c93226dc5387461bbcf8142c518f2092f3ea7551f77755decc8f + category: main + optional: false +- name: libsanitizer + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libsanitizer-12.3.0-h0f45ef3_0.conda + hash: + md5: bbc8fef17925480272a671b1d83431fa + sha256: 2fa38e53f7d58789283af351f014748a485ec8f4e7db3f150ed6274f50983663 + category: main + optional: false +- name: libtool + version: 2.4.7 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libtool-2.4.7-h27087fc_0.conda + hash: + md5: f204c8ba400ec475452737094fb81d52 + sha256: 345b3b580ef91557a82425ea3f432a70a8748c040deb14570b9f4dca4af3e3d1 + category: main + optional: false +- name: libunistring + version: 0.9.10 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libunistring-0.9.10-h7f98852_0.tar.bz2 + hash: + md5: 7245a044b4a1980ed83196176b78b73a + sha256: e88c45505921db29c08df3439ddb7f771bbff35f95e7d3103bf365d5d6ce2a6d + category: main + optional: false +- name: libuuid + version: 2.38.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda + hash: + md5: 40b61aab5c7ba9ff276c41cfffe6b80b + sha256: 787eb542f055a2b3de553614b25f09eefb0a0931b0c87dbcce6efdfd92f04f18 + category: main + optional: false +- name: libuv + version: 1.44.2 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libuv-1.44.2-hd590300_1.conda + hash: + md5: d5447f6f8c208232db63db85e053574d + sha256: 4910371113afddc55b9a70f468e0c921600ff76e2e5da4084e6039f685ab8151 + category: main + optional: false +- name: libwebp-base + version: 1.3.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libwebp-base-1.3.1-hd590300_0.conda + hash: + md5: 82bf6f63eb15ef719b556b63feec3a77 + sha256: 66658d5cdcf89169e284488d280b6ce693c98c0319d7eabebcedac0929140a73 + category: main + optional: false +- name: libzlib + version: 1.2.13 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda + hash: + md5: f36c115f1ee199da648e0597ec2047ad + sha256: 370c7c5893b737596fd6ca0d9190c9715d89d888b8c88537ae1ef168c25e82e4 + category: main + optional: false +- name: lz4-c + version: 1.9.4 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/lz4-c-1.9.4-hcb278e6_0.conda + hash: + md5: 318b08df404f9c9be5712aaa5a6f0bb0 + sha256: 1b4c105a887f9b2041219d57036f72c4739ab9e9fe5a1486f094e58c76b31f5f + category: main + optional: false +- name: mpg123 + version: 1.31.3 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/mpg123-1.31.3-hcb278e6_0.conda + hash: + md5: 141a126675b6d1a4eabb111a4a353898 + sha256: 7e4a64329595c0cbfc770585827b72a63d224606324dff5b399467486dc68344 + category: main + optional: false +- name: ncurses + version: '6.4' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-hcb278e6_0.conda + hash: + md5: 681105bccc2a3f7f1a837d47d39c9179 + sha256: ccf61e61d58a8a7b2d66822d5568e2dc9387883dd9b2da61e1d787ece4c4979a + category: main + optional: false +- name: nspr + version: '4.35' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/nspr-4.35-h27087fc_0.conda + hash: + md5: da0ec11a6454ae19bff5b02ed881a2b1 + sha256: 8fadeebb2b7369a4f3b2c039a980d419f65c7b18267ba0c62588f9f894396d0c + category: main + optional: false +- name: openssl + version: 3.1.2 + manager: conda + platform: linux-64 + dependencies: + ca-certificates: '' + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.1.2-hd590300_0.conda + hash: + md5: e5ac5227582d6c83ccf247288c0eb095 + sha256: b113fbac327c90cdc29c2fac0f2a2e5cc0d1918b2a5ffa7abd49b695b9b3c6e9 + category: main + optional: false +- name: pixman + version: 0.40.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=7.5.0' + url: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.40.0-h36c2ea0_0.tar.bz2 + hash: + md5: 660e72c82f2e75a6b3fe6a6e75c79f19 + sha256: 6a0630fff84b5a683af6185a6c67adc8bdfa2043047fcb251add0d352ef60e79 + category: main + optional: false +- name: pthread-stubs + version: '0.4' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=7.5.0' + url: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-h36c2ea0_1001.tar.bz2 + hash: + md5: 22dad4df6e8630e8dff2428f6f6a7036 + sha256: 67c84822f87b641d89df09758da498b2d4558d47b920fd1d3fe6d3a871e000ff + category: main + optional: false +- name: rhash + version: 1.4.3 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/rhash-1.4.3-hd590300_1.conda + hash: + md5: 899f432216154b3c60164667c1c598a0 + sha256: 737b7024a8ba17eb1c6740b7752b2064ede61905dd0b443415b145fb1f5b6739 + category: main + optional: false +- name: xkeyboard-config + version: '2.38' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/xkeyboard-config-2.38-h0b41bf4_0.conda + hash: + md5: 9ac34337e5101a87e5d91da05d84aa48 + sha256: 0518e65929deded6afc5f91f31febb15e8c93f7ee599a18b787f9fab3f79cfd6 + category: main + optional: false +- name: xorg-kbproto + version: 1.0.7 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-kbproto-1.0.7-h7f98852_1002.tar.bz2 + hash: + md5: 4b230e8381279d76131116660f5a241a + sha256: e90b0a6a5d41776f11add74aa030f789faf4efd3875c31964d6f9cfa63a10dd1 + category: main + optional: false +- name: xorg-libice + version: 1.1.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hd590300_0.conda + hash: + md5: b462a33c0be1421532f28bfe8f4a7514 + sha256: 5aa9b3682285bb2bf1a8adc064cb63aff76ef9178769740d855abb42b0d24236 + category: main + optional: false +- name: xorg-libxau + version: 1.0.11 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxau-1.0.11-hd590300_0.conda + hash: + md5: 2c80dc38fface310c9bd81b17037fee5 + sha256: 309751371d525ce50af7c87811b435c176915239fc9e132b99a25d5e1703f2d4 + category: main + optional: false +- name: xorg-libxdmcp + version: 1.1.3 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxdmcp-1.1.3-h7f98852_0.tar.bz2 + hash: + md5: be93aabceefa2fac576e971aef407908 + sha256: 4df7c5ee11b8686d3453e7f3f4aa20ceef441262b49860733066c52cfd0e4a77 + category: main + optional: false +- name: xorg-renderproto + version: 0.11.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-renderproto-0.11.1-h7f98852_1002.tar.bz2 + hash: + md5: 06feff3d2634e3097ce2fe681474b534 + sha256: 38942930f233d1898594dd9edf4b0c0786f3dbc12065a0c308634c37fd936034 + category: main + optional: false +- name: xorg-xextproto + version: 7.3.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-xextproto-7.3.0-h0b41bf4_1003.conda + hash: + md5: bce9f945da8ad2ae9b1d7165a64d0f87 + sha256: b8dda3b560e8a7830fe23be1c58cc41f407b2e20ae2f3b6901eb5842ba62b743 + category: main + optional: false +- name: xorg-xf86vidmodeproto + version: 2.3.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-xf86vidmodeproto-2.3.1-h7f98852_1002.tar.bz2 + hash: + md5: 3ceea9668625c18f19530de98b15d5b0 + sha256: 43398aeacad5b8753b7a1c12cb6bca36124e0c842330372635879c350c430791 + category: main + optional: false +- name: xorg-xproto + version: 7.0.31 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-xproto-7.0.31-h7f98852_1007.tar.bz2 + hash: + md5: b4a4381d54784606820704f7b5f05a15 + sha256: f197bb742a17c78234c24605ad1fe2d88b1d25f332b75d73e5ba8cf8fbc2a10d + category: main + optional: false +- name: xz + version: 5.2.6 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 + hash: + md5: 2161070d867d1b1204ea749c8eec4ef0 + sha256: 03a6d28ded42af8a347345f82f3eebdd6807a08526d47899a42d62d319609162 + category: main + optional: false +- name: expat + version: 2.5.0 + manager: conda + platform: linux-64 + dependencies: + libexpat: 2.5.0 + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/expat-2.5.0-hcb278e6_1.conda + hash: + md5: 8b9b5aca60558d02ddaa09d599e55920 + sha256: 36dfeb4375059b3bba75ce9b38c29c69fd257342a79e6cf20e9f25c1523f785f + category: main + optional: false +- name: gcc_impl_linux-64 + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + binutils_impl_linux-64: '>=2.39' + libgcc-devel_linux-64: 12.3.0 + libgcc-ng: '>=12.3.0' + libgomp: '>=12.3.0' + libsanitizer: 12.3.0 + libstdcxx-ng: '>=12.3.0' + sysroot_linux-64: '' + url: https://conda.anaconda.org/conda-forge/linux-64/gcc_impl_linux-64-12.3.0-he2b93b0_0.conda + hash: + md5: 1e41f51d89695fd3f810e2245517460b + sha256: ccbbb82de1ca95b02477e4340c5791e49424b379c6caa27e89bae3c40b7ad296 + category: main + optional: false +- name: jack + version: 1.9.22 + manager: conda + platform: linux-64 + dependencies: + alsa-lib: '>=1.2.8,<1.2.9.0a0' + libdb: '>=6.2.32,<6.3.0a0' + libgcc-ng: '>=12' + libopus: '>=1.3.1,<2.0a0' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/jack-1.9.22-h11f4161_0.conda + hash: + md5: 504fa9e712b99494a9cf4630e3ca7d78 + sha256: 9f173c6633f7ef049b05cd92a9fc028402972ddc44a56d5bb51d8879d73bbde7 + category: main + optional: false +- name: libcap + version: '2.67' + manager: conda + platform: linux-64 + dependencies: + attr: '>=2.5.1,<2.6.0a0' + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libcap-2.67-he9d0100_0.conda + hash: + md5: d05556c80caffff164d17bdea0105a1a + sha256: 4dcf2290b9b90ad2654fbfff52e9c1d49885ce71f0bb853520e2b9d54809605b + category: main + optional: false +- name: libedit + version: 3.1.20191231 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=7.5.0' + ncurses: '>=6.2,<7.0.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 + hash: + md5: 4d331e44109e3f0e19b4cb8f9b82f3e1 + sha256: a57d37c236d8f7c886e01656f4949d9dcca131d2a0728609c6f7fa338b65f1cf + category: main + optional: false +- name: libevent + version: 2.1.10 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.4.0' + openssl: '>=3.0.0,<4.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libevent-2.1.10-h28343ad_4.tar.bz2 + hash: + md5: 4a049fc560e00e43151dc51368915fdd + sha256: 31ac7124c92628cd1c6bea368e38d7f43f8ec68d88128ecdc177773e6d00c60a + category: main + optional: false +- name: libflac + version: 1.4.3 + manager: conda + platform: linux-64 + dependencies: + gettext: '>=0.21.1,<1.0a0' + libgcc-ng: '>=12' + libogg: '>=1.3.4,<1.4.0a0' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libflac-1.4.3-h59595ed_0.conda + hash: + md5: ee48bf17cc83a00f59ca1494d5646869 + sha256: 65908b75fa7003167b8a8f0001e11e58ed5b1ef5e98b96ab2ba66d7c1b822c7d + category: main + optional: false +- name: libgpg-error + version: '1.47' + manager: conda + platform: linux-64 + dependencies: + gettext: '>=0.21.1,<1.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libgpg-error-1.47-h71f35ed_0.conda + hash: + md5: c2097d0b46367996f09b4e8e4920384a + sha256: 0306b3c2d65863048983a50bd8b86f6f26e457ef55d1da745a5796af25093f5a + category: main + optional: false +- name: libidn2 + version: 2.3.4 + manager: conda + platform: linux-64 + dependencies: + gettext: '>=0.21.1,<1.0a0' + libgcc-ng: '>=12' + libunistring: '>=0,<1.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libidn2-2.3.4-h166bdaf_0.tar.bz2 + hash: + md5: 7440fbafd870b8bab68f83a064875d34 + sha256: 888848ae85be9df86f56407639c63bdce8e7651f0b2517be9bc0ac6e38b2d21d + category: main + optional: false +- name: libnghttp2 + version: 1.52.0 + manager: conda + platform: linux-64 + dependencies: + c-ares: '>=1.18.1,<2.0a0' + libev: '>=4.33,<4.34.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + openssl: '>=3.0.8,<4.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.52.0-h61bc06f_0.conda + hash: + md5: 613955a50485812985c059e7b269f42e + sha256: ecd6b08c2b5abe7d1586428c4dd257dcfa00ee53700d79cdc8bca098fdfbd79a + category: main + optional: false +- name: libpng + version: 1.6.39 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.39-h753d276_0.conda + hash: + md5: e1c890aebdebbfbf87e2c917187b4416 + sha256: a32b36d34e4f2490b99bddbc77d01a674d304f667f0e62c89e02c961addef462 + category: main + optional: false +- name: libsqlite + version: 3.42.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.42.0-h2797004_0.conda + hash: + md5: fdaae20a1cf7cd62130a0973190a31b7 + sha256: 72e958870f49174ebc0ddcd4129e9a9f48de815f20aa3b553f136b514f29bb3a + category: main + optional: false +- name: libssh2 + version: 1.11.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + openssl: '>=3.1.1,<4.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda + hash: + md5: 1f5a58e686b13bcfde88b93f547d23fe + sha256: 50e47fd9c4f7bf841a11647ae7486f65220cfc988ec422a4475fe8d5a823824d + category: main + optional: false +- name: libvorbis + version: 1.3.7 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + libogg: '>=1.3.4,<1.4.0a0' + libstdcxx-ng: '>=9.3.0' + url: https://conda.anaconda.org/conda-forge/linux-64/libvorbis-1.3.7-h9c3ff4c_0.tar.bz2 + hash: + md5: 309dec04b70a3cc0f1e84a4013683bc0 + sha256: 53080d72388a57b3c31ad5805c93a7328e46ff22fab7c44ad2a86d712740af33 + category: main + optional: false +- name: libxcb + version: '1.13' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.4.0' + pthread-stubs: '' + xorg-libxau: '' + xorg-libxdmcp: '' + url: https://conda.anaconda.org/conda-forge/linux-64/libxcb-1.13-h7f98852_1004.tar.bz2 + hash: + md5: b3653fdc58d03face9724f602218a904 + sha256: 8d5d24cbeda9282dd707edd3156e5fde2e3f3fe86c802fa7ce08c8f1e803bfd9 + category: main + optional: false +- name: libxml2 + version: 2.10.3 + manager: conda + platform: linux-64 + dependencies: + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libiconv: '>=1.17,<2.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + xz: '>=5.2.6,<6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libxml2-2.10.3-hca2bb57_4.conda + hash: + md5: bb808b654bdc3c783deaf107a2ffb503 + sha256: d4170f1fe356768758b13a51db123f990bff81b0eae0d5a0ba11c7ca6b9536f4 + category: main + optional: false +- name: mysql-common + version: 8.0.33 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + openssl: '>=3.1.1,<4.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/mysql-common-8.0.33-hf1915f5_2.conda + hash: + md5: a55ff0ed12efd86cf3a3dfb750adb950 + sha256: edc73f41509b41b2c907c82443a5c44fd44219012cdbf15042d93d16affe91ab + category: main + optional: false +- name: pcre2 + version: '10.40' + manager: conda + platform: linux-64 + dependencies: + bzip2: '>=1.0.8,<2.0a0' + libgcc-ng: '>=12' + libzlib: '>=1.2.12,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.40-hc3806b6_0.tar.bz2 + hash: + md5: 69e2c796349cd9b273890bee0febfe1b + sha256: 7a29ec847556eed4faa1646010baae371ced69059a4ade43851367a076d6108a + category: main + optional: false +- name: readline + version: '8.2' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + ncurses: '>=6.3,<7.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda + hash: + md5: 47d31b792659ce70f470b5c82fdfb7a4 + sha256: 5435cf39d039387fbdc977b0a762357ea909a7694d9528ab40f005e9208744d7 + category: main + optional: false +- name: tk + version: 8.6.12 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.4.0' + libzlib: '>=1.2.11,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.12-h27826a3_0.tar.bz2 + hash: + md5: 5b8c42eb62e9fc961af70bdd6a26e168 + sha256: 032fd769aad9d4cad40ba261ab222675acb7ec951a8832455fce18ef33fa8df0 + category: main + optional: false +- name: xorg-libsm + version: 1.2.4 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libuuid: '>=2.38.1,<3.0a0' + xorg-libice: '>=1.1.1,<2.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-h7391055_0.conda + hash: + md5: 93ee23f12bc2e684548181256edd2cf6 + sha256: 089ad5f0453c604e18985480218a84b27009e9e6de9a0fa5f4a20b8778ede1f1 + category: main + optional: false +- name: zlib + version: 1.2.13 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libzlib: 1.2.13 + url: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.2.13-hd590300_5.conda + hash: + md5: 68c34ec6149623be41a1933ab996a209 + sha256: 9887a04d7e7cb14bd2b52fa01858f05a6d7f002c890f618d9fcd864adbfecb1b + category: main + optional: false +- name: zstd + version: 1.5.2 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.2-hfc55251_7.conda + hash: + md5: 32ae18eb2a687912fc9e92a501c0a11b + sha256: a7f7e765dfb7af5265a38080e46f18cb07cfeecf81fe28fad23c4538e7d521c3 + category: main + optional: false +- name: boost-cpp + version: 1.81.0 + manager: conda + platform: linux-64 + dependencies: + bzip2: '>=1.0.8,<2.0a0' + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + xz: '>=5.2.6,<6.0a0' + zstd: '>=1.5.2,<1.6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/boost-cpp-1.81.0-he95ae9e_0.conda + hash: + md5: bbd81de5abcf7434074f37cb5fe0eaa3 + sha256: 2cf655a3544f84dd5156fbce861f02011c2cae761f8cbd428c589b8c74243958 + category: main + optional: false +- name: freetype + version: 2.12.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libpng: '>=1.6.39,<1.7.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/freetype-2.12.1-hca18f0e_1.conda + hash: + md5: e1232042de76d24539a436d37597eb06 + sha256: 1eb913727b54e9aa63c6d9a1177db4e2894cee97c5f26910a2b61899d5ac904f + category: main + optional: false +- name: gcc + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + gcc_impl_linux-64: 12.3.0.* + url: https://conda.anaconda.org/conda-forge/linux-64/gcc-12.3.0-h8d2909c_1.conda + hash: + md5: cb7c7892032ecf45fcad76d67b6a3e9b + sha256: 19d68909b1016ce07f6d3056e32d23dbade083111ac2110ab1782c1309164234 + category: main + optional: false +- name: gcc_linux-64 + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + binutils_linux-64: '2.40' + gcc_impl_linux-64: 12.3.0.* + sysroot_linux-64: '' + url: https://conda.anaconda.org/conda-forge/linux-64/gcc_linux-64-12.3.0-h76fc315_1.conda + hash: + md5: 70b65b994853c64c631b6addfbaea487 + sha256: 5317ce513cb6f40f26fd48982ce96929a002c2a0e65045d2155bbb5ba8ca3df7 + category: main + optional: false +- name: gfortran_impl_linux-64 + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + gcc_impl_linux-64: '>=12.3.0' + libgcc-ng: '>=4.9' + libgfortran5: '>=12.3.0' + libstdcxx-ng: '>=4.9' + sysroot_linux-64: '' + url: https://conda.anaconda.org/conda-forge/linux-64/gfortran_impl_linux-64-12.3.0-hfcedea8_0.conda + hash: + md5: 4cc7e96285bfbca093531d116724ec6d + sha256: 42e58fc3d5ed6500f414c58e47d6758019a654e54a5bba702776281296875b29 + category: main + optional: false +- name: gxx_impl_linux-64 + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + gcc_impl_linux-64: 12.3.0 + libstdcxx-devel_linux-64: 12.3.0 + sysroot_linux-64: '' + url: https://conda.anaconda.org/conda-forge/linux-64/gxx_impl_linux-64-12.3.0-he2b93b0_0.conda + hash: + md5: 3f00aa0a8f8d3924890fecae937cc6bd + sha256: 87c7ec85f76aa065c2c991acd7bbf86d25b4724bc283f793400c14f5d5e39aa0 + category: main + optional: false +- name: krb5 + version: 1.20.1 + manager: conda + platform: linux-64 + dependencies: + keyutils: '>=1.6.1,<2.0a0' + libedit: '>=3.1.20191231,<4.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + openssl: '>=3.0.7,<4.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.20.1-h81ceb04_0.conda + hash: + md5: 89a41adce7106749573d883b2f657d78 + sha256: 51a346807ce981e1450eb04c3566415b05eed705bc9e6c98c198ec62367b7c62 + category: main + optional: false +- name: libgcrypt + version: 1.10.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=10.3.0' + libgpg-error: '>=1.44,<2.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libgcrypt-1.10.1-h166bdaf_0.tar.bz2 + hash: + md5: f967fc95089cd247ceed56eda31de3a9 + sha256: 8fd7e6db1021cd9298d9896233454de204116840eb66a06fcb712e1015ff132a + category: main + optional: false +- name: libglib + version: 2.76.4 + manager: conda + platform: linux-64 + dependencies: + gettext: '>=0.21.1,<1.0a0' + libffi: '>=3.4,<4.0a0' + libgcc-ng: '>=12' + libiconv: '>=1.17,<2.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + pcre2: '>=10.40,<10.41.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.76.4-hebfc3b9_0.conda + hash: + md5: c6f951789c888f7bbd2dd6858eab69de + sha256: e909b5e648d1ace172aac2ddf9d755f72429b134155a9b07156acb58a77ceee1 + category: main + optional: false +- name: libllvm15 + version: 15.0.7 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libxml2: '>=2.10.3,<2.11.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libllvm15-15.0.7-hadd5161_1.conda + hash: + md5: 17d91085ccf5934ce652cb448d0cb65a + sha256: f649fac60cb122bf0d85c4955725d94c353fdbd768bcd44f0444979b363cc9ab + category: main + optional: false +- name: libllvm16 + version: 16.0.6 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libxml2: '>=2.11.4,<2.12.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + zstd: '>=1.5.2,<1.6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libllvm16-16.0.6-h5cf9203_2.conda + hash: + md5: dbfb446bd165f61f9c82aed9188e297a + sha256: 38b6b4e5aa4784feeb4c7c1887f2facfc18a5996720d35c1b8c3a6e3eeff7687 + category: main + optional: false +- name: libsndfile + version: 1.2.0 + manager: conda + platform: linux-64 + dependencies: + lame: '>=3.100,<3.101.0a0' + libflac: '>=1.4.2,<1.5.0a0' + libgcc-ng: '>=12' + libogg: '>=1.3.4,<1.4.0a0' + libopus: '>=1.3.1,<2.0a0' + libstdcxx-ng: '>=12' + libvorbis: '>=1.3.7,<1.4.0a0' + mpg123: '>=1.31.1,<1.32.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libsndfile-1.2.0-hb75c966_0.conda + hash: + md5: c648d19cd9c8625898d5d370414de7c7 + sha256: 52ab2460d626d1cc95092daa4f7191f84d4950aeb9925484135f96af6b6391d8 + category: main + optional: false +- name: libtiff + version: 4.5.0 + manager: conda + platform: linux-64 + dependencies: + jpeg: '>=9e,<10a' + lerc: '>=4.0.0,<5.0a0' + libdeflate: '>=1.17,<1.18.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libwebp-base: '>=1.2.4,<2.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + xz: '>=5.2.6,<6.0a0' + zstd: '>=1.5.2,<1.6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.5.0-h6adf6a1_2.conda + hash: + md5: 2e648a34072eb39d7c4fc2a9981c5f0c + sha256: e3e18d91fb282b61288d4fd2574dfa31f7ae90ef2737f96722fb6ad3257862ee + category: main + optional: false +- name: libudev1 + version: '253' + manager: conda + platform: linux-64 + dependencies: + __glibc: '>=2.17,<3.0.a0' + libcap: '>=2.67,<2.68.0a0' + libgcc-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/libudev1-253-h0b41bf4_1.conda + hash: + md5: bb38b19a41bb94e8a19dbfb062d499c7 + sha256: 1419fc6dc85f9aad95df733af4e442feb27da90ed74b9b67dbdc090151bdec24 + category: main + optional: false +- name: libxkbcommon + version: 1.5.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libxcb: '>=1.13,<1.14.0a0' + libxml2: '>=2.10.3,<2.11.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libxkbcommon-1.5.0-h79f4944_0.conda + hash: + md5: 3f67368c9b0e77a693acad193310baf1 + sha256: 17ec36581a3eaf3d19f6aa8bbebd3937d914c6d10b70da5fcbd24597b19209fd + category: main + optional: false +- name: mysql-libs + version: 8.0.33 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + mysql-common: 8.0.33 + openssl: '>=3.1.1,<4.0a0' + zstd: '>=1.5.2,<1.6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/mysql-libs-8.0.33-hca2cd23_2.conda + hash: + md5: b2f09078f50b9e859aca3f0dc1cc8b7e + sha256: f4d396571cbaee6074063d4f46fb6f37b70caed68376cd5af14b9c2f2a90926b + category: main + optional: false +- name: nss + version: '3.89' + manager: conda + platform: linux-64 + dependencies: + __glibc: '>=2.17,<3.0.a0' + libgcc-ng: '>=12' + libsqlite: '>=3.40.0,<4.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + nspr: '>=4.35,<5.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/nss-3.89-he45b914_0.conda + hash: + md5: 2745719a58eeaab6657256a3f142f099 + sha256: 6d512e4a7ffae4fed9feac2cb2037398c78ade47e5358fc79ac3e58494de0cad + category: main + optional: false +- name: python + version: 3.11.4 + manager: conda + platform: linux-64 + dependencies: + bzip2: '>=1.0.8,<2.0a0' + ld_impl_linux-64: '>=2.36.1' + libexpat: '>=2.5.0,<3.0a0' + libffi: '>=3.4,<4.0a0' + libgcc-ng: '>=12' + libnsl: '>=2.0.0,<2.1.0a0' + libsqlite: '>=3.42.0,<4.0a0' + libuuid: '>=2.38.1,<3.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + ncurses: '>=6.4,<7.0a0' + openssl: '>=3.1.1,<4.0a0' + readline: '>=8.2,<9.0a0' + tk: '>=8.6.12,<8.7.0a0' + tzdata: '' + xz: '>=5.2.6,<6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.4-hab00c5b_0_cpython.conda + hash: + md5: 1c628861a2a126b9fc9363ca1b7d014e + sha256: 04422f10d5bcb251fd254d6a9b0659dcde55e900d48cca159cb1fef637b0050c + category: main + optional: false +- name: wget + version: 1.20.3 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.4.0' + libidn2: '>=2,<3.0a0' + libunistring: '>=0,<1.0a0' + openssl: '>=3.0.0,<4.0a0' + zlib: '>=1.2.11,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/wget-1.20.3-ha35d2d1_1.tar.bz2 + hash: + md5: c990e108f39e1b43adf61e984360c9a1 + sha256: a68061ccc7159630406053bb42a6ece01e8819bc2df7eb112172ba57e54b85e9 + category: main + optional: false +- name: xcb-util + version: 0.4.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libxcb: '>=1.13,<1.14.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-0.4.0-h166bdaf_0.tar.bz2 + hash: + md5: 384e7fcb3cd162ba3e4aed4b687df566 + sha256: 292dee40f8390aea0e6a0abbf2f255f179c777326831ed9e1ad7db53665c8562 + category: main + optional: false +- name: xcb-util-keysyms + version: 0.4.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libxcb: '>=1.13,<1.14.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-keysyms-0.4.0-h166bdaf_0.tar.bz2 + hash: + md5: 637054603bb7594302e3bf83f0a99879 + sha256: 6a2c0f38b360a2fda57b2349d2cbeeb7583576a4914a3e4ce17977601ac87613 + category: main + optional: false +- name: xcb-util-renderutil + version: 0.3.9 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libxcb: '>=1.13,<1.14.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-renderutil-0.3.9-h166bdaf_0.tar.bz2 + hash: + md5: 732e22f1741bccea861f5668cf7342a7 + sha256: 19d27b7af8fb8047e044de2b87244337343c51fe7caa0fbaa9c53c2215787188 + category: main + optional: false +- name: xcb-util-wm + version: 0.4.1 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libxcb: '>=1.13,<1.14.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-wm-0.4.1-h166bdaf_0.tar.bz2 + hash: + md5: 0a8e20a8aef954390b9481a527421a8c + sha256: a76af35297f233982b58de1f55f1900d8a8ae44018a55d2a94f3084ab97d6c80 + category: main + optional: false +- name: xorg-libx11 + version: 1.8.4 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libxcb: '>=1.13,<1.14.0a0' + xorg-kbproto: '' + xorg-xextproto: '>=7.3.0,<8.0a0' + xorg-xproto: '' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.4-h0b41bf4_0.conda + hash: + md5: ea8fbfeb976ac49cbeb594e985393514 + sha256: 3c6862a01a39cdea3870b132706ad7256824299947a3a94ae361d863d402d704 + category: main + optional: false +- name: c-compiler + version: 1.6.0 + manager: conda + platform: linux-64 + dependencies: + binutils: '' + gcc: '' + gcc_linux-64: 12.* + url: https://conda.anaconda.org/conda-forge/linux-64/c-compiler-1.6.0-hd590300_0.conda + hash: + md5: ea6c792f792bdd7ae6e7e2dee32f0a48 + sha256: d741ff93d5f71a83a9be0f592682f31ca2d468c37177f18a8d1a2469bb821c05 + category: main + optional: false +- name: dbus + version: 1.13.6 + manager: conda + platform: linux-64 + dependencies: + expat: '>=2.4.2,<3.0a0' + libgcc-ng: '>=9.4.0' + libglib: '>=2.70.2,<3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/dbus-1.13.6-h5008d03_3.tar.bz2 + hash: + md5: ecfff944ba3960ecb334b9a2663d708d + sha256: 8f5f995699a2d9dbdd62c61385bfeeb57c82a681a7c8c5313c395aa0ccab68a5 + category: main + optional: false +- name: fontconfig + version: 2.14.2 + manager: conda + platform: linux-64 + dependencies: + expat: '>=2.5.0,<3.0a0' + freetype: '>=2.12.1,<3.0a0' + libgcc-ng: '>=12' + libuuid: '>=2.32.1,<3.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/fontconfig-2.14.2-h14ed4e7_0.conda + hash: + md5: 0f69b688f52ff6da70bccb7ff7001d1d + sha256: 155d534c9037347ea7439a2c6da7c24ffec8e5dd278889b4c57274a1d91e0a83 + category: main + optional: false +- name: gfortran + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + gcc: 12.3.0.* + gcc_impl_linux-64: 12.3.0.* + gfortran_impl_linux-64: 12.3.0.* + url: https://conda.anaconda.org/conda-forge/linux-64/gfortran-12.3.0-h499e0f7_1.conda + hash: + md5: d93122c45011981d840864197e7d92a4 + sha256: 21744b466dd7b1ac0b81f95ab8df2e0e096994d5c14e31e6a920cc2c14ceea75 + category: main + optional: false +- name: gfortran_linux-64 + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + binutils_linux-64: '2.40' + gcc_linux-64: 12.3.0 + gfortran_impl_linux-64: 12.3.0.* + sysroot_linux-64: '' + url: https://conda.anaconda.org/conda-forge/linux-64/gfortran_linux-64-12.3.0-h7fe76b4_1.conda + hash: + md5: 284a064d6fa813f1e4d16570e02e7ead + sha256: bb4eefa52b3b1e880e9c8351be465a2ce61cd941ec26f5dce177c1b9d9521389 + category: main + optional: false +- name: glib-tools + version: 2.76.4 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libglib: 2.76.4 + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.76.4-hfc55251_0.conda + hash: + md5: 76ac435b8668f636a39fcb155c3543fd + sha256: 6940a5d60d1fd8a14e8597e1e65e1a6e3a811368f279d4a2ab66ed73a2c26b31 + category: main + optional: false +- name: gxx + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + gcc: 12.3.0.* + gxx_impl_linux-64: 12.3.0.* + url: https://conda.anaconda.org/conda-forge/linux-64/gxx-12.3.0-h8d2909c_1.conda + hash: + md5: 52061516ce5d0aebb4282f72ef2347e5 + sha256: 99157a7719683e8a18d31f73a04b7b8e3121181840c9c8066b5c0438d7f49e4f + category: main + optional: false +- name: gxx_linux-64 + version: 12.3.0 + manager: conda + platform: linux-64 + dependencies: + binutils_linux-64: '2.40' + gcc_linux-64: 12.3.0 + gxx_impl_linux-64: 12.3.0.* + sysroot_linux-64: '' + url: https://conda.anaconda.org/conda-forge/linux-64/gxx_linux-64-12.3.0-h8a814eb_1.conda + hash: + md5: 6445e3f748b36c1b361f0def984d1763 + sha256: 9d14b157990b77dc5964073e168d6daed07ddfbef99fe813df4db2aeb6162cba + category: main + optional: false +- name: libclang13 + version: 15.0.7 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libllvm15: '>=15.0.7,<15.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libclang13-15.0.7-default_h9986a30_3.conda + hash: + md5: 1720df000b48e31842500323cb7be18c + sha256: df1221a9a05b9bb3bd9b43c08a7e2fe57a0e15a0010ef26065f7ed7666083f45 + category: main + optional: false +- name: libcups + version: 2.3.3 + manager: conda + platform: linux-64 + dependencies: + krb5: '>=1.20.1,<1.21.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libcups-2.3.3-h36d4200_3.conda + hash: + md5: c9f4416a34bc91e0eb029f912c68f81f + sha256: 0ccd610207807f53328f137b2adc99c413f8e1dcd1302f0325412796a94eaaf7 + category: main + optional: false +- name: libcurl + version: 8.1.2 + manager: conda + platform: linux-64 + dependencies: + krb5: '>=1.20.1,<1.21.0a0' + libgcc-ng: '>=12' + libnghttp2: '>=1.52.0,<2.0a0' + libssh2: '>=1.10.0,<2.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + openssl: '>=3.1.0,<4.0a0' + zstd: '>=1.5.2,<1.6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.1.2-h409715c_0.conda + hash: + md5: 50c873c9660ed116707ae15b663928d8 + sha256: d572c31ff48d2db6ca5bab476bf325811cfc82577480b3791487c3fe7bff2ffa + category: main + optional: false +- name: libpq + version: '15.3' + manager: conda + platform: linux-64 + dependencies: + krb5: '>=1.20.1,<1.21.0a0' + libgcc-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + openssl: '>=3.1.0,<4.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libpq-15.3-hbcd7760_1.conda + hash: + md5: 8afb2a97d256ffde95b91a6283bc598c + sha256: 96031c853d1a8b32c50c04b791aa199508ab1f0fa879ab7fcce175ee24620f78 + category: main + optional: false +- name: libsystemd0 + version: '253' + manager: conda + platform: linux-64 + dependencies: + __glibc: '>=2.17,<3.0.a0' + libcap: '>=2.67,<2.68.0a0' + libgcc-ng: '>=12' + libgcrypt: '>=1.10.1,<2.0a0' + lz4-c: '>=1.9.3,<1.10.0a0' + xz: '>=5.2.6,<6.0a0' + zstd: '>=1.5.2,<1.6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libsystemd0-253-h8c4010b_1.conda + hash: + md5: 9176b1e2cb8beca37a7510b0e801e38f + sha256: 13f5db46b7ded028f5b53fd5373e27a47789b9a655b52a92c4b324099602f29a + category: main + optional: false +- name: openjpeg + version: 2.5.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libpng: '>=1.6.39,<1.7.0a0' + libstdcxx-ng: '>=12' + libtiff: '>=4.5.0,<4.6.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.0-hfec8fc6_2.conda + hash: + md5: 5ce6a42505c6e9e6151c54c3ec8d68ea + sha256: 3cbfb1fe9bb492dcb672f98f0ddc7b4e029f51f77101d9c301caa3acaea8cba2 + category: main + optional: false +- name: packaging + version: '23.1' + manager: conda + platform: linux-64 + dependencies: + python: '>=3.7' + url: https://conda.anaconda.org/conda-forge/noarch/packaging-23.1-pyhd8ed1ab_0.conda + hash: + md5: 91cda59e66e1e4afe9476f8ef98f5c30 + sha256: ded536a96a00d45a693dbc2971bb688248324dadd129eddda2100e177583d768 + category: main + optional: false +- name: ply + version: '3.11' + manager: conda + platform: linux-64 + dependencies: + python: '' + url: https://conda.anaconda.org/conda-forge/noarch/ply-3.11-py_1.tar.bz2 + hash: + md5: 7205635cd71531943440fbfe3b6b5727 + sha256: 2cd6fae8f9cbc806b7f828f006ae4a83c23fac917cacfd73c37ce322d4324e53 + category: main + optional: false +- name: setuptools + version: 68.0.0 + manager: conda + platform: linux-64 + dependencies: + python: '>=3.7' + url: https://conda.anaconda.org/conda-forge/noarch/setuptools-68.0.0-pyhd8ed1ab_0.conda + hash: + md5: 5a7739d0f57ee64133c9d32e6507c46d + sha256: 083a0913f5b56644051f31ac40b4eeea762a88c00aa12437817191b85a753cec + category: main + optional: false +- name: toml + version: 0.10.2 + manager: conda + platform: linux-64 + dependencies: + python: '>=2.7' + url: https://conda.anaconda.org/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 + hash: + md5: f832c45a477c78bebd107098db465095 + sha256: f0f3d697349d6580e4c2f35ba9ce05c65dc34f9f049e85e45da03800b46139c1 + category: main + optional: false +- name: tomli + version: 2.0.1 + manager: conda + platform: linux-64 + dependencies: + python: '>=3.7' + url: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 + hash: + md5: 5844808ffab9ebdb694585b50ba02a96 + sha256: 4cd48aba7cd026d17e86886af48d0d2ebc67ed36f87f6534f4b67138f5a5a58f + category: main + optional: false +- name: wheel + version: 0.41.1 + manager: conda + platform: linux-64 + dependencies: + python: '>=3.7' + url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.41.1-pyhd8ed1ab_0.conda + hash: + md5: 8f467ba2db2b5470d297953d9c1f9c7d + sha256: a27e2c2709245386ebffae865650b5d3f383530b809480c3083f7ae258759303 + category: main + optional: false +- name: xcb-util-image + version: 0.4.0 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libxcb: '>=1.13,<1.14.0a0' + xcb-util: '>=0.4.0,<0.5.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/xcb-util-image-0.4.0-h166bdaf_0.tar.bz2 + hash: + md5: c9b568bd804cb2903c6be6f5f68182e4 + sha256: 6db358d4afa0eb1225e24871f6c64c1b6c433f203babdd43508b0d61252467d1 + category: main + optional: false +- name: xorg-libxext + version: 1.3.4 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + xorg-libx11: '>=1.7.2,<2.0a0' + xorg-xextproto: '' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxext-1.3.4-h0b41bf4_2.conda + hash: + md5: 82b6df12252e6f32402b96dacc656fec + sha256: 73e5cfbdff41ef8a844441f884412aa5a585a0f0632ec901da035a03e1fe1249 + category: main + optional: false +- name: xorg-libxrender + version: 0.9.10 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=9.3.0' + xorg-libx11: '>=1.7.0,<2.0a0' + xorg-renderproto: '' + url: https://conda.anaconda.org/conda-forge/linux-64/xorg-libxrender-0.9.10-h7f98852_1003.tar.bz2 + hash: + md5: f59c1242cc1dd93e72c2ee2b360979eb + sha256: 7d907ed9e2ec5af5d7498fb3ab744accc298914ae31497ab6dcc6ef8bd134d00 + category: main + optional: false +- name: cairo + version: 1.16.0 + manager: conda + platform: linux-64 + dependencies: + fontconfig: '>=2.13.96,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libglib: '>=2.72.1,<3.0a0' + libpng: '>=1.6.38,<1.7.0a0' + libxcb: '>=1.13,<1.14.0a0' + libzlib: '>=1.2.12,<1.3.0a0' + pixman: '>=0.40.0,<1.0a0' + xorg-libice: '' + xorg-libsm: '' + xorg-libx11: '' + xorg-libxext: '' + xorg-libxrender: '' + zlib: '>=1.2.12,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.16.0-ha61ee94_1014.tar.bz2 + hash: + md5: d1a88f3ed5b52e1024b80d4bcd26a7a0 + sha256: f062cf56e6e50d3ad4b425ebb3765ca9138c6ebc52e6a42d1377de8bc8d954f6 + category: main + optional: false +- name: cmake + version: 3.26.4 + manager: conda + platform: linux-64 + dependencies: + bzip2: '>=1.0.8,<2.0a0' + expat: '' + libcurl: '>=8.1.0,<9.0a0' + libexpat: '>=2.5.0,<3.0a0' + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + libuv: '' + libzlib: '>=1.2.13,<1.3.0a0' + ncurses: '>=6.3,<7.0a0' + rhash: '' + xz: '>=5.2.6,<6.0a0' + zlib: '' + zstd: '>=1.5.2,<1.6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/cmake-3.26.4-hcfe8598_0.conda + hash: + md5: 1714cf0f0facaeb609a0846e4270aff2 + sha256: 37533b572a676017704c989c392998c344e889010786d6555dccdfc524a8e238 + category: main + optional: false +- name: cxx-compiler + version: 1.6.0 + manager: conda + platform: linux-64 + dependencies: + c-compiler: 1.6.0 + gxx: '' + gxx_linux-64: 12.* + url: https://conda.anaconda.org/conda-forge/linux-64/cxx-compiler-1.6.0-h00ab1b0_0.conda + hash: + md5: 364c6ae36c4e36fcbd4d273cf4db78af + sha256: 472b6b7f967df1db634c67d71c6b31cd186d18b5d0548196c2e426833ff17d99 + category: main + optional: false +- name: fortran-compiler + version: 1.6.0 + manager: conda + platform: linux-64 + dependencies: + binutils: '' + c-compiler: 1.6.0 + gfortran: '' + gfortran_linux-64: 12.* + url: https://conda.anaconda.org/conda-forge/linux-64/fortran-compiler-1.6.0-heb67821_0.conda + hash: + md5: b65c49dda97ae497abcbdf3a8ba0018f + sha256: 6b7be32c77fc70740c9f6ff7fd3a99af2d333255072f1044757fbf0641769bd5 + category: main + optional: false +- name: glib + version: 2.76.4 + manager: conda + platform: linux-64 + dependencies: + gettext: '>=0.21.1,<1.0a0' + glib-tools: 2.76.4 + libgcc-ng: '>=12' + libglib: 2.76.4 + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + python: '*' + url: https://conda.anaconda.org/conda-forge/linux-64/glib-2.76.4-hfc55251_0.conda + hash: + md5: dbcec5fd9c6c8be24b23575048755a59 + sha256: 85de9ec71a143e9b86e381e865341f2d706387f3d3facaf935d4598b6dfa7229 + category: main + optional: false +- name: libclang + version: 15.0.7 + manager: conda + platform: linux-64 + dependencies: + libclang13: 15.0.7 + libgcc-ng: '>=12' + libllvm15: '>=15.0.7,<15.1.0a0' + libstdcxx-ng: '>=12' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/libclang-15.0.7-default_h7634d5b_3.conda + hash: + md5: 0922208521c0463e690bbaebba7eb551 + sha256: c2b0c8dd675e30d86bad410679f258820bc36723fbadffc13c2f60249be91815 + category: main + optional: false +- name: pulseaudio-client + version: '16.1' + manager: conda + platform: linux-64 + dependencies: + dbus: '>=1.13.6,<2.0a0' + libgcc-ng: '>=12' + libglib: '>=2.74.1,<3.0a0' + libsndfile: '>=1.2.0,<1.3.0a0' + libsystemd0: '>=253' + url: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-client-16.1-h5195f5e_3.conda + hash: + md5: caeb3302ef1dc8b342b20c710a86f8a9 + sha256: da289229ca472fa17f5c194c86362354f6dc66311502bb44959a93e7bb88e320 + category: main + optional: false +- name: sip + version: 6.7.11 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + packaging: '' + ply: '' + python: '>=3.11,<3.12.0a0' + python_abi: 3.11.* + tomli: '' + url: https://conda.anaconda.org/conda-forge/linux-64/sip-6.7.11-py311hb755f60_0.conda + hash: + md5: 17d25ab64a32872b349579fdb07bbdb2 + sha256: ed7c94968215ce47f9fec1f0658bbbd07e49907b2b72e4fcbe0e1b67f1d2ab56 + category: main + optional: false +- name: compilers + version: 1.6.0 + manager: conda + platform: linux-64 + dependencies: + c-compiler: 1.6.0 + cxx-compiler: 1.6.0 + fortran-compiler: 1.6.0 + url: https://conda.anaconda.org/conda-forge/linux-64/compilers-1.6.0-ha770c72_0.conda + hash: + md5: e2259de4640a51a28c21931ae98e4975 + sha256: 05bce88c6f89327746ffcf53801994bce3eca758875e3c542594e12c09cb6db9 + category: main + optional: false +- name: gstreamer + version: 1.22.0 + manager: conda + platform: linux-64 + dependencies: + __glibc: '>=2.17,<3.0.a0' + gettext: '>=0.21.1,<1.0a0' + glib: '>=2.74.1,<3.0a0' + libgcc-ng: '>=12' + libglib: '>=2.74.1,<3.0a0' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/gstreamer-1.22.0-h25f0c4b_2.conda + hash: + md5: 461541cb1b387c2a28ab6217f3d38502 + sha256: b60bf8f5cae60d276e26f9de0f03faddc6dd341c910924ffe0f3c1aa7e0852c7 + category: main + optional: false +- name: harfbuzz + version: 6.0.0 + manager: conda + platform: linux-64 + dependencies: + cairo: '>=1.16.0,<2.0a0' + freetype: '>=2.12.1,<3.0a0' + graphite2: '' + icu: '>=70.1,<71.0a0' + libgcc-ng: '>=12' + libglib: '>=2.74.1,<3.0a0' + libstdcxx-ng: '>=12' + url: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-6.0.0-h8e241bc_0.conda + hash: + md5: 448fe40d2fed88ccf4d9ded37cbb2b38 + sha256: f300fcb390253d6d63346ee71e56f82bc830783d1682ac933fe9ac86f39da942 + category: main + optional: false +- name: pulseaudio-daemon + version: '16.1' + manager: conda + platform: linux-64 + dependencies: + alsa-lib: '>=1.2.8,<1.2.9.0a0' + dbus: '>=1.13.6,<2.0a0' + fftw: '>=3.3.10,<4.0a0' + gstreamer-orc: '>=0.4.33,<0.5.0a0' + jack: '>=1.9.22,<1.10.0a0' + libcap: '>=2.67,<2.68.0a0' + libgcc-ng: '>=12' + libglib: '>=2.74.1,<3.0a0' + libsndfile: '>=1.2.0,<1.3.0a0' + libsystemd0: '>=253' + libtool: '>=2.4.7,<3.0a0' + libudev1: '>=253' + openssl: '>=3.1.0,<4.0a0' + pulseaudio-client: '16.1' + url: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-daemon-16.1-ha8d29e2_3.conda + hash: + md5: 34d9d75ca896f5919c372a34e25f23ea + sha256: ce549c137b7d2711a6fe65d07ca9926fe267143d1c72c3f75d058470391c2ed2 + category: main + optional: false +- name: pyqt-builder + version: 1.15.2 + manager: conda + platform: linux-64 + dependencies: + packaging: '' + python: '>=3.6' + sip: '' + toml: '' + url: https://conda.anaconda.org/conda-forge/noarch/pyqt-builder-1.15.2-pyhd8ed1ab_0.conda + hash: + md5: 30e48be9aa44c5296efb575502fa349e + sha256: 0455959a062d159a5a25eef622eb51cfe6ece2689038906be72fc9d15ce1a805 + category: main + optional: false +- name: pyqt5-sip + version: 12.12.2 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + packaging: '' + python: '>=3.11,<3.12.0a0' + python_abi: 3.11.* + sip: '' + toml: '' + url: https://conda.anaconda.org/conda-forge/linux-64/pyqt5-sip-12.12.2-py311hb755f60_4.conda + hash: + md5: 3cff4c98f775ff6439b95bb7917702e9 + sha256: 6d97501fe39903e6292ef71e82d18716bc1310b5eef6d3643e92b068aaa074d0 + category: main + optional: false +- name: gst-plugins-base + version: 1.22.0 + manager: conda + platform: linux-64 + dependencies: + __glibc: '>=2.17,<3.0.a0' + alsa-lib: '>=1.2.8,<1.2.9.0a0' + gettext: '>=0.21.1,<1.0a0' + gstreamer: 1.22.0 + libgcc-ng: '>=12' + libglib: '>=2.74.1,<3.0a0' + libopus: '>=1.3.1,<2.0a0' + libpng: '>=1.6.39,<1.7.0a0' + libstdcxx-ng: '>=12' + libvorbis: '>=1.3.7,<1.4.0a0' + libxcb: '>=1.13,<1.14.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/gst-plugins-base-1.22.0-h4243ec0_2.conda + hash: + md5: 0d0c6604c8ac4ad5e51efa7bb58da05c + sha256: e0f3e53f179440a8cdfd38c0b47d175aa560ff1600d43e15e6a6cbdaa7a01da3 + category: main + optional: false +- name: pulseaudio + version: '16.1' + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + pulseaudio-client: '16.1' + pulseaudio-daemon: '16.1' + url: https://conda.anaconda.org/conda-forge/linux-64/pulseaudio-16.1-hcb278e6_3.conda + hash: + md5: 8b452ab959166d91949af4c2d28f81db + sha256: 59f58bbe5ead04537ffcd6262674daf71e9702e88d1c142a38dcd641b4eab936 + category: main + optional: false +- name: qt-main + version: 5.15.8 + manager: conda + platform: linux-64 + dependencies: + __glibc: '>=2.17,<3.0.a0' + alsa-lib: '>=1.2.8,<1.2.9.0a0' + dbus: '>=1.13.6,<2.0a0' + expat: '>=2.5.0,<3.0a0' + fontconfig: '>=2.14.2,<3.0a0' + fonts-conda-ecosystem: '' + freetype: '>=2.12.1,<3.0a0' + gst-plugins-base: '>=1.22.0,<1.23.0a0' + gstreamer: '>=1.22.0,<1.23.0a0' + harfbuzz: '>=6.0.0,<7.0a0' + icu: '>=70.1,<71.0a0' + jpeg: '>=9e,<10a' + krb5: '>=1.20.1,<1.21.0a0' + libclang: '>=15.0.7,<16.0a0' + libclang13: '>=15.0.7' + libcups: '>=2.3.3,<2.4.0a0' + libevent: '>=2.1.10,<2.1.11.0a0' + libgcc-ng: '>=12' + libglib: '>=2.74.1,<3.0a0' + libpng: '>=1.6.39,<1.7.0a0' + libpq: '>=15.1,<16.0a0' + libsqlite: '>=3.40.0,<4.0a0' + libstdcxx-ng: '>=12' + libxcb: '>=1.13,<1.14.0a0' + libxkbcommon: '>=1.0.3,<2.0a0' + libxml2: '>=2.10.3,<2.11.0a0' + libzlib: '>=1.2.13,<1.3.0a0' + mysql-libs: '>=8.0.32,<8.1.0a0' + nspr: '>=4.35,<5.0a0' + nss: '>=3.82,<4.0a0' + openssl: '>=3.0.8,<4.0a0' + pulseaudio: '>=16.1,<16.2.0a0' + xcb-util: '' + xcb-util-image: '' + xcb-util-keysyms: '' + xcb-util-renderutil: '' + xcb-util-wm: '' + zstd: '>=1.5.2,<1.6.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/qt-main-5.15.8-h5d23da1_6.conda + hash: + md5: 59c73debd9405771690ddbbad6c57b69 + sha256: fd0b6b8365fd4d0e86476a3047ba6a281eea0bdfef770df83b897fd73e959dd9 + category: main + optional: false +- name: pyqt + version: 5.15.9 + manager: conda + platform: linux-64 + dependencies: + libgcc-ng: '>=12' + libstdcxx-ng: '>=12' + pyqt5-sip: 12.12.2 + python: '>=3.11,<3.12.0a0' + python_abi: 3.11.* + qt-main: '>=5.15.8,<5.16.0a0' + sip: '>=6.7.10,<6.8.0a0' + url: https://conda.anaconda.org/conda-forge/linux-64/pyqt-5.15.9-py311hf0fb5b6_4.conda + hash: + md5: afe5363b88d2e97266063558a6599bd0 + sha256: ba46b7f19d4c207b54972c2bd293fd3e6b67d43ec63f7c2be326302e0643beaa + category: main + optional: false diff --git a/ci/environment/environment.yml b/ci/environment/environment.yml new file mode 100644 index 0000000..4b08a2f --- /dev/null +++ b/ci/environment/environment.yml @@ -0,0 +1,22 @@ +name: python-poppler-qt5-wheels +channels: + - conda-forge +dependencies: + # Note that the versions are all pinned; it speeds up the resolver (which + # is already very slow) when it only has to find the versions of the transitive + # dependencies. + - pyqt=5.15.9 + - sip=6.7.11 + - pyqt-builder=1.15.2 + - cmake=3.26.4 + - openjpeg=2.5.0 + - jpeg=9e + # Provides C and C++ compilers which are guaranteed ABI-compatible with + # Qt5, libjpeg and libopenjp2 from conda-forge. + - compilers=1.6.0 + - boost-cpp + # Obscure: sip needs setuptools, but it's not marked as dependency. + - setuptools=68.0.0 + - wheel +platforms: + - linux-64 diff --git a/poppler-qt5.sip b/poppler-qt5.sip index e387f5a..a3abbd0 100644 --- a/poppler-qt5.sip +++ b/poppler-qt5.sip @@ -1,4 +1,4 @@ -%Module(name=popplerqt5) +%Module(name=PyQt5.Qt5.lib._popplerqt5) /* * Bindings for Poppler-Qt5 to Python diff --git a/popplerqt5.py b/popplerqt5.py new file mode 100644 index 0000000..48bbc29 --- /dev/null +++ b/popplerqt5.py @@ -0,0 +1,6 @@ +# The actual popplerqt5 lives under next to Qt libraries, because that +# is the most portable way of making it find those libraries instead +# of system ones. This wrapper module just reexports the actual +# module. + +from PyQt5.Qt5.lib._popplerqt5 import * diff --git a/project.py b/project.py index 74e397c..484e804 100644 --- a/project.py +++ b/project.py @@ -14,6 +14,7 @@ class PythonPopplerQt5(PyQtProject): def __init__(self): super().__init__() self.bindings_factories = [PopplerQt5Bindings] + self.wheel_includes = ["popplerqt5.py"] def update(self, tool): """Allows SIP to find PyQt5 .sip files.""" @@ -36,6 +37,10 @@ def get_options(self): Option('poppler_version', help='version of the poppler library', metavar='VERSION')) + options.append( + Option('link_args', + help='linker arguments', + metavar='ARGS')) return options @staticmethod @@ -86,3 +91,8 @@ def apply_user_defaults(self, tool): tag = 'POPPLER_V0_20_0' self.tags.append(tag) super().apply_user_defaults(tool) + + + # Allow passing linker arguments, needed for RUNPATH + # in the CI build. + self.extra_link_args = self.link_args.split() diff --git a/pyproject.toml b/pyproject.toml index 67ba265..a032bff 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,10 @@ [build-system] -requires = ["sip >=5", "PyQt-builder", "PyQt5"] +requires = [ + "sip >= 6.7.9", + "PyQt-builder", + "PyQt5", + "PyQt5-Qt5", +] build-backend = "sipbuild.api" [tool.sip.metadata] @@ -21,7 +26,10 @@ classifier = [ "Programming Language :: Python :: 3", "Topic :: Multimedia :: Graphics :: Viewers" ] -requires-dist = "PyQt5" +requires-dist = [ + # sync with ci/environment/environment.yml + "PyQt5 >= 5.15", +] [tool.sip.project] sip-files-dir = "."