Installing more puritine apps on the BQ Aquaris M10 Ubuntu Edition

I’ve published this earlier as google doc, but it seems that was a bad idea and many people are still asking the same question. So here’s the same howto, targetting a somewhat broader audience:

Please note: This is not officially supported yet but has been tested by a fair amount of people by now. All steps are taken at your own risk. Be prepared to reflash the tablet if you mess up. Also note that none except the preinstalled applications have been tested by Canonical. Your favorite application might just not work yet.

Update: As people pointed out in the comments (thanks for that!), this will fail if ran from the Terminal app on the device. Instead, use a USB cable and log in to the tablet using phablet-shell from the package phablet-tools and run the following commands from there.

Initial setup
First we need to replace the link to the container config with the actual container config so it can be edited.
# cd ~/.local/share/libertine
# rm ContainersConfig.json
# cp /custom/click/.click/users/@all/com.ubuntu.puritine/libertine-config/libertine/ContainersConfig.json .

Create a new container
# libertine-container-manager create -i puritine2 -n "Puritine 2" -t chroot -d vivid --force

Now we have a second container in the writable part of the image named puritine2. The original that comes preinstalled (named puritine) is still there, but in the read-only part of the image.

Installing applications in the new container
First we fire apt-get inside the container to install inkscape. The libertine-container-manager can do that all for us. In this example, we’re installing inkscape.
# libertine-container-manager install-package -i puritine2 -p inkscape

Nearly done. All that’s left to do is to add an icon in the dash so we can actually launch inkscape. For that we copy the preinstalled gimp icon and edit it to launch inkscape instead. Note that the naming of the file is key here. The file name consists of containerid_appid_version.desktop. So in our case puritine2 for the container id, inkscape for the appid and well, the version seems to be unused at this point, so let’s leave that at 0.0.
# cd ~/.local/share/applications/
# cp /usr/share/applications/puritine_gimp_0.0.desktop puritine2_inkscape_0.0.desktop

Now edit the file and change the Name= field to say inkscape and the Icon= field to point to an icon you want. Don’t edit any other fields.
Now pull down the apps scope to refresh it. Inkscape should appear there and start up when you click it.

This entry was posted in Ubuntu. Bookmark the permalink.

19 Responses to Installing more puritine apps on the BQ Aquaris M10 Ubuntu Edition

  1. Ted Gould says:

    Cool, thanks for putting this info out there. I think that you don’t need to copy the desktop file and edit it in OTA11. I haven’t verified that for sure on my M10, but it works well with the overlay PPA on my desktop now.

  2. nula says:

    Thank you for the nice guide!

    I tried to follow it but it was stopped during the “create” phase on a non-existance of “matchbox-keyboard package”. Do you have similar experience?

  3. alecu says:

    I tried the above steps several times from the Terminal app, but “libertine-container-manager create …” always crashed with some error or other.

    To avoid repeatedly banging your head against the wall I recommend instead to use a USB cable and follow the steps via phablet-shell or even adb. With that it works perfectly! I managed to install and run inkscape, scribus, and even the Arduino IDE.

    • Michael says:

      Thanks, I’ve added a note for that to the text. Not sure what exactly is the issue with the Terminal app. We should try to find out.

  4. pawlinski says:

    Hi,
    Thanks for this description. Unfortunately, I receive an error with this packages while attempting to install a new container.
    isc-dhcp-client
    x11-common
    libxtst6:armhf
    libfakekey0:armhf
    matchbox-keyboard
    matchbox
    ca-certificates
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    phablet@ubuntu-phablet:~$
    Thanks for any help :)

  5. nula says:

    The access via USB works perfectly. Thanks!

  6. cixot says:

    Hi,
    many thanks for this tuto, now inkscape launches successfully from my M10.

    However I have used the procedure with vlc, but the app icon launches a black vlc window that disapears in 3 seconds.
    Have you tried to install vlc in ubuntu-touch?

    Many thanks!

  7. Hello and thanks for your article.

    I’m planing to try to install xapps in my M10, today after the OTA-12 and I wondering if the process is still valid after the update.

    Can you confirm that?

    Regards.

  8. Miguel says:

    Hello. Thanks a lot for this guide.
    I have installed OTA-12 in my BQ tablet and the instructions for installing the container and a few applications (via adb through usb cable) worked without an error (it took a long time). I have installed gnome-terminal, gnomine, iputils-ping and empathy.
    Nevertheless, when I try to run the applications they usually crash (gnomine always, the other two randomly) and apparently the applications do not get access to the network connection (for example, performing a “ping” inside gnome-terminal when it does not crash, I get the error “ping: icmp open socket: Operation not permitted” and empathy, when it does not crash, seems not to get network connection either. Do you know if something need to be installed to get network connection?
    It is possible to chroot into the container from the terminal without opening any particular application?
    Thanks a lot for any reply.

  9. Oskar says:

    Thanks for the guide helped me install Remmina on my BQ M10. However Chromium won’t run. Anyone had any luck with running Chrome or chromium on Ubuntu touch?

  10. Txema says:

    Hello, when trying to create new container puritine2 it appears following error:
    Desempaquetando libxcb-randr0:armhf (1.10-2ubuntu1) …
    tar: ./control: Cannot write: No space left on device
    tar: ./postinst: Cannot write: No space left on device
    tar: ./shlibs: Cannot write: No space left on device
    tar: Exiting with failure status due to previous errors
    dpkg-deb: error: el subproceso tar devolvió el código de salida de error 2
    It seems that I have no space, but I don’t know how to liberate more space. I have tried to launch sudo apt-get clean, but this error appears:
    W: No se utilizan bloqueos para el fichero de bloqueo de sólo lectura /var/cache/apt/archives/lock
    phablet@ubuntu-phablet:~/.local/share/libertine$ sudo apt-get purge
    W: No se utilizan bloqueos para el fichero de bloqueo de sólo lectura /var/lib/dpkg/lock
    E: No se pudo escribir en /var/cache/apt/
    E: No se pudieron analizar o abrir las listas de paquetes o el archivo de estado.

    it says “No blocked used for the only reading file of blocking /var/cache/apt/archives/lock”

    Thank you.

Leave a Reply

Your email address will not be published. Required fields are marked *