-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Maintainer's Guidelines Chocolatey
It is about maintaining the Chocolatey Package, located at
https://chocolatey.org/packages/manim-latex also https://chocolatey.org/packages/manimce (current and latest). These are used to install Manim easily on Windows.
Note: The package manim
and manim.install
was depreciated due to a version anonymity, that the maintainer has pushed version v1.0.0
but it was changed to v0.1.0
which caused problems of not getting latest version. So it was done according to how chocolatey tell and was depreciated. Now manimce
is the package until Manim reaches version v1.0.0
.
The source of those packages was located at https://github.com/naveen521kk/manim-build/tree/master/Choco%20Package, but those were are archived and moved to https://github.com/naveen521kk/au-packages where it is automatically maintained along with other packages. These are simple PowerShell scripts(.ps1
) which are executed by chocolatey when the user installs.
There are three subfolders inside that link. Each one is a different package where manim.portable
is a package which is not published to Chocolatey as it is for the future where we would be producing portable installation using NuGet Python Package which includes python and all of Manim's dependencies. You could look at other parts of the repo where you could find some NSIS(.nsi
) scripts which was in the plan to make classic installer for windows but is still half done and not testing. See the below video of how it looks.
PS> This was run-in @naveen521kk personal computer.
The PowerShell script is very simple. It just pip
installs the master branch of manim. If you carefully go through tools/chocolateyinstall.ps1
you could see it just install pycairo
(They don't provide wheel so installed separately) and then install Manim for zip from the master branch.). That's it on the whole.
Other dependencies are individual a chocolatey package like ffmpeg etc. They are taken as dependencies and know to chocolatey using the .nuspec
file in each directory.
If you went through the manim.nuspec
you would be surprised to see it takes dependency over manim.install
. It is because manim
is a meta-package of manim.install
. Nothing to confuse see what it is a meta-package in docs. This was done in aim of making a portable installation of manim and published to manim.portable
so that user can install it using choco install manim.portable
while the pip's one using choco install manim
. This need's to be updated on Manim releasing a new version. Possibly can be automated as manim-latex
. Currently, only @naveen521kk is the solo maintainer there.
Also, it is automatically maintained by tracking Github Release Sections.
This package is taking dependency over tinytex
and install the extra package. The source of this package can be found in a different place as there will a new release monthly as latex always needs to be updated or else produces weird issues.
This is automatically maintained when tinytex
produces a new release and it is located https://github.com/naveen521kk/au-packages/tree/master/manim-latex where AppVeyor updates it monthly. Maintainers need to worry about this only when there is a dependency of a new latex package. Until then this can be forgotten(literally).
[to be continued....]