View Single Post
b-man's Avatar
Posts: 549 | Thanked: 502 times | Joined on Feb 2008 @ Bowling Green Ohio (united states)
#1
Ubuntu-N8x0 2.2 (ubuntu jaunty (9.04) for the Nokia Internet Tablets

Credits:

Stskeeps - for providing helpful advice with base system components
Johnx - for providing advice with X11
neatojones - for providing an awsome port of e17 for both ubuntu-n8x0 and mer
AndrewFBlack - for providing an awsome host server
Z4CHH - for pointing out bugs
XNT - for beta testing the new sys-env system


This is an updated version of the previous port of ubuntu that includes major base system changes. This version takes full advantage of the new sys-env package system witch will make installing ubuntu on the tablets 90% easier by automating the install prosess through apt. (Similar to Deblet's nit-env system)


Disclaimer:
I am not responsible for what you do to your tablet. Dispite the fact that this insallation method is faster/safer than the previous port, following theas instructions incorrectly could lead to a non-functional system leading to a reflash.



What's new:


*Bootstraping the base system is no longer needed (optional)
*Better/faster installation method with sys-env
*Slightly faster boot time
*Base rootstrap image is only 75mb in size (compressed)
*Automated installation/configuration prosess through apt


What works:

*Dsme
*Screen diming
*Hal
*Xserver-xorg
*Simple compiz visual effects (libgl-mesa-sw-x11)
*Compositing
*Power management
*keymapping
*Usbnet emergency talend
*Powersave
*Right click
*Wierless
*Bluetooth

What needs work:
*Sound
*Usplash (as a replacement for omap-fb-splash)


This installation prosess requires the following to be installed on your system:

*gnutar
*wget
*easyroot / rootsh / becomeroot
*e2fsprogs (installed by default in Diablo)



Installation:

Step 1 ~ partitioning your memory card

Assuming that you want to partition your internal memory card (mine is mmcblk0), as root run the following in a terminal; this will create a 312mb FAT32 partition, a 200mb swap partition, and the rest as LINUX83. (note: you might need to reboot after doing this)

Code:
umount /dev/mmcblk0p1
sfdisk -uM /dev/mmcblk0
,312,C
,200,S
,,L
,,
Step 2 ~ Formatting your partitions

As root, run the following, this will format your first partition in vfat, yoou second partition in swap, and your last partition in an ext3 format for your rootfs.

Code:
umount /dev/mmcblk0p1
mkdosfs /dev/mmcblk0p1
mkswap /dev/mmcblk0p2
mkfs.ext3 /dev/mmcblk0p3

Step 3 ~ Installing the base system

First, we need to create our target directory and mount our partition to extract the base system. You can run the following as root to do so. (note: ignore any errors that may come up - they're harmless)

Code:
mkdir -p /mnt/jaunty

insmod /mnt/initfs/lib/modules/`uname -r`/mbcache.ko
insmod /mnt/initfs/lib/modules/`uname -r`/ext2.ko
insmod /mnt/initfs/lib/modules/`uname -r`/jbd.ko
insmod /mnt/initfs/lib/modules/`uname -r`/ext3.ko

mount /dev/mmcblk0p3 /mnt/jaunty -o noatime

Next, we will cd into our target directory, wget -c the rootstrap image and, extract the base system. Run the following as root:

Code:
cd /mnt/jaunty

wget -c http://files.getdropbox.com/u/1183030/ubuntu_9.04_n8x0-2.2_rootfs.tgz

tar -zvxf ubuntu_9.04_n8x0-2.2_rootfs.tgz

rm -f ./ubuntu_9.04_n8x0-2.2_rootfs.tgz

Then, we need to mount any nessasary directorys, chroot into the extracted rootfs and, set a root password:

Code:
mount /proc /mnt/jaunty/proc
mount /sys /mnt/jaunty/sys
mount /dev /mnt/jaunty/dev
mount /dev/pts /mnt/jaunty/dev/pts
mount /tmp /mnt/jaunty/tmp

chroot /mnt/jaunty

passwd root

Last we need to install sys-env-* to finish the installation of the system, there are currently two options:

*sys-env-base - a verry minimal bootable preconfigured system with usbnet emergency talend, raw console on framebuffer, and ubuntu-rescue-menu, dsme, hal, and wireless

*sys-env-x - (installed on sys-env-base) a system with full blown X11 (xserver-xorg) and support for gnome, kde, e17, xfce4 and, lxde

(comming soon)-

*sys-env-ubuntu - a full-blown ubuntu-desktop gnome system with right-click support, software-rendered OpenGL, Gimp, FireFox3, Xarchiver, Adobe-Flashplayer 9, Compiz, Abiword, wifi-radar and, screen diminig.

*sys-env-kubuntu - a full blown kubuntu kde system with similar features that sys-env-ubuntu provides - with the exception of right-click support - sorry

*sys-env-xubuntu - a full-blown xubuntu XFCE4 desktop with similar features provided by sys-env-ubuntu but with the advantage of being lighter-weight

*sys-env-lxubuntu - a full-blown lxubuntu LXDE desktop with similar features provided by xubuntu but with the advantage of also being a light-weight environment.

*sys-env-e17 - a full-blown enlightenment e17 environment that's light weight and user-friendly on mobile devices.


Assuming you've chosen sys-env-x, run the following while chrooted in ubuntu. (note: this may take quite a while, so go grab some coffie )

Code:
su root
export LC_ALL=C

apt-get install sys-env-x

apt-get clean
And you're done!!
To unmount the system run the following while still in the chroot:
Code:
umount /proc
umount /tmp
umount /dev/pts
umount /sys
exit
exit
fuser -m /mnt/jaunty -k
umount /mnt/jaunty/dev
umount /mnt/jaunty

Tweeking & costomising


This section is entirely optional and may verry depending on your installation setup.


Installing ubuntu-desktop:

Code:
apt-get install ubuntu-desktop tablet-gdm-autologin
Installing kubuntu-desktop:

Code:
apt-get install kubuntu-desktop tablet-kdm-autologin
Installing xubuntu-desktop:

Code:
apt-get install xubuntu-desktop tablet-gdm-autologin
Re-configuring /etc/fstab to your system setup. (note: this is based off of the partition setup provided at the top of this page)
Code:
rootfs  /       rootfs  defaults,errors=remount-ro,noatime,nodiratime   0	1
proc    /proc   proc    defaults        0       0
/dev/mtdblock4  /mnt/rootfs     jffs2 defaults  0       0
/dev/mmcblk0p2  swap  swap	defaults	0	0
/dev/mmcblk0p1 /media/mmc2	vfat defaults	0	0

Screenshot:



more screenshots are available on my gallery

If you have any suggestions, questions, or would like to be involved, feel free to tell me here or poke me on IRC at freenode.net on #maemo if you want to do a live chat with me
__________________
I'm an advanced user and a bit of a modder.
----------------------------------------------
I am involved with Mer, Deblet, and NITdroid.
My ports/creations/hacks: GNOME (for Deblet), Cdeb2», Ubuntu, playable flash games in the "Get Started" app, DBS, ect...


enhanced fedora port has been canceled in favor of NITDebian (TBA)

Last edited by b-man; 2009-11-03 at 04:12. Reason: typo
 

The Following 43 Users Say Thank You to b-man For This Useful Post: