The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)
Sailfish/ButterflyTouch
Work in progress. This is mostly inspired from the ExoPC tutorial, with adaptation for this hardware.
Contents |
Install Sailfish SDK Emulator on ButterflyTouch
This page has instructions on how to install Sailfish SDK emulator on your Packard Bell Butterfly Touch.
It is a x86 (Intel SU4100 dual core x86_64) based laptop/tablet PC. It has a 11.6" resistive touch screen (1366x768). It uses a Intel GM45 Express Chipset.
Install Steps
USB key setup
- Extract root filesystem from emulator virtualbox image
VBoxManage internalcommands converttoraw ~/SailfishOS/emulator/sailfishos.vdi sailfish.raw
- Copy to flash key
sudo dd if=sailfish.raw of=/dev/sd* bs=4M sync
- Mount flash key
- Edit /boot/extlinux/extlinux.conf to boot from sdb1 and add rootwait
Running on the ButterflyTouch
- The following has been done with Ethernet cable plugged. Wifi activation could be added later on.
- Place the USB key in ButteflyTouch
- Boot, press F12 button to access boot device selection menu and select USB
- Ctrl/Alt F2 - Login root/(no password)
- sshd is already launched by default, but the root account needs a password to allow to connect to it.
- launch command "passwd", and set the password to nemo.
From now on, you can connect remotely to do the following (it allows copy/pasting the command from a browser and not typing by hand).
- Edit /usr/lib/qt5/qml/Sailfish/Silica/ApplicationWindow.qml
//width: _transpose ? screen.height : screen.width //height: _transpose ? screen.width : screen.height width: 1366 height: 768
- Put the display in portrait mode.
The original command don't work anymore, so edit the file manually :
vim /etc/gconf/gconf.xml.mandatory/desktop/jolla/components/%gconf.xml
and replace the angle "0" by "90".
The original command was:
su nemo # to switch to nemo user gconftool-2 --set /desktop/jolla/components/screen_rotation_angle --type int 90
- reboot the system, press F12 to select boot from USB, and then it should boot to sailfish, with the graphical interface showing.
Working parts
- Touchscreen
- General sailfish interface
- The silica component demo
Known issues
- If screen shut down (after a few seconds on the home screen), the only way to light it again is to type a key (shows command line), then touch the screen (show the graphical interface).
Interface with QtCreator
QtCreator can be used to compile and send the program to a remote device, not only the emulator.
Create a new Device
In QtCreator menu "Options/Devices":
- "Add"
- "Generic Linux Device"
- Connection data page:
- Name : "Butterfly"
- IP : "192.168.1.xxx"
- User name : "nemo"
- Authentication type : "Password"
- User password : "nemo"
Create a new Kit
In QtCreator menu "Options/Build & Run", in tab "Kits":
- Select "MerSDK-sailfishOS-i486-x86"
- "Clone"
- select "Clone of MerSDK-sailfishOS-i486-x86" and change :
- Name : "Butterfly"
- Device type : "Generic Linux Device"
- Device : "Butterfly"
Add the kit to the project
If the project is opened, click on the "Projects" icon on the left tab (CTRL+4 shortcut). Click "Add Kit", and select "Butterfly"
Compile/Run
Run the project as usual. Take care the kit "Buttefly" is selected
Known issues
- icon is not shown : replace in the "Other files/HelloWorld.desktop" file the "Icon=" by one icon that exist, for example "icon-launcher-default" (default icon-launcher-gallery don't exist in the emulator)
- program crash when run from the icon : replace in the "Other files/HelloWorld.desktop" file the "Exec=" line by : "invoker --type=j -s /usr/bin/HelloWorld"
- cannot deploy as RPM, only by copying binaries (due to having selected a ""Generic Linux Device", and not a Mer Emulator)