| Line 16: | Line 16: | ||
The ''meego-sdk-chroot'' script sets up mountpoints for the chroot environment, then starts the chroot proper; it also attempts to unmount everything when it exits and clear up any processes started in the chroot. Get it with: | The ''meego-sdk-chroot'' script sets up mountpoints for the chroot environment, then starts the chroot proper; it also attempts to unmount everything when it exits and clear up any processes started in the chroot. Get it with: | ||
| - | wget http://download3.meego.com/meego-sdk-chroot | + | $ wget http://download3.meego.com/meego-sdk-chroot |
Make the chroot script executable: | Make the chroot script executable: | ||
| - | chmod +x meego-sdk-chroot | + | $ chmod +x meego-sdk-chroot |
Move it to ''/usr/bin'': | Move it to ''/usr/bin'': | ||
| - | sudo mv meego-sdk-chroot /usr/bin | + | $ sudo mv meego-sdk-chroot /usr/bin |
== Configure the host ready for the Simulator == | == Configure the host ready for the Simulator == | ||
| Line 30: | Line 30: | ||
Next, configure X on the host machine to enable the Simulator (running from the chroot) to access the display of the normal user: | Next, configure X on the host machine to enable the Simulator (running from the chroot) to access the display of the normal user: | ||
| - | $ xhost +SI:localuser:<user name> | + | $ xhost +SI:localuser:<user name> |
Example: | Example: | ||
| - | $ xhost +SI:localuser:bob | + | $ xhost +SI:localuser:bob |
(You need to do this once before running the Simulator or Qt Creator after each reboot. Please replace "usernametogiveaccesstogoeshere" with the name of the | (You need to do this once before running the Simulator or Qt Creator after each reboot. Please replace "usernametogiveaccesstogoeshere" with the name of the | ||
The MeeGo SDK with Xephyr provides a development environment on Linux workstations for Netbook and Handheld applications.
$ lspci | grep VGA
| Example output: | |
| Intel mobile: | 00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) |
| nVidia: | 08:00.0 VGA compatible controller: nVidia Corporation GT216 [GeForce GT 220] (rev a2) |
| ATI: | 01:00.0 VGA compatible controller: ATI Technologies Inc M22 [Mobility Radeon X300] |
If your system does not have Intel graphics, see the other SDK options.
The meego-sdk-chroot script sets up mountpoints for the chroot environment, then starts the chroot proper; it also attempts to unmount everything when it exits and clear up any processes started in the chroot. Get it with:
$ wget http://download3.meego.com/meego-sdk-chroot
Make the chroot script executable:
$ chmod +x meego-sdk-chroot
Move it to /usr/bin:
$ sudo mv meego-sdk-chroot /usr/bin
Contents |
Next, configure X on the host machine to enable the Simulator (running from the chroot) to access the display of the normal user:
$ xhost +SI:localuser:<user name>
Example:
$ xhost +SI:localuser:bob
(You need to do this once before running the Simulator or Qt Creator after each reboot. Please replace "usernametogiveaccesstogoeshere" with the name of the user who you're going to run Xephyr as here.)
The meego-sdk-chroot script sets up a MeeGo chroot environment and drops you into a shell inside it:
sudo meego-sdk-chroot ~/meego-sdk-0524
(replace ~/meego-sdk-0524 with the path to the chroot directory)
Note that this uses the chroot command, which may not be on root's PATH (on Fedora the chroot command is in /usr/sbin). You can fix this by adding an alias to the top of the meego-sdk-chroot script:
alias chroot='/usr/sbin/chroot'
The output from running the script should look like this:
mount --bind /proc /home/ell/meego-sdk-0524/proc mount --bind /sys /home/ell/meego-sdk-0524/sys mount --bind /dev /home/ell/meego-sdk-0524/dev mount --bind /dev/pts /home/ell/meego-sdk-0524/dev/pts mount --bind /tmp /home/ell/meego-sdk-0524/tmp mount --bind /var/lib/dbus /home/ell/meego-sdk-0524/var/lib/dbus mount --bind /var/run/dbus /home/ell/meego-sdk-0524/var/run/dbus cp /etc/resolv.conf /home/ell/meego-sdk-0524/etc/resolv.conf root@meego-netbook-sdk:/#
It's possible to install software from the standard locations (at least it is in netbook images) into the chroot.
Enter the chroot, then run:
zypper install <package>
It should also be possible to upgrade the whole MeeGo image using:
zypper dist-upgrade
Xephyr does not see DISPLAY env variable from host system since it is running as chroot. As chroot, set DISPLAY variable before running "startmeego" that calls Xephyr.
export DISPLAY=:0
From inside the chroot, as root do:
startmeego &
This starts the Xephyr server then runs a script to boot the MeeGo desktop into it.
Note: Currently, the simulator runs only on host systems with an Intel integrated graphics controller. It does not run with ATI or NVIDIA graphics controllers.
If you want to run applications from the chroot and have them display in the Simulator window, you can do:
DISPLAY=:2 glxgears
(replacing glxgears with the command you want to run).
If you are having issues with the Simulator, use the debug script to see what's happening:
startmeego-debug
This shows the console output from the script, which may give you some clues if it's not working correctly.
Here's what it looks like:
Known issues:
To stop the Simulator, just exit the chroot shell with:
exit
This closes down any processes started inside the Simulator and unmounts directories used by the chroot environment. The output should look something like this:
exit umount /home/ell/meego-sdk-0524/proc umount /home/ell/meego-sdk-0524/sys umount /home/ell/meego-sdk-0524/dev/pts umount /home/ell/meego-sdk-0524/dev umount /home/ell/meego-sdk-0524/tmp umount /home/ell/meego-sdk-0524/var/lib/dbus umount /home/ell/meego-sdk-0524/var/run/dbus