Rainbow/Installation Instructions: Difference between revisions

From OLPC
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 25: Line 25:
like [http://sugarlabs.org/go/DevelopmentTeam/Jhbuild sugar-jhbuild] or [http://sugarlabs.org/go/Sugar_on_a_Stick Sugar on a Stick] (SoaS). ''(nb: future work)''
like [http://sugarlabs.org/go/DevelopmentTeam/Jhbuild sugar-jhbuild] or [http://sugarlabs.org/go/Sugar_on_a_Stick Sugar on a Stick] (SoaS). ''(nb: future work)''


'''setup''':
'''general setup''':


In order for rainbow to function, you need to inject its users and groups into the system by running:
In order for rainbow to function, you need to inject its users and groups into the system by running:
Line 38: Line 38:


sudo groupadd -f audio
sudo groupadd -f audio

Congratulations. You are now ready to test rainbow.

'''sugar+rainbow:'''


To use Rainbow with Sugar Activities, you need to add the following line to /etc/dbus-1/session.conf inside the <policy context="default"> section:
To use Rainbow with Sugar Activities, you need to add the following line to /etc/dbus-1/session.conf inside the <policy context="default"> section:
Line 54: Line 58:
EOF
EOF


if you want your sugar activities to be able to access GConf. As above this will allow other uids besides yours to access your ORBit2 CORBA ORB. This might allow people on the same machine to control your applications and access your data, so only make this change if you're fine with that (e.g. no one else or only trusted ones using your computer). (We hope to improve on this situation in the future.),
if you want your sugar activities to be able to access GConf. As above this will allow other uids besides yours to access your ORBit2 CORBA ORB. This might allow people on the same machine to control your applications and access your data, so only make this change if you're fine with that (e.g. no one else or only trusted ones using your computer). (We hope to improve on this situation in the future.)


Next, unless you're running a really recent version of sugar (>= 0.86), you'll need to install two patches:
Congratulations. You are now ready to test rainbow.

curl 'http://dev.laptop.org/git/users/mstone/sugar/patch/?id=71df9fadd59ea5cc08a414f5d25a0135395533e5' | patch /usr/share/pyshared/jarabe/view/service.py
curl 'http://dev.laptop.org/git/users/mstone/sugar-toolkit/patch/?id=a65c8d2148ba5028437114049027e594238f2ed8' | patch /usr/share/pyshared/sugar/activity/activityfactory.py

Finally, you need to tell sugar to use rainbow:

touch /etc/olpc-security

Congratulations. You are now ready to test sugar with rainbow.

Revision as of 01:24, 16 August 2009

Rainbow :: git :: sources :: rainbow-0.8.6.tar.bz2 :: announcement


Last updated: Michael Stone 12:31, 8 July 2009 (UTC)

The basic idea is to install rainbow, either

from source:

Note: Building rainbow from source requires packages equivalent to gcc, libc-dev, python2.5, and python-setuptools.

RAINBOW=rainbow-0.8.4
wget http://dev.laptop.org/~mstone/releases/SOURCES/$RAINBOW.tar.bz2
tar xf $RAINBOW.tar.bz2 && cd $RAINBOW
make build
sudo make install

from a distro package:

  • Fedora >= 10: yum install rainbow
  • Ubuntu: Bernie's PPA contains some basic rainbow packages which you can install.
  • Other: Install rainbow from source or help others by packaging it for your distro!

from a unified builder or image:

like sugar-jhbuild or Sugar on a Stick (SoaS). (nb: future work)

general setup:

In order for rainbow to function, you need to inject its users and groups into the system by running:

sudo /bin/sed -i -e s/^passwd:/passwd:\ rainbow/ /etc/nsswitch.conf
sudo /bin/sed -i -e s/^group:/group:\ rainbow/ /etc/nsswitch.conf

If you are installing on a system (like Debian squeeze) that uses nscd, then you must restart nscd for rainbow to function:

sudo /etc/init.d/nscd restart

To use the current "rainbow-easy" helper, you need to have an "audio" group on your system:

sudo groupadd -f audio

Congratulations. You are now ready to test rainbow.

sugar+rainbow:

To use Rainbow with Sugar Activities, you need to add the following line to /etc/dbus-1/session.conf inside the <policy context="default"> section:

   <allow user="*"/>

This will allow other uids besides yours to access your session bus. This might allow people on the same machine to control your applications and access your data, so only make this change if you're fine with that (e.g. no one else or only trusted ones using your computer). (We hope to improve on this situation in the future.)

Similarly, you will need to run something like

sudo cat >> /etc/orbitrc <<EOF    # resp. ~/.orbitrc
ORBIIOPIPv4=1
ORBLocalOnly=1
ORBIIOPUSock=0
EOF

if you want your sugar activities to be able to access GConf. As above this will allow other uids besides yours to access your ORBit2 CORBA ORB. This might allow people on the same machine to control your applications and access your data, so only make this change if you're fine with that (e.g. no one else or only trusted ones using your computer). (We hope to improve on this situation in the future.)

Next, unless you're running a really recent version of sugar (>= 0.86), you'll need to install two patches:

curl 'http://dev.laptop.org/git/users/mstone/sugar/patch/?id=71df9fadd59ea5cc08a414f5d25a0135395533e5' | patch /usr/share/pyshared/jarabe/view/service.py
curl 'http://dev.laptop.org/git/users/mstone/sugar-toolkit/patch/?id=a65c8d2148ba5028437114049027e594238f2ed8' | patch /usr/share/pyshared/sugar/activity/activityfactory.py

Finally, you need to tell sugar to use rainbow:

touch /etc/olpc-security

Congratulations. You are now ready to test sugar with rainbow.