Release notes/623

From OLPC
< Release notes
Revision as of 13:48, 28 October 2007 by Walter (talk | contribs) ([http://wiki.laptop.org/go/Browse Web Browsing]: reformatting as bulletted list)
Jump to: navigation, search
  This page is monitored by the OLPC team.


OLPC Trial-3 Software Release Notes

This page details the current stable software image. Important changes are noted below. This image is "late beta-test" software; there is much you can now do with the laptop out of the box (See 542 Demo Notes and 608 Demo Notes). General – somewhat outdated – instructions on how to use the Sugar interface can be found here. Also of note are the Trial-2 Release Notes. These latter pages detail issues with particular versions of the hardware. The Library Release Notes page has information about the early stages of our sample content library. Finally, the OLPC Human Interface Guidelines describe our vision of where we are heading, only partially reflected in our current software.

The software is just maturing to the point where we can embark upon later-stage trials for feedback and polish. Please review the #Notes below and please report any new bugs to our trac system (See http://dev.laptop.org).

Overview

Most of the first-generation vision for our system is now present and working:

  • The Journal
  • Presence service
  • Easy real-time collaboration in many of our activities including:
    • Read, Write, Chat, Browse, Record, EToys, TamTam Jam, Memorize, Connect, Calculate, and Measure
  • Mesh networking
    • Automatic configuration of ad-hoc meshes, allowing collaboration without any infrastructure or Internet access
    • Automatic configuration of school server mesh
  • Anti-theft activation on installation
  • Registration with a school server
  • Backup to the school server

The software has been rebased onto Fedora Core 7 and Python 2.5.

Remaining tasks:

  • Bug fixes for first deployment

Important notes

At this time, we do not recommend installing the Trial-3 software on B2 systems due to excessive RAM and CPU usage.

Stable builds

The release notes on this page apply to the latest stable software release: 13.2.11 || 2020-01-29. We recommend that you follow the instructions found on the Autoreinstallation image page to upgrade to this image. If you are already at build 612 or higher, you can upgrade using the olpc-update 6xx command from a virtual terminal. (Information regarding the latest development builds – non-stable builds – can be found here: Test_Group_Release_Notes.)

USB Update key needed to upgrade systems in the field#1748
Note that the Autoreinstallation image has latent support for preserving the user files on the system in the olpc.fth file. The USB key must be large enough to hold both the image to be installed and any and all files the user may have created in /home/OLPC.


Base-system notes

The system is now based on Fedora Core 7, and OLPC's kernel is based on Linux 2.6.22.

Suspend/resume and power management

Suspend/Resume#60
Note that a number of the bugs in the tracker bug are likely duplicates. Suspend and resume using the power button currently wakes up for various types of wireless LAN traffic.

Placeholder for suspend/resume bugs

Other

New Features:

Demo notes of new features

Private invitation:

  1. Start an activity (such as Write);
  2. From either the Neighborhood (Mesh) view or the Friends view, find someone with whom to share;
  3. Hover over the XO icon of the invitee and click on 'Invite' (This sends an invitation to participate in your current activity);
  4. The invitation will appear as an icon in your colors on the taskbar tray of the invitee's laptop;
  5. This activity is started by clicking on it (in the usual manner of all activities), but it starts up as a shared activity.

Sharing a bookmark in Browse:

  1. Open the browser;
  2. Share the activity either by issuing a private invitation as per above or by selecting 'share with neighborhood' from the menu under the Activity tab;
  3. Go to a URL of interest;
  4. From the Browse tab, click on the star in the upper right of the toolbar (This will create a bookmark that appears in a tray at the bottom of the activity window on each laptop that is sharing the activity);

Open Issues

  • Network connectivity
    • An XO that is acting as an MPP (mesh portal point) cannot participate in local mesh collaboration. There has been almost no testing for an XO acting as an MPP.
    • To connect to a WEP enabled AP, you need to add '$:' in front of a hex key.
    • Some activities share well in link-local; but don't share properly over the internet using the Jabber server. Activities that don't share well across the internet (G1G1) include Record photos and video (audio?), book reader, eToys, large files in Abiword may cause the activity to stop sharing.
  • Connect to an Airport Extreme access point with a WEP key.
    • You need to follow these steps when you login in the Airport configuration utility:
    1. Choose a network security level of 40-bit or 128-bit WEP.
    2. Set any password(you may tick the plain text option) and Update.
    3. After the update login again and note the HEX password in the summary view.
    • On the XO neighborhood view click the access point.
    1. In the security popup type $:XXXXX, where XXXXX is the HEX password.
    2. Choose the Shared Key option.
    • If the AP changes or removes its WEP key, the XO will not realize it directly. You will need to
    1. Remove /home/olpc/.sugar/default/nm/networks.cfg
    2. Reboot
  • Save photos
    • Record has changed a lot, and as a result, old entries cannot be opened on the new build
    • Follow these steps to save photos; unfortunately, videos will be lost.
    1. Drag photos from record onto the clipboard.
    2. Scroll over the clipboard images, and select "add to journal"
  • Sharing an abiword document works well for text, but if you add too many images (large docs) don't share properly.


  • Journal
    • Items won't show up in the 'Anything' search until after the next reboot.
    • 'This week' in the 'Anytime' search isn't working properly. #4097


  • Sugar
    • The battery indicator on the home sugar page only updates when the power adapter is plugged in or removed. #2861
    • If the network neighborhood mesh view stops showing other laptops or access points, reboot sugar with CTL-ALT-ERASE


Transporting photos, audio, and video from Record to USB sticks (Clipboard objects don't work)

  1. Drag media to the clipboard
  2. The files will be automatically added to the journal (named Audio by {XO_name}, Video by {XO_name}, and Photo by {XO_name}
  3. Drag these files from the journal to the USB stick, and any other laptop will be able to see and open them.
    • If you add the clipboard objects to the journal, they will not save correctly.
    • These objects will be able to be opened with different activities, but if you transfer them to a USB, you will not see them.
    • Changing the names of the items in the journal will force them to create correct names and file extensions.
    • After changing the name, drag the item from the journal to the USB stick.
    • Now, a non-XO laptop will be able to see and open the items on the USB stick.


IMPORTANT (unless we are going to have people install the rpm's to use olpc-update instead of doing the upgrade with a USB stick)

  • You must have the laptop plugged in with the AC adapter to upgrade firmware. Otherwise you will get a failure message; and you may need to boot on the backup image (holding down the gamekey O while booting) to try the upgrade again.
  • Update to latest firmware before updating to latest image.
    • The new firmware (Q2C28 and later) will check that the image is not corrupt before installing it, whereas the old firmware will wipe the nand and then run into trouble trying to install the new image.
    • Basically, using the new firmware will keep you safe from possibly losing your data due to a corrupt image.


Note that for long term storage, removing the battery pack after a full charge is best practice; this is true for all battery powered devices.

RestrictedFormats
In some jurisdictions, patents on algorithms apply, and royalty payments may be required. Examples include MP3, and MPEG-4. This is a particular nuisance for media players, for which many of the common codecs algorithms are patented. In other jurisdictions, software patents do not apply and there are usually freely available implementations for these algorithms available. Sometimes, as in Adobe Flash, or the Real Helix player there are free (as in beer) implementations available, where those corporations have paid these patent royalties and made usually (binary) versions of codecs available. This has direct consequences as OLPC does not want to burden all machines with what may be unnecessary duplicate patent royalties: OLPC must therefore leave the customization of the distribution for these formats for "in country". For jurisdictions in which such patent laws apply, there are now solutions such as those sold by Fluendo to these issues. The Flash format (whether Adobe's Flash 9 or Gnash) illustrates this problem well; even though we can include gnash, as built it does not have support for MP3 or MPEG-4, which should work correctly if Gnash is rebuilt.
fontconfig cache is invalidated too easily on mtime check
Applications can take a very long time to start, due to a fontconfig caching bug provoked by the time being set incorrectly (which can happen easily if the battery is replaced or the time is set badly). To work around this problem, use the "date" command from a console to set the current time and date.

X Window System

X Window System open issues
specific to OLPC are found in trac.

User Interface: Sugar

Shutdown
to shutdown completely, hover over the XO in the home view and click on 'Shutdown'. This is a graceful shutdown, preferred to holding the power button for more than 4 seconds, which summarily resets the machine.
Suspend
Momentarily press the power button.
Screen Capture
Alt-1 does a screen capture and stores the result in the Journal.
USB Keys
USB keys are automatically mounted and their contents are viewable from within the Journal. Files can be dragged from the Journal or Clipboard onto the USB key from within the Journal. (USB file systems are still accessible from console and the developer's console through the standard Linux mechanisms.)

Many of the user interface issues we intend to fix. Among the most notable issues are:

New networking UI needs documentation#989
To choose a network, push the first of the four circular "mesh view" keyboard buttons (or "F1" in an emulator), hover over each triangle until you find the access point you want to associate with, and then click on it. (Note that the access points are color-coded based upon a hash of the AP SSID. Therefore, once you learn the color of your desired access point, you can subsequently find it quickly.) You may be prompted for an access point's password.
Network Autoconfiguration
an XO will now autoconfigure the network. If no school server mesh, or previously connected Infrastructure Access Point can be found, an ad-hoc mesh will be formed using private networks. It will also associate with conventional access points using WEP or WPA. If it associates via WEP or WPA, the mesh portal functions cannot work, however.
Clipboard interaction (on the Frame)
is not fully developed in all activities. Some activities can copy and paste (using Ctrl-C and Ctrl-V) or drag to and from the clipboard, but some do not.
Groups
are not yet exposed in the interface. Sharing, chat, etc. are only supported at the mesh level (open to everyone on the mesh).

Presence Service

PS open issues
can be found in trac
Connections
Telepathy connections are supported via the school server - a jabber XMPP server with some particular required features - as well as over the mesh network using Link Local XMPP.
Default Server
Build 542 no longer registers automatically with olpc.collabora.co.uk as the server, so registration is required before other XOs can be seen via the server.
Server Connections
Activity icons appearing in the mesh should disappear when everybody leaves that (shared) activity. However if the PS fails to announce somebody leaving (for example quitting the jhbuild emulator with alt-Q while in the activity#2616), then the icon remains on the mesh view#1935.

Activities

Many activities are under development and they can be found with their status in the wiki while the Activity Grid has the status of all of the activities that have systematic testing.

Web Browsing

The Xulrunner based brower uses the scaling engine from Firefox 1.9. Starting in build 303, this greatly improves browser behavior and font and image sizes more likely to be acceptable. Later builds improve yet further. With our high resolution screen, we have had to go "first" in innovation in web browser technology. Performance work still needs to be done, particularly to speed scaling of images. Google Maps and Google Talk now both work well. Please let us know (by filing a trac bug report) when you find web sites with formatting problems.

  • Plug-ins should be installed in the directory /usr/lib/mozilla/plugins.
  • The current version ship with an free version of Flash, called gnash; it has improved substantially from Trial-1. Adobe's Flash plug in works fine, which many may find preferable until gnash matures further. As noted in RestrictedFormats, we cannot distribute gnash with patented codecs, though gnash can be rebuilt to support a wide range of datatypes.
  • The web browser does not ship with Java plug-in. Sun's Java and web browser plug-in work fine.
  • The web browser has no tabs, no zoom (yet), no provision for ebook mode (yet).
  • User experience has problems with pop windows, Frame interfering with scrolling.
  • View source is invoked by typing either CTRL-U or FN-Space (FN-Gear-key). The page source is displayed in the Write activity—where it can be edited—and saved as a Journal entry. The Journal entry cannot be resumed in either Browse or Write (this is a regression that will be fixed in a later build). It can be copied from the Journal to the clipboard (but cannot be dragged into Write—another regression).

Calculate

A simple calculator activity contributed by Mauro Torres et al. of the Tuquito Linux project in Argentina was replaced by a completely unexpected, more functional Calc activity written by Reinier Heeres at Harvard in build 385. Our thanks to both Mauro and Reinier for their efforts.

Chat

Chat open issues
can be found in trac

Chat has been restored to our builds. It now uses the Presence Service, so instead of a global chatroom, if you start Chat from the frame it will create its own room for you. When others join in the Neighbourhood view, the activity shows who has joined or left, and if you join it will display those who are already in the chat room.

Developer Console

The developer console provides a set of tabs in a popup window on top of activities. It is launched by typing Alt-=.

The XO Resources tab shows basic information about the system, the recent CPU usage and flash usage

The Memphis tab returns information about executing processes. Memphis)

The Log Viewer tab allows exploration of many key system logs.

The Terminal tab provides a terminal emulator and shell.

The Presence tab provides logs of the presence service in raw form (the mesh view is a graphical interpretation of these logs), to aid in debugging one of our key new services.

Drawing Activity

Paint (Oficina) Issues
can be found in the trac system.

The application is fully written in Python, using only GTK features. It is being developed at LSI-USP in Brazil.

Etoys

The Etoys learning environment has been integrated into the Sugar environment, and you are encouraged to visit the Squeakland site. Sugar Etoys has information specific to Etoys in our Sugar environment.

Journal and Datastore

Note that removable media support is now present. When a USB key is inserted, Sugar will now automatically mount the USB stick and put an icon on the bottom of the journal; if you click on the icon, the journal on the USB stick will be shown. You can also unmount the stick using that icon by using the pop-up menu.

On an external device, the file name bears some resemblance of the name that may have been given to the journal entry, so you should be able to take a FAT formatted USB stick from an OLPC and mount it on Linux, Windows or MacIntosh to interchange files; on the JFFS2 file system right now it is simply a numeric has, which is arguably unfriendly.

The journal uses the underlying Datastore facility which is new; its issues are in our trac system. Note that it indexes all information on an external device; this issue:

Datastore should check versions and recreate indexes automatically#2627
has caused some trouble during its development, which we hope to prevent in the future.
Journal issues
can be found in our trac system.

Newsreader

Based on PenguinTV. A few RSS feeds of educational interest have been preprogrammed as examples:

  • Astronomy Picture of the Day
  • BBC News
  • EPOD - Earth Science Picture of the Day
  • Merriam-Webster's Word of the Day
  • Planet OLPC

Other feeds can easily be added/substituted.

Record

The primary record (still- and video-camera) activity is written by Erik Blankinship and Bakhtiar Mikhak. (The Etoys activity includes support for the camera.)

Both the Record activity and Etoys can be used for playback; a version of Helix and a gstreamer player (roughly modeled on Totem) are available for Trial-2.

Read (aka xbook)

File viewer through the browser, or as a sugar activity. The PDF format view is brought to you by the poppler library and Cairo graphics library.

The xbook application has latent provision for ebook mode, awaiting a couple key bug fixes.

TamTam

The TamTam Release Notes
are available.

Turtle Art

Turtle Art is a logo-like application that draws colorful art via a turtle and scratch-like visual programming elements that snap together in compilable ways.

Integration with the journal is not complete at this time, and users are wise to show children how to save their work.

Watch and Listen

Videos and DVD's can be played back on the system, including RealNetwork formats. A Sugar version of Real's Helix player is available and installed; only Ogg format media is in the base install for the reasons outlined in [RestrictedFormats]. Please see the Helix Media Activity release notes for further details. A browser plug-in version for media playback is expected soon.

Note that it is likely there will be no icon for this activity in future versions, media playing being started by journal or browser activity.

Write

Write activity issues
can be found in trac.

The Write activity is based on AbiWord. This activity is fully integrated in the Sugar environment, and provides an efficient, light weight text editor. It has support for reading various documents formats, such as Microsoft Word (.doc, .rtf), OpenDocument (.odt), (X)HTML (.html), and plain text (.txt). The core of this activity might be used for editing text in the wiki as well.

Games

Blockparty

A famous, simple game of falling blocks, often known as Tetris. Contributed by Vadim Gerasimov.

Connect

A version of Connect-4. Supports network play, and is useful as an example of how to use Sugar's collaboration facilities.

Note that Connect requires two players to function - the game cannot be played until you share it and another player joins. At this time there is no support for starting a new game once somebody wins - that will be a Trial 3 feature.

Temporary placeholders and Missing Pieces

There is no user interface for controlling the audio input and mixing. The workaround right now is to use "alsamixer" in a terminal window. Speaker volume is controllable by the slider. There is currently no visual feedback for changing the volume.

Our plans include a web server and wiki system MikMik, using an WYSIWYG editor based on the write activity (currently Abiword). This has a collaborative write capability we exploit.

Backlight control

The backlight can be controlled using F9 (dimmer) and F10 (brighter); With the backlight completely off, there is no color, and hardware anti-aliasing for the color screen is disabled. Likewise, volume is controlled by F11 (quieter) and F12 (louder).

Brightness-volume.png

School Server Notes

The school server software is not quite ready.

Laptop Registration

To register with a school server, you execute the command olpc-register from a command line in the developer console. This establishes the relationship of the laptop with the school server (named "schoolserver" in the local DNS domain). It also establishes a jabber server used by the presence service of the laptop. This should have a UI by Trial-3.

Laptop Backup to server

In the Journal, there is a Backup tab; you select that tab, and if your laptop is registered, it will backup to the school server.

OLPC Platform

Inventory of "permanent" packages

Inventory of "debug" packages

Inventory of "optional" packages (?)

Development environment

Languages - Logo, javascript, Python

Libraries

Where to find source

Many of the OLPC activities, kernel, and other software are in our git repository.

Internationalization/Localization (see Category:Language support & Category:Languages (international))

Other Multimedia Software

Other software that has been tested on the OLPC systems includes Adobe Flash, and Real's RealPlayer® and Sun's Java.

Finding the Latest Test Builds

Development and stable builds can be downloaded. Boot firmware is kept in this wiki. The latest stable firmware and system image combined into an easy to use package with a script to automate installation of the firmware and base image makes upgrades to the latest stable software extremely easy.

Enabling logging

Activity logging is now turned off by default. To turn on logs:

  1. edit ~/.xinitrc and uncomment the line that imports .sugar.debug (It is the second last line of the file and there are commented instructions over it in the file itself)
  2. in ~/.sugar.debug, add these lines -


export JOURNAL_DEBUG=yes (to enable Journal Logs)

export SHELL_DEBUG=yes (to enable Shell Logs)

export ACTIVITYNAME_DEBUG=yes (to enable activity Logs where ACTIVITYNAME is that given in activity.info file)

export SUGAR_EMULATOR=yes (this shows me logs of all activities without having to enable logging for each activity)