ReleaseNotes

Differences between revisions 3 and 19 (spanning 16 versions)
Revision 3 as of 2013-02-21 16:41:07
Size: 11414
Editor: dpm
Comment: Fixed references to SDK documentation + remote deployment feature
Revision 19 as of 2013-02-23 12:02:39
Size: 12363
Editor: dpm
Comment:
Deletions are marked like this. Additions are marked like this.
Line 4: Line 4:
Line 6: Line 5:
Line 8: Line 8:
"Touch Developer Preview for Ubuntu" is released for free non-commercial use. It is provided without warranty, even the implied warranty of merchantability, satisfaction or fitness for a particular use. See the licence included with each program for details.

Some licences may grant additional rights; this notice shall not limit your rights under each program's licence. Licences for each program are available in the usr/share/doc directory. Source code for Ubuntu can be downloaded from archive.ubuntu.com. Ubuntu, the Ubuntu logo and Canonical are registered trademarks of Canonical Ltd. All other trademarks are the property of their respective owners.

"Touch Preview for Ubuntu" is released for limited use due to the inclusion of binary hardware support files. The original components and licenses can be found at:

https://developers.google.com/android/nexus/drivers
<<Include(../Disclaimer)>>
Line 18: Line 12:

The Ubuntu Touch Developer Preview is intended to be used for development and evaluation purposes only. It does not provide all of the features and services of a retail phone and is not intended to replace your current handset. This preview is the first release of a very new and unfinished version of Ubuntu and it will evolve quickly.
See https://wiki.ubuntu.com/TouchInstallProcess for the latest installation instructions and list of supported devices.

This release uses Ubuntu 12.10 as its basis. It introduces a revised version of Unity oriented toward touch devices and new concepts in user experience. It also introduces a set of applications written using the previously announced SDK and UI Toolkit.
The Ubuntu Touch Developer Preview is '''intended to be used for development and evaluation purposes only'''. It does not provide all of the features and services of a retail phone and is not intended to replace your current handset. This preview is the first release of a very new and unfinished version of Ubuntu and it will evolve quickly.

Follow for [[../Install|the installation instructions]] to install Touch Preview, which include a list of supported devices.

This '''release uses Ubuntu 12.10 as its basis'''. It introduces a revised version of [[Unity]] oriented toward touch devices and new concepts in user experience. It also introduces a set of applications written using the previously announced [[http://developer.ubuntu.com/gomobile|Ubuntu SDK Preview]].
Line 28: Line 22:
The images have a pre-configured user account called phablet, with the account password also set to phablet.
There is a set of default sample accounts for the tablet, the login passwords are set to the first name in lowercase. These are for demonstration and do not affect the user session.

=== Access the device over SSH ===
The images have a pre-configured user account called `phablet`, with the account password also set to `phablet`.
There is a set of default sample accounts for the tablet, the login passwords are set to the first name in lowercase. These are for demonstration purposes and do not affect the user session.

<<Anchor(SshAccess)>>
=== Accessing
the device over SSH ===
Line 34: Line 29:
Ubuntu runs inside of a custom container which uses a partitioned PID namespace. Using ssh allows a shell to be created within the new container, and thus have a proper view of the Ubuntu PID namespace.

To setup ssh, do the following:
 * follow steps for ADB access (adb root, adb shell, ubuntu_chroot shell)
 * Install openssh-server on the device. (apt-get install openssh-server)
 * run ifconfig on device to get ipaddress
 * run ssh phablet@ipaddress_of_device to connect to device

You also can use adb port forwarding to allow ssh access to the container via USB. To do this, run

{{{
Ubuntu runs inside a custom container which uses a partitioned PID namespace. Using SSH allows a shell to be created within the new container, and thus have a proper view of the Ubuntu PID namespace.

Whenever you're asked for a password, it's `phablet`.

To setup secure shell access, do the following:
 1. Follow the [[#AdbAccess|steps for access over ADB]]
 1. Skip this step if you've already installed the `openssh-server` package on the device. Otherwise, run `sudo apt-get install openssh-server`.
 1. Optionally, enable the `/proc` filesystem by running: `sudo mount -t proc proc /proc`
 1. Run `ipaddr show wlan0` on the device to get its IP address
 1. Press the Ctrl+D key combination 3 times to successively exit all shells. Alternatively, you can start a new terminal (Ctrl+Alt+T) to run the command in the next step
 1. Run `ssh phablet@ipaddress_of_device` to connect to the device. If it's the first time you're connecting, you'll be prompted to add the device to your list of known hosts, so accept the prompt.

You also can use adb port forwarding to allow SSH access to the container via USB. To do this, run

 {{{
Line 50: Line 49:
=== Access over ADB ===

It is recommended to access the device through SSH to properly see the Ubuntu PID namespace. However you can adb into the device as well for some tasks. Do the following: {{{
apt-get install android-tools-adb
<<Anchor(AdbAccess)>>
=== Accessing the device over ADB ===

It is recommended to access the device through SSH to properly see the Ubuntu PID namespace. However you can adb into the device as well for some tasks. Do the following:

 1. Start a terminal on your computer by pressing the Ctrl+Alt+T key combination
 1. If you have already set up your environment for flashing Ubuntu images, skip to the next step. Otherwise [[../Install#Setup_the_Touch_Developer_Preview_Tools_PPA|install the Touch Preview tools PPA]].
 1. Run the following commands to connect to the device through ADB:
 {{{
Line 56: Line 60:

To
enter the ubuntu container: {{{
 1. Enter the Ubuntu container by running:
{{{
Line 59: Line 63:

T
o run as user phablet (required to run apps in an initialized session): {{{
 1. Execute the following command to run as user `phablet` (required to run apps in an initialized session):
{{{
Line 63: Line 67:
NOTE: you will not be able to run ps or view processes by accessing the device in this manner; please use ssh as described above if this is important.
NOTE: you will not be able to run `ps` or view processes by accessing the device in this manner; please [[#SshAccess|use SSH]] if you are intending to monitor processes.
Line 68: Line 71:
The Developer Preview comes with the following functioning applications: Gallery, Phone (Dialer, SMS, Address Book), Camera, Browser, Media Player and Notepad.

Other non-functioning sample applications are included for demonstration purposes only: Weather, Music Player, Calculator and Ski Safari
The Developer Preview comes with the following functional applications:

 *
Gallery
 *
Phone (Dialer, SMS, Address Book)
 *
Camera
 *
Browser
 *
Media Player
 *
Notepad.

Other non-functional sample applications are included for demonstration purposes only: Weather, Music Player, Calculator and Ski Safari
Line 79: Line 88:
Sample content is preinstalled in the images. If desired it can be removed. Shell into the device as user phablet and perform the following: Sample content is preinstalled in the images. If desired it can be removed. [[#SshAccess|Access the device via SSH]] as user `phablet` and perform the following:
Line 82: Line 91:
  * `manage-address-books.py delete`
  * edit `/etc/[phone|tablet]-services` and remove `manage-address-books.py`
  * Run `manage-address-books.py delete`
  * Edit `/etc/[phone|tablet]-services` and remove `manage-address-books.py`
Line 85: Line 94:
  * `rm /usr/share/dbus-1/services/com.canonical.Unity.Lens.MockMusic.service`
  * `rm /usr/share/dbus-1/services/com.canonical.Unity.Lens.MockVideos.service`
 * To remove pictures from gallery: `rm /home/phablet/Pictures/*`
  * Run `rm /usr/share/dbus-1/services/com.canonical.Unity.Lens.MockMusic.service`
  * Run `rm /usr/share/dbus-1/services/com.canonical.Unity.Lens.MockVideos.service`
 * To remove pictures from gallery:
  * Run
`rm /home/phablet/Pictures/*`
Line 89: Line 99:
  * edit `/etc/[phone|tablet]-services` and remove `chewie_messaging_populate_menu`   * Edit `/etc/[phone|tablet]-services` and remove `chewie_messaging_populate_menu`
Line 99: Line 109:
Alternatively you can import contacts from a csv file. The csv file should be in same format as /usr/share/demo-assets/contacts-data/data.csv. Replace the sample data.csv with your own version and run manage-address-books.py create to import your contacts. Alternatively you can import contacts from a csv file. The csv file should be in same format as `/usr/share/demo-assets/contacts-data/data.csv`. Replace the sample `data.csv` file with your own version and run `manage-address-books.py create` to import your contacts.
Line 104: Line 114:
Photos can be added to the device and viewed in the Gallery application. They can be copied into /home/phablet/Pictures and they will be displayed in the Gallery. Also, pictures can be taken with the Camera application and they will automatically appear in the Gallery. Photos can be added to the device and viewed in the Gallery application. They can be copied into `/home/phablet/Pictures` folder and they will be displayed in the Gallery. Also, pictures can be taken with the Camera application and they will automatically appear in the Gallery.
Line 109: Line 119:
Videos can be copied onto the device into /home/phablet/Videos and viewed with the Media Player application. They can be surfaced in the video lens by modifying /usr/share/unity/lenses/mockvideos/mockvideos.json to point at your installed videos (this will be dynamic at a future time).

Alternatively you can run the Media Player from the shell by doing the following:
Videos can be copied onto the device into the `/home/phablet/Videos` folder and viewed with the Media Player application. They can be surfaced in the video lens by modifying the `/usr/share/unity/lenses/mockvideos/mockvideos.json` file to point at your installed videos (this process will be automatic in the future).

Alternatively, you can run the Media Player from the shell by running the following command:
Line 119: Line 129:
Some parts of the image can’t currently be upgraded, so it is best to deploy a full updated image (link to install tool). Individual apps can be updated with APT though. First add the phablet-team ppa (https://launchpad.net/~phablet-team/+archive/ppa) to /etc/apt/sources.list. Then run the following command with root permissions to update apps: Some parts of the image can’t currently be upgraded, so it is best to [[Touch/Install|deploy a full updated image]]. Some individual apps can be updated with `apt`, though. First add the phablet-team ppa (https://launchpad.net/~phablet-team/+archive/ppa) to /etc/apt/sources.list. Then run the following command with root permissions to update apps:
Line 134: Line 144:
Memory usage has not yet been optimized for the devices. It is possible to experience application crashes due to having too many applications open at the same time. Workaround is to close apps that are not being used. Memory usage has not yet been optimized for the devices. It is possible to experience application crashes due to having too many applications open at the same time. A workaround is to close apps that are not being used.
Line 139: Line 149:
The timezone needs to be manually set from the command line. Valid values for timezones can be found in the file /usr/share/zoneinfo/zone.tab. Run the following commands ( specifying your own time zone choice ) with root permission to set your timezone:
{{{
# echo “America/New_York” > /etc/timezone
# dpkg-reconfigure --frontend noninteractive tzdata
The timezone needs to be manually set from the command line. Valid values for timezones can be found in the `/usr/share/zoneinfo/zone.tab` file. Run the following commands ( specifying your own time zone choice ) with root permission to set your timezone:

 1. [[#SshAccess|Access your device through SSH]]
 1. Then on the terminal connected to your device run:
 
{{{
sudo echo “America/New_York” > /etc/timezone
sudo dpkg-reconfigure --frontend noninteractive tzdata
Line 148: Line 161:
The Developer Preview has support for Wi-Fi networking via the new network indicator which supports basic Wi-Fi connections ( Open, WEP and WPA Personal ). Note, it’s possible to configure more advanced settings, however at this time this requires working directly with Network Manager system connection files. The Developer Preview has support for Wi-Fi networking via the new network indicator, which supports basic Wi-Fi connections ( Open, WEP and WPA Personal ). It is possible to configure more advanced settings, however at this time this requires working directly with Network Manager system connection files.
Line 152: Line 165:
 * Airplane Mode / Wi-Fi Power Control  * Airplane Mode/Wi-Fi Power Control
Line 184: Line 197:
=== Nexus Galaxy ===
802.11a ( ie. 5GHz ) is currently not working.
=== Galaxy Nexus ===

 * The
802.11a protocol (i.e. 5GHz) is currently not working.
Line 189: Line 203:
In rare circumstances, the Nexus4 may get into a state where it may not boot at all after the battery is drained ( even into recovery ). If this happens, the only way to restore it is to disassemble the back of the phone and unplug/plug the battery connector.  * In rare circumstances, '''the Nexus4 may get into a state where it may not boot at all after the battery is drained''' (even into recovery). If this happens, the only way to restore it is to disassemble the back of the phone and unplug/plug the battery connector.
Line 198: Line 212:
 * Runs in portrait mode by default. (no side stage)  * Runs in portrait mode by default (no side stage)
Line 205: Line 219:
Set the GRID_UNIT_PX environment variable to an appropriate value for the device (i.e. 30 for a 5” handset screen) in /usr/bin/ubuntu-session script and /home/phablet/.bashrc . Set the GRID_UNIT_PX environment variable to an appropriate value for the device (i.e. 30 for a 5” handset screen) in the `/usr/bin/ubuntu-session` script and in the `/home/phablet/.bashrc` file.
Line 216: Line 230:
 1. Once the device is connected, you can develop your QML projects as usual (check out the new project wizard as well) and press '''Ctrl+F12''' to install and execute your app on the remote device
 1. Develop your QML projects as usual (best way is to use one of the '''Ubuntu application templates''' in the File > New File or Project... menu entry). They will ensure that there is an {{{ApplicationName.desktop}}} file (where {{{ApplicationName}}} is the name of your application) with content similar to the following one: {{{
[Desktop Entry]
Encoding=UTF-8
Type=Application
Terminal=false
Exec=/usr/bin/qmlscene
Name=ApplicationName
GenericName=ApplicationName
Comment=My project description
Icon=ubuntu-qmlrunner
}}}
 1. Once the device is connected, you can press '''Ctrl+F12''' to install and execute your app on the remote device
Line 222: Line 246:
  1. SSH into your device as user `phablet`   1. [[#SshAccess|SSH into your device]] as user `phablet`
Line 231: Line 255:
 * Applications launched on the device from Qt Creator start up in a non focused mode. Remotely-executed apps are in thumbview mode in the Running Apps section on the Apps lens  * Applications launched on the device from Qt Creator start up in a non-focused mode. Remotely-executed apps are in thumbview mode in the Running Apps section on the Apps lens

Warning /!\ Ubuntu Touch is no longer maintained as a core product by Canonical. However, the Ubports community are continuing development.

Touch Developer Preview Release Notes

Disclaimer

"Touch Developer Preview for Ubuntu" is released for free non-commercial use. It is provided without warranty, even the implied warranty of merchantability, satisfaction or fitness for a particular use. See the licence included with each program for details.

Some licences may grant additional rights; this notice shall not limit your rights under each program's licence. Licences for each program are available in the usr/share/doc directory. Source code for Ubuntu can be downloaded from archive.ubuntu.com. Ubuntu, the Ubuntu logo and Canonical are registered trademarks of Canonical Ltd. All other trademarks are the property of their respective owners.

"Touch Preview for Ubuntu" is released for limited use due to the inclusion of binary hardware support files. The original components and licenses can be found at:

https://developers.google.com/android/nexus/drivers

Overview

The Ubuntu Touch Developer Preview is intended to be used for development and evaluation purposes only. It does not provide all of the features and services of a retail phone and is not intended to replace your current handset. This preview is the first release of a very new and unfinished version of Ubuntu and it will evolve quickly.

Follow for the installation instructions to install Touch Preview, which include a list of supported devices.

This release uses Ubuntu 12.10 as its basis. It introduces a revised version of Unity oriented toward touch devices and new concepts in user experience. It also introduces a set of applications written using the previously announced Ubuntu SDK Preview.

Accessing the system for development

User Accounts

The images have a pre-configured user account called phablet, with the account password also set to phablet. There is a set of default sample accounts for the tablet, the login passwords are set to the first name in lowercase. These are for demonstration purposes and do not affect the user session.

Accessing the device over SSH

The recommended way to get shell access to the device is through SSH. Ubuntu runs inside a custom container which uses a partitioned PID namespace. Using SSH allows a shell to be created within the new container, and thus have a proper view of the Ubuntu PID namespace.

Whenever you're asked for a password, it's phablet.

To setup secure shell access, do the following:

  1. Follow the steps for access over ADB

  2. Skip this step if you've already installed the openssh-server package on the device. Otherwise, run sudo apt-get install openssh-server.

  3. Optionally, enable the /proc filesystem by running: sudo mount -t proc proc /proc

  4. Run ipaddr show wlan0 on the device to get its IP address

  5. Press the Ctrl+D key combination 3 times to successively exit all shells. Alternatively, you can start a new terminal (Ctrl+Alt+T) to run the command in the next step
  6. Run ssh phablet@ipaddress_of_device to connect to the device. If it's the first time you're connecting, you'll be prompted to add the device to your list of known hosts, so accept the prompt.

You also can use adb port forwarding to allow SSH access to the container via USB. To do this, run

  • adb forward tcp:8888# tcp:22
    ssh phablet@localhost -p 8888

Accessing the device over ADB

It is recommended to access the device through SSH to properly see the Ubuntu PID namespace. However you can adb into the device as well for some tasks. Do the following:

  1. Start a terminal on your computer by pressing the Ctrl+Alt+T key combination
  2. If you have already set up your environment for flashing Ubuntu images, skip to the next step. Otherwise install the Touch Preview tools PPA.

  3. Run the following commands to connect to the device through ADB:
    adb root
    adb shell
  4. Enter the Ubuntu container by running:
    ubuntu_chroot shell
  5. Execute the following command to run as user phablet (required to run apps in an initialized session):

    su - phablet

NOTE: you will not be able to run ps or view processes by accessing the device in this manner; please use SSH if you are intending to monitor processes.

Applications

The Developer Preview comes with the following functional applications:

  • Gallery
  • Phone (Dialer, SMS, Address Book)
  • Camera
  • Browser
  • Media Player
  • Notepad.

Other non-functional sample applications are included for demonstration purposes only: Weather, Music Player, Calculator and Ski Safari

Installing new apps

See the SDK documentation for information on how to install apps on the device with Qt Creator.

Sample content

Sample content is preinstalled in the images. If desired it can be removed. Access the device via SSH as user phablet and perform the following:

  • To remove sample contacts:
    • Run manage-address-books.py delete

    • Edit /etc/[phone|tablet]-services and remove manage-address-books.py

  • To remove sample video and music lenses:
    • Run rm /usr/share/dbus-1/services/com.canonical.Unity.Lens.MockMusic.service

    • Run rm /usr/share/dbus-1/services/com.canonical.Unity.Lens.MockVideos.service

  • To remove pictures from gallery:
    • Run rm /home/phablet/Pictures/*

  • To remove sample messages in messaging menu:
    • Edit /etc/[phone|tablet]-services and remove chewie_messaging_populate_menu

Adding Content

Contacts

Contacts can be added in the address book of the Phone application. Launch the Phone application and swipe to the “Contacts” tab. You can manually enter your contacts from there.

Alternatively you can import contacts from a csv file. The csv file should be in same format as /usr/share/demo-assets/contacts-data/data.csv. Replace the sample data.csv file with your own version and run manage-address-books.py create to import your contacts.

Photos

Photos can be added to the device and viewed in the Gallery application. They can be copied into /home/phablet/Pictures folder and they will be displayed in the Gallery. Also, pictures can be taken with the Camera application and they will automatically appear in the Gallery.

Videos

Videos can be copied onto the device into the /home/phablet/Videos folder and viewed with the Media Player application. They can be surfaced in the video lens by modifying the /usr/share/unity/lenses/mockvideos/mockvideos.json file to point at your installed videos (this process will be automatic in the future).

Alternatively, you can run the Media Player from the shell by running the following command:

media-player <full_path_to_video_file> --desktop_file_hint=/usr/share/applications/media-player.desktop

Upgrades

Some parts of the image can’t currently be upgraded, so it is best to deploy a full updated image. Some individual apps can be updated with apt, though. First add the phablet-team ppa (https://launchpad.net/~phablet-team/+archive/ppa) to /etc/apt/sources.list. Then run the following command with root permissions to update apps:

# apt-get update && apt-get upgrade

Porting to other devices

If you are interested in getting the Touch Preview working on a new device, please see our porting guide.

Known Issues

Memory Usage

Memory usage has not yet been optimized for the devices. It is possible to experience application crashes due to having too many applications open at the same time. A workaround is to close apps that are not being used.

Timezone

The timezone needs to be manually set from the command line. Valid values for timezones can be found in the /usr/share/zoneinfo/zone.tab file. Run the following commands ( specifying your own time zone choice ) with root permission to set your timezone:

  1. Access your device through SSH

  2. Then on the terminal connected to your device run:
    sudo echo “America/New_York” > /etc/timezone
    sudo dpkg-reconfigure --frontend noninteractive tzdata

Networking

The Developer Preview has support for Wi-Fi networking via the new network indicator, which supports basic Wi-Fi connections ( Open, WEP and WPA Personal ). It is possible to configure more advanced settings, however at this time this requires working directly with Network Manager system connection files.

The following network features are not yet included in the Developer Preview:

  • Airplane Mode/Wi-Fi Power Control
  • Advanced Settings ( eg. Hidden SSIDs, Manual IP, VPN, … )
  • Bluetooth
  • Hot Spot/Tethering

Telephony

The Developer Preview currently only supports limited voice and SMS over GSM.

The following Radio technologies are not yet included in the Developer Preview:

  • CDMA
  • LTE
  • Airplane Mode
  • Settings ( eg. APN choice, 2G only, … )

Mobile data is not supported, data is available via Wi-Fi only.

These Call features are not yet supported:

  • Emergency Call Support ( ie. ability to dial emergency numbers without a valid SIM card ).
  • PIN/PUK support for locked SIMs
  • No SIM filesystem support
  • Speakerphone

These SMS features are not yet implemented:

  • MMS
  • Send error handling
  • Delivery Reports

Device Specific Issues

Galaxy Nexus

  • The 802.11a protocol (i.e. 5GHz) is currently not working.

Nexus 4

  • In rare circumstances, the Nexus4 may get into a state where it may not boot at all after the battery is drained (even into recovery). If this happens, the only way to restore it is to disassemble the back of the phone and unplug/plug the battery connector.

Nexus 10

  • Taking pictures with the camera application causes an issue with audio. The volume indicator and volume keys will not work to control the sound until reboot.
  • People lens sometimes comes up empty after first flashing the device and booting. Rebooting fixes the issue.

Nexus 7

  • Runs in portrait mode by default (no side stage)
  • Camera, video decoding and audio output do not function.
  • Greeter screen is misaligned.
  • No multi-user login.

Devices with 1080 screens

Set the GRID_UNIT_PX environment variable to an appropriate value for the device (i.e. 30 for a 5” handset screen) in the /usr/bin/ubuntu-session script and in the /home/phablet/.bashrc file.

Ubuntu SDK Alpha

You can now install and execute applications on your device from a computer running Qt Creator:

  1. Plug in your mobile device running Ubuntu on the USB port of your computer

  2. Make sure your device is also connected to a wireless network (SSH key pairing happens over the air)

  3. Start Qt Creator from the Dash, and select the new Devices tab

  4. Press the Enable button to activate Developer Mode

  5. Develop your QML projects as usual (best way is to use one of the Ubuntu application templates in the File > New File or Project... menu entry). They will ensure that there is an ApplicationName.desktop file (where ApplicationName is the name of your application) with content similar to the following one:

    [Desktop Entry]
    Encoding=UTF-8
    Type=Application
    Terminal=false
    Exec=/usr/bin/qmlscene
    Name=ApplicationName
    GenericName=ApplicationName
    Comment=My project description
    Icon=ubuntu-qmlrunner
  6. Once the device is connected, you can press Ctrl+F12 to install and execute your app on the remote device

Alternatively, you can manually install Qt5/QML-based apps and run them on the device.

  1. Use adb push to copy your package or files to the device

  2. SSH into your device as user phablet

  3. To run, use

qmlscene --desktop_file_hint=/usr/share/applications/qmlscene.desktop YourApp.qml

Applications will be launched minimized by default. Go to the Apps lens and select your app from the list of Running Applications to bring it to the foreground

Known Issues

  • Applications launched on the device from Qt Creator start up in a non-focused mode. Remotely-executed apps are in thumbview mode in the Running Apps section on the Apps lens
  • The remotely-executed apps can not be focused by tapping on the thumbview, they need to be focused with a right-edge swipe
  • Documentation for the remote deployment feature is not yet available
  • Qt Creator does not use the system fonts
  • The welcome screen needs some visual improvements coming up soon

Touch/ReleaseNotes (last edited 2017-02-07 11:25:28 by sil2100)