Canonical Voices

Posts tagged with 'ubuntu'

Timo Jyrinki

This is a burst of notes that I wrote in an e-mail in June when asked about it, and I'm not going to have any better steps since I don't remember even that amount as back then. I figured it's better to have it out than not.

So... if you want to use LUKS In-Place Conversion Tool, the notes below on converting a shipped-with-Ubuntu Dell XPS 13 Developer Edition (2015 Intel Broadwell model) may help you. There were a couple of small learnings to be had...
The page itself is good and without errors, although funnily uses reiserfs as an example. It was only a bit unclear why I did save the initial_keyfile.bin since it was then removed in the next step (I guess it's for the case you want to have a recovery file hidden somewhere in case you forget the passphrase).

For using the tool I booted from a 14.04.2 LTS USB live image and operated there, including downloading and compiling luksipc in the live session. The exact reason of resizing before luksipc was a bit unclear to me at first so I simply indeed resized the main rootfs partition and left unallocated space in the partition table.

Then finally I ran ./luksipc -d /dev/sda4 etc.

I realized I want /boot to be on an unencrypted partition to be able to load the kernel + initrd from grub before entering into LUKS unlocking. I couldn't resize the luks partition anymore since it was encrypted... So I resized what I think was the empty small DIAGS partition (maybe used for some system diagnostic or something, I don't know), or possibly the next one that is the actual recovery partition one can reinstall the pre-installed Ubuntu from. And naturally I had some problems because it seems vfatresize tool didn't do what I wanted it to do and gparted simply crashed when I tried to use it first to do the same. Anyway, when done with getting some extra free space somewhere, I used the remaining 350MB for /boot where I copied the rootfs's /boot contents to.

After adding the passphrase in luks I had everything encrypted etc and decryptable, but obviously I could only access it from a live session by manual cryptsetup luksOpen + mount /dev/mapper/myroot commands. I needed to configure GRUB, and I needed to do it with the grub-efi-amd64 which was a bit unfamiliar to me. There's also grub-efi-amd64-signed I have installed now but I'm not sure if it was required for the configuration. Secure boot is not enabled by default in BIOS so maybe it isn't needed.

I did GRUB installation – I think inside rootfs chroot where I also mounted /dev/sda6 as /boot (inside the rootfs chroot), ie mounted dev, sys with -o bind to under the chroot (from outside chroot) and mount -t proc proc proc too. I did a lot of trial and effort so I surely also tried from outside the chroot, in the live session, using some parameters to point to the mounted rootfs's directories...

I needed to definitely install cryptsetup etc inside the encrypted rootfs with apt, and I remember debugging for some time if they went to the initrd correctly after I executed mkinitramfs/update-initramfs inside the chroot.

At the end I had grub asking for the password correctly at bootup. Obviously I had edited the rootfs's /etc/fstab to include the new /boot partition, I changed / to be "UUID=/dev/mapper/myroot /     ext4    errors=remount-ro 0       ", kept /boot/efi as coming from the /dev/sda1 and so on. I had also added "myroot /dev/sda4 none luks" to /etc/crypttab. I seem to also have GRUB_CMDLINE_LINUX="cryptdevice=/dev/sda4:myroot root=/dev/mapper/myroot" in /etc/default/grub.

The only thing I did save from the live session was the original partition table if I want to revert.

So the original was:

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 500118192 sectors, 238.5 GiB
Logical sector size: 512 bytes
First usable sector is 34, last usable sector is 500118158
Partitions will be aligned on 2048-sector boundaries
Total free space is 6765 sectors (3.3 MiB)
Number  Start (sector)    End (sector)  Size       Code  Name
1            2048         1026047   500.0 MiB   EF00  EFI system partition
2         1026048         1107967   40.0 MiB    FFFF  Basic data partition
3         1107968         7399423   3.0 GiB     0700  Basic data partition
4         7399424       467013631   219.2 GiB   8300
5       467017728       500117503   15.8 GiB    8200

And I now have:

Number  Start (sector)    End (sector)  Size       Code  Name

1            2048         1026047   500.0 MiB   EF00  EFI system partition
2         1026048         1107967   40.0 MiB    FFFF  Basic data partition
3         1832960         7399423   2.7 GiB     0700  Basic data partition
4         7399424       467013631   219.2 GiB   8300
5       467017728       500117503   15.8 GiB    8200
6         1107968         1832959   354.0 MiB   8300

So it seems I did not edit DIAGS (and it was also originally just 40MB) but did something with the recovery partition while preserving its contents. It's a FAT partition so maybe I was able to somehow resize it after all.

The 16GB partition is the default swap partition. I did not encrypt it at least yet, I tend to not run into swap anyway ever in my normal use with the 8GB RAM.

If you go this route, good luck! :D

Read more
Daniel Holbach

UCADay-64pxThe Ubuntu Community Appreciation Day is a really nice tradition and it’s always to think of somebody I could thank (Thanks Ahmed Shams for setting it up in the first place!). Narrowing down my list of thank-yous to just one or two for a blog post is much harder for me. :-)

First I’d like to thank Elizabeth Krumbach. Liz has been all over the place in the Ubuntu world for ages and has helped out in many many forms. She does all this on top of a demanding full-time job, speaker engagements, involvement in other communities and much more. I really liked working with her on the Community Council where she stayed calm even when the CC was under pressure. She stayed focused and her main goal was always to get the best out of the situation for everyone. Liz remained committed to helping people, no matter how busy she was and how trivial their request was – she sets a true example. Thanks a lot Liz!

I’d also like to thank Sergio Schvezov. I’ve worked together with him on phone bits and snappy and snapcraft things as well and I’m always amazed by how many balls he keeps in the air, how thoughtful he his, while staying pragmatic and staying cheerful. With him working on snapcraft, I have no doubt that the next generation of software maintainers in Snappy land will have a great time. Thanks a lot Sergio!

There are many more to thank, you all, the Ubuntu Community, make it very easy to still be part of this fantastic group of individuals and look forward to more! Big hugs everyone! :-)

Read more
Michael Hall

I’ve just published the most recent Community Donations Report highlighting where donations made to the Ubuntu community have been used by members of that community to promote and improve Ubuntu. In this report I’ve included links to write-ups detailing how those funds were put to use.

Over the past two years these donations have allowed Ubuntu Members to travel and speak at events, host local events, accelerate development and testing, and much more. Thank you all who have donated to this fund. You can help us do more, by donating to the fund and helping spread the word about it, both to potential donors and potential beneficiaries.

Read more
Daniel Holbach

Ubuntu Online Summit featured more than 70 sessions this time around and quite a big turnout. You can find the full schedule with links to session videos and session notes in

Here’s a quick summary of what happened in Snappy Ubuntu Core land:

  • Testing Snappy: In this Show & Tell session Leo Arias showcased a lot of the QA work which has been done on Ubuntu Core along with many useful techniques to run tests and easily bring up Snappy in a number of different scenario.
  • Creating more Snappy frameworks: Frameworks are an effective way to bring functionality to Ubuntu Core which can then be shared by apps. The session attracted quite a few users of Snappy who wanted to know if their use-case could be addressed by a framework. We discussed some more technical difficulties, possible solutions and learned that bluetooth and connectivity (based on network-manager) frameworks are in the works.
  • Snappy Clinic: bringing ROS apps to Snappy Ubuntu Core: Ted Gould showed off the great work which has been put into the catkin plugin of Snapcraft. Taking a simple ROS app and bringing it to Ubuntu Core is very easy. The interest from members of the ROS community was great to see and their feedback will help us improve the support even further.
  • Snap packages for phone and desktop apps: Alejandro Cura and Kyle Fazzari brought up their analysis of snappy on the phone/desktop and discussed a plan on what would need to land to make snappy apps on the Ubuntu desktop and phone a reality.
  • Your feedback counts: the Snappy onboarding experience: This session brought together a number of different users of Snappy who shared their experience and what they would like to do. The feedback was great and will be factored into our upcoming documentation plans.
  • Snappy Developer Community Resources: In this session Thibaut Rouffineau and I had a chat about our online support options and community resources. We gathered a number of ideas and will look into creating workshop and presentation materials this cycle as well.
  • Porting popular apps/software to Snappy: Many interesting apps and appliances exist for a variety of boards, most notably the Raspberry Pi. We put together a plan on how we could start a community initiative for bringing them over to Snappy Ubuntu Core.

Thanks to everyone who participated and helped to make this such a great UOS!

Read more
Dustin Kirkland

Picture yourself containers on a server
With systemd trees and spawned tty's
Somebody calls you, you answer quite quickly
A world with the density so high

    - Sgt. Graber's LXD Smarts Club Band

Last week, we proudly released Ubuntu 15.10 (Wily) -- the final developer snapshot of the Ubuntu Server before we focus the majority of our attention on quality, testing, performance, documentation, and stability for the Ubuntu 16.04 LTS cycle in the next 6 months.

Notably, LXD has been promoted to the Ubuntu Main archive, now commercially supported by Canonical.  That has enabled us to install LXD by default on all Ubuntu Servers, from 15.10 forward.
Join us for an interactive, live webinar on November 12th at 5pm BST/12pm EST led by James Page, where he will demonstrate LXD as the fastest hypervisor in OpenStack!
That means that every Ubuntu server -- Intel, AMD, ARM, POWER, and even Virtual Machines in the cloud -- is now a full machine container hypervisor, capable of hosting hundreds of machine containers, right out of the box!

LXD in the Sky with Diamonds!  Well, LXD is in the Cloud with Diamond level support from Canonical, anyway.  You can even test it in your web browser here.

The development tree of Xenial (Ubuntu 16.04 LTS) has already inherited this behavior, and we will celebrate this feature broadly through our use of LXD containers in Juju, MAAS, and the reference platform of Ubuntu OpenStack, as well as the new nova-lxd hypervisor in the OpenStack Autopilot within Landscape.

While the young and the restless are already running Wily Ubuntu 15.10, the bold and the beautiful are still bound to their Trusty Ubuntu 14.04 LTS servers.

At Canonical, we understand both motivations, and this is why we have backported LXD to the Trusty archives, for safe, simple consumption and testing of this new generation of machine containers there, on your stable LTS.

Installing LXD on Trusty simply requires enabling the trusty-backports pocket, and installing the lxd package from there, with these 3 little commands:

sudo sed -i -e "/trusty-backports/ s/^# //" /etc/apt/sources.list
sudo apt-get update; sudo apt-get dist-upgrade -y
sudo apt-get -t trusty-backports install lxd

In minutes, you can launch your first LXD containers.  First, inherit your new group permissions, so you can execute the lxc command as your non-root user.  Then, import some images, and launch a new container named lovely-rita.  Shell into that container, and examine the process tree, install some packages, check the disk and memory and cpu available.  Finally, exit when you're done, and optionally delete the container.

newgrp lxd
lxd-images import ubuntu --alias ubuntu
lxc launch ubuntu lovely-rita
lxc list
lxc exec lovely-rita bash
ps -ef
apt-get update
df -h
cat /proc/cpuinfo
lxc delete lovely-rita

I was able to run over 600 containers simultaneously on my Thinkpad (x250, 16GB of RAM), and over 60 containers on an m1.small in Amazon (1.6GB of RAM).

We're very interested in your feedback, as LXD is one of the most important features of the Ubuntu 16.04 LTS.  You can learn more about LXD, view the source code, file bugs, discuss on the mailing list, and peruse the Linux Containers upstream projects.

With a little help from my friends!

Read more
Michael Hall

With the release of the Wily Werewolf (Ubuntu 15.10) we have entered into the Xenial Xerus (to be Ubuntu 16.04) development cycle. This will be another big milestone for Ubuntu, not just because it will be another LTS, but it will be the last LTS before we acheive convergence. What we do here will not only be supported for the next 5 years, it will set the stage for everything to come over that time as we bring the desktop, phone and internet-of-things together into a single comprehensive, cohesive platform.

To help get us there, we have a track dedicated to Convergence at this week’s Ubuntu Online Summit where we will be discussing plans for desktops, phones, IoT and how they are going to come together.


We’ll start the the convergence track at 1600 with the Ubuntu Desktop team talking about the QA (Quality Assurance) plans for the next LTS desktop, which will provide another 5 years of support for Ubuntu users. We’ll end the day with the Kubuntu team who are planning for their 16.04 (Xenial Xerus) release at 1900 UTC.


The second day kicks off at 1400 UTC with plans for what version of the Qt toolkit will ship in 16.04, something that now affects both the KDE and Unity 8 flavors of Ubuntu. That will be followed by development planning for the next Unity 7 desktop version of Ubuntu at 1500, and a talk on how legacy apps (.deb and X11 based) might be supported in the new Snappy versions of Ubuntu. We will end the day with a presentation by the Unity 8 developers at 1800 about how you can get started working on and contributing to the next generation desktop interface for Ubuntu.


The third and last day of the Online Summit will begin with a live Questions and Answers session at 1400 UTC about the Convergence plans in general with the project and engineering managers who are driving it forward. At 1500 we’ll take a look at how those plans are being realized in some of the apps already being developed for use on Ubuntu phones and desktop. Then at 1600 UTC members of the design team will be talking to independent app developers about how to design their app with convergence in mind. We will then end the convergence track with a summary from KDE developers on the state and direction of their converged UI, Plama Mobile.


Outside of the Convergence track, you’ll want to watch Mark Shuttleworth’s opening keynote at 1400 UTC on Tuesday, and Canonical CEO Jane Silber’s live Q&A session at 1700 UTC on Wednesday.

Read more
Daniel Holbach

With Ubuntu Online Summit happening 3-5 November, it is really just around the corner. Time to check out the schedule and see what’s planned.

UOS is our online planning and show-and-tell event. We use a mix of Hangouts-on-Air, IRC and Etherpad to organise ourselves. It’s a great opportunity to get to know people, have your say and find out what’s planned the next weeks and months.

Register for the event at

This is also where you find the schedule for all the individual tracks and if you click on the sessions themselves, you can register your attendance as well, that will make it easy for you to see “your schedule” on the site and help you plan your days.

Here is a quick roundup of the sessions coming straight from the world of Snappy Ubuntu Core:

  1. 2015-11-03 15:00 UTC Testing Snappy
    Leo and Federico will cover both automated and manual approaches to testing snappy, and the work that goes into making sure each new version of snappy is ready to release. They will also offer advice on how you can help make snappy
  2. 2015-11-03 16:00 UTC Creating more Snappy frameworks
    Frameworks extend the functionality of Snappy Ubuntu Core systems in a vary practical way. Let’s discuss how we can bring more services to Snappy Ubuntu Core.
  3. 2015-11-03 18:00 UTC Snappy Clinic: bringing ROS apps to Snappy Ubuntu Core
    Snapcraft integrates building and packaging software and is what we recommend to bring software to Snappy Ubuntu Core. Snapcraft has recently seen the addition of a catkin plugin. This will make it very easy to bring ROS applications to Snappy Ubuntu Core. Check out this demo by Sergio and Ted and you’ll see just how easy it is.
  4. 2015-11-05 14:00 UTC Your feedback counts: the Snappy onboarding experience
    In this session we want your feedback on your Snappy and Snapcraft onboarding experience:
    – How were you welcomed into the world of Snappy? Was the documentation sufficient? Were you able to find your way around?
    – We are planning some changes to the documentation and would like to present them and get feedback.
    – If you are a device builder, we would specifically like to get your input as well, so we can improve our device builder documentation.
  5. 2015-11-05 15:00 UTC Snappy Developer Community Resources
    In this session we want to figure out how the Snappy developer community can interact and get support, particularly:
    – support of askubuntu/stackoverflow
    – which G+ communities/Twitter/etc to use
    – which presentation and workshop materials we want to create and share
    – how we can support people who want to represent Snappy Ubuntu Core at events/hackathons/workshops
  6. 2015-11-05 16:00 UTC Porting popular apps/software to Snappy
    With hardware becoming cheaper (ie Raspberry Pi, etc.) a number of apps and appliances were built, which are very popular today. It’d be great if it was easy for app developers to bring their apps to Snappy Ubuntu Core as well. Let’s figure out how developers can port them over and we can get feedback about what should be easier.

Please note: there might be last-minute changes to the schedule, so make sure stay up to date. If you have any questions, let me know.

Read more
David Planella

Ubuntu Online Summit
Starting on Tuesday 3rd to Thursday 5th of November, a new edition of the Ubuntu Online Summit is taking place next week.

Three days of free and live content all around Ubuntu and Open Source: discussions, tutorials, demos, presentations and Q+As for anyone to get in touch with the latest news and technologies, and get started contributing to Ubuntu.

The tracks

As in previous editions, the sessions runs along multiple tracks that group related topics as a theme:

  • App & scope development: the SDK and developer platform roadmaps, phone core apps planning, developer workshops
  • Cloud: Ubuntu Core on clouds, Juju, Cloud DevOps discussions, charm tutorials, the Charm, OpenStack
  • Community: governance discussions, community event planning, Q+As, how to get involved in Ubuntu
  • Convergence: the road to convergence, the Ubuntu desktop roadmap, requirements and use cases to bring the desktop and phone together
  • Core: snappy Ubuntu Core, snappy post-vivid plans, snappy demos and Q+As
  • Show & Tell: presentations, demos, lightning talks (read: things that break and explode) on a varied range of topics

The highlights

Here are some of my personal handpicks on sessions not to miss:

  • Opening keynote: Mark Shuttleworth, Canonical and Ubuntu founder will be opening the Online Summit with his keynote, on Tuesday 3rd Nov, 14:00 UTC
  • Ask the CEO: Jane Silber, Canonical’s CEO will be talking with the audience and answering questions from the community on her Q+A session, on Wednesday 4th Nov, 17:00 UTC
  • Snappy Clinic: join the snappy team on an interactive session about bringing robotics to Ubuntu – porting ROS apps to snappy Ubuntu Core, on Tuesday 3rd Nov, 18:00 UTC
  • JavaScript scopes hands-on: creating Ubuntu phone scopes is now easier than ever with JavaScript; learn all about it with resident scopes expert Marcus Tomlinson on Thursday 5th Nov, 15:00 UTC
  • An introduction to LXD: Stéphane Graber will be demoing LXD, the container hypervisor, and discussing features and upcoming plans on Thursday 5th Nov, 16:00 UTC
  • UbuCon Europe planning: a community team around the Ubuntu German LoCo will be getting together to plan the next in-person UbuCon Summit in Europe next year on Wednesday 4th Nov, 18:00 UTC

Check out the full schedule for more! >


Joining the summit is easy. Simply remember to:

Once you’ve done that, there are different ways of taking part online event via video hangouts and IRC:

  • Participate or watch sessions – everyone is welcome to participate and join a discussion to provide input or offer contribution. If you prefer to take a rear seat, that’s fine too. You can either subscribe to sessions, watch them on your browser or directly join a live hangout.
  • Propose a session – do you want to take a more active role in contributing to Ubuntu? Do you have a topic you’d like to discuss, or an idea you’d like to implement? Then you’ll probably want to propose a session to make it happen. There is still a week for accepting proposals, so why don’t you go ahead and propose a session?

Looking forward to seeing you all at the Summit!

The post The Ubuntu Online Summit starts next week appeared first on David Planella.

Read more
David Planella

I am thrilled to announce the next big event in the Ubuntu calendar: the UbuCon Summit, taking place in Pasadena, CA, in the US, from the 21st to 22nd of January 2016, hosted at SCALE and with Mark Shuttleworth on the opening keynote.

Taking UbuCons to the next level

UbuCons are a remarkable achievement from the Ubuntu community: a network of conferences across the globe, organized by volunteers passionate about Open Source and about collaborating, contributing, and socializing around Ubuntu. The UbuCon at SCALE has been one of the most successful ones, and this year we are kicking it up a notch.

Enter the UbuCon Summit. In discussions with the Community Council, and after the participation of some Ubuntu team members at the Community Leadership Summit a few months ago, one of the challenges that we identified our community is facing was the lack of a global event to meet face to face after the UDS era. While UbuCons continue to thrive as regional conferences, one of the conclusions we reached was that we needed a way to bring everyone together on a bigger setting to complement the UbuCon fabric: the Summit.

The Summit is the expansion of the traditional UbuCon: more content and at a bigger scale. But at the same maintaining the grass-roots spirit and the community-driven organization that has made these events successful.

Two days and two tracks of content

During these two days, the event will be structured as a traditional conference with presentations, demos and plenaries on the first day and as an unconference for the second one. The idea behind the unconference is simple: participants will propose a set of topics in situ, each one of which will be scheduled as a session. For each session the goal is to have a discussion and reach a set of conclusions and actions to address the topics. Some of you will be familiar with the setting :)

We will also have two tracks to group sessions by theme: Users, for those interested in learning about the non-tech, day-to-day part of using Ubuntu, but also including the component on how to contribute to Ubuntu as an advocate. The Developers track will cover the sessions for the technically minded, including app development, IoT, convergence, cloud and more. One of the exciting things about our community is that there is so much overlap between these themes to make both tracks interesting to everyone.

All in all, the idea is to provide a space to showcase, learn about and discuss the latest Ubuntu technologies, but also to focus on new and vibrant parts of the community and talk about the challenges (and opportunities!) we are facing as a project.

A first-class team

In addition to the support and guidance from the Community Council, the true heroes of the story are Richard Gaskin, Nathan Haines and the Ubuntu California LoCo. Through the years, they have been the engines behind the UbuCon at SCALE in LA, and this time around they were quick again to jump and drive the Summit wagon too.

This wouldn’t have been possible without the SCALE team either: an excellent host to UbuCon in the past and again on this occasion. In particular Gareth Greenaway and Ilan Rabinovitch, who are helping us with the logistics and organization all along the way. If you are joining the Summit, I very much recommend to stay for SCALE as well!

More Summit news coming soon

On the next few weeks we’ll be sharing more details about the Summit, revamping the global UbuCon site and updating the SCALE schedule with all relevant information.

Stay tuned for more, including the session about the UbuCon Summit at the next Ubuntu Online Summit in two weeks.

Looking forward to seeing some known and new faces at the UbuCon Summit in January!

Picture from an original by cm-t arudy

The post Announcing the UbuCon Summit appeared first on David Planella.

Read more
Daniel Holbach


This morning I chatted with Laura Czajkowski and we quickly figured out that wily is our 23rd Ubuntu release. Crazy in a way – 23 releases, who would’ve thought? But on the other hand, Ubuntu is a constant evolution of great stuff becoming even better. Even after 11 years of Ubuntu I can still easily get excited about what’s new in Ubuntu and what is getting better. If you have read any of my recent blog entries you will know that snappy and snapcraft are a combination too good to be true. Shipping software on Ubuntu has never been that easy and I can’t wait for snappy and snapcraft to reach into further parts of Ubuntu. The 16.04 (‘xenial‘) cycle is going to deliver much more of this. Awesome!

But for now: enjoy the great work wrapped up in our wily 15.10 package. Take it, install it, give it to friends and family and spread great open source software in the world. :-)

When you download it, please consider making a donation. And if you do, please consider donating to “Community projects“. This is what allows us to help LoCos with events, fly people to conferences and do all kinds of other great things. We have docs online which explain who can apply for funding for which purposes and what exactly each penny was spent on previously.

Community donations

Read more
Hardik Dalwadi

Recently i have written blog about assembling Ubuntu Orange Matchbox (Ubuntu Branded Pibow for Raspberry Pi 2 & PiGlow) & Demonstration of Snappy Ubuntu Core with it.

Now with Make-Me-Glow LP Project, we have built an application for controlling PiGlow from Ubuntu Phone. The PiGlow is a small add on board for the Raspberry Pi that provides 18 individually controllable LEDs. Recently Victor Tuson Palau has released glowapi for Snappy Ubuntu Core, which will allow us to control PiGlow over HTTP Protocol.

We decided to build quick Ubuntu Phone application to control  PiGlow during Ubuntu Hackathon India using glowapi for Snappy Ubuntu Core. As a result of this, we came with Make-Me-Glow LP Project. Big Thanks


What It Does:

It will allow you to control any LED of PiGlow from Ubuntu Phone. You have to  download “Make Me Glow” application from Ubuntu Phone Store. For example, if you want to On/Off Orange LED on Leg 1 with specific Intensity on PiGlow, Make Me Glow UI will allow you to do the same. Just make sure that you have to enter correct IP address of your Ubuntu Orange Matchbox (Ubuntu Branded Pibow for Raspberry Pi 2 & PiGlow). We are assuming that you have already installed  glowapi for Snappy Ubuntu Core on your  Ubuntu Orange Matchbox (Ubuntu Branded Pibow for Raspberry Pi 2 & PiGlow)

Make Me Glow Installation from Ubuntu Store @ Ubuntu Phone Launch Make Me Glow Launch Make Me Glow Give you input to control PiGlow LEDs Give you input to control PiGlow LEDs Give you input to control PiGlow LEDs

How It Does:

As i said erlier, we are using glowapi for Snappy Ubuntu Core which can operate PiGlow according to HTTP Protocol POST request.  We are issuing POST request over HTTP Protocol from Ubuntu Phone Application – Make Me Glow as per user configuration and PiGlow does operate accordingly. We have written simple QML function for the same, which request URL using POST over HTTP  according to user input. It is very very easy to develop Ubuntu Phone Application using Ubuntu SDK. Big Thanks to XiaoGuo Liu, without it would not be possible to execute this project.

function request(url) {
var xhr = new XMLHttpRequest();‘POST’, url, true);

Future Roadmap:

We are working on few animations. In fact  i have already made the proof of concept using bash script, like Fan &  FadeOut animation with bash scripting. If you want to contribute for the same please visit Make-Me-Glow LP Project.


Goal behind this demonstration is to defined immense possibility of Snappy Ubuntu Core to control devices remotely, within Ubuntu Ecosystem. If you are planning to dive in to IOT based solutions, Snappy Ubuntu Core is great start for you. After this demonstration, I am planning to control my Home Lights connected to device running Snappy Ubuntu Core and controlling the same through Ubuntu Phone.  Stay tuned…

Read more

Warum hast Du mir das angetan?
Ich hab’s von einem Bekannten erfahren.

— Die Ärtze, Debil, Zu Spät

Its been more than two years since the last Hackfest in Hamburg! So we are indeed much too late (german: Zu Spät) with repeating this wonderful Event. Right a day after everyone updated his or her Desktop to Wily Werewolf we will meet for a weekend of happy hacking again in Hamburg!

Hamburg Hackfest 2013 - carelessly stolen from Eikes RetrospectiveHamburg Hackfest 2013 – carelessly stolen from Eikes Retrospective

So now, we will meet again. You are invited to drop by this weekend, we will celebrate a bit on Friday evening (ignoring the german culinary advise in the song linked above about “Currywurst and Pommes Fritz” — I imagine we prefer Club Mate and Pizza) and hack on LibreOffice on Saturday and Sunday. Curious new faces are more then welcome!

Read more

Warum hast Du mir das angetan?
Ich hab’s von einem Bekannten erfahren.

— Die Ärtze, Debil, Zu Spät

Its been more than two years since the last Hackfest in Hamburg! So we are indeed much too late (german: Zu Spät) with repeating this wonderful Event. Right a day after everyone updated his or her Desktop to Wily Werewolf we will meet for a weekend of happy hacking again in Hamburg!

Hamburg Hackfest 2013 - carelessly stolen from Eikes RetrospectiveHamburg Hackfest 2013 – carelessly stolen from Eikes Retrospective

So now, we will meet again. You are invited to drop by this weekend, we will celebrate a bit on Friday evening (ignoring the german culinary advise in the song linked above about “Currywurst and Pommes Fritz” — I imagine we prefer Club Mate and Pizza) and hack on LibreOffice on Saturday and Sunday. Curious new faces are more then welcome!

Read more
Daniel Holbach

As announced earlier, we had a Ubuntu Snappy Core Clinic yesterday and we had a great time. Sergio Schvezov, Ted Gould and I talked about snapcraft in general, what’s new in the 0.3 release and showed off a couple of examples how to package software for Ubuntu Snappy Core. As you can see in the video, none of the snapcraft.yaml files length exceeded 30 lines (and this file is all that’s required); compared to what packaging on various platforms usually looks like that’s just beautiful.

We are going to have these clinics more regularly now. They will always revolve around the world of Snappy Ubuntu Core and there will always be room for questions, requests, feedback and what your want them to be.

ROS people might be interested in the one: we are very likely going to talk about snapcraft’s catkin plugin.

If you have missed the show yesterday, here it is in full length:

You might be wondering why I’m posting two videos. Unfortunately I accidentally pressed the “stop broadcast” button when I was actually looking for “stop screensharing”. Once I hit the button, we couldn’t find a way to resume the broadcast and we had to start a new one. I’m sorry about that.

If anyone of you knows a browser plugin which shows a “are you sure you want to stop the broadcast” warning, that would be fantastic. I could imagine I’m not the only one who might have confused the two when they were busy doing a demo, getting feedback on IRC and were busy talking. :-)

Update: David Planella showed me the Youtube video editor, so here’s the merged video.

Read more

While testing the upcoming release of Ubuntu (15.10 Wily Warewolf), I ran over a bug that renders the kernel crash dump mechanism unusable by default :

LP: #1496317 : kexec fails with OOM killer with the current crashkernel=128 value

The root cause of this bug is that the initrd.img file that is used by kexec to reboot into a new kernel when the original one panics is getting bigger with kernel 4.2 on Ubuntu.  Hence, it is using too much of the reserved crashkernel memory (default: 128Mb). This triggers the « Out Of Memory (OOM) » killer and the kernel dump capture cannot complete.

One workaround for this issue is to increase the amount of reserved memory to a higher value. 150Mb seems to be sufficient but you may need to increase it to a higher value.  While one solution to this problem could be to increase the default crashkernel= value, it is only pushing the issue forward until we hit this limit once again.

Reduce the size of initrd.img

update-initramfs has an option in its configuration file ( /etc/initramfs-tools/initramfs.conf) that let us modify the modules that are included in the initrd.img file.  Our current default is to add most of the modules :

# MODULES: [ most | netboot | dep | list ]
# most - Add most filesystem and all harddrive drivers.
# dep - Try and guess which modules to load.
# netboot - Add the base modules, network modules, but skip block devices.
# list - Only include modules from the 'additional modules' list


By changing this configuration to MODULES=dep, we can sensibly reduce the size of the initrd.img :

MODULES=most : initrd.img-4.2.0-16-generic = 30Mb

MODULES=dep :initrd.img-4.2.0-16-generic = 12Mb

Identifying this led to a discussion with the Ubuntu Kernel team about using a custom crafted initrd.img for kdump. This would keep the file to a sensible size and avoid triggering the OOM killer.


The current implementation of kdump-tools already provides a mechanism to specify which vmlinuz and initrd.img files to use when settting up kexec (from /etc/default/kdump-tools) :

# ---------------------------------------------------------------
# Kdump Kernel:
# KDUMP_KERNEL - A full pathname to a kdump kernel.
# KDUMP_INITRD - A full pathname to the kdump initrd (if used).
# If these are not set, kdump-config will try to use the current kernel
# and initrd if it is relocatable. Otherwise, you will need to specify 
# these manually.

If we use those variables, defined to point to a generic value that can be adapted according to the running kernel version, we have a way to specify a smaller initrd.img for kdump.

Building a smaller initrd.img

Kernel package hooks already exists in /etc/kernel/postinst.d and /etc/kernel/postrm.d to create the initrd.img. Using those as templates, we created new hooks that will create smaller images in /var/lib/kdump and clean them up if the kernel version they pertain to is removed.

In order to create that smaller initrd.img, the content of the /etc/initramfs-tools directory needs to be replicated in /var/lib/kdump. This is done each time that the hook is executed to assure that the content matches the original source. Otherwise, their content may diverge if the content of the original directory gets modified.

Each time a new kernel package is installed, the hook will create a kdump specific initrd.img using MODULES=dep. and store it in /var/lib/kdump.  When the kernel package is removed, the corresponding file is removed.

Using the smaller initrd.img

As we outlined previously, the /etc/default/kdump-tools file can be used to point to a specific initrd.img/vmlinuz pair. So we can do :


When kexec will be loaded by kdump-config, it will find the appropriate files and load them in memory for future use.  But for that to happen, those new parameter needs to point to the correct file.  Here we use symbolic links to achieve our goal.

Linking to the smaller initrd.img

Using the hooks to create the proper symbolic links turns out to be overly complex. But since kdump-config runs at each boot, we can ask this script to be responsible for doing symlink maintenance.

Symlink creation follow this simple flowchart



This will assure that the symbolic links always  point to the file with the version of the running kernel.

One drawback of this method is that, in the remote eventuality that the running kernel breaks the kernel crash dump functionality, we cannot automatically revert to the previous kernel in order to use a known configuration.

A future evolution of the kdump-config tool will add a function to specify which kernel version to use to create the symbolic link. In the meantime, the links can be created manually with those simple commands :

$ export wanted_version="some version"
$ rm -f /var/lib/kdump/initrd.img
$ ln -s /var/lib/kdump/initrd.img-${wanted_version} /var/lib/kdump/initrd.img
$ rm -f /var/lib/kdump/vmlinuz
$ ln -s /boot/vmlinuz-${wanted_version} /var/lib/kdump/vmlinuz

For those of you interested in nitty-gritty details, you can find the modifications in the following GIT branch :

Update: New git branch with cleanup commit history

Read more
Nicholas Skaggs

Wily Final Image Testing!

Wily is almost here! The summer has past us by (or is arriving for our Southern hemisphere friends). Thus, with the change of the seasons, it's time for another release of ubuntu. Wily will release the final image this Thursday, 22 Oct 2015. It's time to find and squash and last minute bugs in the the installer.

How can I help? 
To help test, visit the iso tracker milestone page for final beta.  The goal is to verify the images in preparation for the release. Find those bugs! The information at the top of the page will help you if you need help reporting a bug or understanding how to test. 

There's a first time for everything! Check out the handy links on top of the isotracker page detailing how to perform an image test, as well as a little about how the qatracker itself works. If you still aren't sure or get stuck, feel free to contact the qa community or myself for help.

How long is this going on?
The testing runs through Thursday, 22 Oct 2015, when the the images for Wily will be released. 

Thanks and happy testing everyone!

Read more
Daniel Holbach

We promised more Snappy Clinics and Monday, 19th October 2015 16:00 UTC is going to be our next one.

This time we are going to have two of the main Snapcraft developers, Sergio Schvezov and Ted Gould around, who are going to

  • give an introduction to what snapcraft is,
  • talk about what’s new in the 0.3 release,
  • show how we can use a custom plugin from upstream snapcraft for a new project and
  • put together a snap from scratch.

Of course we’ll be there to answer all your questions as well.

Catch us on for the show and let’s chat on IRC afterwards.

If you haven’t heard of snapcraft yet: it’s a beautiful way to get your software out to users on Ubuntu Snappy Core and it’s super easy!


Read more
Daniel Holbach

I guess most of you saw the post on Fridge or the post on the Community team mailing listNominations for the Community Council are still open until Friday, 16th October.

We already received a number of good nominations so far, but I thought it’d be good to try to convince a few more of you to nominate yourself or nominate a friend of yours. If flavours and other important teams would get some more representation on the CC, that’d be great.

What I love about the CC is that you get to hear from many parts of the community first-hand what’s happening, what’s new and that you can often help out by connecting people in various parts of the community. This is one of the many things I always enjoyed the most.

Of course there are also disputes and conflicts to deal with at times. In the past some of them were harder (and took longer) to resolve, but they provided a learning experience for us as a community and everyone individually. So while this is probably nothing you would immediately be looking forward to, it’s an important part of keeping our community working well.

I’m grateful for the time I spent on the CC and everyone who worked together with me here. I look forward to seeing how many nominations we have by Friday. (Read all the details in either of the two posts mentioned at the top.)

Read more
Victor Palau

My first steps into snappifying, I have publish a RestApi for PiGlow (glowapi 0.1.2). I though it might be a good first step and mildly useful for people wanting to set up build notifications, twitter mentions, whatever you fancy!

You can find it in the webdm store…
Code is here:

And here is how it works:
PiGlow Api exposes PiGlow in your board port 8000, so you can easy accessing by POST in port 8000.

remeber to do the hardware assign, something like: sudo snappy hw-assign glowapi.vtuson /dev/i2c-1

API calls , method POST:

turns all the leds on to max brightness
turns all the leds on to med brigthness
turns off all leds
turns all the leds in a leg (:id) to a given brightness
(if not specify it uses a default setting)
parms: intensity , range 0 to 1
eg: http://localhost:8000/v1/legs/1?intensity=0.3
turns on one led (colid) in a leg (:id) to a given brightness
(if not specify it uses a default setting)
parms: intensity , range 0 to 1
eg: http://localhost:8000/v1/legs/1/colors/green?intensity=0.3
turn on all leds for a color across all legs
if not specify it uses a default setting)
parms: intensity , range 0 to 1
eg: http://localhost:8000/v1/colors/green?intensity=0.3

ID ranges
legs range : 0 – 2

Read more
Nicholas Skaggs

It's finally here! We've been working on a way to allow those who have a ubuntu phone to participate more directly in testing the software that runs on their device. This includes things like helping test OTA updates before they are shipped and to verify and look for bugs in applications like the core apps and system services.

Introducing Pilot, a new application you can find today in the ubuntu store. The application utilizes checkbox as a way of distributing tests to you on the phone. This first round of testing includes tests from 4 of your favorite core applications including dekko, clock, music, and weather.

To help test, search for Pilot in the store and install it.

Start the app, and click the Start Testing button once it's loaded.

Select a test plan to run. Right now you can choose to test specific features of the different core apps.

Select the tests to run. You can choose to run all of tests for that feature, or just one if you wish.

Run through the test, following each step. If everything works as listed in the test, press the Pass button. Otherwise press Fail.

You can also add comments about the test or skip the test using the buttons at the top of this page.

Finally, submit your results back to the QA team by pressing the Submit Results to Community Practitest button. You'll need to supply your ubuntu SSO information to do so. You may also view your submitted results on this screen by pressing the corresponding button.

It's that easy. Over time, we'll push new tests via application updates, so you can help test new things as they are developed. As the number of devices grows, we want to ensure every device has the same level of quality. With your help, we can make sure ubuntu gets better with each update. Thanks for your help!

Read more