Sugar Control Panel
There is a control panel to set user preferences such as nickname or color on the XO.
Prior to release 8.2.0 this was only available as a command-line program that you run in a terminal.
The graphical user interface
Access the interface
The control panel is accessible from the pop-up menu on the home view XO icon. Hovering over the icon with the mouse pointer will reveal a palette where the control panel is one of the available options (a.b).
Main Page
Each of the icons on the main page represents a section in the control panel (c). A section may include more than one related settings option. For example, use the 'About Me' section to set the nick name of your XO or to change the color of the XO (d).
The cancel button 'x' at the right top can be used to quit the control panel. The entry widget on the top left is used to search for a specific option. Options that don't match will be greyed out (e,f).
Clicking on one of the section icons will bring you to the section page. In the section the cancel button is used to undo any changes. The ok button let's you acknowledge that you are happy with the changes you did in that section.
Undo changes
You can undo any change you did in the section. Pressing the cancel button 'x' at the top right (g) will undo the changes and you will be returned to the main page of the control panel.
Acknowledge changes
If you are happy with your changes press the ok button. There are two types of options. Some require a sugar restart to take effect some don't. For example changing the nick name in the 'About Me' section does require a restart.
After changing this option an alert right next to it will be displayed that reminds you that these changes require a restart (h). When you hit the ok buttonan alert will be displayed that handles the restarting (i). Pressing the 'cancel' button will undo any changes in this section and will be presented with the section page like it was before you did any changes. Pressing the 'Later' button will keep the changes. The main page will be displayed and you can keep on modifying options. The changes you did will only be visible after your next restart. Pressing the 'restart' button will restart sugar directly. All your data (open activities) will be saved.
Error handling
If a user input is not valid, an alert next to the option is displayed describing the error. The 'OK' button is inactive in that case. In the example below the entry is empty which would create an invalid nick name.
Available options
About Me
The 'About Me' section contains an option to change the nick name and the color of the XO. Both options require a sugar restart.
About my XO
This section does not have any options to edit. It gives you information about your XO. The page shows the build number, firmware version and the serial number.
Date & Time
Allows setting of the Timezone. Note: this function no longer needs Super User access as it did in releases prior to 8.2.0 since we use the tz environment variable.
Frame
In this section you can control the activation delay of the frame. Many people did have hard times due to unwanted frame activation. You can tweak now the activation from 'instantious' to 'never' which is equal to turning the feature of revealing the frame with hot corners completely off.
Language
Allows selection of the default language.
This section is designed for Fedora, and does not work in the same way on Ubuntu. On Ubuntu, the system language is set at install time.
Network
Allows turning off the wireless radio. Once you disabled the check box for the wireless you will see the acquisition light flashing and then being turned off. After enabling it starts flashing again from time to time. The second option let you define a jabber server for collaboration.
Power
This section allows you to configure your power management settings.
Automatic power management
The automatic power management is used when the machine is idle. Check "automatic power management" and wait one minute. The screen should dim and the power light should blink slowly. Moving the mouse or touching a key should wake up the system and undim the screen.
If you uncheck "automatic power management" and wait one minute. The machine should not dim or suspend.
Extreme power management
Check "automatic power management" again. Make sure you are associated with a network (keyhole LED constant on, access light blinking). Check "extreme power management". Both lights should immediately dim, and running "ifconfig" should not show an "eth0" device. The wireless is now disabled. The system should dim and suspend after one minute.
Resume, and uncheck "extreme power management". After five seconds or so, the lights should start blinking again, and you should be able to reconnect to and use the network.
Software updates
The sugar-control-panel command
Old text: The requirements for the panel are listed here; the bold ones are those that have been implemented for the command line version of the panel.
Usage
Open the Terminal Activity, type the following command and press Enter to display the help information for the control panel command-line program.
sugar-control-panel -h
this displays:
Usage: sugar-control-panel [ option ] key [ args ... ] Control for the sugar environment. Options: -h show this help message and exit -l list all the available options -h key show information about this key -g key get the current value of the key -s key set the current value for the key
The control panel command-line tool tries to be as self-explanatory as possible. We will go through a typical scenario to show the basic usage. We want to set the jabber server on the XO in order to do testing with an sugar-jhbuild instance. To list all the available commands, enter:
sugar-control-panel -l
As of January 2009 this will give you something like:
[erikos@localhost sugar]$ sugar-control-panel -l frame: corner_delay edge_delay aboutme: color color_xo nick power: automatic_pm extreme_pm network jabber radio aboutxo: aboutxo build_number firmware_number serial_number datetime: timezone language: language
To display what the current value of a key is, use the -g option:
[erikos@localhost sugar]$ sugar-control-panel -g jabber jabber.laptop.org
If you are not sure what to set, you can use the -h option for each key to display the help for a command:
[erikos@localhost sugar]$ sugar-control-panel -h jabber Set the jabber server server : e.g. 'olpc.collabora.co.uk'
To change the jabber server, use the -s option.
[erikos@localhost sugar]$ sugar-control-panel -s jabber olpc.collabora.co.uk To apply your changes you have to restart sugar. Hit at the same time ctrl+alt+erase on the keyboard to do this.
Some of the options require restarting Sugar.
Colors
Usage:
sugar-control-panel -s color strokecolor fillcolor [strokequalifier [fillqualifier]]
Examples:
sugar-control-panel -s color red blue
sugar-control-panel -s color red blue dark
sugar-control-panel -s color purple yellow light medium
A shade difference between the optional stroke and fill qualifiers is enforced by code. It is possible that some stroke/fill pairs in the table may be disallowed. It is easy to see the low contrast color pairs in the Buddy Icon Color Matrix. (Una tabla con los íconos de la XO en todas las combinaciones de colores en Media:Buddy-Icon-Color-Matrix.pdf. Una ampliación del 310% llenará la pantalla de la XO con las imágenes de los todo.)
Base colors
- Red
- Orange
- Yellow
- Brown - may not work
- Blue
- Purple
- Green - not listed as a color option, but it works
(Base colores: roja, naranja, amarilla, Brown - puede no funcionar, Azul, verde - no aparece como una opción de color, pero funciona, Púrpura)
Shades
- Dark
- Medium
- Light
Nickname
Usage is:
sugar-control-panel -s nick "kikay"
d (type the "new name" that you want after the word nick)
Languages
Usage is: (do not run as root)
sugar-control-panel -s languages yourlanguage
e.g.
sugar-control-panel -s languages Spanish/Peru
To get the current language do:
sugar-control-panel -g languages
Note you may encounter problems with unsupported languages; only a few are currently present in Ship.2 (English and Spanish), with many more coming in Update 1 (you can see progress on translations to languages at our Pootle translation service. Not all of these languages will be available in Update.1. You can help yourself and OLPC by helping with localization for your favorite languages.
If you get into trouble, to recover, type:
- Ctrl-Alt-F1 or Ctrl-Alt-F2 (F1 is the mesh-key and F2 the friends-key)
- login as root (on an Update.1 build this is only hitting enter). Then type the commands:
- su olpc
- export SUGAR_PATH=/usr/share/sugar
- sugar-control-panel -s languages English/USA
- switch back to the console which runs sugar Ctrl-Alt-F3 (F3 is the home-key)
- restart the X server Ctrl-Alt-erase
If you do not find your language in the list below but want to start to translate for a specific language or just try things out you can set the locale by editing the ~olpc/.i18n config file which is in the home directory. This is what the sugar-control-panel does as well. Don't forget to restart sugar after you are done.
The list of languages include at this writing:
You can get this list on your XO with the following command:
sugar-control-panel -h languages
- 'Afrikaans/South_Africa': 'af_ZA',
- 'Albanian': 'sq_AL.UTF-8',
- 'Arabic/Algeria': 'ar_DZ.UTF-8',
- 'Arabic/Bahrain': 'ar_BH.UTF-8',
- 'Arabic/Egypt': 'ar_EG.UTF-8',
- 'Arabic/India': 'ar_IN.UTF-8',
- 'Arabic/Iraq': 'ar_IQ.UTF-8',
- 'Arabic/Jordan': 'ar_JO.UTF-8',
- 'Arabic/Kuwait': 'ar_KW.UTF-8',
- 'Arabic/Lebanon': 'ar_LB.UTF-8',
- 'Arabic/Libyan_Arab_Jamahiriya': 'ar_LY.UTF-8',
- 'Arabic/Morocco': 'ar_MA.UTF-8',
- 'Arabic/Oman': 'ar_OM.UTF-8',
- 'Arabic/Qatar': 'ar_QA.UTF-8',
- 'Arabic/Saudi_Arabia': 'ar_SA.UTF-8',
- 'Arabic/Sudan': 'ar_SD.UTF-8',
- 'Arabic/Syrian_Arab_Republic': 'ar_SY.UTF-8',
- 'Arabic/Tunisia': 'ar_TN.UTF-8',
- 'Arabic/United_Arab_Emirates': 'ar_AE.UTF-8',
- 'Arabic/Yemen': 'ar_YE.UTF-8',
- 'Basque/Spain': 'eu_ES.UTF-8',
- 'Belarusian': 'be_BY.UTF-8',
- 'Bengali/BD': 'bn_BD.UTF-8',
- 'Bengali/India': 'bn_IN.UTF-8',
- 'Bosnian/Bosnia_and_Herzegowina': 'bs_BA',
- 'Breton/France': 'br_FR',
- 'Bulgarian': 'bg_BG.UTF-8',
- 'Catalan/Spain': 'ca_ES.UTF-8',
- 'Chinese/Hong_Kong': 'zh_HK.UTF-8',
- 'Chinese/P.R._of_China': 'zh_CN.UTF-8',
- 'Chinese/Taiwan': 'zh_TW.UTF-8',
- 'Cornish/Britain': 'kw_GB.UTF-8',
- 'Croatian': 'hr_HR.UTF-8',
- 'Czech': 'cs_CZ.UTF-8',
- 'Danish': 'da_DK.UTF-8',
- 'Dutch/Belgium': 'nl_BE.UTF-8',
- 'Dutch/Netherlands': 'nl_NL.UTF-8',
- 'English/Australia': 'en_AU.UTF-8',
- 'English/Botswana': 'en_BW.UTF-8',
- 'English/Canada': 'en_CA.UTF-8',
- 'English/Denmark': 'en_DK.UTF-8',
- 'English/Great_Britain': 'en_GB.UTF-8',
- 'English/Hong_Kong': 'en_HK.UTF-8',
- 'English/India': 'en_IN.UTF-8',
- 'English/Ireland': 'en_IE.UTF-8',
- 'English/New_Zealand': 'en_NZ.UTF-8',
- 'English/Philippines': 'en_PH.UTF-8',
- 'English/Singapore': 'en_SG.UTF-8',
- 'English/South_Africa': 'en_ZA.UTF-8',
- 'English/USA': 'en_US.UTF-8',
- 'English/Zimbabwe': 'en_ZW.UTF-8',
- 'Estonian': 'et_EE.UTF-8',
- 'Faroese/Faroe_Islands': 'fo_FO.UTF-8',
- 'Finnish': 'fi_FI.UTF-8',
- 'French/Belgium': 'fr_BE.UTF-8',
- 'French/Canada': 'fr_CA.UTF-8',
- 'French/France': 'fr_FR.UTF-8',
- 'French/Luxemburg': 'fr_LU.UTF-8',
- 'French/Switzerland': 'fr_CH.UTF-8',
- 'Galician/Spain': 'gl_ES.UTF-8',
- 'German/Austria': 'de_AT.UTF-8',
- 'German/Belgium': 'de_BE.UTF-8',
- 'German/Germany': 'de_DE.UTF-8',
- 'German/Luxemburg': 'de_LU.UTF-8',
- 'German/Switzerland': 'de_CH.UTF-8',
- 'Greek': 'el_GR.UTF-8',
- 'Greenlandic/Greenland': 'kl_GL.UTF-8',
- 'Gujarati/India': 'gu_IN.UTF-8',
- 'Hebrew/Israel': 'he_IL.UTF-8',
- 'Hindi/India': 'hi_IN.UTF-8',
- 'Hungarian': 'hu_HU.UTF-8',
- 'Icelandic': 'is_IS.UTF-8',
- 'Indonesian': 'id_ID.UTF-8',
- 'Irish': 'ga_IE.UTF-8',
- 'Italian/Italy': 'it_IT.UTF-8',
- 'Italian/Switzerland': 'it_CH.UTF-8',
- 'Japanese': 'ja_JP.UTF-8',
- 'Korean/Republic_of_Korea': 'ko_KR.UTF-8',
- 'Lao/Laos': 'lo_LA.UTF-8',
- 'Latvian/Latvia': 'lv_LV.UTF-8',
- 'Lithuanian': 'lt_LT.UTF-8',
- 'Macedonian': 'mk_MK.UTF-8',
- 'Malay/Malaysia': 'ms_MY.UTF-8',
- 'Maltese/malta': 'mt_MT.UTF-8',
- 'Manx/Britain': 'gv_GB.UTF-8',
- 'Marathi/India': 'mr_IN.UTF-8',
- 'Northern/Norway': 'se_NO',
- 'Norwegian': 'nb_NO.UTF-8',
- 'Norwegian,/Norway': 'nn_NO.UTF-8',
- 'Occitan/France': 'oc_FR',
- 'Oriya/India': 'or_IN.UTF-8',
- 'Persian/Iran': 'fa_IR.UTF-8',
- 'Polish': 'pl_PL.UTF-8',
- 'Portuguese/Brasil': 'pt_BR.UTF-8',
- 'Portuguese/Portugal': 'pt_PT.UTF-8',
- 'Punjabi/India': 'pa_IN.UTF-8',
- 'Romanian': 'ro_RO.UTF-8',
- 'Russian': 'ru_RU.UTF-8',
- 'Russian/Ukraine': 'ru_UA.UTF-8',
- 'Serbian': 'sr_CS.UTF-8',
- 'Serbian/Latin': 'sr_CS.UTF-8@Latn',
- 'Slovak': 'sk_SK.UTF-8',
- 'Slovenian/Slovenia': 'sl_SI.UTF-8',
- 'Spanish/Argentina': 'es_AR.UTF-8',
- 'Spanish/Bolivia': 'es_BO.UTF-8',
- 'Spanish/Chile': 'es_CL.UTF-8',
- 'Spanish/Colombia': 'es_CO.UTF-8',
- 'Spanish/Costa_Rica': 'es_CR.UTF-8',
- 'Spanish/Dominican_Republic': 'es_DO.UTF-8',
- 'Spanish/El_Salvador': 'es_SV.UTF-8',
- 'Spanish/Equador': 'es_EC.UTF-8',
- 'Spanish/Guatemala': 'es_GT.UTF-8',
- 'Spanish/Honduras': 'es_HN.UTF-8',
- 'Spanish/Mexico': 'es_MX.UTF-8',
- 'Spanish/Nicaragua': 'es_NI.UTF-8',
- 'Spanish/Panama': 'es_PA.UTF-8',
- 'Spanish/Paraguay': 'es_PY.UTF-8',
- 'Spanish/Peru': 'es_PE.UTF-8',
- 'Spanish/Puerto_Rico': 'es_PR.UTF-8',
- 'Spanish/Spain': 'es_ES.UTF-8',
- 'Spanish/USA': 'es_US.UTF-8',
- 'Spanish/Uruguay': 'es_UY.UTF-8',
- 'Spanish/Venezuela': 'es_VE.UTF-8',
- 'Swedish/Finland': 'sv_FI.UTF-8',
- 'Swedish/Sweden': 'sv_SE.UTF-8',
- 'Tagalog/Philippines': 'tl_PH',
- 'Tamil/India': 'ta_IN.UTF-8',
- 'Telugu/India': 'te_IN.UTF-8',
- 'Thai': 'th_TH.UTF-8',
- 'Turkish': 'tr_TR.UTF-8',
- 'Ukrainian': 'uk_UA.UTF-8',
- 'Urdu/Pakistan': 'ur_PK',
- 'Uzbek/Uzbekistan': 'uz_UZ',
- 'Walloon/Belgium': 'wa_BE@euro',
- 'Welsh/Great_Britain': 'cy_GB.UTF-8',
- 'Xhosa/South_Africa': 'xh_ZA.UTF-8',
- 'Zulu/South_Africa': 'zu_ZA.UTF-8'
These are on its way to be included as well:
- 'Amharic/Ethiopian': 'am_ET.UTF-8',
- 'Hausa/Nigeria': 'ha_NG.UTF-8',
- 'Igbo/Nigeria': 'ig_NG.UTF-8',
- 'Mongolian': 'mn_MN.UTF-8',
- 'Nepali': 'ne_NP.UTF-8',
- 'Yoruba/Nigeria': 'yo_NG.UTF-8'
Manually setting keyboard
You can change the language keyboard in several ways --> Example for french keyboard
Only for the current session
Type in a terminal :
setxkbmap fr
Permanently
You have to create a file named .kbd in /home/olpc/.kbd ; 1.Open an editor as gedit 2.Copy+paste+save those lines :
KEYTABLE="fr" XKB_MODEL="olpc" XKB_LAYOUT="fr" XKB_VARIANT="olpc"
3.Reboot
Emulated XO Environment
There's currently "no command" for customizing the keyboard
Time
You can set the timezone with the sugar-control-panel. This is an offset only, so if the actual time is not set correctly setting the timezone will not result in the correct timezone as well. If you have internet access you can use ntpdate or rdate to sync your clock with an available time server. It works as well to set the timezone first and then sync with a time server.
Utterly complicated. Please simplify; start with rdate with auto-install if it is not there with the rdate option to use ntp and a simple timezone code ('America/Los_Angeles' is not a simple timezone code; it requires the underscore ).
Setting The Time With ntpdate
Your machine likely already has ntpdate. Then synchronizing the time is as simple as (you must be connected to the Internet):
su - # become root with login shell
ntpdate pool.ntp.org
Then you will want to make the hardware clock remember the current time.
hwclock --systohc
Otherwise, see the next instructions.
Setting The Time With rdate
If your machine does not have ntpdate, or cannot connect to an NTP server, you may need to use rdate.
Install rdate:
su root yum install rdate
Get the time (dependent on your current time zone) of an rdate server. (you must be root)
rdate [server]
Examples for servers:
time.fu-berlin.de rdate.cpanel.net
To set your clock do:
rdate -s [server]
e.g.
rdate -s time.fu-berlin.de
Then you will want to make the hardware clock remember the current time.
hwclock --systohc
Manually setting date
You need to be root to set the date and time, so become root before you begin,
su
date -s 3/6/2008
sets the date to March 6, 2008
date -s 22:35:00
sets the time to 10:35 PM.
Setting The Timezone
Now you can use the sugar-control-panel to set the timezone. Get the list of available timezones:
sugar-control-panel -h timezone
Get the current timezone:
sugar-control-panel -g timezone
Set the timezone (you must be root):
G1G1 users which have not been updated to a newer Update.1 build have to use the 'su' command to become root. Do not use 'su -' since the 'su -' command starts a login shell where the $SUGAR_PATH variable needed by the sugar-control-panel is not preserved.
su sugar-control-panel -s timezone [timezone]
If you are running a joyride build (tested with 1525) or an update.1 build (tested with 679) you can use sudo to run the sugar-control-panel command as root. (The sudo command will preserve the $SUGAR_PATH).
sudo sugar-control-panel -s timezone [timezone]
e.g.
sudo sugar-control-panel -s timezone Europe/Berlin
You needn't worry about any possible Daylight Saving Time; the OLPC handles this very well with no human intervention.
Common Usage Errors
Sugar Path
If the XO complains about things like 'SUGAR_PATH' and don't seem to work, you are probably running the program outside of Sugar or as Root. Try again from the Terminal Activity or as another user.
Sorry I do not speak 'english'
If you get the above response (or one like it) it's because you didn't format your chosen language correctly. You need to add your country as well, such as:
sugar-control-panel -s languages English/USA sugar-control-panel -s languages Spanish/Peru
To get a list of available languages do:
sugar-control-panel -h languages
Since the list is long you might want to do something like this to limit the search result:
sugar-control-panel -h languages | grep -i english
Error timezone does not exist
If you get the above response (or one like it) it's because you didn't format your chosen timezone correctly: A typical timezone command is looking like this:
sugar-control-panel -s timezone Europe/Berlin sugar-control-panel -s timezone America/Lima
To get a list of available timezones do:
sugar-control-panel -h timezone
Since the list is long you might want to do something like this to limit the search result:
sugar-control-panel -h timezone | grep -i lima