Google contacts on Ubuntu Touch    Posted:


After a comment from Rick in his blog post I thought I'd take the quick challenge. So here's the quick and dirty way to get it...

adb root
adb shell
ubuntu_chroot shell
apt-get install syncevolution
su - phablet
syncevolution --configure --sync-property "username=email@gmail.com" --sync-property "password=secret" Google_Contacts
syncevolution --sync refresh-from-server Google_Contacts addressbook

If you have the phone app while doing this you can see the magic happen. Take into account that all contacts not on the server will be wiped (you can look at other options in syncevolution so that doesn't happen).

If you have too many contacts your people lens may explode! BEWARE None of these will be in your favorites, so the carousel will disappear.

Comments

Autopilot on devices    Posted:


UPDATE: -s $ANDROID_SERIAL is optional.

If you ran jenkins and had a device hooked up, this is sort of pseudo code you would run:

phablet-flash -s $ANDROID_SERIAL -u http://cdimages.ubuntu.com/ubuntu-touch-preview/daily-preinstalled/pending
sleep 5
adb -s $ANDROID_SERIAL wait-for-device
sudo phablet-network-setup -s $ANDROID_SERIAL -i -n WAP_conf_file
phablet-test-run s $ANDROID_SERIAL -i
phablet-test-run -s $ANDROID_SERIAL -n -p 'camera-app-autopilot' camera_app

What does each thing do? Well here goes

phablet-flash
We install whatever is on /pending in cdimage using the -u option to specify a url.
phablet-network-setup
After the device is flashed, we are going to need networking to set it up. The -n specifies the configuration file to use on that device that would successfully connect us to the WAP whilst the -i installs some packages such as openssh-server and sets up our public key on the device.
phablet-test-run
There are two calls here, one just sets up autopilot with the -i and it could very well be part of the next call. That next call, installs the test package and runs the autopilot tests for that device. If the shell interferes with the tests you can stop it with -n. Adding a -a and -o grabs the xml results from the test.

So that's it. Some gotchas are that autopilot is in transition right now. This is using the current fork of what we have that works on devices. The next autopilot release 1.3 was supposed to fix and integrate everything, but there is an API breakage that needs to be solved.

Since this phablet autopilot was a quick fork and when this was done there was no way to detect resolution so it's hard coded to maguro's resolution and may be a cause of issue when running on other devices (this as well is in the new autopilot, and if migration takes too long we might bring it in).

Comments

Using phablet-tools to install raring image    Posted:


raring images have been made available on cdimage, while they are not as solid as the quantal ones, you can still use them and start figuring out what needs fixing or how.

To get the image you can manually install it by downloading the image and then pushing it to the device like:

wget http://cdimages.ubuntu.com/ubuntu-touch-preview/daily-preinstalled/current/raring-preinstalled-phablet-armhf.zip
adb push raring-preinstalled-phablet-armhf.zip /sdcard/autodeploy.zip
adb reboot recovery

Alternatively you can use an alternate settings file like this one:

raring_settings.py

# This program is free software: you can redistribute it and/or modify it
# under the terms of the the GNU General Public License version 3, as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranties of
# MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
# PURPOSE.  See the applicable version of the GNU Lesser General Public
# License for more details.
#.
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
#
# Copyright (C) 2013 Canonical, Ltd.

download_uri = 'http://cdimage.ubuntu.com/ubuntu-touch-preview/daily-preinstalled/current'
download_dir = 'phablet-flash'
ubuntu_image = 'raring-preinstalled-phablet-armhf.zip'
device_file = 'quantal-preinstalled-armel+%s.zip'
device_file_img = 'quantal-preinstalled-system-armel+%s.img'
boot_file_img = 'quantal-preinstalled-boot-armel+%s.img'
recovery_file_img = 'quantal-preinstalled-recovery-armel+%s.img'
recovery_script_template = '''boot-recovery
--update_package={0}/{1}
--user_data_update_package={0}/{2}
reboot
'''
supported_devices = ('mako',
                     'maguro',
                     'manta',
                     'grouper',
                     )
validate_device = True
legal_notice = '''"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.
'''
accept_path = '~/.phablet_accepted'

Save it and then run:

phablet-flash --alternate-settings raring_settings.py

And that would be it, happy bug hunting and squashing!

Comments

Initial Ubuntu Touch Raring build    Posted:


So I'm back on track after some holiday time, good news is that I just spun out a raring build and have an update zip which I deployed on my phone.

A quick one:

$ adb shell cat /data/ubuntu/etc/issue
Ubuntu Raring Ringtail (development branch) \n \l

Why now?

We were originally running Quantal, we still are for practical purposes, and have been doing so since we were in feature implementation and many packages had overridden functionality. Now that the crunch time is over and trying to be the least invasive as one can be the move to Raring started.

It follows this blueprint and with some road bumps and conflicting schedules it is finally taking form. The idea behind all this is to smooth the transition to S.

What happened?

You may have noticed that the ppa:phablet-team is now full of packages built for Raring. Jenkins has been updated to do parallel builds for Quantal and Raring for those non conflicting packages and is pushing them into the PPA.

In the future we plan to move on to cdimage for building what we today do on offspring. That will happen as soon as we are on S for that will be the time when all these packages start to land into the archive and we start working on integrating our overridden packages.

I have a pending post on documenting the builds that's coming soon.

What's working and what's missing?

So there's a long list of things that are still pending and we probably won't switch to this until we get the parity as it is on Quantal, some things are plain broken and others are just missing.

It's in pretty good shape to be build #1!

My test subject today was maguro.

So from a quick glance, this works:

  • The shell in general (I was expecting a blank screen to be honest, this is build #1 after all).
  • Camera.
  • Gallery.
  • Browser.
  • Phone (not entirely, keep on reading).
  • Apps Lens.
  • Videos Lens.
  • Music Lens.
  • hud (did not try voice)
  • osk.
  • Messaging Indicator.
  • Sound Indicator.
  • Battery Indicator.

This doesn't work:

  • Home Lens.
  • Contacts Lens.
  • Media Player
  • Notes (probably because I'm missing a fix on a sidestage apps from the shell).
  • ofono (it's not packaged yet)
  • networking
  • Network Indicator.

Can I play too?

Yes you can, this build should probably work on all devices, the update zip can be grabbed from my UbuntuOne link, to install you can quickly run:

wget http://ubuntuone.com/6l0cbmXPs1jhvzLoa32QgU -O phablet-raring.zip
adb push phablet-raring.zip /sdcard/autodeploy.zip
adb reboot recovery

Provided that you have the recovery image with the ubuntu logo on it, it should just start, if not go through the menus and deploy it.

What comes next?

Here's a small TODO list:

  • Parity with Quantal builds is a first.
  • Provide update zip continuously on jenkins (which cdimage will pull from).
  • Work on the broken.
  • Work on the missing.

Once those are done:

  • Switch default to raring in phablet-flash.
  • Kill the Quantal builds.
  • Work on S.

Comments

Trekking while using wikilocs for tracks    Posted:


I just came back from among other things, well two weeks ago in reality, from doing the Inka Trail. While that is not the purpose of this writing, I did wish to be able to record the walk, but 4 days without batteries and the device I possessed where a blocker for recording it, more so when that device was our backup for photo taking, yes, it was a phone.

Putting that aside for a bit, I became a wikiloc user a while back to follow jimmyangel on the site, I actually know him but was told so by a different person. He has recorded many tracks and I am compelled to do the same for people to discover the hidden beauties that surround has.

So I was really anxious to record a track, more so after doing the Inka Trail. Luckily the place we went to wasn't already on wikilocs, so out came the cellphone and it's result on wikilocs.

More people should just start doing this. The tools is sort of straightforward on Android devices, just go get it.

Comments

Daily builds and updates to phablet-tools    Posted:


Update: Fixing link to cdimage and here's the link to the changelog.

Starting today all the builds created for phablet aka the Ubuntu Touch Developer Preview are going to be available on cdimage for your enjoyment.

Keep in mind that these builds are coming out of the oven as they are and may have important regressions, they may also have important enhancements so enjoy at your discretion.

Tools

phablet-tools has been updated to consume from the daily builds. To get that going you will need version 0.6-0phablet1. If you haven't installed them yet, add the PPA on your workstation by runnning:

sudo add-apt-repository ppa:phablet-team/tools

Then do the following if you already have Ubuntu Touch on your device to get the latest:

phablet-flash -l

Or add the -b command switch if bootstrapping for the first time.

The tools also remembers your agreement so you don't need to tye that in every time which is a welcome addition..

If you haven't updated in a while, you will notice that we added a disk space check to /data to make sure people don't boot into black screens. It doesn't cover all cases though.

PPA

You may or may not have noticed that the PPA which would hold all the packages used to build the image are also available at ppa:phablet-team, to add them to your device just do the following on your device:

sudo add-apt-repository ppa:phablet-team

Since you are at it, why not add the Qt 5 and the Ubuntu SDK PPA:

sudo add-apt-repository ppa:canonical-qt5-edgers/qt5-proper
sudo add-apt-repository ppa:ubuntu-sdk-team

Comments

Installing Ubuntu Touch preview on the Nexus 7 with Ubuntu on it    Posted:


UPDATE: added additional notes and fixes from comments.

Ok, so you might or might not know, but the Ubuntu Developer Preview is out, the news can be seen here

Some people on a Nexus 7, might have tried the Ubuntu desktop install a while back, rolling straight into the developer preview might not be an easy task with the current tools, so here is something to try out.

First get the two recovery zip files and the recovery image required for the Nexus 7:

Make sure you have adb running as root on you workstation (not the Nexus 7), do so by running:

adb kill-server
sudo adb start-server

Then power off you Nexus 7 and reboot in the bootloader, to do so, press and hold the power button, volume up and volume down.

To navigate either in the bootloader or in recovery you can use the volume keys to move around and the power button to confirm the selection.

Once booted, it will boot into the bootloader, you will notice it by the huge start button it has. With the cable connected to the device, run the following from your workstation:

sudo fastboot boot quantal-preinstalled-recovery-armel+grouper.img

This will boot you into recovery, where you should select

  • Mounts and storage -> Format /data and /data/media (/sdcard).

And then

  • Return to the main menu
  • Install zip from sideload.

On the workstation run:

adb sideload quantal-preinstalled-armel+grouper.zip
adb sideload quantal-preinstalled-phablet-armhf.zip
adb reboot

This should potentially work for all other devices, I myself don't have a Nexus 7, but did this on a Galaxy Nexus (maguro)

Comments

Improving Google Maps    Posted:


As it is you may be navigating GoogleMaps and notice that a street is marked as going in the opposite direction or that perhaps it is a two way street. There may be times when you want to find a location and it is no where to be seen.

It seems that most people prefer to find stuff in Foursquare, myself not falling into that category, I take the time to add venues to my source of information. Ergo, I use GoogleMapMaker.

Given that you choose to do this, it's not that anything goes, whatever you add or modify must be peer reviewed by a moderator or person of power to make it show up in GoogleMaps

You can check out all the recent changes made in the tool close to your vecinity quite easily.

Comments

Automatic Android Recovery Image Deployment    Posted:


If you are building on Android or Cyanogenmod and want to automatically deploy the recovery images to test them out it is possible, you just need to do this

adb push system.zip /sdcard/
adb reboot recovery

Then you'd just do the dance of selecting through the menus until you were updated.

What if all that could be automated? Well it can, and what follows are the building blocks for that.

So if you look at bootable/recovery/recovery.c [1] you will notice

static const struct option OPTIONS[] = {
  { "send_intent", required_argument, NULL, 's' },
  { "update_package", required_argument, NULL, 'u' },
  { "wipe_data", no_argument, NULL, 'w' },
  { "wipe_cache", no_argument, NULL, 'c' },
  { "show_text", no_argument, NULL, 't' },
  { NULL, 0, NULL, 0 },
};

It is exactly what it looks like, so how do we craft this so when booted into recovery for our automation to take place? Simply write something like:

boot-recovery
--update_package=/sdcard/system.zip
reboot

Save that (recovery_script) and copy it to /cache/recovery/command

adb root
adb push recovery_script /cache/recovery/command

So given that your update zip is called system.zip and it lives in /sdcard next time you reboot into recovery the deploy will take place following what is in commands without manual intervention.

To see if everything went well you can afterwards check /cache/recovery/last_log

[1]Or http://androidxref.com/4.2_r1/xref/bootable/recovery/recovery.cpp#50

Comments

Migrating blog    Posted:


From this day on my posts will happen here, I'm migrating away from my previous blog hosted on blogspot [1] in favor of this static site hosted on github, I've taken the idea from Martin Gaitan who has opened the path and idea in my mind.

His blog is also hosted on github pages at http://mgaitan.github.com and he has a post that mentions this [2].

[1]http://sergiusens.blogspot.com
[2]http://mgaitan.github.com/posts/notas-rapidas-de-una-mudanza.html

Comments

Contents © 2013 Sergio Schvezov - Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License. - Powered by Nikola
Share