Software components: Difference between revisions

From OLPC
Jump to navigation Jump to search
m (Reverted edits by My password is OLPC (Talk); changed back to last version by 75.170.34.229)
(Removing all content from page)
Line 1: Line 1:
{{OLPC}}
{{Translations}}
{{TOCright}}
:'''''See [[Activities]] for downloadable software.'''''
[[Software]] has some general discussion.

==Operating system==
* Linux Kernel: Linux 2.6.22; [http://fedoraproject.org/ Fedora] 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?p=olpc-2.6)

==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
* [[Turtle Art]], 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 [http://www.mozilla.org/newlayout/ Gecko]/[[Xulrunner]] (the Firefox web engine);
* GUI toolkit ([http://www.gtk.org/ GTK+]) ([http://www.gnome.org Gnome]);
* [http://projects.o-hand.com/matchbox Matchbox] window manager;
* [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;
* Font rendering ([http://www.freetype.org/ Freetype]);
* [http://telepathy.freedesktop.org/ Telepathy] real-time communications framework;
* [http://avahi.org/ Avahi] local service discovery;
* Multimedia framework: [[GStreamer]] and [http://www.helixcommunity.org 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 MiB.

==Applications==
There are three types of activities distributed with the base system: tools for exploring, expressing, and collaborating. A matrix of applications that have been (or are being) built for the laptop can be found [[Activities|here]].

===Tools for exploring===
* a [[Browse|web browser]] built on the [[xulrunner | Firefox engine]];
* a simple [[Read|document viewer]] based upon [http://www.gnome.org/projects/evince/ evince] (including the ability to view PDF);
* [[News 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);
* 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 media activity|Helix™]] platform have been ported to the laptop and are available for download but not part of the standard distribution.
* [[Measure]], a tool for exploring the physical world by measuring DC and AC voltages, observing them on a oscilloscope-like interface, being able to watch waveforms in frequency domain (spectrum analyzer), logging data at a specified time interval, and drawing the graph of logged data.

===Tools for expressing===
* [[TamTam]], a music synthesis and composition tool;
* Etoys (see above);
* a [[Write|word processor]] based upon the [[Abiword]] project;
* [[Record]] video, audio, and still-image capture and playback (a “video wiki” is under development);
* [[Draw]], a pixel-paint programming;
* a [[OLPC_Human_Interface_Guidelines#Journaling|journal]];
* [[MikMik]], a wiki with WYSIWYG editing, using [[Crossmark]] (under development);
* [http://www.vim.org VIM] and NANO text editors.

===Tools for communicating===
* [[Chat]] and serverless instant messenger;
* [[Video Chat]] (under development);
* 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);
* [http://foss.sit.rp.sg/main Remote Desktop], a tool to remotely control XO laptop;

===Games===
* Numerous games, including variations of the “memory game”, strategy games, etc.

See the games list on the activities download page [[Activities#Games]]

===Shared Applications===
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. See [[Activity Sharing]] and [[Shared Sugar Activities]] and [[Tubes Tutorial]].

==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.

== Additional [[Software projects]] ==
* [[Measure_/_Oscilloscope]]
* [[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
* [[BlockParty]], 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

==See also==
* [[Software|Software overview]]
** [[Software/Goals|Software goals]]
** [[OLPC on open source software]]
** [[Our_software|Software FAQ]]
** [[Software ideas]]
** [[Documentation]]
* [[OLPC Human Interface Guidelines]]
** [[Sugar]]
** [[Activities]]
** [[542_Demo_Notes|Demo notes]]
* [[Developers program]]
** [[Autoreinstallation_image|Updating your software image]]
** [[Customizing NAND images]]
*** [[Localization]]
*** [[Python_i18n]]
** [[OS_images_for_emulation|Using an emulator]]
** [[Hacking Sugar]]
*** [[Sugar Architecture]]
*** [[Sugar_with_sugar-jhbuild|Building the Sugar environment]]
*** [[Sugar on Fedora_7]]
*** [[Activity Sharing]]
*** [[Shared Sugar Activities]]
*** [[Tubes Tutorial]]
*** [[Low-level Activity API]]
** [[Ejabberd Configuration|Running your own XMPP server]]
** [http://dev.laptop.org Bug reporting/tracking]
** [[Test issues]]
*** [[Test Group Release Notes]]
*** [[Test_Config_Notes#OLPC_Update|Updating to test configurations]]
** [[:Category:API|Sugar-specific APIs]]
* [[School server]]
** [[XS Server Software]]
** [[XS Installing Software]]

[[Category:Software ideas]]
[[Category:Resources]]
[[Category:Software]]
[[Category:Sugar]]

Revision as of 18:43, 26 November 2007