You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I run Bluefin DX which comes pre-packaged with Homebrew (since it's atomic and you want to avoid modifying the base system). While the docker image is preferable, I wanted to document the installation to the host system:
❯ export PKG_CONFIG_PATH=/home/linuxbrew/.linuxbrew/lib/pkgconfig:/home/linuxbrew/.linuxbrew/Cellar/xorgproto/2024.1/share/pkgconfig
# Unfortuanately Bluefin-DX does not update this variable, so to pick up packages installed by brew, you need this (python, pangocairo, etc)
❯ brew install uv
# This is the package manager of choice for manim and instructions use it
❯ brew install python3
# You need python from homebrew as the system one does not include developer files (headers, etc)
❯ uv python list
# You should have a homebrew python in addition to /usr/bin/python*
❯ uv python find
/home/linuxbrew/.linuxbrew/bin/python3
# IMPORTANT: restart shell if not using brew python at this point (though unlikely) -- /usr/bin/python* will NOT work
❯ brew install pango
# You should have everything needed, BUT note the "CC=gcc" below
❯ uv init manimations
❯ cd manimations
❯ CC=gcc uv add manim
# For some reason UV picks gcc-11 to invoke gcc, which does not work, just force the gcc command, Fedora currently ships with gcc-14
The above has gotten manim itself installed!
Now, if you want LaTeX just add:
❯ brew install texlive
❯ uv run manim checkhealth
❯ uv run manim checkhealth
Manim Community v0.19.0
Python executable: /var/home/myuser/devroot/manim/manimations/.venv/bin/python3
Checking whether your installation of Manim Community is healthy...
- Checking whether manim is on your PATH ... PASSED
- Checking whether the executable belongs to manim ... PASSED
- Checking whether latex is available ... PASSED
- Checking whether dvisvgm is available ... FAILED
There are problems with your installation, here are some recommendations to fix them:
Manim could find <latex>, but not <dvisvgm> on your system's PATH. Make sure your installed LaTeX distribution comes with dvisvgm and consider installing a larger distribution if it does not.
That last bit is the only thing missing. dvisvgm is missing from texlive as per this comment so that is the only thing that doesn't work....
❯ . .venv/bin/activatec
❯ cat t.py
from manim import *
class ManimCELogo(Scene):
def construct(self):
self.camera.background_color = "#ece6e2"
logo_green = "#87c2a5"
logo_blue = "#525893"
logo_red = "#e07a5f"
logo_black = "#343434"
ds_m = MathTex(r"\mathbb{M}", fill_color=logo_black).scale(7)
ds_m.shift(2.25 * LEFT + 1.5 * UP)
circle = Circle(color=logo_green, fill_opacity=1).shift(LEFT)
square = Square(color=logo_blue, fill_opacity=1).shift(UP)
triangle = Triangle(color=logo_red, fill_opacity=1).shift(RIGHT)
logo = VGroup(triangle, square, circle, ds_m) # order matters
logo.move_to(ORIGIN)
self.add(logo)
❯ manim -qm t.py
...
FileNotFoundError: [Errno 2] No such file or directory: 'dvisvgm'
However, at least you can work with non-SVG stuff:
❯ cat tt.py
from manim import *
class PointMovingOnShapes(Scene):
def construct(self):
circle = Circle(radius=1, color=BLUE)
dot = Dot()
dot2 = dot.copy().shift(RIGHT)
self.add(dot)
line = Line([3, 0, 0], [5, 0, 0])
self.add(line)
self.play(GrowFromCenter(circle))
self.play(Transform(dot, dot2))
self.play(MoveAlongPath(dot, circle), run_time=2, rate_func=linear)
self.play(Rotating(dot, about_point=[2, 0, 0]), run_time=1.5)
self.wait()
❯ manim -qm tt.py
Manim Community v0.19.0
[02/16/25 11:36:51] INFO Animation 0 : Using cached data (hash : 2016333726_3575364746_3788634887) cairo_renderer.py:89
INFO Animation 1 : Using cached data (hash : 543634251_430662505_155512321) cairo_renderer.py:89
INFO Animation 2 : Using cached data (hash : 543634251_2685593741_1253141396) cairo_renderer.py:89
[02/16/25 11:36:52] INFO Animation 3 : Partial movie file written in scene_file_writer.py:588
'/var/home/myuser/devroot/manim/manimations/media/videos/tt/720p30/partia
l_movie_files/PointMovingOnShapes/543634251_26213667_155512321.mp4'
INFO Animation 4 : Partial movie file written in scene_file_writer.py:588
'/var/home/myuser/devroot/manim/manimations/media/videos/tt/720p30/partia
l_movie_files/PointMovingOnShapes/543634251_1754310298_1336906928.mp4'
INFO Combining to Movie file. scene_file_writer.py:739
INFO scene_file_writer.py:886
File ready at
'/var/home/myuser/devroot/manim/manimations/media/videos/tt/720p30/PointM
ovingOnShapes.mp4'
INFO Rendered PointMovingOnShapes scene.py:255
Played 5 animations
❯ file media/videos/tt/720p30/PointMovingOnShapes.mp4
media/videos/tt/720p30/PointMovingOnShapes.mp4: ISO Media, MP4 Base Media v1 [ISO 14496-12:2003]
❯ xdg-open media/videos/tt/720p30/PointMovingOnShapes.mp4
# ( or open file with you video player of choice )
Just documented this here in case anyone ever looks for it!
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Hello,
I run Bluefin DX which comes pre-packaged with Homebrew (since it's atomic and you want to avoid modifying the base system). While the docker image is preferable, I wanted to document the installation to the host system:
The above has gotten manim itself installed!
Now, if you want LaTeX just add:
That last bit is the only thing missing. dvisvgm is missing from texlive as per this comment so that is the only thing that doesn't work....
However, at least you can work with non-SVG stuff:
Just documented this here in case anyone ever looks for it!
Beta Was this translation helpful? Give feedback.
All reactions