COMP 3000 2011 Report: Qimo

From Soma-notes
Jump to navigation Jump to search

Part 1

Screenshot

Background

The name of the chosen distribution is Qimo; officially Qimo For Kids. It is a modified version of Ubuntu made especially for kids<ref name="Qimo">“Qimo 4 Kids | Software For Kids,” Qimo 4 Kids, accessed October 16, 2011, http://www.qimo4kids.com/</ref>. The distribution's goal is to be very user friendly, enough to be used by someone as low as 3 years old<ref name="Qimo"></ref>. It's meant to introduce computers to kids and provide educational opportunities through programs and games.

It's made by Michael and Michelle Hall<ref name="Qimo"></ref>. It can be obtained at the Qimo website, http://www.qimo4kids.com. The ISO is over 700 MB in size, and it can run the OS without installation. Installation of the OS takes around 7GB of hard drive space.

Installation/Startup

Using VirtualBox, I created a new virtual machine for Qimo. I gave it enough RAM and Hard drive space to get by. Then I mounted the Qimo ISO for the virtual machine. Starting it then booted the ISO.

Immediately I was first given the option to choose my language. After that I was given many options on how to proceed:

  • Try Qimo without any change to your computer
  • Install Qimo
  • Check disc for defects
  • Test memory
  • Boot from first hard disk
Try Qimo

Clicking the first option brings you to a splash screen of Qimo, and then the loading screen appeared. It was simply a black screen, not very informative (I guess to not confuse kids). Then it loaded up.

This option provided the full version of the OS, however any changes made are not permanent. Creating files or in game progress is lost when shut down.

Installation
Installation

Clicking install brings up the Qimo splash screen. A list of languages given to choose from. It immediately started setting up the clock, and showed a progress bar. It tried to detect my timezone, but did so incorrectly. The time was an hour earlier than it was meant to be. My city wasn't an option for the time zone, so I chose an equivalent one.

I was then given the option to choose a keyboard layout. Following this was the step to prepare the disc space. I could either use the entire disk or create partitions. Then was the creation of user accounts and naming of the computer. I was given the optional advanced option to disable installation of the boot loader and apply a network proxy.

After this was a progress bar indicating how far the installation had proceeded. Above the progress bar was a changing dialog providing the user with information on Qimo, explaining its features and purpose.

After it completed I was prompted to restart. I restarted the virtual machine and it told me to remove the ISO from the disc drive in order to boot the installed version of Qimo. Everything worked very smoothly. It was essentially the same installation as Ubuntu<ref name="Review">“Review of Qimo: Linux for Kids,” MakeTechEasier, accessed October 18, 2011, http://maketecheasier.com/review-of-qimo-linux-for-kids/2010/08/26</ref>.

The entire installation process is very advanced for a child. It was obviously made for the parents to set up the OS for their child.

Basic Operation

At the bottom are very big, childish looking icons. Each one loads a different program intended to help educate the child. The menu button at the top is very small in order for the child not to be interested in clicking on it, since it contains all the regular system applications that come with Ubuntu.

Text Editor

The first program intended for the child to use is a simple text editor. It's very similar to Notepad on Windows, and seems to be to teach the child to type.

gCompris

gCompris

The second program is gCompris, which is a fully-fledged educational game. It teaches the child how to use the keyboard and mouse. It teaches them colours, sounds, develops spatial abilities and memory. It has puzzles and games just for fun. There's games teaching math, including geometry and numbers. It also includes reading activities, and surprisingly teaches them chess. The program runs in full screen and has a very large cursor and icons. Each game has many levels, increasing in difficulty.

Child's Play

Child's Play is a similar game but doesn't have as many features/games. The games are memory based, mouse/keyboard training, and sound association training. It also has billiards and pong included. This game makes you input a username before you play, presumably to store high scores.

Tux Paint

Tux Paint is a simple paint program for Linux, but has very large buttons which makes it easy for children to draw anything they want. It has a lot of brushes and stamps.

Tux Math

Tux Math seems to be for older students and is an arcade game meant to help kids practice their algebra skills. Unlike gCompris (which also has math games), Tux Math allows for multiplayer. Each player takes a turn playing until the game is over.

Tux Type

A game that trains typing skills is Tux Type. Falling words appear and you have to type their letters before they reach the ground. Each word has a theme that you can choose, such as animals, colours or long words.

Laby

Laby is a game for older students. It seems to be an introduction to programming. Each level is a maze and you have to get the ant out of the maze. To do this you type simple function calls like right(), forward(), left(), take() etc. It says that the language it's teaching is python, but it's not obvious. This is the only game that doesn't run in full screen, in fact the window isn't minimized. When it's maximized it is bigger than the screen resolution, so the whole game can't be seen. You can also write your own functions.

Usage Evaluation

I'm not too impressed with this distribution. It's essentially a customized XFCE setup<ref name="Review"></ref>, meaning they didn't innovate that much. Yes, it came preinstalled with a bunch of educational games for kids, but they're easy to install for any distribution. I wasn't that impressed by the 7 large icons at the bottom of screen, as you aren't able to add any new icons to it. It would be nice if all the icons on the desktop were large, not just those 7 (since the desktop is a regular Ubuntu desktop). I liked how all the menu items were small, since those are too complicated for children to use. The small size will prevent them from accidentally changing system settings. These options aren't blocked from the child. It would be nice if there were some sort of parental controls, where things were hidden unless a password was entered. I did like how essentially every preinstalled children's game/program runs in full screen mode. This keeps the child playing and not accidentally clicking outside the game. I also liked how it's not initially obvious how to open an internet browser, as the internet isn't safe place for young children.

Overall it does seem to be very child friendly, however the distribution isn't very innovative. They could have gone the extra mile and added new features, as opposed to simply changing the look of things and hand picking premade programs.<ref name="Review"></ref>

Part 2

Software Packaging

Since Qimo is based off Ubuntu, the two have similar software packaging implementation. Subsequently, Qimo has available all the packages that are available for Ubuntu.

Packaging methods/tools

Software can be packaged either as

  • .deb (Debian Package)
  • .tar.gz (Tarball) files
  • RPMs (Red hat Package Manager) files

Included in the distribution are apt (Advanced Packaging Tool) and the Synaptic Packaging Manager, which allow easy installation of new packages. Apt is console based while the SPM is a GUI for apt.

Through the console and apt you can find out all the installed packages by typing dpkg --get-selections (apt is a front-end for dpkg, which is the software at the base of the Debian packaging system).

Package Filters

Using the SPM you can easily get a nicely formatted list of all the installed packages. The steps are as follows:

  1. Open the Synaptic Packaging Manager
  2. Click on Settings -> Filters
  3. Click on New
  4. Uncheck everything but Installed (see screenshot)
  5. Give the new filter a name
  6. Click OK
  7. In the filters list, click on your new filter

Following these steps a list of all the installed packages will be shown.

Package Installation

Adding/Removing packages

To add packages using apt, simply type apt-get install package-name. The package name is checked against a private database of packages already installed and available to be installed. This list can be updated by typing apt-get update, which refers to the /etc/apt/sources.list file. If the package name can be found, it is downloaded from the internet and installed.

To add packages using the SPM simply open the application and click any desired packages you wish to install and click "Mark for Installation". Once done click apply and the packages will be installed.

To remove packages using apt, simply type apt-get remove package-name. If the package is found then it is uninstalled and removed. To remove packages using SPM, simply select any installed packages and click "Mark for Removal".

Major package versions

While Qimo for Kids is meant to be a very lightweight derivative of Ubuntu, meant solely for kids, it includes very similar packages as Ubuntu. Most of them aren't on the forefront of the distribution (you have to look for them), but they are all installed. Here is a list of some installed packages and: their current version, their upstream URL, vintage (and how far behind it is from the stable release), how heavily the package has been modified by the distributors and potential reasons why the distributors included this package.

Package: Linux Kernel.
Current Version: 2.6.32-21.
Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __

The version of apt-get is 0.7.25.3 Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __

The version of libc installed is 2.11.1. Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __

The GUI foundation is XFCE, the installed version is 4.6.1. Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __

Gtk+, the version installed is 2.20.0 Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __

The bash shell, the version is 4.1.5(1)-release. Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __


The csh shell was not installed.


ls, version 7.4 Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __

ps, version 3.2.8 Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __

busybox, version 1.13.3 Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __

gzip, version 1.3.12 Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __

dpkg, version 1.15.5 Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __


rpm was not installed

Firefox, the version was 3.6.3. Upstream URL: __
Vintage: __
Modifications: __
Inclusion: __


There was no email manager installed. --- upstream source (URL of original source)

What is the vintage of the included package? How old is it, and how far is it behind the latest stable release for this package?

How heavily has the package been modified by the distribution authors? (You'll need to figure out how to determine this.)

Why do you think this particular package was chosen for this distribution's standard install? You may speculate, but please make an argument informed by relevant facts.

Initialization

Here describe how your distribution initializes itself. Specifically, give an outline of what programs are executed and in what order. Also document how you discovered this information. You do not need to include every program; however, you should be able to identify at least five major programs that are run. Note that you should provide an explanation for how all of the major processes end up running on a fully initialized system.

Part 3

Stay tuned...

References

<references/>