manim_action_renderer icon indicating copy to clipboard operation
manim_action_renderer copied to clipboard

Manim installation not working in docker container

Open pavelzw opened this issue 3 years ago • 0 comments

Hi,

when I want to run the workflow, it crashes during the installation of manim. It seems that it cannot install the package pangocairo.

Run manim-kindergarten/manim_action_renderer@master
  with:
    source_file: main_result.py
    scene_names: Scene1
  
    community_ver: true
    args: -w
    manim_repo: https://github.com/manim-kindergarten/manim
    merge_assets: true
/usr/bin/docker run --name a7625986c9fac2492ba039a34e1f725ea5_a51731 --label 9916a7 --workdir /github/workspace --rm -e INPUT_SOURCE_FILE -e INPUT_SCENE_NAMES -e INPUT_COMMUNITY_VER -e INPUT_ARGS -e INPUT_MANIM_REPO -e INPUT_EXTRA_PACKAGES -e INPUT_EXTRA_SYSTEM_PACKAGES -e INPUT_EXTRA_REPOS -e INPUT_PRE_RENDER -e INPUT_POST_RENDER -e INPUT_MERGE_ASSETS -e INPUT_FONTS_DIR -e HOME -e GITHUB_JOB -e GITHUB_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_REPOSITORY_OWNER -e GITHUB_RUN_ID -e GITHUB_RUN_NUMBER -e GITHUB_RETENTION_DAYS -e GITHUB_RUN_ATTEMPT -e GITHUB_ACTOR -e GITHUB_WORKFLOW -e GITHUB_HEAD_REF -e GITHUB_BASE_REF -e GITHUB_EVENT_NAME -e GITHUB_SERVER_URL -e GITHUB_API_URL -e GITHUB_GRAPHQL_URL -e GITHUB_REF_NAME -e GITHUB_REF_PROTECTED -e GITHUB_REF_TYPE -e GITHUB_WORKSPACE -e GITHUB_ACTION -e GITHUB_EVENT_PATH -e GITHUB_ACTION_REPOSITORY -e GITHUB_ACTION_REF -e GITHUB_PATH -e GITHUB_ENV -e RUNNER_OS -e RUNNER_ARCH -e RUNNER_NAME -e RUNNER_TOOL_CACHE -e RUNNER_TEMP -e RUNNER_WORKSPACE -e ACTIONS_RUNTIME_URL -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_URL -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/_temp/_runner_file_commands":"/github/file_commands" -v "/home/runner/work/7circles/7circles":"/github/workspace" 9916a7:625986c9fac2492ba039a34e1f725ea5  "main_result.py" "Scene1
" "-w" "https://github.com/manim-kindergarten/manim" "" "" "" "" "true" "" "" "true"
Community? true
Cloning https://github.com/manim-kindergarten/manim ...
Cloning into 'manimcm'...
Installing requirements of manim...
WARNING: The directory '/github/home/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Ignoring pyreadline: markers 'sys_platform == "win32"' don't match your environment
Collecting argparse
  Downloading argparse-1.4.0-py2.py3-none-any.whl (23 kB)
Collecting colour
  Downloading colour-0.1.5-py2.py3-none-any.whl (23 kB)
Collecting numpy
  Downloading numpy-1.21.5-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (15.7 MB)
Collecting Pillow
  Downloading Pillow-9.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.3 MB)
Collecting scipy
  Downloading scipy-1.7.3-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (38.1 MB)
Collecting sympy
  Downloading sympy-1.9-py3-none-any.whl (6.2 MB)
Collecting tqdm
  Downloading tqdm-4.62.3-py2.py3-none-any.whl (76 kB)
Collecting mapbox-earcut
  Downloading mapbox_earcut-1.0.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (98 kB)
Collecting matplotlib
  Downloading matplotlib-3.5.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (11.2 MB)
Collecting moderngl
  Downloading moderngl-5.6.4-cp37-cp37m-manylinux1_x86_64.whl (670 kB)
Collecting moderngl_window
  Downloading moderngl_window-2.4.1-py3-none-any.whl (365 kB)
Collecting skia-pathops
  Downloading skia_pathops-0.7.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB)
Collecting pydub
  Downloading pydub-0.25.1-py2.py3-none-any.whl (32 kB)
Collecting pygments
  Downloading Pygments-2.11.2-py3-none-any.whl (1.1 MB)
Collecting pyyaml
  Downloading PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (596 kB)
Collecting rich
  Downloading rich-11.0.0-py3-none-any.whl (215 kB)
Collecting screeninfo
  Downloading screeninfo-0.8-py3-none-any.whl (14 kB)
Collecting validators
  Downloading validators-0.18.2-py3-none-any.whl (19 kB)
Collecting ipython
  Downloading ipython-7.31.0-py3-none-any.whl (792 kB)
Collecting PyOpenGL
  Downloading PyOpenGL-3.1.5-py3-none-any.whl (2.4 MB)
Collecting manimpango<0.4.0,>=0.2.0
  Downloading ManimPango-0.3.1.tar.gz (4.1 MB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: /usr/local/bin/python /usr/local/lib/python3.7/site-packages/pip/_vendor/pep517/_in_process.py get_requires_for_build_wheel /tmp/tmpiq4e_m0x
       cwd: /tmp/pip-install-4ai0t4ll/manimpango
  Complete output (33 lines):
  Package pangocairo was not found in the pkg-config search path.
  Perhaps you should add the directory containing `pangocairo.pc'
  to the PKG_CONFIG_PATH environment variable
  No package 'pangocairo' found
  Traceback (most recent call last):
    File "setup.py", line 130, in check_min_version
      check_call(command, stdout=subprocess.DEVNULL)
    File "/usr/local/lib/python3.7/subprocess.py", line 363, in check_call
      raise CalledProcessError(retcode, cmd)
  subprocess.CalledProcessError: Command '['pkg-config', '--print-errors', '--atleast-version', '1.30.0', 'pangocairo']' returned non-zero exit status 1.
  
  During handling of the above exception, another exception occurred:
  
  Traceback (most recent call last):
    File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pep517/_in_process.py", line 280, in <module>
      main()
    File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pep517/_in_process.py", line 263, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/usr/local/lib/python3.7/site-packages/pip/_vendor/pep517/_in_process.py", line 114, in get_requires_for_build_wheel
      return hook(config_settings)
    File "/tmp/pip-build-env-i13n092v/overlay/lib/python3.7/site-packages/setuptools/build_meta.py", line 163, in get_requires_for_build_wheel
      config_settings, requirements=['wheel'])
    File "/tmp/pip-build-env-i13n092v/overlay/lib/python3.7/site-packages/setuptools/build_meta.py", line 143, in _get_build_requires
      self.run_setup()
    File "/tmp/pip-build-env-i13n092v/overlay/lib/python3.7/site-packages/setuptools/build_meta.py", line 268, in run_setup
      self).run_setup(setup_script=setup_script)
    File "/tmp/pip-build-env-i13n092v/overlay/lib/python3.7/site-packages/setuptools/build_meta.py", line 158, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 197, in <module>
      _pkg_config_pangocairo.check_min_version(MINIMUM_PANGO_VERSION)
    File "setup.py", line 133, in check_min_version
      raise RequiredDependencyException(f"{self.name} >= {version} is required")
  __main__.RequiredDependencyException: pangocairo >= 1.30.0 is required
  ----------------------------------------
ERROR: Command errored out with exit status 1: /usr/local/bin/python /usr/local/lib/python3.7/site-packages/pip/_vendor/pep517/_in_process.py get_requires_for_build_wheel /tmp/tmpiq4e_m0x Check the logs for full command output.
WARNING: You are using pip version 20.1.1; however, version 21.3.1 is available.
You should consider upgrading via the '/usr/local/bin/python -m pip install --upgrade pip' command.

My workflow file looks like this:

name: Render videos
on: push
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Rendering Scenes
        uses: manim-kindergarten/manim_action_renderer@master
        id: renderer
        with:
          source_file: main_result.py
          scene_names: |
            Scene1
          community_ver: true
      - name: Save output as artifacts
        uses: actions/upload-artifact@v2
        with:
          name: Videos
          path: ${{ steps.renderer.outputs.video_path }}

pavelzw avatar Jan 15 '22 17:01 pavelzw