OLE Nepal/Deployment guide: Difference between revisions

From OLPC
Jump to navigation Jump to search
Line 176: Line 176:
# Test all components of the XO by typing "test-all" at forth.
# Test all components of the XO by typing "test-all" at forth.
# Test individual component of the XO with "test <device-name>" at forth.
# Test individual component of the XO with "test <device-name>" at forth.
We will show the teachers how to perform basic maintenance and give periodic short courses to the students on laptop
<nowiki>We will show the teachers how to perform basic maintenance and give periodic short courses to the students on laptop
maintenance. Rather create a fully structured maintenance plan, we want to see who at the school shows the most affinity for
maintenance. Rather create a fully structured maintenance plan, we want to see who at the school shows the most affinity for
laptop maintenance, students or teachers. We don't want to arbitrarily select local people to do the maintenance until we get a
laptop maintenance, students or teachers. We don't want to arbitrarily select local people to do the maintenance until we get a
sense of who has an interest and talent for it. In short, we are putting People before Process.
sense of who has an interest and talent for it. In short, we are putting People before Process.</nowiki>





Revision as of 10:05, 20 October 2008

LOGISTICS

  1. If possible, count the number of XO's at the airport and note any physical damage
  2. Transport XO's to storage area
  3. Write the serial number with a marker at the underside of the XO. The serial number can be found after removing the battery. (e.g SHF8060099D)
  4. Assign a label to the XO (e.g OLEN.XO.1).Inventory the XO's in a spreadsheet. The spreadsheet should record the XO's serial number, its Label number, whether it shows any physical damage, or won't boot.
    • You can use a marker and a tape to stick the label at the front of the XO.
    • The label is best put in the green cover on top of the screen, between the two antennas.
  5. Laptops should be kept systematically with a certain range of XO's in a certain shelf. (e.g OLEN.XO.1 - OLEN.XO.10 should be kept in the same shelf)
  6. Activate all laptops. (http://wiki.laptop.org/go/Activation_and_Developer_Keys#Getting_devkey_data_via_USB_stick)
  7. Power up a laptop and hit the ESC key. At the OK prompt, type "test-all". This will test all components of the laptop.
  8. If there is a bad component write that the laptop is bad and the name of the bad component beside the label using a red marker and a piece of tape.
  9. At the OK prompt, type "change-tag LO ne_NP.UTF-8" to change the locale to Nepali.

Update firmware/ Install image

  1. To update firmware type "flash u:\XXXX" where XXXX is the filename including the extension of the firmware.
  2. This will erase all the files currently stored in your XO. To install the image, put the customized image (osXXX.img) and the crc file (osXXX.crc) at the root of the USB key.
  3. Plug in the USB key and when in forth, type "copy-nand flash u:\osXXX.img". The process will be over in a couple of minutes.

Basic customization

  • To change the Default Jabber Server change the value of DEFAULT_JABBER_SERVER in /usr/lib/python2.5/site-packages/sugar/profile.py

Use Traditional Nepali unicode in your XO

To change the keyboard setting so that you can type in both English and Nepali. Here's what I did: --Pradosh 10:44, 17 October 2008 (UTC)

  • sudo vi /etc/sysconfig/keyboard
  • change
  XKB_MODEL="olpc"
  XKB_LAYOUT="us"
  XKB_VARIANT="olpc"
  KEYTABLE="us"

to

  XKB_MODEL="olpc"
  XKB_LAYOUT="us,np"
  XKB_VARIANT="olpc2,olpc"
  KEYTABLE="us"
  • You can now change the the language in which you type with the multiplication/divide button
  • To change the keyboard layout to Nepali Traditional type "sudo vi /usr/share/X11/xkb/symbols/np"
  • Change the file to
 // $XKeyboardConfig: xkeyboard-config/symbols/np,v 1.3 2007-11-21 22:53:38 svu Exp $
 // based on a keyboard map from an 'xkb/symbols/dev' file
 // $XFree86: xc/programs/xkbcomp/symbols/pc/dev,v 1.2 2002/11/22 04:03:28 dawes Exp $
 partial default alphanumeric_keys 
 xkb_symbols "basic" {
     name[Group1]= "Nepal";
 // `,1,2,3,4,5,6,7,8,9,0,-,=
     key <TLDE> { [      0x100093D,0x100093C ]	};
     key <AE01> { [      0x1000967	 		]	};
     key <AE02> { [      0x1000968			]	};
     key <AE03> { [      0x1000969 	 		]	};
     key <AE04> { [      0x100096A  	 		]	};
     key <AE05> { [      0x100096B  	 		]	};
     key <AE06> { [      0x100096C  	 		]	};
     key <AE07> { [      0x100096D                     ]	};
     key <AE08> { [      0x100096e  	 		]	};
     key <AE09> { [      0x100096F	 		]	};
     key <AE10> { [      0x1000966,0x1000970		]	};
     key <AE11> { [      minus, 0x1000952 		]	};
     key <AE12> { [      equal, 0x100200C 		]	};
 // q,w,e,r,t,y,u,i,o,p,[,]
     key <AD01> { [      0x100091F,  0x1000920       	]	};
     key <AD02> { [      0x100094C,  0x1000914       	]	};
     key <AD03> { [      0x1000947,  0x1000948       	]	};
     key <AD04> { [      0x1000930,  0x1000943       	]	};
     key <AD05> { [      0x1000924,  0x1000925       	]	};
     key <AD06> { [      0x100092F,  0x100091E 	]	};
     key <AD07> { [      0x1000941,  0x1000942 	]	};
     key <AD08> { [      0x100093F,  0x1000940 	]	};
     key <AD09> { [      0x100094B,  0x1000913		]	};
     key <AD10> { [      0x100092A,  0x100092B 	]	};
     key <AD11> { [      0x1000907,  0x1000908		]	};
     key <AD12> { [      0x100090F,  0x1000910		]	};
 // a,s,d,f,g,h,j,k,l,;,',Backslash 
     key <AC01> { [      0x100093E,  0x1000906       	]	};
     key <AC02> { [      0x1000938,  0x1000936       	]	};
     key <AC03> { [      0x1000926,  0x1000927       	]	};
     key <AC04> { [      0x1000909,  0x100090A       	]	};
     key <AC05> { [      0x1000917,  0x1000918       	]	};
     key <AC06> { [      0x1000939,  0x1000905 	]	};
     key <AC07> { [      0x100091C,  0x100091D 	]	};
     key <AC08> { [      0x1000915,  0x1000916 	]	};
     key <AC09> { [      0x1000932,  0x1000933 	]	};
     key <AC10> { [      semicolon,  colon 		]	};
     key <AC11> { [      quoteright, quotedbl 		]	};
     key <BKSL> { [      0x1000950,  0x1000903 	]	};
 // z,x,c,v,b,n,m,,,.,/ 
     key <AB01> { [      0x1000937,  0x100090B		]	};
     key <AB02> { [      0x1000921,  0x1000922		]	};
     key <AB03> { [      0x100091B,  0x100091A         ]       };
     key <AB04> { [      0x1000935,  0x1000901		]       };
     key <AB05> { [      0x100092C,  0x100092D		]       };
     key <AB06> { [      0x1000928,  0x1000923         ]       };
     key <AB07> { [      0x100092E,  0x1000902         ]       };
     key <AB08> { [      comma,      0x1000919         ]       };
     key <AB09> { [      0x1000964,  0x1000965		]       };
     key <AB10> { [      0x100094D,  question		]       };
 };
 partial alphanumeric_keys
 xkb_symbols "olpc" {
 // Contact: Walter Bender <walter@laptop.org>
 include "np"
 key <TLDE> { [      0x100091E,  0x1000965 	]	}; // NYA; double danda
     key <AE01> { [      0x1000967,  JA_VIRAMA_NYA	]	}; // Nepali digit one; U091C+U094D+U091E
     key <AE02> { [      0x1000968,  0x1000908		]	}; // Nepali digit two; 
     key <AE03> { [      0x1000969,  0x1000918 	]	}; // Nepali digit three;
     key <AE04> { [      0x100096A,  DA_VIRAMA_DHA  	]	}; // Nepali digit four; U0926+U094D+U0927
     key <AE05> { [      0x100096B,  0x100091B  	]	}; // Nepali digit five
     key <AE06> { [      0x100096C,  0x100091F  	]	}; // Nepali digit six
     key <AE07> { [      0x100096D,  0x1000920  	]	}; // Nepali digit seven
     key <AE08> { [      0x100096e,  0x1000921  	]	}; // Nepali digit eight
     key <AE09> { [      0x100096F,  0x1000922	 	]	}; // Nepali digit nine
     key <AE10> { [      0x1000966,  0x1000923		]	}; // Nepali digit zero
     key <AE11> { [      0x1000913,  0x1000914         ]       }; // O, AU
     key <AE12> { [      0x100200C,  0x1000902 	]       }; // ZERO-WIDTH-NON-JOINER (ZWNJ); SIGN ANUSVARA
     key <BKSL> { [      0x100094D,  0x100200D 	]	}; // SIGN VIRAMA; ZERO-WIDTH-JOINER (ZWJ)
     key <AD01> { [      TA_VIRAMA_RA, TA_VIRAMA_TA 	]	}; // U0924+U094D+U0930; U0924+U094D+U0924
     key <AD02> { [      0x1000927, DDA_VIRAMA_DDHA   	]	}; // DHA; U0921+U094D+U0922
     key <AD03> { [      0x100092D,  0x1000910 	]	}; // BHA, AI
     key <AD04> { [      0x100091A, DA_VIRAMA_VA       ]	}; // CA; U0926+U094D+U0935
     key <AD05> { [      0x1000924, E_VIRAMA_E		]	}; // TA; U091F+U094D+U091F
     key <AD06> { [      0x1000925, TTHA_VIRAMA_TTHA   ]       }; // THA; U0920+U094D+U0920
     key <AD07> { [      0x1000917,  0x100090A 	]	}; // GA, UU
     key <AD08> { [      0x1000937, KA_VIRAMA_SSA    	]	}; // SSA; U0915+U094D+U0937
     key <AD09> { [      0x100092F,  0x1000907 	]	}; // YA, I
     key <AD10> { [      0x1000909,  0x100090F 	]	}; // U, E
     key <AD11> { [      RA_VIRAMA_ZWJ,  0x1000943 	]	}; // U0928+U094D+ZWJ; VOWEL SIGN VOCALIC R
     key <AD12> { [      0x1000947,  0x1000948 	]	}; // SIGN E; SIGN AI
     key <AC01> { [      0x100092C,  0x1000906         ]       }; // BA, AA
     key <AC02> { [      0x1000915, NGA_VIRAMA_KA	]	}; // KA; U0919+U094D+U0915
     key <AC03> { [      0x100092E, NGA_VIRAMA_GA      ]       }; // MA; U0919+U094D+U0917
     key <AC04> { [      0x1000901,  0x100093E		]       }; // CANDRABINDU, VOWEL SIGN AA
     key <AC05> { [      0x1000928, DA_VIRAMA_DA      	]	}; // NA; U0926+U094D+U0926
     key <AC06> { [      0x100091C,  0x100091D       	]	}; // JA, JHA
     key <AC07> { [      0x1000935,  0x100094B       	]	}; // VA, VOWEL SIGN O
     key <AC08> { [      0x100092A,  0x100092B       	]	}; // PA, PHA
     key <AC09> { [      0x100093F,  0x1000940 	]	}; // VOWEL SIGN I, VOWEL SIGN II
     key <AC10> { [      0x1000938, TTA_VIRAMA_TTHA 	]	}; // SA; U091F+U094D+U0920
     key <AC11> { [      0x1000941,  0x1000942 	]	}; // VOWEL SIGN U, VOWEL SIGN UU
     key <AB01> { [      0x1000936, KA_VIRAMA_KA	]	}; // SHA; U0915+U094D+U0915
     key <AB02> { [      0x1000939, HA_VIRAMA_YA	]       }; // HA; U0939+U094D+U092F
     key <AB03> { [      0x1000905, U_R         	]	}; // A; U0909+U090B
     key <AB04> { [      0x1000916,  0x1000950 	]	}; // KHA, OM
     key <AB05> { [      0x1000926,  0x100094C		]	}; // DA, VOWEL SIGN AU
     key <AB06> { [      0x1000932, DA_VIRAMA_YA	]	}; // LA; U0926+U094D+U092F
     key <AB07> { [      0x1000903, DDA_VIRAMA_DDA 	]	}; // SIGN VISARGA; U0921+U094D+U0921
     key <AB08> { [      0x100093D,  0x1000919		]       }; // SIGN AVAGRHA; NGA
     key <AB09> { [      0x1000964, SHA_VIRAMA_RA	]       }; // DANDA; U0936+U094D+U0930
     key <AB10> { [      0x1000930, RA_U   		]       }; // RA; U0930+U0941
    include "group(olpc)"
 };
  • Reboot your XO and use the Multiplication/Division key to change input language
  • For some reason, switching language doesn't work for the Write activity. This can be solved using the preeti font. The language switching works fine in other activities like chat.

Installing/Removing activities

OLPC Guide to installing activities

Installing Individual Activiities

  • Boot your XO
  • Open the Terminal Activity
  • Insert the USB Key
  • type "sugar-install-bundle <path of activity.xo>"

Activity Bundle

  • Put activities to be installed in the /bundles directory of your USB Customization Key.
  • While powering up the Laptop, press the X button

Removing Activities

  • Activities are located in /home/olpc/Activities
  • cd /home/olpc/Activities
  • rm -r <Activity-name>.activity

SUPPORT AND MAINTENANCE

  1. Support Training Guide
  2. Familiarize yourself with disassembling the laptop, replacing parts etc.
  3. Always carry a USB key with the followinf files:
    • The Customization Key 2 unpacked to the root of the USB Key.
    • All the activities that are to be deployed in the folder /bundles.(eg. /bundles/Write_Activity.xo)
    • The Developer Key (develop.sig) in /security. (eg /security/develop.sig)
    • Other required rpms, fonts etc.
  4. Test all components of the XO by typing "test-all" at forth.
  5. Test individual component of the XO with "test <device-name>" at forth.
We will show the teachers how to perform basic maintenance and give periodic short courses to the students on laptop
maintenance. Rather create a fully structured maintenance plan, we want to see who at the school shows the most affinity for
laptop maintenance, students or teachers. We don't want to arbitrarily select local people to do the maintenance until we get a
sense of who has an interest and talent for it. In short, we are putting People before Process.


Who do we train for local support?
Training given to local support?
Tools given to local support?
Spare parts/ extra laptops given to local support?
How often do maintenance teams visit the school?

TEACHER TRAINING

  1. http://wiki.laptop.org/go/Nepal:_Teacher_Training

materials required for teacher training? (multiplugs, xo's, board etc)
feedback of teachers from the previous teacher training?
training of the trainers?

TRAINERS TRAINING

RECRUITING AND TRAINING INTERNS

  1. A basic understanding of Linux and some commands is vital. A good guide is the Rute User's Tutorial and Exposition by Paul Sheer. http://rute.2038bug.com/index.html.gz.
  2. Interns must be familiar with disassembling and reassembling the laptop along with replacing and testing components etc.
  3. Interns should be independent and capable of using the internet and other sources to find solutions as far as possible.
  4. Interns should be familiar with the E-Paath software along with other activities that are to be included in the deployment.
  5. Interns should know how to add/remove individual activities, install an image, add/remove fonts and other basic.
  6. Interns should create a 'Hello World Activity' in sugar.

Other training to interns?
Recruiting interns?
Plans for the (stress lab)?
A training plan for interns?

CONNECTIVITY

  1. Change the name of the server. (eg.bashuki.xs.olenepal)

required materials/software? time taken to set up? concept of the network?

CUSTOMIZING XO'S

See LOGISTICS first. Basic customization is covered there.

Customizing Build

  1. Install os image 703 from Forth prompt copy-nand u:\os703.img --> you must have os703.img and os703.crc on your USB key
  2. Power off
  3. Insert USB key that has Customization Key v2 installed on it
  4. 4. Hold down X game key then turn on the XO
  5. 5. Release the game key when prompted to do so
  6. 6. The Activity pack should install itself and then power off
  7. 7. Boot up and make your changes, such as installing rpms
  8. 8. When done, delete the user-specific changes you have made
    • rm -r /home/olpc.sugar/default
    • rm /var/lib/dbus/machine-id
    • There may be other machine-specific settings that I am not aware of but should be deleted
  9. Reboot
  10. Go to the Forth prompt and type save-nand u:\os703-b1.img, this will also generate a u:\os703-b1.crc file
  11. Clone other XO's using these two files

Additional Customization

Additonal RPM's

  • RPM's to display man pages
    1. Install groff-1.18.***.i386
    2. Install man-1.6f-***.i386
    3. copy /etc/man.config from linux machine to xo under same location
    4. Copy Man folder /usr/share/man into into xo
  • Gnuchess
    1. rm /usr/games/gnuchess -- for some reason there appears to be a symbolic link here by default that causes problems
    2. cp /usr/bin/gnuchess /usr/games/ note: for whatever reason, ln -s /usr/bin/gnuchess /usr/games doesn't work
  • Flash 9 plugin
    1. rpv -ivh <flash-plugin-rpm-name>.rpm

Activity Ordering

OBSOLETE IN BUILD 767 ??? The order is set in Nepal's custom Activity defaults file. to use it you will need to change the file to /home/olpc/Activities/.defaults

   * org.laptop.Chat
   * org.laptop.AbiWordActivity
   * org.laptop.WebActivity
   * org.laptop.RecordActivity
   * org.laptop.Oficina
   * org.olenepal.EPaatiActivity
   * org.olenepal.PustakalayaActivity
   * net.gcompris.gcomprisActivity
   * com.socialtext.SocialCalcActivity
   * org.vpri.EtoysActivity
   * edu.mit.media.ScratchActivity
   * org.laptop.SimCity
   * vu.lux.olpc.Speak
   * org.laptop.TamTamMini
   * org.laptop.TamTamJam
   * org.laptop.TamTamEdit
   * com.ywwg.CartoonBuilderActivity
   * org.worldwideworkshop.olpc.storybuilder
   * org.worldwideworkshop.olpc.JigsawPuzzle
   * org.worldwideworkshop.olpc.SliderPuzzle
   * org.worldwideworkshop.JokeMachineActivity
   * org.laptop.BlockPartyActivity
   * org.laptop.StarChart
   * com.garycmartin.Moon
   * org.laptop.Memorize
   * vu.lux.olpc.Maze
   * org.laptop.Terminal

INTEGRATION

POWER

  1. http://wiki.laptop.org/go/Nepal:_Technical_Details#Power_Systems

Power available to school?
Current xo power consumption?
Number of sockets required per classroom? or charging rack?
Coping with load shedding and power spikes?
Power required for the school server?

CONTENT DEVELOPMENT

  1. http://wiki.laptop.org/go/Nepal:_Content_Development

Number of people involved?
Number of activities per time (eg per month)?
Activity details? Activity platform? Flash? Squeak?