Sailfish/IconiaTabW500

Heavily inspired by the port on ExoPC

= Install Sailfish SDK Emulator on Acer Iconia tab W500 =

The Iconia tab W500 is a nice but obsolete X86 tablet computer. It is powered with an AMD fusion APU. Hardware adaptation is close to the one of the Exo PC, with AMD drivers for display.

Initial setup
Remember, if you want to access BIOS, and boot from USB, you need a keyboard plugged, and have to boot the tablet by holding the Windows button and power button.

First you need to extract the root filesystem from the emulator VirtualBox image. This is done by simply running VBoxManage internalcommands converttoraw sailfishos.vdi sailfish.raw in the folder where the virtual disk (sailfishos.vdi) is.

After that, you need to load this image on the Iconia tab. You can dump it on an USB drive, like with the Exo PC with sudo dd if=sailfish.raw of=/dev/sd* bs=4M sync the mount it, edit /boot/extlinux/extlinux.conf to boot from sdb1 and add rootwait, or simply install it directly on the tablet. For that, I first installed a Linux distribution on it (Fedora 18), and re partitionned the disk to allocate 2 gigs to Sailfish, then, from Fedora, I copied the content of the image to that partition. If you do that, be sure to change the fstab of the sailfish image (root as /dev/sda2), and add an entry to Fedora bootloader.

Boot in Sailfish. There, no display should work. Go in a tty (CTRL+ALT+F2) and log in as nemo/nemo. Wifi should work out of the box, so configure the Wifi with

/usr/lib/connman/test/test-connman enable wifi /usr/lib/connman/test/test-connman scan wifi /usr/lib/connman/test/test-connman list etc.

Now you are ready for hardware adaptation.

Hardware adaptation
Be sure to have wifi working. First, you need to add the HW adaptation repository.

zypper ar http://repo.pub.meego.com/home:/sfietkonstantin:/iconia/Mer_Core_i586/home:sfietkonstantin:iconia.repo zypper in mesa-x86-radeon zypper in mesa-x86-radeon-dri-radeon-driver zypper in kernel-adaptation-iconia zypper in xorg-x11-drv-ati

If you are using the bootloader of another Linux distribution, be sure to reedit it and allow to boot from the new kernel. You can remove the old one as well.

After that, you should remove the file /etc/X11/xorg.conf.d/x86-vm.conf. After rebooting, the display should be launched, and something appear on screen. But HW acceleration is not here yet.

You have to edit /var/lib/environment/nemo/50-jolla-ui, and add the following variables EGL_PLATFORM=x11 EGL_DRIVER=egl_dri2 MCOMPOSITOR_USE_TFP=1

You also have to edit /var/lib/environment/nemo/60-emul-ui and check if it contains EGL_PLATFORM=x11 EGL_DRIVER=egl_dri2

You can add -nocursor in OPTIONS in that file, to remove the cursor.

Finally, you need to add in /usr/lib/systemd/user/lipstick.service Environment=QT_DEFAULT_RUNTIME_SYSTEM=

Then everything should work, including glows.

Finishing touches
Edit /usr/lib/qt4/imports/Sailfish/silica/ApplicationWindow.qml and set the size of the window to the one of the screen //width: _transpose ? screen.height : screen.width (comment those two lines) //height: _transpose ? screen.width : screen.height width: 1280 height: 800

You can make the display to be in portrait by changing the GConf entry. Run the following command as nemo/nemo gconftool-2 --set /desktop/jolla/components/screen_rotation_angle --type int 90