Software components: Difference between revisions
No edit summary |
|||
Line 1: | Line 1: | ||
{{OLPC}} |
|||
==Introduction== |
==Introduction== |
||
This page defines the software environment that will be installed on the OLPC and which application software developers can use. While it is possible for an application developer to add additional software components and libraries, this is not a decision to be taken lightly. The OLPC is constrained by limited memory and storage which means that adding too many frills and features can have a significant negative impact on your own application as well as other applications running on the OLPC. |
This page defines the software environment that will be installed on the OLPC and which application software developers can use. While it is possible for an application developer to add additional software components and libraries, this is not a decision to be taken lightly. The OLPC is constrained by limited memory and storage which means that adding too many frills and features can have a significant negative impact on your own application as well as other applications running on the OLPC. |
Revision as of 22:25, 1 November 2006
Introduction
This page defines the software environment that will be installed on the OLPC and which application software developers can use. While it is possible for an application developer to add additional software components and libraries, this is not a decision to be taken lightly. The OLPC is constrained by limited memory and storage which means that adding too many frills and features can have a significant negative impact on your own application as well as other applications running on the OLPC.
If you add items to the list, please use the Wiki's search function to see if there are pages about it which can be linked.
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. The OLPC specific bits of the Rawhide 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
- initd
- bash version ?.?
- etc
- please fill out this list
Programming environments
- Python version 2.4 or, more likely, version 2.5
- Javascript
- CSound, our sound and music environment
- Squeak / Etoys, a media-rich authoring environment
To be determined
- We will have a LOGO environment, most likely one developed by Arnan (Roger) Sipitakiat that runs on top of Python
- We may have a open source JVM and/or a Flash VM
Applications on B1
- a web browser built on xulrunner
- TamTam, a music synthesis tool
- a simple document viewer based upon evince
Applications (and ports) under development for B2
- a journal
- a wiki with WYSIWYG editing, using crossmark as its markup language
- Abiword, a word processor
- OpenDocument Viewer to read documents in OpenDocument format, a highly-compressed format that is a fully open international standard (ISO 26300)
- VIM, a text editor
- Helix, an open-source multimedia environment
- other video tools, such a video wiki
- an image map tool
- some simple graphics software, perhaps based upon tuxpaint
- chat, VOIP, email
- a shell
- OLPCities, a vrtual world programming environment
Libraries and Plugins
- Tinymail (Possible, still looking for design ideas.)
- Gecko/Xul Mozilla
- GUI toolkit (GTK+) Gnome
- Sugar (UI) RedHat/OLPC/Pentagram
- Pango: text layout Gnome
- Accessibility toolkit (ATK) Gnome
- Python GTK+ bindings version 2.10 Gnome
- Cairo graphics Cairo
- X Window System X.org Foundation
- Linux kernel Linux community
- Font rendering Freetype
- Audio synthesis & server Csound
- Avahi: service discovery Avahi
- Multimedia framework gstreamer/RealNetworks