Software/lang-ja
- This is an on-going translation
Overview
A matrix of applications that have been (or are being) built for the laptop can be found here.
OLPC software is a set of carefully chosen and integrated Linux applications, creating an innovative user environment.
Basically, the laptop runs Red Hat's Fedora Linux Core 7; On top of the X Window System and the Matchbox window manager, we run a novel Sugar user interface and support library, supporting a core set of "activities". Activities are programs that follow the OLPC Human Interface Guidelines. There is an emphasis on Python and GTK. Other Linux software can be run too, but having a common and enabling user interface is nice; requiring additional libraries (KDE, java runtime, whatever) is in tension with disk and memory limits.
In regard to OLPC software, you can:
- Get an overview:
- Play - there are a couple of options:
- Burn a LiveCd. This is likely simplest.
- Run an OS image in emulation. This doesn't require burning a cd and rebooting, but may require installing software, and may run slowly.
- Create software
- Getting involved in OLPC; Getting started programming
- Software components, projects, and ideas.
- Take a look at the several software article categories at the bottom of this article.
- ...
- Document OLPC python code
- If you are comfortable reading python and writing documentation, much new code is in need of doc strings, tutorials, etc. (sugar, geckoembed, ...what else?)
- Help improve software for the upcoming TRIAL-2
- Hardcore bug hunt
- Release roadmap
- Test meeting Minutes
- http://dev.laptop.org/query
- Help upstream projects (see Getting involved in OLPC).
- Kernel Hacking
Some Details
(This section needs to be updated)
There are four flavors of software:
- "Activities", written or ported to the Sugar user interface, and following OLPC interface. Some activities are listed in software components and software projects. They main languages are python and C. The standard libraries are listed in software components.
- Code written for a programmable activity, such as squeak and its etoys, OLPCities(?), javascript(?), ...(?).
- Linux software using the standard libraries listed in software components.
- Any other linux software. Memory and disk space are constrained (256MB,1GB), so requiring additional libraries makes this a less attractive option.
BTest Software
- The BTest-1 Release Notes and BTest-2 Release Notes are required reading for anyone with BTest Hardware and Software
- The OLPC Software Release Notes are also required reading.
- BTest-1 Demo Notes describes some of the software on the BTest systems
- All BTest systems should be upgraded to current software and firmware before use, since many problems have already been resolved since the machines were manufactured
- Firmware releases are stored here.
- The latest build is always here.
- Instructions regarding the use of emulation images
- User Feedback on Images
- Programming environments we will be supporting
- Applications to be included on B1
- Applications to be included on B2
- Libraries we are using
- Development issues and Sample Applications
Misc
Some content to integrate
This text went by on boston-pig, from doug. It should be integrated above.
The project needs help on just about every level. There are open tickets at http://dev.laptop.org/ for documentation, translation, python programming, c kernel programming, UI work, and of course bugs. There is a special section of bugs for people who are not familiar with the system but want to help out: http://dev.laptop.org/query?status=new&keywords=%7Esugar-love&order=priority
These are bugs in sugar which are already triaged which good instructions on how to fix them in most cases and can be fixed with the LiveCD.
The CD's that were available are the LiveCD from here: http://wiki.laptop.org/go/LiveCd in case you didn't get one.
There are other ways to check out the XO and do development but the LiveCD is the easiest. Here is a good link for other forms of emulation: http://wiki.laptop.org/go/Software
Because Sugar (the core interface) is GTK+ python based, you can run it and do development for it anywhere those packages are available (Mac, Linux, win32). Linux is the easiest and best documented.
http://wiki.laptop.org/go/Sugar http://wiki.laptop.org/go/Sugar_Instructions http://www.redhatmagazine.com/2007/02/23/building-the-xo-introducing-sugar/