I noticed that Ubuntu SDK recently had some updates and it installed a program named "Click". I would like to know what they are and how to use them.

Also, would they make Debian packaging easier?


Click packages are the new packaging format used in Ubuntu Touch, and by Ubuntu 14.10, on the desktop version of Ubuntu as well.

Some of the features they provide are:

  • Simplified packaging for the developer. The Ubuntu SDK can automatically create Click packages of your Ubuntu Touch apps. If you want to create your own, the format is very simple, consisting of two files, manifest.json and <app-name>.json.

    The manifiest.json file is the actual package definition and looks like this:

    {
        "description": "Your tasks, every device, everywhere. Create and synchronize tasks using Ubuntu One, and connect to your boards in Trello.",
        "framework": "ubuntu-sdk-13.10",
        "hooks": {
            "ubuntu-tasks": {
                "apparmor": "ubuntu-tasks.json",
                "desktop": "ubuntu-tasks.desktop"
            }
        },
        "maintainer": "Michael Spencer <[email protected]>",
        "name": "com.ubuntu.developer.mdspencer.ubuntu-tasks",
        "title": "Ubuntu Tasks",
        "version": "0.5"
    }
    

    The <app.name>.json file is the security profile for your app and looks like this:

    {
        "policy_groups": [
            "networking"
        ],
        "policy_version": 1
    }
    

    To build your package, you can either use the Ubuntu SDK or by running

    click build .
    

    You can find more information about packaging your app here.

  • The ability to run under confinement. What this means is that the app is prevented from doing bad things. It can only access its own private directory and access features that the user allows the app to use. This means that Click packages are very safe and the review process for publishing them is much simpler.

Once you've packaged your app, you can submit your application to the Click App Store. The review process is vary simple and will be completed usually within a few hours. Once reviewed, your app will be available for installation from any device running Ubuntu Touch.

Would they make Debian packaging easier?

Yes and no. Debian packaging is completely different. However, if your app is made with the Ubuntu SDK, you don't need to use Debian packaging and can instead use Click packaging, which is much easier to use and much safer for the end user.

Here are some useful links for more information:

  • Why is my Ubuntu Touch app not visible in the Ubuntu Software Center?
  • Where do I submit applications written for Ubuntu Touch?
  • What is the naming convention for click packages?
  • The official documentation for Click packages