OLE Nepal/Deployment guide/Customizing

From OLPC
Jump to navigation Jump to search

Customizing the XO

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. Hold down X game key then turn on the XO
  5. Release the game key when prompted to do so
  6. The Activity pack should install itself and then power off
  7. Boot up and make your changes, such as installing rpms
  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

We need a list of activities we are going to use.
Testing of the activities with the build we are going to use.

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"
  // $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,  0x10FFFFD	]	}; // Nepali digit one; U091C+U094D+U091E
    key <AE02> { [      0x1000968,  0x1000908		]	}; // Nepali digit two; 
    key <AE03> { [      0x1000969,  0x1000918 	]	}; // Nepali digit three;
    key <AE04> { [      0x100096A,  0x10FFFFC  	]	}; // 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> { [      0x1000914,  0x1000913         ]       }; // 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> { [      0x10FFFFB,  0x10FFFFA 	]	}; // U0924+U094D+U0930; U0924+U094D+U0924
    key <AD02> { [      0x1000927,  0x10FFFF9   	]	}; // DHA; U0921+U094D+U0922
    key <AD03> { [      0x100092D,  0x1000910 	]	}; // BHA, AI
    key <AD04> { [      0x100091A,  0x10FFFF8       ]	}; // CA; U0926+U094D+U0935
    key <AD05> { [      0x1000924,  0x10FFFF7		]	}; // TA; U091F+U094D+U091F
    key <AD06> { [      0x1000925,  0x10FFFF6   ]       }; // THA; U0920+U094D+U0920
    key <AD07> { [      0x1000917,  0x100090A 	]	}; // GA, UU
    key <AD08> { [      0x1000937,  0x10FFFF5    	]	}; // SSA; U0915+U094D+U0937
    key <AD09> { [      0x100092F,  0x1000907 	]	}; // YA, I
    key <AD10> { [      0x1000909,  0x100090F 	]	}; // U, E
    key <AD11> { [      0x10FFFF4,  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,  0x10FFFF3	]	}; // KA; U0919+U094D+U0915
    key <AC03> { [      0x100092E,  0x10FFFF2      ]       }; // MA; U0919+U094D+U0917
    key <AC04> { [      0x100093E,  0x1000901		]       }; // CANDRABINDU, VOWEL SIGN AA
    key <AC05> { [      0x1000928,  0x10FFFF1      	]	}; // 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,  0x10FFFF0 	]	}; // SA; U091F+U094D+U0920
    key <AC11> { [      0x1000941,  0x1000942 	]	}; // VOWEL SIGN U, VOWEL SIGN UU
    key <AB01> { [      0x1000936,  0x10FFFEF	]	}; // SHA; U0915+U094D+U0915
    key <AB02> { [      0x1000939,  0x10FFFEE	]       }; // HA; U0939+U094D+U092F
    key <AB03> { [      0x1000905, 0x100090B         	]	}; // A; U0909+U090B
    key <AB04> { [      0x1000916,  0x1000950 	]	}; // KHA, OM
    key <AB05> { [      0x1000926,  0x100094C		]	}; // DA, VOWEL SIGN AU
    key <AB06> { [      0x1000932,  0x10FFFED	]	}; // LA; U0926+U094D+U092F
    key <AB07> { [      0x1000903,  0x10FFFEC 	]	}; // SIGN VISARGA; U0921+U094D+U0921
    key <AB08> { [      0x100093D,  0x1000919		]       }; // SIGN AVAGRHA; NGA
    key <AB09> { [      0x1000964,  0x10FFFEB	]       }; // DANDA; U0936+U094D+U0930
    key <AB10> { [      0x1000930,  0x10FFFEA   		]       }; // 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.

Adding Nepali to Speak Activity

  1. Install the latest espeak in your desktop
  2. Copy the folder "espeak-data" to /usr/share/ directory in the XO
  3. Add the line "translator hi" at the end of this file "/usr/share/espeak-data/voices/ne"

Additional Customization

Essential RPM's

RPM's to display man pages

  • Install groff-1.18.***.i386
  • Install man-1.6f-***.i386
  • copy /etc/man.config from linux machine to xo under same location
  • Copy Man folder /usr/share/man into into xo

Flash 9

  • rpm -ivh <flash-plugin-rpm-name>.rpm

Gnuchess

  • rm /usr/games/gnuchess -- for some reason there appears to be a symbolic link here by default that causes problems
  • cp /usr/bin/gnuchess /usr/games/ note: for whatever reason, ln -s /usr/bin/gnuchess /usr/games doesn't work