Software components: Difference between revisions

From OLPC
Jump to navigation Jump to search
(Removing all content from page)
m (Reverted edits by My password is word (Talk); changed back to last version by Sj)
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:49, 26 November 2007

  This page is monitored by the OLPC team.
  english | españolitaliano日本語한국어 HowTo [ID# 80718]  +/-  
See Activities for downloadable software.

Software has some general discussion.

Operating system

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

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

Tools for exploring

  • a web browser built on the Firefox engine;
  • a simple document viewer based upon evince (including the ability to view PDF);
  • News Reader, 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 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 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 journal;
  • MikMik, a wiki with WYSIWYG editing, using Crossmark (under development);
  • 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);
  • 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

See also