Active Topics

 



Notices


Reply
Thread Tools
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#1
PyGlet is a cross-platform windowing and multimedia Python library used in developing games and other visually-rich applications, because it give access to : OpenGL (2D & 3D graphics), text and image manipulation, keyboard and mouse events, playing multimedia formats, etc.

PyGlet is written in pure Python and has no external dependencies. But anyway, PyGlet uses OpenGL, and most mobile OS have only OpenGL ES implemented, so Android, iOS, Symbian, etc, don't run PyGlet.

Maemo 5 (Fremantle) OS exceptionally has Mesa packages ('libglu1-mesa' and 'libgl1-mesa-swx11') so it is possible to run PyGlet ! But not all PyGlet examples work due to the differences between desktop OS (Windows, Linux, MacOS) and Maemo 5 OS (a mobile Linux) and the fact that PyGlet wasn't designed to run on mobile OS.

See the PyGlet for Maemo 5 OS site for more details.

'OpenGL.py' example from the 'examples' directory of PyGlet source-code, which runs a rotating torus in 3D space :


Install & use on Maemo 5 :
Enable extras-devel or extras-testing repository, then in the "X terminal" :
$ sudo gainroot
# apt-get update
# apt-get install python-pyglet
PyGlet is optified and takes 6.4 MB after install, while its Mesa dependencies are not optified and use 5.2 MB of root partition.
The PyGlet documentation and examples can also installed by typing '# apt-get install pyglet-doc'. It is optified and uses 10.0 MB after install.
The 'pyglet-doc' examples are located at '/usr/lib/python2.5/site-packages/pyglet-doc/' directory.

One excellent application of PyGlet is SymPy, whose 'Plot()' and 'preview()' functions only work if PyGlet is installed. See the topic SymPy (Computer Algebra System) for Maemo 4 & 5 & 6 or the SymPy for smartphones & tablets site for more details.

If you want PyGlet promoted to extras repository, please vote in :
PyGlet 1.1.4 Maemo2
libglu1-mesa
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2012-02-07 at 22:01. Reason: Fixed 'extras' to 'extras-devel' repository
 

The Following 12 Users Say Thank You to rcolistete For This Useful Post:
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#2
To manually optify the Mesa dependencies, type as root in your X Terminal :

* libglu1-mesa (452 KB) :
# mv /usr/lib/libGLU.so.1.3.070004 /home/opt/usr/lib/
# ln -s /home/opt/usr/lib/libGLU.so.1.3.070004 /usr/lib/

* libgl1-mesa-swx11 (2.336 KB) :
# mv /usr/lib/libGL.so.1.5.070004 /home/opt/usr/lib/
# ln -s /home/opt/usr/lib/libGL.so.1.5.070004 /usr/lib/

* libosmesa6 (3.536 KB) :
# mv /usr/lib/libOSMesa16.so.6.5.3 /home/opt/usr/lib/
# ln -s /home/opt/usr/lib/libOSMesa16.so.6.5.3 /usr/lib/
# mv /usr/lib/libOSMesa32.so.6.5.3 /home/opt/usr/lib/
# ln -s /home/opt/usr/lib/libOSMesa32.so.6.5.3 /usr/lib/
# mv /usr/lib/libOSMesa.so.6.5.3 /home/opt/usr/lib/
# ln -s /home/opt/usr/lib/libOSMesa.so.6.5.3 /usr/lib/

A total of 6.324 KB will be moved from your root (/) partition to your home (@ EMMC).
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.
 

The Following User Says Thank You to rcolistete For This Useful Post:
Posts: 560 | Thanked: 422 times | Joined on Mar 2011
#3
I know there's funny stuff going on with the servers this weekend. The interface says it's in the repositories. However, it's really not (done lots of apt-get update s). FYI moore than anything else. Probably get sroted on Monday (CET).
 
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#4
Originally Posted by demolition View Post
I know there's funny stuff going on with the servers this weekend. The interface says it's in the repositories. However, it's really not (done lots of apt-get update s). FYI moore than anything else. Probably get sroted on Monday (CET).
Yeah, the Maemo servers are not helping us recently. I have had to wait a lot to submit PyGlet and new SymPy packages in the last 2 days.

Try again later.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.
 

The Following User Says Thank You to rcolistete For This Useful Post:
Posts: 560 | Thanked: 422 times | Joined on Mar 2011
#5
Originally Posted by rcolistete View Post
Yeah, the Maemo servers are not helping us recently. I have had to wait a lot to submit PyGlet and new SymPy packages in the last 2 days.

Try again later.
OK. so, python-pyglet_1.1.4-2maemo2_all.deb is in
repository.maemo.org/extras-devel/pool/fremantle/free
in the folder /p/python-pyglet/

The only trouble is FAM/HAM can't "see" the packages*. I'd prefer to use a package manager so the dependencies don't have to be installed manually. As you suggest, try again in a few days...

*packages - I can get other items uploaded at a similar time to show in FAM/HAM. e.g. Fennec 7 and Cue 0.0.4
 
Posts: 77 | Thanked: 76 times | Joined on Feb 2010
#6
apt-get will install dependencies automatically.
 
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#7
Originally Posted by demolition View Post
OK. so, python-pyglet_1.1.4-2maemo2_all.deb is in
repository.maemo.org/extras-devel/pool/fremantle/free
in the folder /p/python-pyglet/

The only trouble is FAM/HAM can't "see" the packages*. I'd prefer to use a package manager so the dependencies don't have to be installed manually. As you suggest, try again in a few days...

*packages - I can get other items uploaded at a similar time to show in FAM/HAM. e.g. Fennec 7 and Cue 0.0.4
Sorry for any misunderstanding, some comments below would be better if explained since 1st post :

a) my suggestion "Try again later" was supposed to mean "try to install using 'apt-get install' later", as this is documented in the 1st post;

b) PyGlet is a Python module to be used by other softwares, so it has no icon and doesn't appear in application manager (because it doesn't use a "user" section);

c) PyGlet depends on Mesa dependencies which are not optified and are in extras-testing repositories;

d) only some examples (and features) of PyGlet (for desktop) work on Maemo 5 OS;

e) due to (c) and (d), PyGlet probably won't be promoted to extras repository, but it is up to you user decide;

f) SymPy Interactive Shell (python-sympy-ui), if listed PyGlet as a dependency (to automatically install SymPy, IPython, PyGlet and Mesa dependencies) would give the (c)-(d) problems to all SymPy users : SymPy Interactive Shell would be limited to extras-testing, 6.4 MB of root space would be used, etc;

g) so, PyGlet is an optional dependence of SymPy (as it is in any desktop OS) and PyGlet installation is manual. If PyGlet and its Mesa dependencies were 100% ok (in extras repository), I could include PyGlet as a dependency of SymPy Interactive Shell so everything would be easily installed;

Think of PyGlet (partially) running in Maemo 5 OS as a gift, an exception because no other mobile OS has PyGlet working.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2012-02-07 at 21:36. Reason: Fixed misspeling
 

The Following User Says Thank You to rcolistete For This Useful Post:
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#8
Originally Posted by rfeese View Post
apt-get will install dependencies automatically.
Yes, a simple 'apt-get install' is all we need.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.
 
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#9
Fixed the installation instructions, 'extras' being replaced by 'extras-devel'.

I have also promoteed PyGlet to extras-testing.

See the end of the 1st post of this topic to vote for promoting PyGlet to extras repository.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2012-02-07 at 22:03.
 
Posts: 482 | Thanked: 550 times | Joined on Oct 2010
#10
Wow. I just started working on a project in Pyglet, searched for Pyglet on Maemo and found that this port was just done! Talk about good timing!
 
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 04:09.