Create an Ubuntu One account

To use Ubuntu Core, to build and sign an image, or publish a snap, you need an Ubuntu One account.

Ubuntu One is a single sign-on service (SSO) for Ubuntu and its affiliated projects, including snapcraft.io, the central resource for all snap-related publishing.

See below for details on how to create an account and retrieve your developer account details.


1. Create an Ubuntu One account

To create an account, head over to https://snapcraft.io/account and select the “I don’t have an Ubuntu One account” option to start this process.

Fill out the form that appears and you will then receive an email asking you to verify your account. Click the verification link in the email and complete the reCAPTCHA challenge that follows. Finally, you should accept the Canonical Terms of Service.

Once you’ve logged in again to accept the terms, your Ubuntu One account is ready to use.

2. Retrieve your developer account ID

You next need to retrieve your developer account identifier. This is part of your Ubuntu One account and is used to link your account to any Ubuntu Core images you create.

The next steps need to be performed in an existing Ubuntu (20.04 or later) environment.

Your developer identifier can be retrieved with the snapcraft command, the tool that’s also used to build and publish snaps. It can be installed by running:

sudo snap install snapcraft --classic

With snapcraft installed, log in to the Store with your Ubuntu SSO account:

snapcraft login

You will be asked for your Ubuntu One email address and password, and encouraged to enable two-factor authentication (2FA) if you haven’t already done so:

$ snapcraft login
Enter your Ubuntu One e-mail address and password.
If you do not have an Ubuntu One account, you can create one at https://snapcraft.io/account
Email: <Ubuntu-SSO-email-address>
Password: <Ubuntu-SSO-password>

We strongly recommend enabling multi-factor authentication: https://help.ubuntu.com/community/SSO/FAQs/2FA

Login successful.

Following a successful login, the snapcraft whoami command displays your developer identifier after the id field:

$ snapcraft whoami
email: <email-address>
username: <username>
id: xSfWKGdLoQBoQx88
permissions: package_access, package_manage, package_metrics, package_push, package_register, package_release, package_update
channels: no restrictions
expires: 2024-02-17T10:25:13.675Z 

In the output above, the example id is xSfWKGdLoQBoQx88 – we’ll use this ID for subsequent examples, but you should obviously use your own ID from now on.

2 Likes

Thanks. This is a very nice write-up

Output of “snapcraft whoami” with never versions of snapcraft includes:

id: p9V433Ul9bpSGNcd7ip8279vBYqUHUEN

not “developer-id”. And there’s a fair bit more output, is it worth including all of it?

Thanks! I wasn’t aware of that change - I think it’s used in a few places. I’ve updated the above, but I’ll also check elsewhere.

What do you do if the “snapcraft whoami” command returns an id of “None”?

You could try snapcraft logout to clear any credentials, and then snapcraft login. But it also sounds like the issue may have been temporary.