Metadata-generation-failed during galaxy installation

Hi,
I am new to using terminal and Usegalaxy - I have run all the steps for installation, but seem to be running into an error after the sh run.sh command. I have ensured Cython is installed. Please could someone look at the error below and assist. Thank you.

(.venv) izaakha@Izaaks-MacBook-Pro galaxy % sh run.sh
Activating virtualenv at .venv
Requirement already satisfied: pip>=8.1 in ./.venv/lib/python3.11/site-packages (23.2.1)
Looking in indexes: https://wheels.galaxyproject.org/simple, https://pypi.python.org/simple
Ignoring importlib-metadata: markers 'python_version < "3.8"' don't match your environment
Ignoring importlib-resources: markers 'python_version < "3.7"' don't match your environment
Ignoring pathlib2: markers 'python_version < "3.6"' don't match your environment
Ignoring pyinotify: markers 'sys_platform != "win32" and sys_platform != "darwin" and sys_platform != "sunos5"' don't match your environment
Ignoring ruamel.yaml.clib: markers 'platform_python_implementation == "CPython" and python_version < "3.8"' don't match your environment
Ignoring typing: markers 'python_version < "3.5"' don't match your environment
Ignoring zipp: markers 'python_version < "3.8"' don't match your environment
Collecting adal==1.2.4 (from -r requirements.txt (line 3))
  Using cached adal-1.2.4-py2.py3-none-any.whl (55 kB)
Collecting amqp==2.6.0 (from -r requirements.txt (line 4))
  Using cached amqp-2.6.0-py2.py3-none-any.whl (47 kB)
Collecting appdirs==1.4.4 (from -r requirements.txt (line 5))
  Using cached appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)
Collecting attmap==0.12.11 (from -r requirements.txt (line 6))
  Using cached https://wheels.galaxyproject.org/simple/attmap/attmap-0.12.11-py3-none-any.whl (12 kB)
Collecting attrs==19.3.0 (from -r requirements.txt (line 7))
  Using cached attrs-19.3.0-py2.py3-none-any.whl (39 kB)
Collecting azure-common==1.1.14 (from -r requirements.txt (line 8))
  Using cached azure_common-1.1.14-py2.py3-none-any.whl (10 kB)
Collecting azure-cosmosdb-nspkg==2.0.2 (from -r requirements.txt (line 9))
  Using cached azure_cosmosdb_nspkg-2.0.2-py2.py3-none-any.whl (2.9 kB)
Collecting azure-cosmosdb-table==1.0.4 (from -r requirements.txt (line 10))
  Using cached azure_cosmosdb_table-1.0.4-py2.py3-none-any.whl (82 kB)
Collecting azure-mgmt-compute==4.0.1 (from -r requirements.txt (line 11))
  Using cached azure_mgmt_compute-4.0.1-py2.py3-none-any.whl (2.1 MB)
Collecting azure-mgmt-devtestlabs==2.2.0 (from -r requirements.txt (line 12))
  Using cached azure_mgmt_devtestlabs-2.2.0-py2.py3-none-any.whl (194 kB)
Collecting azure-mgmt-network==2.1.0 (from -r requirements.txt (line 13))
  Using cached azure_mgmt_network-2.1.0-py2.py3-none-any.whl (6.9 MB)
Collecting azure-mgmt-nspkg==3.0.2 (from -r requirements.txt (line 14))
  Using cached azure_mgmt_nspkg-3.0.2-py3-none-any.whl (1.6 kB)
Collecting azure-mgmt-resource==2.0.0 (from -r requirements.txt (line 15))
  Using cached azure_mgmt_resource-2.0.0-py2.py3-none-any.whl (698 kB)
Collecting azure-mgmt-storage==2.0.0 (from -r requirements.txt (line 16))
  Using cached azure_mgmt_storage-2.0.0-py2.py3-none-any.whl (558 kB)
Collecting azure-nspkg==3.0.2 (from -r requirements.txt (line 17))
  Using cached azure_nspkg-3.0.2-py3-none-any.whl (1.5 kB)
Collecting azure-storage-blob==1.3.1 (from -r requirements.txt (line 18))
  Using cached azure_storage_blob-1.3.1-py2.py3-none-any.whl (77 kB)
Collecting azure-storage-common==1.4.2 (from -r requirements.txt (line 19))
  Using cached azure_storage_common-1.4.2-py2.py3-none-any.whl (47 kB)
Collecting azure-storage-nspkg==3.1.0 (from -r requirements.txt (line 20))
  Using cached azure_storage_nspkg-3.1.0-py2.py3-none-any.whl (1.7 kB)
Collecting babel==2.8.0 (from -r requirements.txt (line 21))
  Using cached Babel-2.8.0-py2.py3-none-any.whl (8.6 MB)
Collecting bagit==1.7.0 (from -r requirements.txt (line 22))
  Using cached https://wheels.galaxyproject.org/simple/bagit/bagit-1.7.0-py2.py3-none-any.whl (34 kB)
Collecting bcrypt==3.1.7 (from -r requirements.txt (line 23))
  Using cached bcrypt-3.1.7.tar.gz (42 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting bdbag==1.5.6 (from -r requirements.txt (line 24))
  Using cached bdbag-1.5.6-py2.py3-none-any.whl (66 kB)
Collecting beaker==1.11.0 (from -r requirements.txt (line 25))
  Using cached Beaker-1.11.0.tar.gz (40 kB)
  Preparing metadata (setup.py) ... done
Collecting bioblend==0.13.0 (from -r requirements.txt (line 26))
  Using cached bioblend-0.13.0-py2.py3-none-any.whl (125 kB)
Collecting bleach==3.1.5 (from -r requirements.txt (line 27))
  Using cached bleach-3.1.5-py2.py3-none-any.whl (151 kB)
Collecting boltons==20.2.0 (from -r requirements.txt (line 28))
  Using cached boltons-20.2.0-py2.py3-none-any.whl (171 kB)
Collecting boto3==1.9.114 (from -r requirements.txt (line 29))
  Using cached boto3-1.9.114-py2.py3-none-any.whl (128 kB)
Collecting boto==2.49.0 (from -r requirements.txt (line 30))
  Using cached boto-2.49.0-py2.py3-none-any.whl (1.4 MB)
Collecting botocore==1.12.253 (from -r requirements.txt (line 31))
  Using cached botocore-1.12.253-py2.py3-none-any.whl (5.7 MB)
Collecting bx-python==0.8.9 (from -r requirements.txt (line 32))
  Using cached bx-python-0.8.9.tar.gz (1.4 MB)
  Preparing metadata (setup.py) ... done
Collecting cachecontrol==0.11.7 (from -r requirements.txt (line 33))
  Using cached CacheControl-0.11.7.tar.gz (13 kB)
  Preparing metadata (setup.py) ... done
Collecting cachetools==4.1.0 (from -r requirements.txt (line 34))
  Using cached cachetools-4.1.0-py3-none-any.whl (10 kB)
Collecting certifi==2020.6.20 (from -r requirements.txt (line 35))
  Using cached certifi-2020.6.20-py2.py3-none-any.whl (156 kB)
Collecting cffi==1.14.0 (from -r requirements.txt (line 36))
  Using cached cffi-1.14.0.tar.gz (463 kB)
  Preparing metadata (setup.py) ... done
Collecting chardet==3.0.4 (from -r requirements.txt (line 37))
  Using cached chardet-3.0.4-py2.py3-none-any.whl (133 kB)
Collecting cheetah3==3.2.5 (from -r requirements.txt (line 38))
  Using cached Cheetah3-3.2.5.tar.gz (295 kB)
  Preparing metadata (setup.py) ... done
Collecting cliff==3.1.0 (from -r requirements.txt (line 39))
  Using cached cliff-3.1.0-py3-none-any.whl (80 kB)
Collecting cloudauthz==0.6.0 (from -r requirements.txt (line 40))
  Using cached cloudauthz-0.6.0-py2.py3-none-any.whl (8.9 kB)
Collecting cloudbridge==2.0.0 (from -r requirements.txt (line 41))
  Using cached cloudbridge-2.0.0-py2.py3-none-any.whl (182 kB)
Collecting cmd2==0.8.9 (from -r requirements.txt (line 42))
  Using cached cmd2-0.8.9-py2.py3-none-any.whl (53 kB)
Collecting coloredlogs==14.0 (from -r requirements.txt (line 43))
  Using cached coloredlogs-14.0-py2.py3-none-any.whl (43 kB)
Collecting cryptography==3.2.1 (from -r requirements.txt (line 44))
  Using cached cryptography-3.2.1.tar.gz (540 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting cwltool==1.0.20191225192155 (from -r requirements.txt (line 45))
  Using cached cwltool-1.0.20191225192155-py2.py3-none-any.whl (725 kB)
Collecting debtcollector==1.22.0 (from -r requirements.txt (line 46))
  Using cached debtcollector-1.22.0-py2.py3-none-any.whl (23 kB)
Collecting decorator==4.4.2 (from -r requirements.txt (line 47))
  Using cached decorator-4.4.2-py2.py3-none-any.whl (9.2 kB)
Collecting defusedxml==0.6.0 (from -r requirements.txt (line 48))
  Using cached defusedxml-0.6.0-py2.py3-none-any.whl (23 kB)
Collecting deprecated==1.2.10 (from -r requirements.txt (line 49))
  Using cached Deprecated-1.2.10-py2.py3-none-any.whl (8.7 kB)
Collecting deprecation==2.1.0 (from -r requirements.txt (line 50))
  Using cached deprecation-2.1.0-py2.py3-none-any.whl (11 kB)
Collecting dictobj==0.4 (from -r requirements.txt (line 51))
  Using cached dictobj-0.4.tar.gz (6.9 kB)
  Preparing metadata (setup.py) ... done
Collecting docopt==0.6.2 (from -r requirements.txt (line 52))
  Using cached https://wheels.galaxyproject.org/simple/docopt/docopt-0.6.2-py2.py3-none-any.whl (19 kB)
Collecting docutils==0.15.2 (from -r requirements.txt (line 53))
  Using cached docutils-0.15.2-py3-none-any.whl (547 kB)
Collecting dogpile.cache==0.9.2 (from -r requirements.txt (line 54))
  Using cached dogpile.cache-0.9.2.tar.gz (329 kB)
  Preparing metadata (setup.py) ... done
Collecting ecdsa==0.15 (from -r requirements.txt (line 55))
  Using cached ecdsa-0.15-py2.py3-none-any.whl (100 kB)
Collecting fabric3==1.14.post1 (from -r requirements.txt (line 56))
  Using cached Fabric3-1.14.post1-py3-none-any.whl (92 kB)
Collecting future==0.18.2 (from -r requirements.txt (line 57))
  Using cached future-0.18.2.tar.gz (829 kB)
  Preparing metadata (setup.py) ... done
Collecting futures==3.1.1 (from -r requirements.txt (line 58))
  Using cached https://wheels.galaxyproject.org/simple/futures/futures-3.1.1.tar.gz (26 kB)
  Preparing metadata (setup.py) ... done
Collecting galaxy-sequence-utils==1.1.5 (from -r requirements.txt (line 59))
  Using cached galaxy_sequence_utils-1.1.5-py2.py3-none-any.whl (37 kB)
Collecting google-api-python-client==1.7.8 (from -r requirements.txt (line 60))
  Using cached google_api_python_client-1.7.8-py3-none-any.whl (56 kB)
Collecting google-auth-httplib2==0.0.3 (from -r requirements.txt (line 61))
  Using cached google_auth_httplib2-0.0.3-py2.py3-none-any.whl (6.3 kB)
Collecting google-auth==1.18.0 (from -r requirements.txt (line 62))
  Using cached google_auth-1.18.0-py2.py3-none-any.whl (90 kB)
Collecting gxformat2==0.11.3 (from -r requirements.txt (line 63))
  Using cached gxformat2-0.11.3-py2.py3-none-any.whl (40 kB)
Collecting h5py==2.10.0 (from -r requirements.txt (line 64))
  Using cached h5py-2.10.0.tar.gz (301 kB)
  Preparing metadata (setup.py) ... done
Collecting httplib2==0.18.1 (from -r requirements.txt (line 65))
  Using cached httplib2-0.18.1-py3-none-any.whl (95 kB)
Collecting humanfriendly==8.2 (from -r requirements.txt (line 66))
  Using cached humanfriendly-8.2-py2.py3-none-any.whl (86 kB)
Collecting idna==2.9 (from -r requirements.txt (line 67))
  Using cached idna-2.9-py2.py3-none-any.whl (58 kB)
Collecting isa-rwval==0.10.9 (from -r requirements.txt (line 70))
  Using cached isa_rwval-0.10.9-py2.py3-none-any.whl (40 kB)
Collecting iso8601==0.1.12 (from -r requirements.txt (line 71))
  Using cached iso8601-0.1.12-py3-none-any.whl (12 kB)
Collecting isodate==0.6.0 (from -r requirements.txt (line 72))
  Using cached isodate-0.6.0-py2.py3-none-any.whl (45 kB)
Collecting jmespath==0.10.0 (from -r requirements.txt (line 73))
  Using cached jmespath-0.10.0-py2.py3-none-any.whl (24 kB)
Collecting jsonpatch==1.26 (from -r requirements.txt (line 74))
  Using cached jsonpatch-1.26-py2.py3-none-any.whl (11 kB)
Collecting jsonpointer==2.0 (from -r requirements.txt (line 75))
  Using cached jsonpointer-2.0-py2.py3-none-any.whl (7.6 kB)
Collecting jsonschema==3.2.0 (from -r requirements.txt (line 76))
  Using cached jsonschema-3.2.0-py2.py3-none-any.whl (56 kB)
Collecting keystoneauth1==4.1.0 (from -r requirements.txt (line 77))
  Using cached keystoneauth1-4.1.0-py3-none-any.whl (305 kB)
Collecting kombu==4.6.11 (from -r requirements.txt (line 78))
  Using cached kombu-4.6.11-py2.py3-none-any.whl (184 kB)
Collecting lockfile==0.12.2 (from -r requirements.txt (line 79))
  Using cached lockfile-0.12.2-py2.py3-none-any.whl (13 kB)
Collecting lxml==4.6.2 (from -r requirements.txt (line 80))
  Using cached lxml-4.6.2.tar.gz (3.2 MB)
  Preparing metadata (setup.py) ... done
Collecting mako==1.1.3 (from -r requirements.txt (line 81))
  Using cached Mako-1.1.3-py2.py3-none-any.whl (75 kB)
Collecting markdown==3.2.2 (from -r requirements.txt (line 82))
  Using cached Markdown-3.2.2-py3-none-any.whl (88 kB)
Collecting markupsafe==1.1.1 (from -r requirements.txt (line 83))
  Using cached MarkupSafe-1.1.1.tar.gz (19 kB)
  Preparing metadata (setup.py) ... done
Collecting mercurial==5.4.1 (from -r requirements.txt (line 84))
  Using cached mercurial-5.4.1.tar.gz (7.7 MB)
  Preparing metadata (setup.py) ... done
Collecting mistune==0.8.4 (from -r requirements.txt (line 85))
  Using cached mistune-0.8.4-py2.py3-none-any.whl (16 kB)
Collecting msgpack==1.0.0 (from -r requirements.txt (line 86))
  Using cached msgpack-1.0.0.tar.gz (232 kB)
  Preparing metadata (setup.py) ... done
Collecting msrest==0.5.5 (from -r requirements.txt (line 87))
  Using cached msrest-0.5.5-py2.py3-none-any.whl (47 kB)
Collecting msrestazure==0.5.0 (from -r requirements.txt (line 88))
  Using cached msrestazure-0.5.0-py2.py3-none-any.whl (36 kB)
Collecting munch==2.5.0 (from -r requirements.txt (line 89))
  Using cached munch-2.5.0-py2.py3-none-any.whl (10 kB)
Collecting mypy-extensions==0.4.3 (from -r requirements.txt (line 90))
  Using cached mypy_extensions-0.4.3-py2.py3-none-any.whl (4.5 kB)
Collecting netaddr==0.7.20 (from -r requirements.txt (line 91))
  Using cached netaddr-0.7.20-py2.py3-none-any.whl (1.9 MB)
Collecting netifaces==0.10.9 (from -r requirements.txt (line 92))
  Using cached netifaces-0.10.9.tar.gz (28 kB)
  Preparing metadata (setup.py) ... done
Collecting networkx==1.11 (from -r requirements.txt (line 93))
  Using cached networkx-1.11-py2.py3-none-any.whl (1.3 MB)
Collecting nodeenv==1.4.0 (from -r requirements.txt (line 94))
  Using cached nodeenv-1.4.0-py2.py3-none-any.whl (21 kB)
Collecting nose==1.3.7 (from -r requirements.txt (line 95))
  Using cached nose-1.3.7-py3-none-any.whl (154 kB)
Collecting numpy==1.18.5 (from -r requirements.txt (line 96))
  Using cached numpy-1.18.5.zip (5.4 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [58 lines of output]
      Running from numpy source directory.
      <string>:461: UserWarning: Unrecognized setuptools command, proceeding with generating Cython sources and expanding templates
      /private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-install-sqm1ipow/numpy_d3c5c5ededd5430ebb53dad40e13874f/tools/cythonize.py:75: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
        required_version = LooseVersion('0.29.14')
      /private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-install-sqm1ipow/numpy_d3c5c5ededd5430ebb53dad40e13874f/tools/cythonize.py:77: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
        if LooseVersion(cython_version) < required_version:
      warning: _philox.pyx:19:0: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310
      warning: /private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-install-sqm1ipow/numpy_d3c5c5ededd5430ebb53dad40e13874f/numpy/__init__.pxd:17:0: The 'DEF' statement is deprecated and will be removed in a future Cython version. Consider using global variables, constants, and in-place literals instead. See https://github.com/cython/cython/issues/4310

      Error compiling Cython file:
      ------------------------------------------------------------
      ...
                  self.rng_state.ctr.v[i] = counter[i]

              self._reset_state_variables()

              self._bitgen.state = <void *>&self.rng_state
              self._bitgen.next_uint64 = &philox_uint64
                                         ^
      ------------------------------------------------------------

      _philox.pyx:195:35: Cannot assign type 'uint64_t (*)(void *) except? -1 nogil' to 'uint64_t (*)(void *) noexcept nogil'. Exception values are incompatible. Suggest adding 'noexcept' to type 'uint64_t (void *) except? -1 nogil'.
      Processing numpy/random/_bounded_integers.pxd.in
      Processing numpy/random/_philox.pyx
      Traceback (most recent call last):
        File "/private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-install-sqm1ipow/numpy_d3c5c5ededd5430ebb53dad40e13874f/tools/cythonize.py", line 238, in <module>
          main()
        File "/private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-install-sqm1ipow/numpy_d3c5c5ededd5430ebb53dad40e13874f/tools/cythonize.py", line 234, in main
          find_process_files(root_dir)
        File "/private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-install-sqm1ipow/numpy_d3c5c5ededd5430ebb53dad40e13874f/tools/cythonize.py", line 225, in find_process_files
          process(root_dir, fromfile, tofile, function, hash_db)
        File "/private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-install-sqm1ipow/numpy_d3c5c5ededd5430ebb53dad40e13874f/tools/cythonize.py", line 191, in process
          processor_function(fromfile, tofile)
        File "/private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-install-sqm1ipow/numpy_d3c5c5ededd5430ebb53dad40e13874f/tools/cythonize.py", line 80, in process_pyx
          subprocess.check_call(
        File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/subprocess.py", line 413, in check_call
          raise CalledProcessError(retcode, cmd)
      subprocess.CalledProcessError: Command '['/Users/izaakha/Desktop/usegalaxy/galaxy/.venv/bin/python', '-m', 'cython', '-3', '--fast-fail', '-o', '_philox.c', '_philox.pyx']' returned non-zero exit status 1.
      Cythonizing sources
      Traceback (most recent call last):
        File "/Users/izaakha/Desktop/usegalaxy/galaxy/.venv/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/Users/izaakha/Desktop/usegalaxy/galaxy/.venv/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/Users/izaakha/Desktop/usegalaxy/galaxy/.venv/lib/python3.11/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 149, in prepare_metadata_for_build_wheel
          return hook(metadata_directory, config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-build-env-plsl80j8/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 396, in prepare_metadata_for_build_wheel
          self.run_setup()
        File "/private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-build-env-plsl80j8/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 507, in run_setup
          super(_BuildMetaLegacyBackend, self).run_setup(setup_script=setup_script)
        File "/private/var/folders/32/cr0yjsln65z1d1w_9r19qbww0000gn/T/pip-build-env-plsl80j8/overlay/lib/python3.11/site-packages/setuptools/build_meta.py", line 341, in run_setup
          exec(code, locals())
        File "<string>", line 488, in <module>
        File "<string>", line 469, in setup_package
        File "<string>", line 275, in generate_cython
      RuntimeError: Running cythonize failed!
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

Hi @Izaak_H-A

Is your server for personal use? If so, the Docker version can be a better choice. Much comes pre-configured and is easy to get it up and running. The related admin docs are also simplified. Review all those details here if interested: Galaxy Docker - Galaxy Community Hub

For the current errors (if you still want to explore this deployment choice) … have you seen our Admin Tutorials? If not, the steps for getting the server up and running are detailed, and are a good reference when asking for help. Troubleshooting is easier when you can note what has been already done and which tutorial step you are at, then clarify what is going wrong. That isolates the problem space scope since what “I have run all the steps for installation” includes can vary greatly. Galaxy Server administration

Let’s start there. I added a some tags to your post that link to prior Q&A that might be helpful too.