Software components: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 2: | Line 2: | ||
{{Translations}} |
{{Translations}} |
||
==Operating system== |
==Operating system== |
||
* Linux Kernel: Linux 2.6.22; Fedora Core 7 base environment. |
* Linux Kernel: Linux 2.6.22; [http://fedoraproject.org/ Fedora] Core 7 base environment. |
||
⚫ | |||
==Programming environment== |
==Programming environment== |
||
* Python (Version 2.5); |
* [[Python]] (Version 2.5); |
||
⚫ | |||
* Javascript™; |
|||
* CSound, music programming language; |
* [[CSound]], music programming language; |
||
* The Etoys implementation of Squeak using |
* The [[Etoys]] implementation of [[Squeak]] using Smalltalk, an object-based programming language; |
||
⚫ | |||
* |
* [[TurtleArt]] [[Logo]], a graphical programming environment; |
||
* Gnash, a free and open source plug-in for the Adobe Flash™ file format supporting vector and raster graphics, a scripting language called ActionScript™ and streaming of audio and video; |
* Gnash, a free and open source plug-in for the Adobe Flash™ file format supporting vector and raster graphics, a scripting language called ActionScript™ and streaming of audio and video; |
||
* Adobe's Flash Player and Java™ virtual machine can be added via Yum or RPM install but are not part of the standard distribution. |
* Adobe's Flash Player and Java™ virtual machine can be added via Yum or RPM install but are not part of the standard distribution. |
||
===Libraries=== |
===Libraries=== |
||
* Mozilla Gecko/Xulrunner (the Firefox web engine); |
* Mozilla [http://www.mozilla.org/newlayout/ Gecko]/[[Xulrunner]] (the Firefox web engine); |
||
* GUI toolkit (GTK+) (Gnome); |
* GUI toolkit ([http://www.gtk.org/ GTK+]) ([http://www.gnome.org Gnome]); |
||
* Matchbox window manager; |
* [http://projects.o-hand.com/matchbox Matchbox] window manager; |
||
* Pango text layout; |
* [http://www.pango.org/ Pango] text layout; |
||
* Gnome accessibility toolkit (ATK); |
* Gnome accessibility toolkit ([http://developer.gnome.org/projects/gap/ ATK]); |
||
* Python GTK+ bindings version 2.10; |
* Python [[GTK for OLPC | GTK]]+ bindings version 2.10; |
||
* Cairo 2D-graphics support; |
* [http://cairographics.org/ Cairo] 2D-graphics support; |
||
* X Window System X.org Foundation; |
* [http://x.org X Window System] X.org Foundation; |
||
* Font rendering (Freetype); |
* Font rendering ([http://www.freetype.org/ Freetype]); |
||
* Avahi local service discovery; |
* [http://avahi.org/ Avahi] local service discovery; |
||
* Multimedia framework: gstreamer; |
* Multimedia framework: [http://gstreamer.freedesktop.org/ gstreamer] and [http://www.helixcommunity.org RealNetworks]; |
||
* Bitfrost security system |
* [[Bitfrost]] security system; |
||
* Mesh network; |
* Mesh network; |
||
⚫ | |||
Libraries to support all of the above, others can be installed by Yum or RPM. |
Libraries to support all of the above, others can be installed by Yum or RPM. |
||
===User environment=== |
===User environment=== |
||
* Sugar graphical user interface, written in Python, on top of the X Window System and the Matchbox Window Manager. |
* [[Sugar]] graphical user interface, written in Python, on top of the X Window System and the Matchbox Window Manager. |
||
“Zooming” interface to mesh network; |
“Zooming” interface to mesh network; |
||
* Journal interface to file system; |
* [[Journal]] interface to file system; |
||
Flash space available for other software content ~800 mbytes. |
|||
==Applications== |
==Applications== |
||
Line 39: | Line 42: | ||
===Tools for exploring=== |
===Tools for exploring=== |
||
* a web browser built on the Firefox engine; |
* a web browser built on the [[xulrunner | Firefox engine]]; |
||
* a simple document viewer based upon evince (including the ability to view PDF); |
* a simple document viewer based upon [http://www.gnome.org/projects/evince/ evince] (including the ability to view PDF); |
||
* an RSS (“really simple syndication”) reader; |
* an RSS (“really simple syndication”) reader ([http://penguintv.sourceforge.net/ PenguinTV]); |
||
* multimedia playback using gstreamer (the Real Networks Helix™ platform has been ported to the laptop and is available for download but is not part of the base distribution); |
* multimedia playback using gstreamer (the Real Networks Helix™ platform has been ported to the laptop and is available for download but is not part of the base distribution); |
||
* OpenDocument Viewer to read documents in OpenDocument format, a highly-compressed format that is a fully open international standard (ISO 26300); |
* OpenDocument Viewer to read documents in OpenDocument format, a highly-compressed format that is a fully open international standard (ISO 26300); |
||
Line 47: | Line 50: | ||
===Tools for expressing=== |
===Tools for expressing=== |
||
* TamTam, a music synthesis and composition tool; |
* [[TamTam]], a music synthesis and composition tool; |
||
* Etoys (see above); |
* Etoys (see above); |
||
* a word processor based upon the Abiword project; |
* a word processor based upon the Abiword project; |
||
⚫ | |||
* video, audio, and still-image capture and playback (a “video wiki” is under development); |
* video, audio, and still-image capture and playback (a “video wiki” is under development); |
||
* a pixel-paint programming; |
* a pixel-paint programming; |
||
* a journal; |
* a [[OLPC_Human_Interface_Guidelines#Journaling|journal]]; |
||
* a wiki with WYSIWYG editing (under development); |
* a wiki with WYSIWYG editing, using [[Crossmark]] (under development); |
||
* |
* [http://www.vim.org VIM] and NANO text editors. |
||
===Tools for communicating=== |
===Tools for communicating=== |
||
Line 82: | Line 86: | ||
* Simultaneously acts as a mesh point and an infrastructure node. |
* Simultaneously acts as a mesh point and an infrastructure node. |
||
* Standards Compliance: follow 802.11s draft when possible. |
* Standards Compliance: follow 802.11s draft when possible. |
||
==Operating System Components== |
|||
===Linux Kernel=== |
|||
For the main kernel, we are using the Fedora Rawhide version of the Linux kernel, which means that we are tracking the main kernel fairly closely. |
|||
⚫ | |||
==Programming environments== |
|||
*[[Python]] version 2.4 |
|||
⚫ | |||
*[[CSound]], our sound and music environment |
|||
⚫ | |||
===To be determined=== |
|||
*We will have a [[LOGO]] environment, most likely one developed by [http://www.media.mit.edu/~arnans Arnan (Roger) Sipitakiat] that runs on top of Python |
|||
** See [[pyoLogo]] for more information. |
|||
*We may have a open source JVM and/or a Flash VM |
|||
==Applications on B1== |
|||
*a web browser built on [[xulrunner]] |
|||
*a simple document viewer based upon [http://www.gnome.org/projects/evince/ evince] |
|||
*[[TamTam]], a music synthesis tool |
|||
*[[Memory]], a musical memory game written in Csound that exploits the mesh network |
|||
*[[Sugar_EToys|eToys]] (see above) |
|||
*[http://penguintv.sourceforge.net/ PenguinTV] RSS reader |
|||
*[[AbiWord|Abiword]], a word processor |
|||
*a simple application to demonstrate the camera by putting its video onto the screen. |
|||
==Applications (and ports) under development for B2== |
|||
Any of these applications may not be available in time for B2, or necessarily preloaded onto the systems. |
|||
*a [[OLPC_Human_Interface_Guidelines#Journaling|journal]] |
|||
*a wiki with WYSIWYG editing, using [[Crossmark]] as its markup language |
|||
⚫ | |||
*[http://www.vim.org VIM], a text editor |
|||
*[http://helixcommunity.org/ Helix], an open-source multimedia environment |
|||
*other video tools, such as a video wiki |
|||
*an [http://www.springerlink.com/index/U2PAG8MFR651DRCF.pdf image map] tool |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
==Libraries and Plugins== |
|||
*[[Tinymail]] (Possible, still looking for design ideas.) |
|||
*Mozilla [http://www.mozilla.org/newlayout/ Gecko]/Xul |
|||
*GUI toolkit ([http://www.gtk.org/ GTK+]) ([http://www.gnome.org Gnome]) |
|||
*[http://projects.o-hand.com/matchbox Matchbox] window manager |
|||
*[[Sugar]] (UI) RedHat/OLPC/Pentagram |
|||
*[http://www.pango.org/ Pango] text layout |
|||
*Gnome Accessibility toolkit ([http://developer.gnome.org/projects/gap/ ATK]) |
|||
*Python [[GTK for OLPC | GTK]]+ bindings version 2.10 |
|||
*[http://cairographics.org/ Cairo] 2D-graphics support |
|||
*[http://x.org X Window System] X.org Foundation |
|||
*[http://fedoraproject.org/ Fedora] Linux |
|||
*Font rendering ([http://www.freetype.org/ Freetype]) |
|||
*[http://avahi.org/ Avahi] local service discovery |
|||
*Multimedia framework: [http://gstreamer.freedesktop.org/ gstreamer] and [http://www.helixcommunity.org RealNetworks] |
|||
⚫ | |||
== See also: [[Software projects]] == |
== See also: [[Software projects]] == |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
[[Category:Software ideas]] |
[[Category:Software ideas]] |
Revision as of 02:08, 23 August 2007
This page is monitored by the OLPC team.
Operating system
- Linux Kernel: Linux 2.6.22; Fedora Core 7 base environment.
- The OLPC specific bits of the kernel are pulled from the olpc-2.6 GIT tree on dev.laptop.org:http://dev.laptop.org/git.do?p=olpc-2.6;a=summary
Programming environment
- Python (Version 2.5);
- Javascript™;
- CSound, music programming language;
- The Etoys implementation of Squeak using Smalltalk, an object-based programming language;
- Please see Sugar Etoys for a detailed description of the Sugar implementation
- TurtleArt Logo, a graphical programming environment;
- Gnash, a free and open source plug-in for the Adobe Flash™ file format supporting vector and raster graphics, a scripting language called ActionScript™ and streaming of audio and video;
- Adobe's Flash Player and Java™ virtual machine can be added via Yum or RPM install but are not part of the standard distribution.
Libraries
- Mozilla Gecko/Xulrunner (the Firefox web engine);
- GUI toolkit (GTK+) (Gnome);
- Matchbox window manager;
- Pango text layout;
- Gnome accessibility toolkit (ATK);
- Python GTK+ bindings version 2.10;
- Cairo 2D-graphics support;
- X Window System X.org Foundation;
- Font rendering (Freetype);
- Avahi local service discovery;
- Multimedia framework: gstreamer and RealNetworks;
- Bitfrost security system;
- Mesh network;
- Game library: Pygame
Libraries to support all of the above, others can be installed by Yum or RPM.
User environment
- Sugar graphical user interface, written in Python, on top of the X Window System and the Matchbox Window Manager.
“Zooming” interface to mesh network;
- Journal interface to file system;
Flash space available for other software content ~800 mbytes.
Applications
There are three types of activities distributed with the base system: tools for exploring, expressing, and collaborating.
Tools for exploring
- a web browser built on the Firefox engine;
- a simple document viewer based upon evince (including the ability to view PDF);
- an RSS (“really simple syndication”) reader (PenguinTV);
- multimedia playback using gstreamer (the Real Networks Helix™ platform has been ported to the laptop and is available for download but is not part of the base distribution);
- OpenDocument Viewer to read documents in OpenDocument format, a highly-compressed format that is a fully open international standard (ISO 26300);
- The Opera web browser and the Real Networks Helix™ platform have been ported the laptop and are available for download but not part of the standard distribution.
Tools for expressing
- TamTam, a music synthesis and composition tool;
- Etoys (see above);
- a word processor based upon the Abiword project;
- OpenDocument Viewer to read documents in OpenDocument format, a highly-compressed format that is a fully open international standard (ISO 26300)
- video, audio, and still-image capture and playback (a “video wiki” is under development);
- a pixel-paint programming;
- a journal;
- a wiki with WYSIWYG editing, using Crossmark (under development);
- VIM and NANO text editors.
Tools for communicating
- chat and serverless instant messenger;
- a VoIP client (under development);
- Email through the web-based Gmail service;
- Native email client (under development).
Other Tools
- Calculator;
- Spreadsheet (under development);
- a shell and debugger;
- Develop, an activity editor (under development).
Games
- Numerous games, including variations of the “memory game”, strategy games, etc.
All applications share a common data store accessible through the Journal; Most applications, including, reading, writing, recording and browsing, allow for collaboration; through the network: child-to-child and teacher-to-child.
Mesh Networking
- The specifications for the wireless networking interface include:
- Ability to act as a mesh point when laptop's main CPU is off;
- Support for asymmetric links/paths;
- Incremental releases—mesh networking is available immediately on XO; Upgrades will continue to improve functionality and adherence with standards;
- Simultaneously acts as a mesh point and an infrastructure node.
- Standards Compliance: follow 802.11s draft when possible.
See also: Software projects
- OLPCities, a virtual world programming environment
- FACIL, a webpage editor developed to be used by children. (In English at http://wiki.laptop.org/go/EASE)
- Musical Editor, a music composition toolkit
- Drawing Workshop, a shared graphics space
- Tux Paint, a paint program with extreme ease-of-use
- a Tetris-like game that exploits the mesh
- chat, serverless linux instant messenger http://retroshare.sf.net , VOIP, email
- a shell and debugger
- Develop, an activity editor