There is no “Touch”, only “Ubuntu”

There’s been a lot of talk about Ubuntu’s phone and tablet development over the last year, and it’s great that it’s getting so much attention, but people have been getting the name of it all wrong. Now, to be fair, this is a problem entirely of our own making, we started off talking about the phone (and later tablet) developments as “Ubuntu Touch”, and put most of the information about on our wiki under a page named Touch.  But there is no Ubuntu Touch! It’s not a separate OS or platform, there is only one OS and it’s simply called Ubuntu.

Ubuntu 14.04 Stack

What people are referring to when they say Touch or Ubuntu Touch, is really just Ubuntu with Unity 8.  Other than the shell (and display server that powers it), it’s the same OS as you get on your desktop.

Everything under the hood is the same: same tools, same filesystem, even the same version of them, because it’s all built from the same source. Calendar data is stored in the same place, audio and video is played through the same system, even the Unity APIs are shared between desktop and phone.

So why is the name important?  Not only is it more accurate to call them both Ubuntu, it’s also one of the (in my opinion) most exciting things about having an Ubuntu phone.  You’re not getting a stripped down embedded Linux OS, or something so customized for phones that it’s useless on your desktop.  You’re getting a fully featured, universal operating system, one that can do everything you need from a phone and everything you need from a desktop.

Future Ubuntu Stack

This is the key to Ubuntu’s convergence strategy, something that nobody else has right now. Android makes a terrible desktop OS.  So does iOS.  Chrome OS won’t work for a phone either, nor OSX. Even Microsoft has built two different platforms for mobile and desktop, even if they’ve slapped the same interface on both.

But with Ubuntu, once Unity 8 comes to the desktop, you will have the same OS, the same platform, on all of your devices. And while you will run the same version of Unity on both, Unity 8 is smart enough to change how it looks and how it works to meet the needs and capabilities of what you’re running it on.  Better still, Unity will be able to make these changes at run time, so if you dock your convertible tablet to a keyboard, it will automatically switch from giving you a tablet interface to a desktop interface. All of your running apps keep running, but thanks to the Ubuntu SDK those too will automatically adjust to work as desktop apps.

So while “Ubuntu Touch” may have been a useful distinction in the beginning, it isn’t anymore.  Instead, if you need to differentiate between desktop and mobile versions of Ubuntu, you should refer to “Unity 8″ if talking about the interface, or “Ubuntu for phones” (or tablet) if you’re talking about device images or hardware enablement. And if you’re a developer and you are talking about the platform APIs or capabilities, you’re talking about the “Ubuntu SDK”, which is already available on both desktop and mobile installs of Ubuntu.

This entry was posted in OpenSource and tagged , , , , , , , . Bookmark the permalink.

18 Responses to There is no “Touch”, only “Ubuntu”

  1. Pingback: Ubuntu es Ubuntu, sin 'phone', sin 'touch', sin nada - MuyLinux

  2. WRT to the product, right on target.

    I would make emphasis on the development model if looking for ideas :)
    The rolling train thing that is.

  3. Winael says:

    Thx for your precision.

    I’ll use #UbuntuDesktop and #Ubuntu4phones as hashtag now

    Cheers

  4. Matt Austin says:

    I feel as this is a bit misleading, without ‘hacking’ the phone images are nothing like a ‘proper’ Ubuntu installation. Applications from the repos can’t be installed, as the filesystem is read only. My python qt5/qml app won’t be easily distributed as the required python libraries can’t be installed using apt. In fact applications are sandboxed and become quite constrained in scope because of the limitations. Security at the expense of the usability of a ‘proper’ Linux distro.

    • Michael Hall says:

      The “hack” is to run “phablet-config writable-image” from your desktop while the phone is plugged in. It’s not a GUI, but anybody who wants apt-get should be able to handle it.

      Yes, app confinement means you’ll have to bundle non-default python libraries in your Click package. It also means you don’t have to worry about system upgrades bringing in incompatible versions of those libraries, and that you don’t need to wait through an code review process before getting your app into the hands of your users. It’s a trade-off, for sure, but one we think brings far more benefits to developers and users alike than it takes away.

      • Robert Schroll says:

        But the different choices on those trade-offs is exactly what’s misleading about calling everything “Ubuntu”. The user hears that Ubuntu Touch is Ubuntu and thinks, I can run $FAVORITE_PROGRAM on it. But they can’t, not without jumping through hoops to make their image writable. The developer hears that Ubuntu Touch is Ubuntu and thinks, I know how to write programs for it. But they don’t, not without learning how to operate without those UNIXisms prohibited by application confinement.

        Now, you never explicitly promised these things. But by insisting that everything is just “Ubuntu”, you are implicitly suggesting them. When users and developers discover the differences, they feel disappointed and perhaps even betrayed. It’d be much better, in my ever-so-humble opinion, to give these two different enviroments different names, and avoid making these implicit promises.

      • Matt Austin says:

        Thanks for the reply Michael. It’s true that there is a trade off, and that it is difficult to find a balance.

        As a lazy developer, I don’t want the responsibility of bundling python and other libraries with my app. I don’t have much experience packaging, and don’t want the responsibility of building python in a safe and secure way, and then providing security updates if there are any vulnerabilities discovered in the various libraries I need to bundle. There are people out there who are experts at packaging various specialised libraries, and already do so for Ubuntu. Why can’t I use their expertise and time that they have already kindly invested in packaging for Ubuntu Desktop on a phone? To me, it just seems wrong.

        As a user, what happens if (taking a random library – and this may be a bad example as it might be on the phone already) a vulnerability in, say, openssl is discovered – a user has to rely on every app which might bundle this library releasing an update. As a user, you have no idea which apps might be using the ‘bad’ vulnerable version, and which have been updated.

        I’m excited that there are more and more alternative phone operating systems out there, and have high hopes for Ubuntu and Sailfish OS. I want to be able to easily make my apps available to users of Ubuntu, but find it difficult to get started when I have to bundle libraries (as a python/qml/web developer, I have no experience at compilation and building and have found it difficult to find a good starting point when it comes to including dependencies in my apps).

  5. Joseph says:

    It is not the same thing . OK what I mean is . there is no desktop verson of unity 8 or at least not public. So going around saying that it is the same thing is not only in true. But it is also not fair to the companys that you talk about. Also the user gets locked down on the phone . the Mir/phone wm can not launch x apps or in fact any binarys that are not qml/qt . there are a million and a half things that sperate the desktop from the phone to the dishwasher . mike you are cool but how would you like it if so.done talked about your products that your company makes like that ?

    • Michael Hall says:

      There is a preview version of Unity 8 in the latest Trusty archives. It’s still very tablet-specific at this point, but it will start gaining desktop features soon enough.

  6. Jan Polášek says:

    Nonsense. Ubuntu for mobile phones != Ubuntu for desktop computers. Can I install ARM build of regular Ubuntu on Nexus 5? No. Can I add repo in Ubuntu (Touch)? No. Can I use desktop apps there? No. Talking about their usecases, they are completely different systems. It is the same case as with Windows and Windows Phone or Windows RT. They just aren’t the same thing. And it makes no sense to call two different things with one name.

    • Michael Hall says:

      You can’t download a generic ARM version of Ubuntu for the Nexus 5, no, because those devices can’t be supported with a single generic image. CyanogenMod has the same problem, they have to provide device-specific images.

      You can add repos to Ubuntu on phones, you just need to switch it from using image-based updates to using package-based updates, then you can apt-get and add-apt-repository to your heart’s content.

      You can run converged apps on the phone, or tablet, or desktop. You can’t run unconverged apps usefully on a phone, and you can’t (currently) run legacy X11 apps at all. Unconverged apps will always be a problem on phones, but if a phone or tablet were docked to a keyboard and mouse (and ideally a larger screen) you will be able to use them that way. Legacy X11 apps will be supported by XMir, which will run them isolated in their own X.org server, but that support hasn’t landed yet.

      • Jan Polášek says:

        Still, to have the same name, it would have to be completely the same thing. These platforms have (at least a bit) different SDK’s, API’s and will have completely different set of apps. Even converged apps are going to be different than their desktop counterparts. And it also is really confusing, whether somebody is talking about Ubuntu on his phone, or Ubuntu on his desktop. Yes, you probably would be able to install mobile Ubuntu apps on desktop ubuntu, but using them will be pain in the ass as well as using touch apps with mouse on Windows 8.x.

        Even with the same codebase, I think there should be different names for them, because differences between them are going to be pretty huge.

        And imagine the articles: “Official Evernote landed in Ubuntu repositories. ”
        “Awesome, I can finally stop using buggy Everpad…. Oh, why didn’t they point out in the article headline, that it’s just for Ubuntu for mobile phones, those apps suck on desktop” There will be need to differentiate these two.

        • Jo-Erlend Schinstad says:

          «Even converged apps are going to be different than their desktop counterparts.»

          No, that’s wrong. It’ll be the same program whether you run it on a phone or desktop. And if you connect a larger monitor, keyboard and mouse, then it should become a desktop app on the fly. This is what makes them convergent.

          «Yes, you probably would be able to install mobile Ubuntu apps on desktop ubuntu, but using them will be pain in the ass as well as using touch apps with mouse on Windows 8.x. »

          No, that’s a misunderstanding. When you run the app on a phone, then it’ll be a phone app. When you run the exact same program on the desktop, then it’ll have a desktop interface. This is the exact opposite of what the situation is on Windows.

  7. Jef Spaleta says:

    You still have a branding problem….which is going to cause confusion.

    Are the KDE Desktop and XCFE desktops part of the Ubuntu OS?
    They are in the “Ubuntu” repositories.

    So here’s the problem… you really want to make Ubuntu a strong platform brand. I get that. It’s smart. However overloading the brand as the overarching project brand as well undermines the utility and strength of the platform brand value that you are building around the SDK.

    If you really want a strong platform brand then really the SDK has to be key. If software doesn’t conform to the versioned APIs exposed in the Ubuntu SDK.. then it should not be associated with the brand.

    For the brand to really take off for the convergent strategy you are going to have to find a way to… re-brand… the larger project space to make sure all that other existing software, that isn’t part of the covergent “Ubuntu” strategy has its own brand space. This new brand space will still have innate value, but it won’t be part of the convergent platform and won’t add value to the convergent platform brand.

    I personally would have preferred that you guys had run with the concept of the Unity brand as a platform brand, but clearly the reality of the Unity3d engine sort of took that brand off the table. But if you are going to run with the Ubuntu brand as the platform brand, you really have to rebrand the wider repository and community that feeds it to keep your own communities from causing brand confusion. Because the community building for the platform, is distinct from the community building for the project repository. They value different things. Give them different flags so they don’t have to fight each other for the heart and soul of the same brand.

  8. Jo-Erlend Schinstad says:

    I’d like to see this communicated differently.

    Right now, we have Ubuntu Desktop, Ubuntu Server, Ubuntu Touch, etc. New features are added to Ubuntu Touch. First you get the phone stuff, then tablet stuff, then desktop stuff. It already has the server stuff, although you need to activate it. So this means that at some point in time, we’ll have two different desktop systems; the traditional desktop install and a new form of Ubuntu that _also_ has desktop support. At that point, the pure Ubuntu Desktop install will start to become redundant and can be phased out. Only when we get to the point that we only have one form of Ubuntu, the transition will be complete and in many ways, it’ll be a non-event, because most people will have upgraded long ago anyway.

    We do have two different types of Ubuntu and they will co-exist for quite some time, so it is useful to refer to them in different ways. I usually refer to the different concepts as Ubuntu Current or «the Traditional Ubuntu» and «the New Ubuntu». This will also help understanding how big the differences are between the Current Ubuntu Desktop and the New Ubuntu Desktop. Upgrading from the Traditional Ubuntu 14.04LTS desktop and to the New Ubuntu Desktop will not only be about the Unity shell. It’s a massive change and I think it’s important that we start separating how we communicate the two as early as possible. That will, after all, be the biggest change between two versions in Ubuntu history. It must be communicated properly.

    Anyway, it’ll be useful to have a name for how Ubuntu _used_ to be before the big changes, just as it is useful to have a name for what Ubuntu is _going_ to be.

  9. Pingback: Ubuntu Touch non esiste! Esiste solo Ubuntu! Ecco cosa è la convergenza! | Tecno Android

  10. Andreas Poulsen says:

    I still don’t get it. Will the final Ubuntu image be read-only, so every application in Debian now becomes out of range for non-technical Ubuntu users, who don’t know that they should make their image writable? I like the idea about Click packages, but I wouldn’t like to give up apt-get to use them. Please, don’t remove every peace of good desktop software, that has been written the last ten years, just to make the phone experience a bit better

  11. Lawrence Jackson says:

    Let me start by saying I have no background in programming so I may be talking nonsense. Has anyone explored the same approach Docker is using for containerisation? As far as I understand it would mean the phone has a full installation of the OS (Ubuntu) and then each application would be within a container (which should stop one app from sneaking a peak at anothet app info unless the user gives permission). Security aside the key here is that all containers (apps) that require open SSL (for example) would be using the same library. That means if a vulnerability was found then only one library (file? I’m not sure) would need to be patched.
    Cheers

Leave a Reply

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

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>