diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-04-12 03:39:22 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-04-12 03:39:22 +0000 |
| commit | 3f30a93e4dc0235f03a90f42a1a11cbb57f81488 (patch) | |
| tree | 53b9cce8eb7f8b2a18181bfe4ada5212dc36dd67 /python-moderngl-window.spec | |
| parent | 38483ab7f9718e2b84cd1fd33cbdbdbca0b2ed1c (diff) | |
automatic import of python-moderngl-window
Diffstat (limited to 'python-moderngl-window.spec')
| -rw-r--r-- | python-moderngl-window.spec | 683 |
1 files changed, 683 insertions, 0 deletions
diff --git a/python-moderngl-window.spec b/python-moderngl-window.spec new file mode 100644 index 0000000..4accc2e --- /dev/null +++ b/python-moderngl-window.spec @@ -0,0 +1,683 @@ +%global _empty_manifest_terminate_build 0 +Name: python-moderngl-window +Version: 2.4.3 +Release: 1 +Summary: A cross platform helper library for ModernGL making window creation and resource loading simple +License: MIT +URL: https://github.com/moderngl/moderngl_window +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/53/dc/684847e5d3d6f7b11ffe116afa315c334e6e3907f638638f0f327b8adb71/moderngl-window-2.4.3.tar.gz +BuildArch: noarch + +Requires: python3-moderngl +Requires: python3-pyglet +Requires: python3-numpy +Requires: python3-pyrr +Requires: python3-Pillow +Requires: python3-PySDL2 +Requires: python3-PySide2 +Requires: python3-glfw +Requires: python3-pygame +Requires: python3-PyQt5 +Requires: python3-pywavefront +Requires: python3-pyopengltk +Requires: python3-trimesh +Requires: python3-scipy + +%description +[](https://pypi.python.org/pypi/moderngl-window) [](https://moderngl-window.readthedocs.io)
+
+# moderngl-window
+
+A cross platform utility library for [ModernGL](https://github.com/moderngl/moderngl) making window
+creation and resource loading simple. It can also be used with PyOpenGL for
+rendering with the programmable pipeline.
+
+* [moderngl-window Documentation](https://moderngl-window.readthedocs.io)
+* [moderngl-window on PyPI](https://pypi.org/project/moderngl-window)
+* [moderngl-window on Github](https://github.com/moderngl/moderngl-window)
+* [ModernGL](https://github.com/moderngl/moderngl)
+* [ModernGL Discord Server](https://discord.gg/UEMtW8D)
+
+Please report bugs or post questions/feedback on [github](https://github.com/moderngl/moderngl-window/issues).
+
+## Features
+
+* Cross platform support. Tested on Windows 10, Linux and Mac OS X.
+ This can save users a lot of time and is often more difficult than most people
+ imagine it to be.
+* Easily create a window for ModernGL using pyglet, pygame, PySide2, GLFW, SDL2, PyQt5
+ or tkinter supporting a wide range of window, keyboard and mouse events.
+ These events are unified into a single system so your project can work with any window.
+* Load 2D textures, texture arrays and cube maps using Pillow
+* Load shaders as single or multiple `glsl` files
+* Load objects/scenes from wavefront/obj, GLTF 2.0 or STL
+* Resource finder system supporting multiple resource directories
+* A highly plugable library supporting custom loaders,
+ resource finders and windows.
+* Type hints everywhere making code completion and linting a breeze
+
+We are not trying to force the user into using every aspect of this
+library. If you have an exiting project and just need texture loading
+you will be able to do this without unnecessary hurdles as long as
+you provide us your `moderngl.Context`.
+
+## Install
+
+```bash
+pip install moderngl-window
+```
+
+## Supported Platforms
+
+* [x] Windows
+* [x] Linux
+* [x] Mac OS X
+
+## Sample Usage
+
+Simple example opening a window clearing every frame using red (color).
+
+```py
+# test.py
+import moderngl_window as mglw
+
+class Test(mglw.WindowConfig):
+ gl_version = (3, 3)
+
+ def render(self, time, frametime):
+ self.ctx.clear(1.0, 0.0, 0.0, 0.0)
+
+Test.run()
+```
+
+Run the example with different window backends:
+
+```bash
+python test.py --window pyglet
+python test.py --window pygame2
+python test.py --window glfw
+python test.py --window sdl2
+python test.py --window pyside2
+python test.py --window pyqt5
+python test.py --window tk
+```
+
+`WindowConfig` classes are the simplest way to get started without knowing
+a lot about this library. For more advanced usage see documentation
+or examples.
+
+## Setup from source
+
+We assume the user knows how to handle virtualenvs.
+
+```bash
+# Install the package in editable mode
+$ pip install -e .
+
+# Set up and dev requirements
+pip install -r requirements.txt
+pip install -r tests/requirements.txt
+```
+
+## Running Tests
+
+Tests are set up with `tox` running pytest with coverage and flake8.
+
+```bash
+pip install -r tests/requirements.txt
+tox -e py36
+tox -e py37
+tox -e py38
+tox -e py39
+tox -e pep8
+```
+
+## Building Docs
+
+```bash
+pip install -r docs/requirements.txt
+python setup.py build_sphinx
+```
+
+## Contributing
+
+Contributions are welcome regardless of experience level.
+Don't hesitate submitting issues, opening partial or completed
+pull requests.
+
+### Plugins
+
+We are interested in contributions providing new loaders, windows etc.
+For these to be included in this library we require them
+to work cross platforms (win10/linux/osx) and be fairly easy to set up.
+
+If it requires more than manually downloading a pre-compiled dll
+(like SDL2, GLFW etc.) it would most likely not be included,
+but you are welcome to present your case if you still think it should
+be included.
+
+If you create your own repo/package containing plugins for
+this library, please make an issue and we'll link back to it.
+Be sure to include what platforms are supported, install
+instructions, how you configure it in `moderngl-window` and
+of course a clear and concise description of what exactly
+your package provides.
+
+## Citation
+
+If you need to cite this repository in academic research:
+```txt
+@Online{Forselv2020,
+ author = {Einar Forselv},
+ title = {moderngl-window, a cross-platform windowing/utility library for ModernGL},
+ date = {2020-05-01},
+ publisher = {GitHub},
+ journal = {GitHub repository},
+ howpublished = {\url{https://github.com/moderngl/moderngl-window}},
+ commit = {<insert hash if needed>}
+}
+```
+
+If commit hash is required this can be found per release here:
+https://github.com/moderngl/moderngl-window/releases
+
+
+## Attributions
+
+We can't build everything from scratch. We rely on certain packages
+and resources to make this project possible.
+
+### Windows
+
+* pyglet (https://github.com/pyglet/pyglet)
+* pygame (https://github.com/pygame/pygame)
+* pyGLFW (https://github.com/FlorianRhiem/pyGLFW)
+* PySDL2 (https://github.com/marcusva/py-sdl2)
+* PySide2 (https://wiki.qt.io/Qt_for_Python)
+* PyQt5 (https://www.riverbankcomputing.com/software/pyqt/intro)
+* tkinter (https://github.com/jonwright/pyopengltk)
+
+### Loaders
+
+* Pillow (https://python-pillow.org/)
+* pywavefront (https://github.com/pywavefront/PyWavefront)
+* trimesh (https://github.com/mikedh/trimesh)
+
+### Testing & Utility
+
+* Pyrr (https://github.com/adamlwgriffiths/Pyrr)
+* numpy (https://github.com/numpy/numpy)
+* pytest (https://docs.pytest.org/en/latest/)
+* flake8 (https://gitlab.com/pycqa/flake8)
+* coverage (https://github.com/nedbat/coveragepy)
+* tox (https://tox.readthedocs.io/en/latest/)
+
+## Resources
+
+* NASA 3D Resources (https://github.com/nasa/NASA-3D-Resources)
+* glTF Sample Models (https://github.com/KhronosGroup/glTF-Sample-Models)
+
+## Some History
+
+The majority of the code in this library comes from [demosys-py](https://github.com/Contraz/demosys-py) (somewhat modified).
+Because `demosys-py` is a framework we decided to split out a lot useful functionality into this
+library. Frameworks are a lot less appealing to users and it would be a shame to not make this
+more available to the ModernGL user base.
+ + +%package -n python3-moderngl-window +Summary: A cross platform helper library for ModernGL making window creation and resource loading simple +Provides: python-moderngl-window +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-moderngl-window +[](https://pypi.python.org/pypi/moderngl-window) [](https://moderngl-window.readthedocs.io)
+
+# moderngl-window
+
+A cross platform utility library for [ModernGL](https://github.com/moderngl/moderngl) making window
+creation and resource loading simple. It can also be used with PyOpenGL for
+rendering with the programmable pipeline.
+
+* [moderngl-window Documentation](https://moderngl-window.readthedocs.io)
+* [moderngl-window on PyPI](https://pypi.org/project/moderngl-window)
+* [moderngl-window on Github](https://github.com/moderngl/moderngl-window)
+* [ModernGL](https://github.com/moderngl/moderngl)
+* [ModernGL Discord Server](https://discord.gg/UEMtW8D)
+
+Please report bugs or post questions/feedback on [github](https://github.com/moderngl/moderngl-window/issues).
+
+## Features
+
+* Cross platform support. Tested on Windows 10, Linux and Mac OS X.
+ This can save users a lot of time and is often more difficult than most people
+ imagine it to be.
+* Easily create a window for ModernGL using pyglet, pygame, PySide2, GLFW, SDL2, PyQt5
+ or tkinter supporting a wide range of window, keyboard and mouse events.
+ These events are unified into a single system so your project can work with any window.
+* Load 2D textures, texture arrays and cube maps using Pillow
+* Load shaders as single or multiple `glsl` files
+* Load objects/scenes from wavefront/obj, GLTF 2.0 or STL
+* Resource finder system supporting multiple resource directories
+* A highly plugable library supporting custom loaders,
+ resource finders and windows.
+* Type hints everywhere making code completion and linting a breeze
+
+We are not trying to force the user into using every aspect of this
+library. If you have an exiting project and just need texture loading
+you will be able to do this without unnecessary hurdles as long as
+you provide us your `moderngl.Context`.
+
+## Install
+
+```bash
+pip install moderngl-window
+```
+
+## Supported Platforms
+
+* [x] Windows
+* [x] Linux
+* [x] Mac OS X
+
+## Sample Usage
+
+Simple example opening a window clearing every frame using red (color).
+
+```py
+# test.py
+import moderngl_window as mglw
+
+class Test(mglw.WindowConfig):
+ gl_version = (3, 3)
+
+ def render(self, time, frametime):
+ self.ctx.clear(1.0, 0.0, 0.0, 0.0)
+
+Test.run()
+```
+
+Run the example with different window backends:
+
+```bash
+python test.py --window pyglet
+python test.py --window pygame2
+python test.py --window glfw
+python test.py --window sdl2
+python test.py --window pyside2
+python test.py --window pyqt5
+python test.py --window tk
+```
+
+`WindowConfig` classes are the simplest way to get started without knowing
+a lot about this library. For more advanced usage see documentation
+or examples.
+
+## Setup from source
+
+We assume the user knows how to handle virtualenvs.
+
+```bash
+# Install the package in editable mode
+$ pip install -e .
+
+# Set up and dev requirements
+pip install -r requirements.txt
+pip install -r tests/requirements.txt
+```
+
+## Running Tests
+
+Tests are set up with `tox` running pytest with coverage and flake8.
+
+```bash
+pip install -r tests/requirements.txt
+tox -e py36
+tox -e py37
+tox -e py38
+tox -e py39
+tox -e pep8
+```
+
+## Building Docs
+
+```bash
+pip install -r docs/requirements.txt
+python setup.py build_sphinx
+```
+
+## Contributing
+
+Contributions are welcome regardless of experience level.
+Don't hesitate submitting issues, opening partial or completed
+pull requests.
+
+### Plugins
+
+We are interested in contributions providing new loaders, windows etc.
+For these to be included in this library we require them
+to work cross platforms (win10/linux/osx) and be fairly easy to set up.
+
+If it requires more than manually downloading a pre-compiled dll
+(like SDL2, GLFW etc.) it would most likely not be included,
+but you are welcome to present your case if you still think it should
+be included.
+
+If you create your own repo/package containing plugins for
+this library, please make an issue and we'll link back to it.
+Be sure to include what platforms are supported, install
+instructions, how you configure it in `moderngl-window` and
+of course a clear and concise description of what exactly
+your package provides.
+
+## Citation
+
+If you need to cite this repository in academic research:
+```txt
+@Online{Forselv2020,
+ author = {Einar Forselv},
+ title = {moderngl-window, a cross-platform windowing/utility library for ModernGL},
+ date = {2020-05-01},
+ publisher = {GitHub},
+ journal = {GitHub repository},
+ howpublished = {\url{https://github.com/moderngl/moderngl-window}},
+ commit = {<insert hash if needed>}
+}
+```
+
+If commit hash is required this can be found per release here:
+https://github.com/moderngl/moderngl-window/releases
+
+
+## Attributions
+
+We can't build everything from scratch. We rely on certain packages
+and resources to make this project possible.
+
+### Windows
+
+* pyglet (https://github.com/pyglet/pyglet)
+* pygame (https://github.com/pygame/pygame)
+* pyGLFW (https://github.com/FlorianRhiem/pyGLFW)
+* PySDL2 (https://github.com/marcusva/py-sdl2)
+* PySide2 (https://wiki.qt.io/Qt_for_Python)
+* PyQt5 (https://www.riverbankcomputing.com/software/pyqt/intro)
+* tkinter (https://github.com/jonwright/pyopengltk)
+
+### Loaders
+
+* Pillow (https://python-pillow.org/)
+* pywavefront (https://github.com/pywavefront/PyWavefront)
+* trimesh (https://github.com/mikedh/trimesh)
+
+### Testing & Utility
+
+* Pyrr (https://github.com/adamlwgriffiths/Pyrr)
+* numpy (https://github.com/numpy/numpy)
+* pytest (https://docs.pytest.org/en/latest/)
+* flake8 (https://gitlab.com/pycqa/flake8)
+* coverage (https://github.com/nedbat/coveragepy)
+* tox (https://tox.readthedocs.io/en/latest/)
+
+## Resources
+
+* NASA 3D Resources (https://github.com/nasa/NASA-3D-Resources)
+* glTF Sample Models (https://github.com/KhronosGroup/glTF-Sample-Models)
+
+## Some History
+
+The majority of the code in this library comes from [demosys-py](https://github.com/Contraz/demosys-py) (somewhat modified).
+Because `demosys-py` is a framework we decided to split out a lot useful functionality into this
+library. Frameworks are a lot less appealing to users and it would be a shame to not make this
+more available to the ModernGL user base.
+ + +%package help +Summary: Development documents and examples for moderngl-window +Provides: python3-moderngl-window-doc +%description help +[](https://pypi.python.org/pypi/moderngl-window) [](https://moderngl-window.readthedocs.io)
+
+# moderngl-window
+
+A cross platform utility library for [ModernGL](https://github.com/moderngl/moderngl) making window
+creation and resource loading simple. It can also be used with PyOpenGL for
+rendering with the programmable pipeline.
+
+* [moderngl-window Documentation](https://moderngl-window.readthedocs.io)
+* [moderngl-window on PyPI](https://pypi.org/project/moderngl-window)
+* [moderngl-window on Github](https://github.com/moderngl/moderngl-window)
+* [ModernGL](https://github.com/moderngl/moderngl)
+* [ModernGL Discord Server](https://discord.gg/UEMtW8D)
+
+Please report bugs or post questions/feedback on [github](https://github.com/moderngl/moderngl-window/issues).
+
+## Features
+
+* Cross platform support. Tested on Windows 10, Linux and Mac OS X.
+ This can save users a lot of time and is often more difficult than most people
+ imagine it to be.
+* Easily create a window for ModernGL using pyglet, pygame, PySide2, GLFW, SDL2, PyQt5
+ or tkinter supporting a wide range of window, keyboard and mouse events.
+ These events are unified into a single system so your project can work with any window.
+* Load 2D textures, texture arrays and cube maps using Pillow
+* Load shaders as single or multiple `glsl` files
+* Load objects/scenes from wavefront/obj, GLTF 2.0 or STL
+* Resource finder system supporting multiple resource directories
+* A highly plugable library supporting custom loaders,
+ resource finders and windows.
+* Type hints everywhere making code completion and linting a breeze
+
+We are not trying to force the user into using every aspect of this
+library. If you have an exiting project and just need texture loading
+you will be able to do this without unnecessary hurdles as long as
+you provide us your `moderngl.Context`.
+
+## Install
+
+```bash
+pip install moderngl-window
+```
+
+## Supported Platforms
+
+* [x] Windows
+* [x] Linux
+* [x] Mac OS X
+
+## Sample Usage
+
+Simple example opening a window clearing every frame using red (color).
+
+```py
+# test.py
+import moderngl_window as mglw
+
+class Test(mglw.WindowConfig):
+ gl_version = (3, 3)
+
+ def render(self, time, frametime):
+ self.ctx.clear(1.0, 0.0, 0.0, 0.0)
+
+Test.run()
+```
+
+Run the example with different window backends:
+
+```bash
+python test.py --window pyglet
+python test.py --window pygame2
+python test.py --window glfw
+python test.py --window sdl2
+python test.py --window pyside2
+python test.py --window pyqt5
+python test.py --window tk
+```
+
+`WindowConfig` classes are the simplest way to get started without knowing
+a lot about this library. For more advanced usage see documentation
+or examples.
+
+## Setup from source
+
+We assume the user knows how to handle virtualenvs.
+
+```bash
+# Install the package in editable mode
+$ pip install -e .
+
+# Set up and dev requirements
+pip install -r requirements.txt
+pip install -r tests/requirements.txt
+```
+
+## Running Tests
+
+Tests are set up with `tox` running pytest with coverage and flake8.
+
+```bash
+pip install -r tests/requirements.txt
+tox -e py36
+tox -e py37
+tox -e py38
+tox -e py39
+tox -e pep8
+```
+
+## Building Docs
+
+```bash
+pip install -r docs/requirements.txt
+python setup.py build_sphinx
+```
+
+## Contributing
+
+Contributions are welcome regardless of experience level.
+Don't hesitate submitting issues, opening partial or completed
+pull requests.
+
+### Plugins
+
+We are interested in contributions providing new loaders, windows etc.
+For these to be included in this library we require them
+to work cross platforms (win10/linux/osx) and be fairly easy to set up.
+
+If it requires more than manually downloading a pre-compiled dll
+(like SDL2, GLFW etc.) it would most likely not be included,
+but you are welcome to present your case if you still think it should
+be included.
+
+If you create your own repo/package containing plugins for
+this library, please make an issue and we'll link back to it.
+Be sure to include what platforms are supported, install
+instructions, how you configure it in `moderngl-window` and
+of course a clear and concise description of what exactly
+your package provides.
+
+## Citation
+
+If you need to cite this repository in academic research:
+```txt
+@Online{Forselv2020,
+ author = {Einar Forselv},
+ title = {moderngl-window, a cross-platform windowing/utility library for ModernGL},
+ date = {2020-05-01},
+ publisher = {GitHub},
+ journal = {GitHub repository},
+ howpublished = {\url{https://github.com/moderngl/moderngl-window}},
+ commit = {<insert hash if needed>}
+}
+```
+
+If commit hash is required this can be found per release here:
+https://github.com/moderngl/moderngl-window/releases
+
+
+## Attributions
+
+We can't build everything from scratch. We rely on certain packages
+and resources to make this project possible.
+
+### Windows
+
+* pyglet (https://github.com/pyglet/pyglet)
+* pygame (https://github.com/pygame/pygame)
+* pyGLFW (https://github.com/FlorianRhiem/pyGLFW)
+* PySDL2 (https://github.com/marcusva/py-sdl2)
+* PySide2 (https://wiki.qt.io/Qt_for_Python)
+* PyQt5 (https://www.riverbankcomputing.com/software/pyqt/intro)
+* tkinter (https://github.com/jonwright/pyopengltk)
+
+### Loaders
+
+* Pillow (https://python-pillow.org/)
+* pywavefront (https://github.com/pywavefront/PyWavefront)
+* trimesh (https://github.com/mikedh/trimesh)
+
+### Testing & Utility
+
+* Pyrr (https://github.com/adamlwgriffiths/Pyrr)
+* numpy (https://github.com/numpy/numpy)
+* pytest (https://docs.pytest.org/en/latest/)
+* flake8 (https://gitlab.com/pycqa/flake8)
+* coverage (https://github.com/nedbat/coveragepy)
+* tox (https://tox.readthedocs.io/en/latest/)
+
+## Resources
+
+* NASA 3D Resources (https://github.com/nasa/NASA-3D-Resources)
+* glTF Sample Models (https://github.com/KhronosGroup/glTF-Sample-Models)
+
+## Some History
+
+The majority of the code in this library comes from [demosys-py](https://github.com/Contraz/demosys-py) (somewhat modified).
+Because `demosys-py` is a framework we decided to split out a lot useful functionality into this
+library. Frameworks are a lot less appealing to users and it would be a shame to not make this
+more available to the ModernGL user base.
+ + +%prep +%autosetup -n moderngl-window-2.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-moderngl-window -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Wed Apr 12 2023 Python_Bot <Python_Bot@openeuler.org> - 2.4.3-1 +- Package Spec generated |
