Acer Aspire One

Three Laptops

For a few years I have been working with a Toshiba Satellite Pro 4600. A nice one, but heavy and huge and the machine started to get ramshackle and having more and more serious problems, like a bad battery, unexpected fallouts and display backlight problems. Therefore I decided to buy a new laptop so I can still work in the train.
My attention felt on the new series of netbooks. Nice small laptops of only about one kilogram, I could easily take with me when traveling, instead of the almost 3kg Toshiba brick I was used to.

Quick OpenSUSE 11 system file links: dmesg lsmod lspci xorg.conf More pictures

Choice

After looking to the specs I decided I’d like to have one with as much ‘real laptop’ capabilities as possible, because it would be a replacement for a ‘real’ laptop. Therefore I choose the Acer Aspire One A150-Ab, with Atom dual core 1,6GHz processor (32bit only unfortunatly) 120GB hard disk and 1GB ram, and Linpus Linux (derived from Fedora) preinstalled. The Ateros wireless and Intel graphics should work out of the box with any linux distribution. The display resolution of 1024×600 is still usable to work with most times.

LinPus

When I pressed the power button the first time I was suprised by the fast boot time. After filling in information about country and timezone, everything works well with the nice looking Linpus XFCE interface, including wireless connection to my WPA2 network, firefox, OpenOffice, etc. Also some software updates where popping up after a while, nice to see Acer tries to keep the system secure.

Customizing

I wanted to log to my remote shell server with mutt and irssi and pressed ALT+F2 and xterm, but ssh was not installed. That could easily be solved by running yum install openssh-clients as root (using sudo bash to become root). Then I saw ipv6 is not enabled by default. On http://the.taoofmac.com/media/Acer/Aspire One/AA1notes.html valuable information can be found to configure and extend the LinPus OS on the netbook, like installing software and compiling kernel modules.

Building a custom LinPus kernel

The kernel is independent of the fedora system, probably to gain fast bootup times (or to work with hardware without issues?). To build your custom one:

  • Install gcc and make: sudo yum install make gcc
  • Download the kernel, it can be found here or if it becomes unavailable, here Warning: as of november 2008, not maintained!
  • Become root: sudo bash and unzip and configure the kernel source in /usr/src:
    cd /usr/src
    unzip /home/user/linux-2.6.23.9lw.zip
    cd linux-2.6.23.9/
    cp /boot/config_080627 .config
    rm -rf include/asm
    make oldconfig
    
  • Edit your configuration to enable modules or kernel features:
    make config
    

    Make menuconfig doesn’t work properly right now, maybe some libraries are missing?

  • make your new kernel by make bzImage or make your modules with make modules
  • You can copy the bzImage file in /boot/ now. I use another grub to handle it (see later on near openSuse)

OpenSUSE

After all LinPus is nice, but I’m used to do my work with OpenSUSE in a KDE environment. Of course I can find my way to install KDE and all necessary packages like development stuff, apache, PHP and MySQL on LinPus, but probably the best solution is to try and install OpenSUSE on it. As far as I know you have to use OpenSUSE 11 at least because OpenSUSE 10.3 has a 2.6.22 kernel, too old for the brand new hardware, especially the LAN NIC driver. Next, the software manager of 10.3 is way to slow, the one in 11.0 is a big improvement.

Installing OpenSuSE 11

Valuable information can of course be found on the OpenSUSE wiki: http://en.opensuse.org/OpenSUSE_on_the_Aspire_One.
Briefly mentioned I did:

  • Attach a USB CD/DVD drive on the aspire one
  • Use the Netinstall CD to boot, live CD images won’t work
  • Partitioning:
    • Shrink the main partion of LinPus to 7GB
    • Leave the swap partition alone
    • Create a 3rd parition of 100MB for /boot
    • Create a 4th partition with type Linux LVM for all other:
      • swap LV of 2,5GB (big enough for software suspend to disk), encrypted with random key
      • / LV of 1GB
      • /usr LV of 5GB
      • /opt LV of 2GB
      • /var LV of 1,5GB
      • /tmp LV of 700MB
      • /home LV of 40GB
      • /crypt partition of 20GB, encrypted. Here I put all my sensitive data including the mysql data dir

      You also can choose to use a whole 60GB /home partition encrypted, or even an entire encrypted LVM parition.
      I don’t want that, because of the performance and battery live loss caused by the encryption overhead.
      I choose for a non-encrypted /home because I still can use music and video files without the encryption overhead.
      Disadvantage of this is that you have to think about the sensitivity of the data in your home dir all the time. The alternative would be a crypted /home and uncrypted /home/share for media files, like I have on some other computers.

  • I choose to install KDE4 as my desktop environment. Later on, I replaced it by KDE3.5 because in my opinion KDE4 (even KDE 4.1) is very good looking, I didn’t find my way everywhere and it’s not stable and production-ready enough.
  • After install, the boot code of LinPus has been replaced by the grub of OpenSUSE. However there’s an entry “Other Linux” it didn’t work. I added a few lines to be able to boot LinPus again, in /boot/grub/menu.lst:
    title Linpus Linux RCD
        rootnoverify (hd0,0)
        kernel /boot/bzImage ro root=LABEL=linpus vga=0x311 splash=silent loglevel=1 console=tty1 quiet
        initrd /boot/initrd-splash.img
    
  • I afterwards edited /etc/fstab and added noatime to all fs entries. Not really necessary with a real hard disk, but it reduces unnecessary I/O and thus both hard disk and battery live.
  • The graphics have some issues, I tweaked the following:
    • Edit /etc/sysconfig/displaymanagerand replace DISPLAYMANAGER_RANDR_MODE_VGA=”auto” by DISPLAYMANAGER_RANDR_MODE_VGA=”"
    • On some places I read the following improves the 2D graphics, to me the processor only gets more busy with Xorg, so I didn’t use it:
             Option "MonitorLayout" "LVDS,VGA"
             Option "Clone" "true"
             Option "AccelMethod" "EXA"
             Option "MigrationHeuristic" "greedy"
             VideoRam       229376
             Option "CacheLines" "1980"
      
    • Make sure the following is present in /etc/X11/xorg.conf:
      Section "Extensions"
        Option       "Composite" "on"
      EndSection
      

      Now you can enable compiz in KDE to get nice effects. Do this in KDE3 by opening Configuration Center (alt+f2, kcontrol ), choosing KDE Components -> Session Management -> Window Manager, choose Compiz here. Of course, make sure compiz is installed.

  • Reduce the fan use by following instructions on http://en.opensuse.org/OpenSUSE_on_the_Aspire_One#Reducing_the_fan.27s_noise
  • The wifi driver in the OpenSUSE 11 kernel 2.6.25 is even too old to support the Atheros hardware. I had to do the following:
    • Following http://madwifi-project.org/ticket/1192 I have to use
      the http://snapshots.madwifi-project.org/madwifi-hal-0.10.5.6/ snapshot for my system.
    • Install make, gcc and the kernel-source and linux-kernel-headers package with yast.
    • After wgetting this to /usr/local/src build the driver:
      tar -xzf madwifi-hal-0.10.5.6-current.tar.gz
      cd madwifi-hal-0.*
      make
      make install
      
    • Add following to /etc/modprobe.d/blacklist:
      blacklist ath5k

      This prevents the non-working ath5k driver shipped with 2.6.25 kernel to get loaded.

    • Now reboot your machine. Yes I know this is a Bill Gates way of doing, but it’s the easiest way in this case.

    Your system should work now with the new driver! Check with lsmod if ath_pci is loaded. If not load it with modprobe ath_pci. There should be a ath0 interface now visible in /sbin/ifconfig. When looking with the KnetworkDaemon or with /sbin/iwlist ath0 scan you should be able to see networks.

  • For getting the sound to behave the way I want (mic etc working, having a descent sound level) I added the following to /etc/modprobe.conf.local:
    options snd_hda_intel model=toshiba
    
  • Update: I now found a way to suspend the laptop directly from KDE by following http://en.opensuse.org/Pm-utils To suspend the laptop, you’ll need to run s2ram -f from pm-suspend. The -f flag is needed because the model is not known to s2ram. You can add a file in /etc/pm/config.d/ like s2ram and add S2RAM_OPTS="-f" to that file.
  • The build-in camera works just out of the box, in AMSN or Skype, with the uvcvideo kernel module.

After all, I’m happily working with this laptop now.
The keyboard is a thing worth mentioning. One can type quite well on it, but the control keys like home, pgup pgdown end and delete are difficult to reach. After a month, I’m getting more used to it.

Tags: , , , , , , , , , , , ,

9 Responses to “Acer Aspire One”

  1. Acer Aspire One | definedebt.com Says:

    [...] See the rest here [...]

  2. Taneli Kaivola Says:

    “Make menuconfig doesn’t work properly right now, maybe some libraries are missing?”

    Exactly, but “yum install ncurses-devel” will fix it.

  3. bastiaan Says:

    Thanks for your hint!

  4. alwin Says:

    hi bastiaans, can you run the netbeans application on your acer one a150? thanks.

  5. bastiaan Says:

    @alwin
    Don’t think that would be any problem, if it can work properly with 1024×600 resolution.

  6. daniel Says:

    the wifi doesnt work it is said to work out-of-box on 11.1 so im installing that

  7. bastiaan Says:

    Did you follow http://madwifi-project.org/ticket/1192 and compile it yourself? Then it should work. But probably 11.1 is a better choice, it is shipped with kernel 2.6.27 with better support for this hardware. I’ll upgrade my own too if I have some time.

  8. danielt Says:

    would updating the kernel to the latest 2.29 i think work cos my 11.1 disk dont like my aao…
    im gonna try and post the results here

  9. danielt Says:

    hi all,
    im typing this on my wifi aao just upgrade the kernel to the lastest 2.6.29.4 in my case and all works but the boot splash goes

Leave a Reply