%global _empty_manifest_terminate_build 0 Name: python-ManimPango Version: 0.4.3 Release: 1 Summary: Bindings for Pango for using with Manim. License: MIT URL: https://manimpango.manim.community/ Source0: https://mirrors.nju.edu.cn/pypi/web/packages/2b/2e/a426d0b799747de3da775d56116128a23b2a2c4836fb97daea30137a5e1f/ManimPango-0.4.3.tar.gz %description # ManimPango
**ManimPango** is a C binding for [Pango](https://pango.gnome.org/) using [Cython](https://cython.org/), which is internally used in [Manim](https://www.manim.community) to render (non-LaTeX) text. ## INSTALL Installing **ManimPango** is super easy, just use `pip`. It is [`manimpango`](https://pypi.org/project/manimpango/) in PyPi. ```sh pip install manimpango ``` For **Linux Users**, there are no Wheels. You must have a C compiler as well as **Pango** and its dependencies along with the **Pango** development headers. See [BUILDING](#BUILDING) for more information. ## WORKFLOW SETUP / CONTRIBUTING To make it easier for developers to contribute, we have a pre-commit workflow that will check for `black` formatting and `flake` checking. ```sh pip install pre-commit pre-commit install ``` ## BUILDING ### Linux/MacOS For building **ManimPango**, you need * a C compiler * Python's development headers * [`pkg-config`](https://www.freedesktop.org/wiki/Software/pkg-config/) * [Pango](https://pango.gnome.org) along with its development headers and its dependencies. If you are on MacOS, you can use [brew](https://brew.sh) to install those. Using [MacPorts](https://www.macports.org) is also possible, but their version of **Pango** is old and will probably not be updated in the near future. ```sh brew install pango pkg-config ``` If you are on Linux, you can use a system package manager to do so. For example, if you are on Debian based system, you can use `apt` ```sh apt install libpango1.0-dev pkg-config python3-dev ``` **Arch Linux:** `pacman -S pango pkgconf` **Fedora:** `dnf install pango-devel pkg-config python3-devel` Or similar in your system's package manager. #### Using `tar` archives If you don't want to contribute to this repository, you can use the tar archives published in PyPi, or just use `pip` to install using ```sh pip install manimpango --no-binary :all: ``` **Note**: `pip` by default uses wheels, so make sure to pass the `--no-binary` parameter. #### Using `git` clones / Contributing Please remember to do this inside your virtual environment, if you want to use your **Manimpango** with **Manim**. ```sh python -m venv ./venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows ``` If you are using a clone of this repository, you will need [Cython](https://cython.org) which can be easily installed using `pip`: ```sh pip install Cython ``` After that you can use `pip` to install the clone with the following command: ```sh pip install -e . pip install -r requirements-dev.txt . ``` Next, run the setup script: ```sh python setup.py build_ext -i ``` After installation is complete, you should be able to run pytest: ```sh pytest ``` You will need to this way if you want to *contribute* to **ManimPango**. ### Contributing with Windows *If you are a normal user, don't read this, you have wheels which you can just install directly using pip.* If you want to contribute to **ManimPango** and you are on Windows, this section is for you. As Windows does not include a C compiler by default, you will first need to install one. You have two choices: 1. MinGW/Msys2 2. Visual Studio #### MinGW/Msys2 1. Download **MSYS2** from the download link provided on their page https://www.msys2.org/#installation and install it according to their instructions. 2. Once you have **MSYS2** installed, it offers you three different shells: the **MinGW32** shell, the **MinGW64** shell and **MSYS** shell. In order for the following steps to work, you have to open the **MSYS2 MinGW64** shell (you can search for this). Small hint: it has a blue color logo. 3. Run the following commands to install Python, Pango, Cython, Numpy, Scipy, Pillow, Pycairo and ffmpeg ```sh pacman -S mingw-w64-x86_64-python pacman -S mingw-w64-x86_64-python-pip pacman -S mingw-w64-x86_64-pango pacman -S mingw-w64-x86_64-cython pacman -S mingw-w64-x86_64-python-numpy pacman -S mingw-w64-x86_64-python-scipy pacman -S mingw-w64-x86_64-python-pillow pacman -S mingw-w64-x86_64-python-cairo pacman -S mingw-w64-x86_64-ffmpeg ``` 4. Still in the same shell, install **Manim** using `pip install manim`. 5. Finally, get your clone of **ManimPango**, `cd` into that directory and then run `pip install -e .`. **Note** You can't use it with your regular Python version. It will cause weird errors if you do so. For working with **ManimPango**, you must be inside the `MSYS2 MINGW64 shell`. 6. You can then use `manim` inside that shell, to run **Manim**. **Hint**: If you want to try out Python interactively, you can open `idle` using the command `python -m idlelib` inside that shell. #### Visual Studio First, install Visual Studio as specified in https://wiki.python.org/moin/WindowsCompilers. Possibly Visual Studio Build Tools 2019 with Windows10 SDK. Then run the script at `packing/download_dlls.py`. This will get a **Pango** build along with `pkg-config` and install it at `C:\cibw\vendor`. Add `C:\cibw\vendor\bin` and `C:\cibw\vendor\pkg-config\bin` to PATH. **Note:** You can change the install location by editing line 24 of the file `packing/download_dlls.py`. Then set an environment variable `PKG_CONFIG_PATH`=`C:\cibw\vendor\lib\pkgconfig`. Then you can install Cython using ```sh pip install Cython ``` Finally, you can install your local **ManimPango** clone just like any other python package by typing: ```sh pip install . ``` **Important**: You have to to use https://docs.python.org/3/library/os.html#os.add_dll_directory before running **ManimPango**. Alternatively, you need to copy the `dll` at `C:\cibw\vendor\bin` to the folder where **ManimPango** is compiled. This is applicable for Python 3.8 and above. ```python import os os.add_dll_directory('C:\cibw\vendor\bin') ``` ## Code of Conduct Our full code of conduct, and how we enforce it, can be read on [our website](https://docs.manim.community/en/latest/conduct.html). ## License This project is licensed under MIT License. The wheels distributed on PyPI contains compiled version of Pango and Cairo subject to terms of the GNU LGPL and other licenses. Consult the licenses of each library for more informations. %package -n python3-ManimPango Summary: Bindings for Pango for using with Manim. Provides: python-ManimPango BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip BuildRequires: python3-cffi BuildRequires: gcc BuildRequires: gdb %description -n python3-ManimPango # ManimPango **ManimPango** is a C binding for [Pango](https://pango.gnome.org/) using [Cython](https://cython.org/), which is internally used in [Manim](https://www.manim.community) to render (non-LaTeX) text. ## INSTALL Installing **ManimPango** is super easy, just use `pip`. It is [`manimpango`](https://pypi.org/project/manimpango/) in PyPi. ```sh pip install manimpango ``` For **Linux Users**, there are no Wheels. You must have a C compiler as well as **Pango** and its dependencies along with the **Pango** development headers. See [BUILDING](#BUILDING) for more information. ## WORKFLOW SETUP / CONTRIBUTING To make it easier for developers to contribute, we have a pre-commit workflow that will check for `black` formatting and `flake` checking. ```sh pip install pre-commit pre-commit install ``` ## BUILDING ### Linux/MacOS For building **ManimPango**, you need * a C compiler * Python's development headers * [`pkg-config`](https://www.freedesktop.org/wiki/Software/pkg-config/) * [Pango](https://pango.gnome.org) along with its development headers and its dependencies. If you are on MacOS, you can use [brew](https://brew.sh) to install those. Using [MacPorts](https://www.macports.org) is also possible, but their version of **Pango** is old and will probably not be updated in the near future. ```sh brew install pango pkg-config ``` If you are on Linux, you can use a system package manager to do so. For example, if you are on Debian based system, you can use `apt` ```sh apt install libpango1.0-dev pkg-config python3-dev ``` **Arch Linux:** `pacman -S pango pkgconf` **Fedora:** `dnf install pango-devel pkg-config python3-devel` Or similar in your system's package manager. #### Using `tar` archives If you don't want to contribute to this repository, you can use the tar archives published in PyPi, or just use `pip` to install using ```sh pip install manimpango --no-binary :all: ``` **Note**: `pip` by default uses wheels, so make sure to pass the `--no-binary` parameter. #### Using `git` clones / Contributing Please remember to do this inside your virtual environment, if you want to use your **Manimpango** with **Manim**. ```sh python -m venv ./venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows ``` If you are using a clone of this repository, you will need [Cython](https://cython.org) which can be easily installed using `pip`: ```sh pip install Cython ``` After that you can use `pip` to install the clone with the following command: ```sh pip install -e . pip install -r requirements-dev.txt . ``` Next, run the setup script: ```sh python setup.py build_ext -i ``` After installation is complete, you should be able to run pytest: ```sh pytest ``` You will need to this way if you want to *contribute* to **ManimPango**. ### Contributing with Windows *If you are a normal user, don't read this, you have wheels which you can just install directly using pip.* If you want to contribute to **ManimPango** and you are on Windows, this section is for you. As Windows does not include a C compiler by default, you will first need to install one. You have two choices: 1. MinGW/Msys2 2. Visual Studio #### MinGW/Msys2 1. Download **MSYS2** from the download link provided on their page https://www.msys2.org/#installation and install it according to their instructions. 2. Once you have **MSYS2** installed, it offers you three different shells: the **MinGW32** shell, the **MinGW64** shell and **MSYS** shell. In order for the following steps to work, you have to open the **MSYS2 MinGW64** shell (you can search for this). Small hint: it has a blue color logo. 3. Run the following commands to install Python, Pango, Cython, Numpy, Scipy, Pillow, Pycairo and ffmpeg ```sh pacman -S mingw-w64-x86_64-python pacman -S mingw-w64-x86_64-python-pip pacman -S mingw-w64-x86_64-pango pacman -S mingw-w64-x86_64-cython pacman -S mingw-w64-x86_64-python-numpy pacman -S mingw-w64-x86_64-python-scipy pacman -S mingw-w64-x86_64-python-pillow pacman -S mingw-w64-x86_64-python-cairo pacman -S mingw-w64-x86_64-ffmpeg ``` 4. Still in the same shell, install **Manim** using `pip install manim`. 5. Finally, get your clone of **ManimPango**, `cd` into that directory and then run `pip install -e .`. **Note** You can't use it with your regular Python version. It will cause weird errors if you do so. For working with **ManimPango**, you must be inside the `MSYS2 MINGW64 shell`. 6. You can then use `manim` inside that shell, to run **Manim**. **Hint**: If you want to try out Python interactively, you can open `idle` using the command `python -m idlelib` inside that shell. #### Visual Studio First, install Visual Studio as specified in https://wiki.python.org/moin/WindowsCompilers. Possibly Visual Studio Build Tools 2019 with Windows10 SDK. Then run the script at `packing/download_dlls.py`. This will get a **Pango** build along with `pkg-config` and install it at `C:\cibw\vendor`. Add `C:\cibw\vendor\bin` and `C:\cibw\vendor\pkg-config\bin` to PATH. **Note:** You can change the install location by editing line 24 of the file `packing/download_dlls.py`. Then set an environment variable `PKG_CONFIG_PATH`=`C:\cibw\vendor\lib\pkgconfig`. Then you can install Cython using ```sh pip install Cython ``` Finally, you can install your local **ManimPango** clone just like any other python package by typing: ```sh pip install . ``` **Important**: You have to to use https://docs.python.org/3/library/os.html#os.add_dll_directory before running **ManimPango**. Alternatively, you need to copy the `dll` at `C:\cibw\vendor\bin` to the folder where **ManimPango** is compiled. This is applicable for Python 3.8 and above. ```python import os os.add_dll_directory('C:\cibw\vendor\bin') ``` ## Code of Conduct Our full code of conduct, and how we enforce it, can be read on [our website](https://docs.manim.community/en/latest/conduct.html). ## License This project is licensed under MIT License. The wheels distributed on PyPI contains compiled version of Pango and Cairo subject to terms of the GNU LGPL and other licenses. Consult the licenses of each library for more informations. %package help Summary: Development documents and examples for ManimPango Provides: python3-ManimPango-doc %description help # ManimPango **ManimPango** is a C binding for [Pango](https://pango.gnome.org/) using [Cython](https://cython.org/), which is internally used in [Manim](https://www.manim.community) to render (non-LaTeX) text. ## INSTALL Installing **ManimPango** is super easy, just use `pip`. It is [`manimpango`](https://pypi.org/project/manimpango/) in PyPi. ```sh pip install manimpango ``` For **Linux Users**, there are no Wheels. You must have a C compiler as well as **Pango** and its dependencies along with the **Pango** development headers. See [BUILDING](#BUILDING) for more information. ## WORKFLOW SETUP / CONTRIBUTING To make it easier for developers to contribute, we have a pre-commit workflow that will check for `black` formatting and `flake` checking. ```sh pip install pre-commit pre-commit install ``` ## BUILDING ### Linux/MacOS For building **ManimPango**, you need * a C compiler * Python's development headers * [`pkg-config`](https://www.freedesktop.org/wiki/Software/pkg-config/) * [Pango](https://pango.gnome.org) along with its development headers and its dependencies. If you are on MacOS, you can use [brew](https://brew.sh) to install those. Using [MacPorts](https://www.macports.org) is also possible, but their version of **Pango** is old and will probably not be updated in the near future. ```sh brew install pango pkg-config ``` If you are on Linux, you can use a system package manager to do so. For example, if you are on Debian based system, you can use `apt` ```sh apt install libpango1.0-dev pkg-config python3-dev ``` **Arch Linux:** `pacman -S pango pkgconf` **Fedora:** `dnf install pango-devel pkg-config python3-devel` Or similar in your system's package manager. #### Using `tar` archives If you don't want to contribute to this repository, you can use the tar archives published in PyPi, or just use `pip` to install using ```sh pip install manimpango --no-binary :all: ``` **Note**: `pip` by default uses wheels, so make sure to pass the `--no-binary` parameter. #### Using `git` clones / Contributing Please remember to do this inside your virtual environment, if you want to use your **Manimpango** with **Manim**. ```sh python -m venv ./venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows ``` If you are using a clone of this repository, you will need [Cython](https://cython.org) which can be easily installed using `pip`: ```sh pip install Cython ``` After that you can use `pip` to install the clone with the following command: ```sh pip install -e . pip install -r requirements-dev.txt . ``` Next, run the setup script: ```sh python setup.py build_ext -i ``` After installation is complete, you should be able to run pytest: ```sh pytest ``` You will need to this way if you want to *contribute* to **ManimPango**. ### Contributing with Windows *If you are a normal user, don't read this, you have wheels which you can just install directly using pip.* If you want to contribute to **ManimPango** and you are on Windows, this section is for you. As Windows does not include a C compiler by default, you will first need to install one. You have two choices: 1. MinGW/Msys2 2. Visual Studio #### MinGW/Msys2 1. Download **MSYS2** from the download link provided on their page https://www.msys2.org/#installation and install it according to their instructions. 2. Once you have **MSYS2** installed, it offers you three different shells: the **MinGW32** shell, the **MinGW64** shell and **MSYS** shell. In order for the following steps to work, you have to open the **MSYS2 MinGW64** shell (you can search for this). Small hint: it has a blue color logo. 3. Run the following commands to install Python, Pango, Cython, Numpy, Scipy, Pillow, Pycairo and ffmpeg ```sh pacman -S mingw-w64-x86_64-python pacman -S mingw-w64-x86_64-python-pip pacman -S mingw-w64-x86_64-pango pacman -S mingw-w64-x86_64-cython pacman -S mingw-w64-x86_64-python-numpy pacman -S mingw-w64-x86_64-python-scipy pacman -S mingw-w64-x86_64-python-pillow pacman -S mingw-w64-x86_64-python-cairo pacman -S mingw-w64-x86_64-ffmpeg ``` 4. Still in the same shell, install **Manim** using `pip install manim`. 5. Finally, get your clone of **ManimPango**, `cd` into that directory and then run `pip install -e .`. **Note** You can't use it with your regular Python version. It will cause weird errors if you do so. For working with **ManimPango**, you must be inside the `MSYS2 MINGW64 shell`. 6. You can then use `manim` inside that shell, to run **Manim**. **Hint**: If you want to try out Python interactively, you can open `idle` using the command `python -m idlelib` inside that shell. #### Visual Studio First, install Visual Studio as specified in https://wiki.python.org/moin/WindowsCompilers. Possibly Visual Studio Build Tools 2019 with Windows10 SDK. Then run the script at `packing/download_dlls.py`. This will get a **Pango** build along with `pkg-config` and install it at `C:\cibw\vendor`. Add `C:\cibw\vendor\bin` and `C:\cibw\vendor\pkg-config\bin` to PATH. **Note:** You can change the install location by editing line 24 of the file `packing/download_dlls.py`. Then set an environment variable `PKG_CONFIG_PATH`=`C:\cibw\vendor\lib\pkgconfig`. Then you can install Cython using ```sh pip install Cython ``` Finally, you can install your local **ManimPango** clone just like any other python package by typing: ```sh pip install . ``` **Important**: You have to to use https://docs.python.org/3/library/os.html#os.add_dll_directory before running **ManimPango**. Alternatively, you need to copy the `dll` at `C:\cibw\vendor\bin` to the folder where **ManimPango** is compiled. This is applicable for Python 3.8 and above. ```python import os os.add_dll_directory('C:\cibw\vendor\bin') ``` ## Code of Conduct Our full code of conduct, and how we enforce it, can be read on [our website](https://docs.manim.community/en/latest/conduct.html). ## License This project is licensed under MIT License. The wheels distributed on PyPI contains compiled version of Pango and Cairo subject to terms of the GNU LGPL and other licenses. Consult the licenses of each library for more informations. %prep %autosetup -n ManimPango-0.4.3 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-ManimPango -f filelist.lst %dir %{python3_sitearch}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue Apr 11 2023 Python_Bot