Editor : Samiux last updated on 2008-JAN-28 (Hong Kong Time GMT +8)
Hardware
Software
One Ubuntu 7.10 SE DVD or Ubuntu 7.10 CD (Ubuntu SE can be downloaded at Unoffical Ubuntu Hack) (Mine is Ubuntu 7.10 SE)
Recommendation : Read the last paragraph (M) which will save you a lot of time.
Insert the Ubuntu 7.10 SE DVD to the no hard drive computer and plug in the SDHC compatible card reader with a 8GB SDHC Class 6 card. Then install Ubuntu 7.10 to the SDHC card as usual. Make sure to format the card in ext3 (or JFS for less CPU usage; or XFS for large file handling) and 1024MB swap. I recommend to use swap; otherwise, your Eee PC may running slow when insufficient of RAM. Use ext3, JFS or XFS to prevent from file system corrupting when abnormal shut down. I tried A-Data Turbo SDHC 8GB Class 6 with JFS and the boot up and GNOME launch time (including login) is about 10 seconds faster than ext3 with Transcend.
Although it is running very smooth under 512MB of RAM, add more RAM to your Eee PC to improve the performance. The system may also use swap when it is running out of memory. For example, open many application programs at the same time. Eee PC supports up to 2GB DDR2 RAM. I take a risk to void the warranty to increase the memory to 2GB RAM. Mine is Transcend. Corsair also works.
After the installation, make sure to reboot to the Live DVD again and the SDHC still in the card reader and your SDHC is supposed at /media/disk.
Step 1
Edit the /media/disk/etc/fstab file to minimize the write activities of the SDHC :
sudo nano /media/disk/etc/fstab
Add “noatime” and “tmpfs” to the file. The following is an example only.
# /dev/sda1 UUID=d2f0be8e-a4ce-49c5-b6be-0fd3a8b4a5ce / ext3 defaults,noatime 0 2 # /dev/sda2 UUID=47d89e40-fccf-4e2a-a03c-a5ba7b986810 none swap sw 0 0 tmpfs /var/log tmpfs defaults,noatime 0 0 tmpfs /tmp tmpfs defaults,noatime 0 0 tmpfs /var/tmp tmpfs defaults,noatime 0 0
Step 2
Edit the /media/disk/etc/sysctl.conf file to tell Ubuntu to use RAM as higher priority than swap :
sudo nano /media/disk/etc/sysctl.conf
Add the following line to the end of the file.
vm.swappiness=0
Step 3
To remove the xorg.conf in order to make the SDHC card to be booted on Eee PC with graphic interface (X Window).
sudo rm /media/disk/etc/X11/xorg.conf
Step 4
Edit the /media/disk/etc/modules file to load the ndiswrapper module when boot.
sudo nano /media/disk/etc/modules
Add the following line to the end of the file.
ndiswrapper
Remark : If you use madwifi native Linux driver instead of Windows driver, you should not make change at this step.
Step 5
Edit the /media/disk/etc/init.d/halt to make Eee PC shutdown completely.
sudo nano /media/disk/etc/init.d/halt
Add the following line to the end of the comment.
rmmod snd-hda-intel
Step 6
Edit the /media/disk/etc/modprobe.d/blacklist to prevent the following modules from being loaded.
sudo nano /media/disk/etc/modprobe.d/blacklist
Add the following lines at the end of the file.
blacklist ath_pci blacklist ath_hal
Remark : If you use madwifi native Linux driver instead of Windows driver, you should not make change at this step.
Step 7
Do the following steps to tweak the boot up and shutdown processes. The boot up and GNOME launch time is within 1 min 42 sec (including login time) for ext3 with Trenscend. Not too bad for a SDHC card indeed. I tried A-Data Turbo SDHC 8GB Class 6 with JFS, the boot up and GNOME launch time (including login) is about 10 seconds faster than ext3 with Transcend. The minimum transfer rate of SSD is about 70MB/s while the maximum transfer rate of SDHC Class 6 is about 22MB/s.
Fix the bug of Ubuntu 7.10 for HAL with concurrency boot.
sudo mv /media/disk/etc/rc2.d/S12hal /media/disk/etc/rc2.d/S13hal sudo mv /media/disk/etc/rc3.d/S12hal /media/disk/etc/rc3.d/S13hal sudo mv /media/disk/etc/rc4.d/S12hal /media/disk/etc/rc4.d/S13hal sudo mv /media/disk/etc/rc5.d/S12hal /media/disk/etc/rc5.d/S13hal
Edit the /media/disk/etc/init.d/rc file to match the captioned steps.
sudo nano /media/disk/etc/init.d/rc
Look for CONCURRENCY=none and change it to:
CONCURRENCY=shell
Concurrent boot allows Ubuntu to take full advantage of dual-core processors, as well as processors that with hyperthread or multithread, e.g. Pentium III or higher.
Step 8
Change the SAVE_VBE_STATE=true at /etc/default/acpi-support to :
SAVE_VBE_STATE=false
Change MODULES=” ” to :
# Add modules to this list to have them removed before suspend and reloaded # on resume. An example would be MODULES="em8300 yenta_socket" # # Note that network cards and USB controllers will automatically be unloaded # unless they're listed in MODULES_WHITELIST MODULES="ndiswrapper"
Change MODULES_WHITELIST=” ” to
MODULES_WHITELIST="ndiswrapper"
Remark : If you use madwifi native Linux driver, you are not required to add “ndiswrapper” for the above.
Final step
Take out the SDHC card from the card reader (make sure to unmount it) and insert it to the Eee PC. Turn on the Eee PC and press F2 to enter to the BIOS. Set it to be booted from the removable device (SDHC card) and enable the “camera”. After that, boot from the SDHC card as it is a hard drive.
After the Ubuntu is booted up and logged in. Open a terminal and issue the following command.
sudo dpkg-reconfigure xserver-xorg
Follows the instructions on the screen and accept all the default setting. When asking for resolution, select all up to and include 800×600 from the top to the bottom.
Edit the /etc/X11/xorg.conf file to make it compatible to 800×480.
sudo nano /etc/X11/xorg.conf
Locate “Section Screen” and add “800×480” at the end of the line.
Install the essential files for the Windows driver.
sudo apt-get install ndiswrapper-common ndiswrapper-utils-1.9 ndisgtk
Download the Windows wireless driver from the ASUS website. Install the ASUS Eee PC Windows XP wireless driver to ndiswrapper via the GUI, make sure to select ndis5x folder and net5211.inf to install.
Then issue the following command to load the module.
sudo depmod -a
Please download the patches and driver and follows the instruction at this thread
Edit the /etc/apt/sources.list file to add the following.
sudo nano /etc/apt/sources.list
Add the following line to the end of the file.
deb http://unicap-imaging.org/packages feisty contrib
To install the webcam program.
sudo apt-get update sudo apt-get install ucview
N.B. You will need to enable the webcam in the BIOS on startup.
Do the following to make the microphone working.
sudo alsactl store sudo nano /var/lib/alsa/asound.state
Find “Capture Switch” and change 2 “false” to “true”.
sudo alsactl restore
Edit the /etc/modprobe.d/alsa-base file and add the following line to the end of the file.
options snd-hda-intel model=3stack-dig
I recommend to turn the special effect off in order to make the Eee PC running faster.
Skype 2.0 beta supports video capture but they only provide the Ubuntu 7.04 package. However, you can install it with some tweaking. Or, you can wait for the Ubuntu 7.10 package.
Download Skype 2.0 beta and install it by double-clicking the package you download. The Skype 2.0 beta for Ubuntu 7.04 works just fine with Ubuntu 7.10.
The procedure of using Bluetooth dongle to surf the internet with Microsoft Mobile 6 is at my blog.
The following instruction is from the thread of this forum Ubuntu Fn Keys Operational How To by Longhorn Engineer.
Download the ACPI source code from ASUS ftp server at here.
Step a
Download the requested compilers or so.
sudo apt-get update sudo apt-get install build-essential
Step b
Change the content of KERNEL_VERSION=2.6.21.4-eeepc at first line at /home/samiux/asus_acpi/Makefile to :
KERNEL_VERSION=2.6.22-14-generic
Go to /lib/modules/2.6.22-14-generic/build and build the module file.
cd /lib/modules/2.6.22-14-generic/build make -C /home/samiux/asus_acpi
After the compilation, copy the asus_acpi.ko to /lib/modules/2.6.22-14-generic/kernel/drivers/acpi/
sudo cp /home/samiux/asus_acpi/asus_acpi.ko /lib/modules/2.6.22-14-generic/kernel/drivers/acpi/ sudo depmod -ae sudo modprobe asus_acpi
Do some changes to the default setting of ACPI of Ubuntu. You can make backup for the files that you would edit.
Step c
Volume up button (Fn+F9) -
cd /etc/acpi sudo nano volupbtn.sh
Replace the content with :
#!/bin/bash action= amixer set Front 3.20dB+ unmute
cd events sudo nano asus-volume-up
Replace the content with :
event=hotkey ATKD 00000015 action=/etc/acpi/volupbtn.sh
Step d
Volume down button (Fn+F8) -
cd /etc/acpi sudo nano voldownbtn.sh
Replace the content with :
#!/bin/bash action= amixer set Front 3.20dB- unmute
cd events sudo nano asus-volume-down
Replace the content with :
event=hotkey ATKD 00000014 action=/etc/acpi/voldownbtn.sh
Step e
Mute button (Fn+F7) -
cd /etc/acpi sudo nano mutebtn.sh
Replace the content with :
#!/bin/bash action= amixer set Front toggle
cd events sudo nano asus-volume-mute
Replace the content with :
event=hotkey ATKD 00000013 action=/etc/acpi/mutebtn.sh
Step f
Delete the follow files as they messed up the captioned funtion keys. I recommend you to backup the files before deleting.
cd /etc/acpi sudo rm asus-brn-down.sh sudo rm asus-brn-up.sh
Step g
Add the asus_acpi modules for loading in every boot up.
sudo nano /etc/modules
Add the following line to the end of the file.
asus_acpi
Step h
Reboot your system and the Fn+F7, Fn+F8 and Fn+F9 will work.
The following function keys are not working -
Fn+F1 (standby/suspend)(my device cannot be resumed) Fn+F2 (wireless)(my device is always on, it may be caused by using Windows driver with ndiswrapper) Fn+F5 (LCD/Monitor) Fn+F6 (Task manager)
Suspend to RAM and hibernate do not work too. By the way, my version of BIOS is 401.
The working special function keys do not have OSD when pressing.
Remarks : When the Eee PC is on 204 version of BIOS and the Ubuntu is installed on the SSD, Fn+F1 is working. Upon resumed from suspend, you should turn on the screen by pressing Fn+F4. However, the wireless cannot be enabled automatically and it is required to enable it manually. The LED of the wireless is always on. When the Eee PC is on 401 version of BIOS and the Ubuntu is installed on the SDHC, suspend cannot be resumed like the Ubuntu on SSD.
Hereby, I attached the thread of this forum for the script (the current version is 0.7 which use the original Ubuntu 7.10 kernel, however, you should do some change before install the scripts) to customize Ubuntu to suit your Eee PC. The script simplified the work that mentioned at above. The version 0.7 is not fully tested by me.
Completed the following steps that mentioned at above before installing the said scripts.
(A) Preparation
(B) Customized your Ubuntu - Step 1, 3 and Final Step
(C) X Window
(G) Compiz Fusion (optional)
(I) Bluetooth wireless (optional)
Download the script and extract to the directory where you are working at.
Then execute the following commands.
sudo ./tweak-gnome.sh sudo ./install.sh all
Known issue of version 0.7
Note : You are required to re-install the script when the kernel image is updated (not upgraded).