Planet Ubuntu

Subscribe to Planet Ubuntu feed
Planet Ubuntu -
Updated: 13 min 30 sec ago

Nathan Haines: Ubuntu Free Culture Showcase submissions are now open!

Sun, 08/23/2015 - 20:40
Ubuntu 15.10 is coming up soon, and what better way to celebrate a new release with beautiful new content to go with the release? The Ubuntu Free Culture Showcase is a way to celebrate the Free Culture movement, where talented artists across the globe create media and release it under licenses that encourage sharing and adaptation. We're looking for content which shows off the skill and talent of these amazing artists and will great Ubuntu 15.10 users. We announced the showcase last week, and now we are accepting submissions at the following groups: For more information, please visit the Ubuntu Free Culture Showcase page on the Ubuntu wiki.

Nathan Haines: Making Hulu videos play in Ubuntu

Sun, 08/23/2015 - 19:13

A couple of weeks ago, Hulu made some changes to their video playback system to incorporate Adobe Flash DRM technology. Unfortunately, this meant that Hulu no longer functioned on Ubuntu because Adobe stopped supporting Flash on Linux several year ago, and therefore Adobe’s DRM requires HAL which was likewise obsoleted about 4 years ago and was dropped from Ubuntu in 13.10. The net result is that Hulu no longer functions on Ubuntu.

While Hulu began detecting Linux systems and displaying a link to Adobe’s support page when playback failed, and the Adobe site correctly identifies the lack of HAL support as the problem, the instructions given no longer function because HAL is no longer provided by Ubuntu.

Fortunately, Michael Blennerhassett has maintained a Personal Package Archive which rebuilds HAL so that it can be installed on Ubuntu. Adding this PPA and then installing the “hal” package will allow you to play Hulu content once again.

To do this, first open a Terminal window by searching for it in the Dash or by pressing Ctrl+Alt+T.

Next, type the following command at the command line and press Enter:

sudo add-apt-repository ppa:mjblenner/ppa-hal

You will be prompted for your password and then you will see a message from the PPA maintainer. Press Enter, and the PPA will be added to Ubuntu’s list of software sources. Next, have Ubuntu refresh its list of available software, which will now include this PPA, by typing the following and pressing Enter:

sudo apt update

Once this update finishes, you can then install HAL support on your computer by searching for “hal” in the Ubuntu Software Center and installing the “Hardware Abstraction Layer” software, or by typing the following command and pressing Enter:

sudo apt install hal

and confirming the installation when prompted by pressing Enter.

I explain more about how to install software on the command line in Chapter 5 and how to use PPAs in Chapter 6 of my upcoming book, Beginning Ubuntu for Windows and Mac Users, coming this October from Apress. This book was designed to help Windows and Mac users quickly and easily become productive on Ubuntu so they can get work done immediately, while providing a foundation for further learning and exploring once they are comfortable.

John Baer: Never buy internet viagra

Sun, 08/23/2015 - 06:00

Viagra is a very specialized drug, and it use should not be taken lightly. Not taking Viagra in a responsible way can seriously damage your health, especially if you have problems such as a heart condition, or suffer from high blood pressure. The problem with Viagra is that it is now being sold under many different names on the Internet. This is called generic medication and is often produced in places like India or China. Is it safe? No, it isn’t always safe. Maria who works for London escorts, says that her father bought some. He was about embarrassed about his medical condition, and did not want to speak to his doctor. But like so many London escorts know, this is not a drug to be played around with at all.

Maria has worked for charlotte action escorts services for about two years. During that time she has always known that her father has suffered from a heart condition. The condition reduces his circulation quite severely, and makes it difficult for him to maintain a good erection. Most London escorts know that this can happen to men who have circulatory problems, and Viagra is one of the many solutions available. But, you should never take any drug without having spoken to your doctor first.

Maria’s dad took Viagra which he had bought of the Internet and ended up having a heart attack. She says it is complicated, but the Viagra contraindicated with the medication that he was already on. That means that it caused a problem and the two drugs mixed together caused her father to have a heart attack. Maria had to take two weeks off from London escorts services, and go to look after her mom whilst her dad was in hospital. It was a worrying time for my mom, she says, so I simply had to take time off from London escorts. It was the only way to cope.

In the end, Maria’s dad recovered and Maria was able to return to her job at London escorts services. It was scary, she says, and taught be a valuable lesson. You should never take drugs without knowing what they can do, and I am sure that many London escorts appreciate that Viagra should not be played around with just like other medications. The fact is, says Maria, my father could have died. Of course, my mom and I would both have been devastated.

The Internet is full of sexual performance enhancing drugs and you should at all times be careful.

There are some safe alternatives out there such as the amino acids, and herbal alternatives. However, London escorts would like you all to know that the herb Ginseng can be dangerous as well. It can “knock out” some heart medications and raise your blood pressure. This is another online sexual enhancement drug which London escorts warn you to stay away from at all times. If, you do have a concern about your performance, it is always best to see your local GP.

Nekhelesh Ramananthan: Clock App Update: August 2015

Fri, 08/21/2015 - 15:39

We have been working on a new clock app update with lots of goodies :-) I thought I would summarize the release briefly. Huge props to Bartosz Kosiorek for helping out with this release and coordinating with the canonical designers for the stopwatch & timer designs.

General Improvements

We focused on many parts of the clock app for this release ranging from the world-clock feature, to the alarms and stopwatch.

  • Transitioned to the new 15.04 SDK ListItems which effectively results in a lot of custom code being removed and maintaining consistency with other apps. LP: #1426550
  • User added world cities previously were not translated if the user changed the phone language. This has been fixed. LP: #1477492
  • New navigation structure due to the introduction of Stopwatch
  • Replaced a few hard coded icons with system icons. LP: #1476580
  • Fixed not being able to add world cities with apostrophe in their names (database limitation). LP: #1473074

This along with Timer is the single most requested feature since the clock app reboot. And I am thrilled to see it finally land in this update. It sports a couple of usability tweaks like prevent screen-dim while stopwatch is running and keep the stopwatch running in the background regardless of if the clock app is closed or the phone is switched off. The UI is clean and simple. Expect some more changes to this in the future. We reused a lot of code from Michael Zanetti's Stopwatch App.


In this area, we have fixed a good number of small bugs that overall improve the alarms experience. The highlight of course is the support for custom alarm sounds. Yes! You can now import music using content hub and set that as your alarm sound to wake you in the morning.

Other bugs fixed include,

  • Changed default alarm sound to something a bit more strong. LP: #1354370
  • Fixed confirmation behaviour being confusing in the alarm page header. LP: #1408015
  • Made the alarm times shown in the alarm page more bigger and bolder. LP: #1365428
  • Adding/Deleting alarms will move the alarm list items up/down using a nice smooth animation
  • Alternate between alarm frequency and alarm ETA every 5 seconds using a fade animation. LP: #1466000
  • Fixed alarm time being incorrectly set if it the current time is a multiple of 5. LP: #1484926

This pretty much sums up the upcoming release. We will wait a few days to ensure it is fully translated and then tested by QA before releasing the update next week.

Rhonda D'Vine: DebConf15

Fri, 08/21/2015 - 14:00

I tried to start to write this blog entry like I usually do: Type along what goes through my mind and see where I'm heading. This won't work out right now for various reasons, mostly because there is so much going on that I don't have the time to finish that in a reasonable time and I want to publish this today still. So please excuse me for being way more brief than I usually am, and hopefully I'll find the time to expand some things when asked or come back to that later.

Part of the reason of me being short on time is different stuff going on in my private life which requires additional attention. A small part of this is also something that I hinted in a former blog entry: I switched my job in June. I really was looking forward to this. I made them aware of what the name Rhonda means to me and it's definitely extremely nice to be addressed with female pronouns at work. And also I'm back in a system administration job which means there is an interest overlap with my work on Debian, so a win-win situation on sooo many levels!

I'm at DebConf15 since almost two weeks now. On my way here I was complimented on my outfit by a security guard at the Vienna airport which surprised me but definitely made my day. I was wearing one of these baggy hippie pants (which was sent to me by a fine lady I met at MiniDebConf Bucharest) but pulled up the leg parts to the knees so it could be perceived as a skirt instead. Since I came here I was pretty busy with taking care of DCschedule bot adjustments (like, changing topic and twittering from @DebConf at the start of the talks), helping out with the video team when I noticed there was a lack of people (which is a hint for that you might want to help with the video team in the future too, it's important for remote people but also for yourself because you can't attend multiple sessions at the same time).

And I have to repeat myself, this is the place I feel home amongst my extended family, even though I it still is sometimes for me to get to speak up in certain groups. I though believe it's more an issue of certain individuals taking up a lot of space in discussions without giving (more shy) people in the round the space to also join in. I guess it might be the time that we need a session on dominant talking patterns for next year and how to work against them. I absolutely enjoyed such a session during last year's FemCamp in Vienna which set the tone for the rest of the conference, and it was simply great.

And then there was the DebConf Poetry Night. I'm kinda disappointed with the outcome this year. It wasn't able to attract as much people anticipated, which I to some degree account to me not making people aware of it well enough, overlapping with a really great band playing at the same time in competition, and even though the place where we did it sounded like a good idea at first, it didn't had enough light for someone to read something from a book (but that was solved through smartphone lights). I know that most people did enjoy it, so it was good to do it, but I'm still a fair bit disappointed with the outcome and will try to work on improving on that grounds for next year. :)

With all this going on there unfortunately wasn't as much time as I would have liked to spend with people I haven't seen for a long time, or new people I haven't met yet. Given that this year's DebConf had an height in attendees (526 being here at certain times during the two weeks, and just today someone new arrived too, so that doesn't even have to be the final number) it makes it a bit painful to have picked up so many tasks and thus lost some chances to socialize as much as I would have liked to.

So, if you are still here and have the feeling we should have talked more, please look for me. As Bdale pointed out correctly in the New to DebConf BoF (paraphrased): When you see us DebConf old timers speaking to someone else and you feel like you don't want to disturb, please do disturb and speak to us. I always enjoyed to get to know new people. This for me always is one of the important aspects of DebConf.

Also, I am very very happy to have received feedback from different people about both my tweets and my blog, thank you a lot of that. It is really motivating to keep going.

So, lets enjoy the last few hours of DebConf!

Another last side notice: While my old name in the Debian LDAP did manage to find some wrongly displayed names in the DebConf website, like for speakers, or volunteers, it was clear to me that having it exposed through isn't really something I appreciate. So I took the chance and spoke to Luca from the DSA team right here today, and ... got it fixed. I love it! Next step is getting my gpg key exchanged, RT ticket is coming up. :)

/debian | permanent link | Comments: 1 |

Ubuntu Podcast from the UK LoCo: S08E24 – Epic Movie - Ubuntu Podcast

Fri, 08/21/2015 - 10:35

It’s Episode Twenty-four of Season Eight of the Ubuntu Podcast! Laura Cowen, Martin Wimpress, and Alan Pope are back with Stuart Langridge!

In this week’s show:

  • We chat about why Laura doesn’t like webapps on the Ubuntu Phone and we get a more qualified view from app developer Stuart.
  • We go over your feedback, including Ubuntu Phone notes from Pete Cliff.
  • We have a command line love, Comcast from Jorge Castro.
  • We chat about getting a Picade, playing with Jasper, and controlling a Nexus 6 with Pebble Time whilst listening to podcasts on the move.

That’s all for this week, please send your comments and suggestions to:
Join us on IRC in #ubuntu-podcast on Freenode
Follow us on Twitter
Find our Facebook Fan Page
Follow us on Google+

Valorie Zimmerman: Upon returning home from Akademy: thoughts

Thu, 08/20/2015 - 22:00
Akademy is long over, you say? Yes, but I've been traveling almost constantly since flying home, since my husband is on the home leg of his long hike of the Pacific Crest Trail, which he is chronicling at While driving about the state to meet him, I've not been online much, therefore unable to create blogposts from my thoughts and impressions written during and right after Akademy. Fortunately, I did scrawl some thoughts which I'll post over the next week or so.

Please visit for more information about Akademy. Click the photo for a larger version and add names if someone is left unlabeled.

First: A Coruña where Akademy 2015 met, is beautiful! Galicia, the region of Spain is not only beautiful, but serves delicious food, especially if you love fresh seafood.

The local team, working in conjunction with the e.V. Board and the amazing Kenny Duffus and Kenny Coyle created a wonderful atmosphere in which to absorb, think, and work. One of the best bits this year was the Rialta, where most of us lived during Akademy. Scarlett and I flew in early, to get over our jetlag, and have a day to see the city.

The journey from Seattle began very early Monday morning, and Scarlett set out even earlier the previous day via Amtrack train to Seattle. Our connections and flights were very long, but uneventful. We caught the airport bus and then the city bus 24 and walked to the Rialta, arriving about dinner-time Tuesday. Although we tried to avoid sleeping early, it was impossible.

Waking the next morning at 4am with no-one about, and no coffee available was a bit painful! Breakfast was not served until 8am, and we were *not* late! Rialta breakfasts are adequate; the coffee less so. I found that adding a bit of cocoa made it more drinkable, but some days bought cafe con leche from the bar instead. That small bar was also the source of cervesa (beer) and a few whiskys as well.

One of the beautiful things about the Rialta was their free buses for residents. Some were called Touristic, and followed a long loop throughout the city. You could get off at any of the stops and get back on later after sight-seeing, eating or shopping. So we rode it a loop to figure out what we wanted to see, which was part of the sea-side and the old town. Scarlett and I both took lots of photos of the beautiful bay and some of the port. After visiting Picasso's art college, we headed into the old city. On the way in, we saw a archaelogical dig of a Roman site, I guess one of many. This one was behind the Military Museum. As we walked further into the city, we heard music from Game of Thrones, and a giant round tent covered in medieval scenes. As we walked around the square trying to figure out what was happening, we saw lancers on large horses, dancing about waiting to enter the ring!

Some of the Akademy attendees were inside the tent watching the jousts, we later found out. I stopped in to the tourist info office to find out why the tent was there, and found out there was a week-long celebration all through the old city. It was delightful to turn the corner and see a herd of geese, or medieval handicrafts, or.... beer! A small cold beer from a beer barrel with a medieval monk serving us was most welcome as we wandered close to Domus. The Rialta bus was a great way "home."

A day of play left us ready to work as the rest of the attendees began to arrive.
Oh by the way: give big! Randa Meetings will soon be happening, and we need your help!

Jono Bacon: Talking with a Mythbuster and a Maker

Thu, 08/20/2015 - 09:48

Recently I started writing a column for Forbes.

My latest column covers the rise of the maker movement and in it I interviewed Jamie Hyneman from Mythbusters and Dale Dougherty from Make Magazine.

Go and give it a read right here.

Harald Sitter: A Touch of Plasma in the Mountains

Thu, 08/20/2015 - 04:42

It is this time of the year again. In but a few weeks some 50 KDE contributors are going to take over the village of Randa in the Swiss Alps to work on making KDE software yet more awesome.

So if you would kindly click on this fancy image here to donate a penny a or two, I think you will make people around the world eternally grateful:

Not convinced yet? Oh my.

The KDE Sprints in Randa are an annual event where different parts of the KDE community meet in the village of Randa in Switzerland to focus their minds and spirit on making KDE software better, faster, more robust, more secure, and of course better looking as well.

Sprints are a big part of KDE development, they enable contributors to meet in person and focus the entire thrust of their team on pushing their project and the KDE community as a whole forward. KDE software is primarily built by a community of volunteers and as such they require support to finance these sprints to leap forward in development and bring innovation to software.

If you have not yet perused the Randa 2015 page, you definitely should. You will probably find that the list of main projects for this year not only sound very interesting, but will in all likelihood be relevant to you. If you own a smartphone or tablet you can benefit from KDEConnect which makes your mobile device talk to your computer (by means of magic no less). Or perhaps you’d rather have the opportunity to run Plasma on your mobile device? General investments in touch-support and enablement are going to go a long way to achieve that. Do you like taking beautiful photographs? Improvements to digiKam will make it even easier to manage and organize your exploits.
These are but a few things the KDE contributors are going to focus on in Randa. All in all there should be something for everyone to get behind and support.

KDE is a diverse community with activities in many different areas in and around software development. Standing as a beacon of light in a world where everyone tries to gobble up as much information about their users as possible, or lock users’ data in proprietary formats from which they cannot ever be retrieved again, or quite simply spy on people.

Be a benefactor of freedom. Support Randa 2015.

Sean Davis: MenuLibre 2.0.7 and 2.1.0 Released

Thu, 08/20/2015 - 03:51
Ubuntu Feature Freeze is always such an exciting time.  New stable (2.0.7) and development (2.1.0) versions of MenuLibre are now available.  Several bugs have been fixed and the new development release begins to show a modern spin on the UI. What’s New? MenuLibre 2.0.7 is a bugfix release and 2.1.0 builds on top of that … Continue reading MenuLibre 2.0.7 and 2.1.0 Released

Sean Davis: Catfish 1.3.0 Released

Wed, 08/19/2015 - 21:12
The first release in the Catfish 1.3 development cycle is now out!  This development cycle is intended to further refine the user interface and improve search speed and responsiveness.  1.3.0 is all about style. What’s New? The toolbar has been replaced with a Gtk HeaderBar.  This better utilizes screen space and makes Catfish more consistent … Continue reading Catfish 1.3.0 Released

Stuart Langridge: Using the content hub on Ubuntu

Wed, 08/19/2015 - 18:19

On an Ubuntu phone, apps are1 isolated from one another; each app has its own little folder where its files go, and no other app can intrude. This, obviously, requires some way to exchange files between apps, because frankly there are times when my epub ebook is in my file downloader app and I need it in my ebook reader app. And so on.

To deal with this, Ubuntu provides the Content Hub: a way for an app to say “I need a photo” and all the other apps on your phone which have photos to say “I have photos! Ask me! Me!”.

This is, at a high level, the right thing to do. If my app wants to use a picture of you as an avatar, it should not be able to snarf your whole photo gallery and do what it wants with it. More troubling yet, adding some new social network app should not give it access to your whole address book so that it can hassle your friends to join, or worse just snaffle that information and store it away on its own server for future reference. So when some new app needs a photo of you to be an avatar, it asks the content hub; you, the punter, choose an app to provide that photo, and then a photo from within that app, and our avatar demander gets that photo, and none of the pictures of your kids or your holiday or whatever you take photos of. This is, big picture2 a good idea.

Sadly, the content hub is spectacularly under-documented, so actually using it in your Ubuntu apps is jolly hard work. However, with an assist3 from Michael Zanetti, I now understand how to offer files you have to others via the content hub. So I come to explain this to you.

First, you need permission to access the content hub at all. So, in your appname.apparmor file4, add content_exchange_source.5 This tells Ubuntu that you’re prepared to provide files for others (you are a “source” of data). You then need to, also in manifest.json, configure what you’re allowed to do with the content hub; add a hooks.content-hub key which names a file (myappname.content-hub or whatever you prefer). That file that you just named needs to also be json, and looks something like {"source": ["all"]}, which dictates which sorts of files you want to be a source for.6 Once you’ve done all this, you’re allowed to use the content hub. So now we explore how.

In your QML app, you need to add a ContentPeerPicker. This is a normal QML Item; specifically, showing it to the user is your responsibility. So you might want to drop it in a Dialog, or a Page, or you might just put it at top level with visible:hidden and then show it when appropriate (such as when your user taps a file or image or whatever that they want to open in another app).

Your ContentPeerPicker should look, at minimum, like this:

ContentPeerPicker { handler: ContentHandler.Destination contentType: ContentType.All onPeerSelected: { var transfer = peer.request(); var items = new Array(); exportItem.url = /* whatever the URL of the file you want to share is */; items.push(exportItem); transfer.items = items; transfer.state = ContentTransfer.Charged; cpp.visible = false; } onCancelPressed: cpp.visible = false; }

The important parts here are handler: ContentHandler.Destination (which means “I am a source for files which need to be opened in some other app”), and contentType: ContentType.All (which means “I am a source for all types of file”).7 After that8 show it to the user somehow and connect to its onPeerSelected method. When the user picks some other app to export to from this new Item, onPeerSelected will be called; when the callback onPeerSelected is called, the peer property is valid. Get a transfer object to this peer: var transfer = peer.request();, and then you need to fill in transfer.items. This is a JavaScript list of ContentItems; specifically, define ContentItem { id: exportItem } in your app, and then make a “list” of one item with var items = new Array(); exportItem.url = PATH_TO_FILE_YOU_ARE_EXPORTING; items.push(exportItem); transfer.items = items;.9 After that, set transfer.state = ContentTransfer.Charged and your transfer begins; you can hide the ContentPeerPicker by setting cpp.visible=false at this point.

And that’s how to export files over the Content Hub so that your app can make files available to others. There’s a second half of this (other apps export the files; your app wants to retrieve them, so let’s say they’re an app which needs a photo, and you’re an app with photos), which I’ll come to in a future blog post.

As you can see from the large number of footnotes10 there are a number of caveats with this whole process, in particular that a bunch of it isn’t documented. It will, I’m sure, over time, get better. Meanwhile, the above gives you the basics. Have fun.

  1. correctly
  2. ha!
  3. a bit more than that, if I’m honest
  4. or whatever you called it; hooks.$APPNAME.apparmor in manifest.json
  5. This is more confusing than it should be. If you’re using Ubuntu SDK as your editor, then clicking the big “+” button will load a list of possible apparmor permissions. Don’t double-click a permission; this will just show you what it means in code terms, rather irrelevantly. Instead, choose your permission (content_exchange_source in this case) and then say Add
  6. you can also do `{“source”:[“pictures”]}. There may be other things you can write in there instead of “all” or “pictures”, but the documentation is surlily silent on such things.
  7. You can see all the possible content types in the Ubuntu SDK ContentType documentation (, with misleading typos and all
  8. as mzanetti excellently described it
  9. You can transfer more than one item, here.
  10. not this one, though

Valorie Zimmerman: Support Randa 2015

Wed, 08/19/2015 - 17:36

Weeeee! KDE is sponsoring Randa Meetings again, this time with touch. And you can help making KDE technologies even better! This exciting story in the Dot this week, caught not only my attention, but my pocketbook as well.

Yes, I donated, although I'm not going this time. Why? Because it is important, because I want Plasma Mobile to succeed, because I want my friend Scarlett* to have a great time, and because I want ALL the devels attending to have enough to eat! Just kidding, they can live on Swiss chocolate and cheese. No, really: the funds are needed for KDE software development.

So dig deep, my friends, and help out.

*(And somebody hire Scarlett to make KDE software!)

Svetlana Belkin: Ubuntu Membership Pages Update

Wed, 08/19/2015 - 09:37

Back in May 2015, the Membership Board had a UOS session about what we, as a board and others who help us, can help more people to get their Membership.  Two of those items dealt with updating some of the Membership pages.

The first update was to the FAQ page.  We added a question that deals with the non-English speaking community that we have.  The question is:

I do not speak English or my English is weak, can I still apply?

and  the answer is:

For course you can! Simply ask someone you know who can translate for you to come to the meeting.

This should clear up the confusion for these people.

The second update is to the main page.  At our session, we figured out that we were missing the benefits of having a Ubuntu Membership.  We wrote this section to remind our Community that there are benefits for the individuals (such as recognition of significant, sustained, and continued contributions), BUT also to the Ubuntu and Open Source communities as a whole.

As a close, the Membership Board is asking that if you want to become a Member, please apply!

Svetlana Belkin: Membership Board Member Interviews: Alan Pope

Tue, 08/18/2015 - 09:14

The Ubuntu Membership Board is responsible for approving new Ubuntu members. I interviewed our board members in order for the Community to get to know them better and get over the fear of applying to Membership.

The sixth interviewee is Alan Pope:

What do you do for a career?

For the last 3.5 years I’ve worked at Canonical on Ubuntu. Previously I was an SAP Consultant for ~10 years and before that I’ve been a server and desktop admin.

What was your first computing experience?

I got a Sinclair ZX81 for Christmas 1981, 34 years ago. Computers were pretty dumb back then, booting directly to BASIC. My Dad had typed in a program listing from a magazine so I’d have something to play with on Christmas morning. I was hooked from then on.

How long have you been involved with Ubuntu?

According to Launchpad my account was created in March 2006, so I guess around then. I started by answering support questions on Launchpad Answers, and moved on to other community related activities

Since you are all fairly new to the Board, why did you join?

I’ve actually been on the board before, but stepped down in late 2011. I re-joined because I knew it was only a small amount of time/effort on my part and is beneficial to the project. I want to see more
contributors apply for Ubuntu Membership, and I hope we can help foster that over the coming months.

What are some of the projects you’ve worked on in Ubuntu over the years?

I’ve worked on supporting new users on launchpad, irc and AskUbuntu. I have moderated mailing lists, been a LoCo Team lead, and on the LoCo Council and Community Council. I also started an Ubuntu Podcast with some friends which is still going after 7 years with thousands of listeners.

What is your focus in Ubuntu today?

Currently I spend most of my time working on the Ubuntu Core Apps project which makes many of the Free Software apps we ship on the phone.

Do you contribute to other free/open source projects? Which ones?

Not really other than filing bugs in upstream bug trackers when I need to.

If you were to give a newcomer some advice about getting involved with Ubuntu, what would it be?

Look for something you find fun and interesting. Treat it like a hobby rather than a job. If you have fun contributing you’re more likely to stick at it. Don’t be afraid of asking for help as there’s a lot of people who have contributed for a long time and will happily answer your questions.

Do you have any other comments else you wish to share with the community?

I’ve met many friends through Ubuntu and have spent nearly 10 years contributing to the project both in my own time and now as a day job. I’ve really enjoyed being part of the community. It’s a great feeling contributing to a free software project, and I hope to continue for as long as I can.

Daniel Holbach: Snapcraft has landed in the archive

Tue, 08/18/2015 - 06:41

In the flurry of uploads for the C++ ABI transition and other frantic work (Thursday is Feature Freeze day) this gem maybe went unnoticed:

snapcraft (0.1) wily; urgency=low * Initial release

What this means? If you’re on wily, you can easily try out snapcraft and get started turning software into snaps. We have some initial docs available on the developer site which should help you find your way around.

This is a 0.1 release, so there are bugs and there might be bigger changes coming your way, but there will also be more docs, more plugins and more good stuff in general. If you’re curious, you might want to sign up for the daily build (just add the ppa:snappy-dev/snapcraft-daily PPA).

Here’s a brilliant example of what snapcraft can do for you: packaging a Java app was never this easy.

If you’re more into client apps, check out Ted’s article on how to create a QML snap.

As you can easily see: the future is on its way and upstreams and app developer will have a much easier time sharing their software.

As I said above: snapcraft is still a 0.1 release. If you want to let us know your feedback and find bugs or propose merges, you can find snapcraft in Launchpad.

Canonical Design Team: Django behind a proxy: Fixing absolute URLs

Tue, 08/18/2015 - 02:47

I recently tried to setup OpenID for one of our sites to support authentication with, and it took me much longer than I’d anticipated because our site is behind a reverse-proxy.

My problem

I was trying to setup OpenID with the django-openid-auth plugin. Normally our sites don’t include absolute links ( back to themselves, because relative URLs (/hello-world) work perfectly well, so normally Django doesn’t need to know the domain name that it’s hosted it.

However, when authenticating with OpenID, our website needs to send the user off to with a callback url so that once they’re successfully authenticed they can be directed back to our site. This means that the django-openid-auth needs to ask Django for an absolute URL to send off to the authenticator (e.g.

The problem with proxies

In our setup, the Django app is served with a light Gunicorn server behind an Apache front-end which handles HTTPS negotiation:

User <-> Apache <-> Gunicorn (Django)

(There’s actually an additional HAProxy load-balancer in between, which I thought was complicating matters, but it turns out HAProxy was just passing through requests absolutely untouched and so was irrelevant to the problem.)

Apache was setup as a reverse-proxy to Django, meaning that the user only ever talks to Apache, and Apache goes off to get the response from Django itself, with Django’s local network IP address – e.g.

It turns out this is the problem. Because Apache, and not the user directly, is making the request to Django, Django sees the request come in at rather than This meant that django-openid-auth was generating and sending the wrong callback URL of to

How Django generates absolute URLs

django-openid-auth uses HttpRequest.build_absolute_uri which in turn uses HttpRequest.get_host to retrieve the domain. get_host then normally uses the HTTP_HOST header to generate the URL, or if it doesn’t exist, it uses the request URL (e.g.:

However, after inspecting the code for get_host I discovered that if and only if settings.USE_X_FORWARDED_HOST is True then Django will look for the X-Forwarded-Host header first to generate this URL. This is the key to the solution.

Solving the problem – Apache

In our Apache config, we were initially using mod_rewrite to forward requests to Django.

RewriteEngine On RewriteRule ^/?(.*)$$1 [P,L]

However, when proxying with this method Apache2 doesn’t send the X_Forwarded_Host header that we need. So we changed it to use mod_proxy:

ProxyPass / ProxyPassReverse /

This then means that Apache will send three headers to Django: X-Forwarded-For, X-Forwarded-Host and X-Forwarded-Server, which will contain the information for the original request.

In our case the Apache frontend used HTTPS protocol, whereas Django was only using so we had to pass that through as well by manually setting Apache to pass an X-Forwarded-Proto to Django. Our eventual config changes looked like this:

<VirtualHost *:443> ... RequestHeader set X-Forwarded-Proto 'https' env=HTTPS ProxyPass / ProxyPassReverse / ... </VirtualHost>

This meant that Apache now passes through all the information Django needs to properly build absolute URLs, we just need to make Django parse them properly.

Solving the problem – Django

By default, Django ignores all X-Forwarded headers. As mentioned earlier, you can set get_host to read the X-Forwarded-Host header by setting USE_X_FORWARDED_HOST = True, but we also needed one more setting to get HTTPS to work. These are the settings we added to our Django

# Setup support for proxy headers USE_X_FORWARDED_HOST = True SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')

After changing all these settings, we now have Apache passing all the relevant information (X-Forwarded-Host, X-Forwarded-Proto) so that Django is now able to successfully generate absolute URLs, and django-openid-auth now works a charm.

Arthur Schiwon: This August: ownCloud Contributor Conference 2015 in Berlin

Mon, 08/17/2015 - 22:03

The ownCloud contributor conference comes closer and closer! Roughly two weeks are left until it kicks off on August 28th here in Berlin. You did not register yet? Please do at the conference site.

With time passing rapidly our dear Jos is like the sedulous ants, taking care of all the smaller and bigger things, hopping to and fro. Helping around a bit, I feel the air is heating up and tension rising. Yeah!


Our target audience are ownCloud contributors also in the wider community sense. It is all about pushing ownCloud forwards and making it better and better continuously. Therefore the conference consists of two days with Keynotes, inspiring Lightning Talks and hands-on workshops. Other five days solely concentrate on hacking, having half a dozen rooms for coding and discussing. There's even a dedicated "meeting room", which you can reserve if you invite people to discuss a matter in a more calm atmosphere. While diligent Jos takes care that there is enough caffeine you can turn into code (and other supplies of course).

If however you consider yourself just more interested and want to see what is going on in ownCloud County and feel the pulse, do not hesitate to visit the conference days on the weekend. There is no entrance fee, but please register to make our planning easier.

Keynotes, Workshops and Talks

Our guest keynote this year will be hold by Angela Richter, who is a director at Schauspiel Köln, the national theatre in Cologne, Germany. One of her recent works that received popularity was "Supernerds" which was based on interviews with Julian Assange, Thomas Drake and others. Read also a more detailed introduction of Angela Richter.

Another Keynote will be traditionally hold by ownCloud founder and CTO Frank Karlitschek. There will be also a few talks (compared to standard lightning talks), for instance show-casing complex ownCloud setups at CERN and Sciebo (DE). There are several workshops where you can get into development of literally everything: ownCloud core, apps, desktop and mobile clients, but also underlying libraries as SabreDAV.

We put focus on lightning talks, thus when they are on there will be no other talk or workshop running. They are short, so will not be boring. You definitely will see inspiring topics, so you can get your hands dirty in the hacking sessions. Or, at least, get the news of what else is happing in our little universe.

You can browse the whole conference schedule. Take a look into the Lightning talks, because the contents of each you can see on their detail page.

My contributions

Also I will do give some lightning talks and a … let's what will come out of it. A short overview:

  1. What happened in LDAP County, Lightning Talks Part 1, Sat 12pm
    I will give a review on which changes were introduced to the LDAP backend since the last conference.
  2. Experimenting with LDAP, Workshop, Sat 3.30pm
    Here I want to offer a platform to learn about and play with the LDAP Backend. I plan to drive this solely on questions and ideas from the attendees. We shall learn, hack and see. Bring your questions and thoughts. Also join if you plan to contribute to the LDAP Backend.
  3. ownCloud Music Streaming on SailfishOS, Lightning Talks Part 2, Sun 10am
    A tech lightning talk for beginner in SailfishOS app writing from a beginner. I will show how to make your shanties from ownCloud Music play in a very simple player on your SailfishOS device. Very much recommended if you're tired of all the web programming all the time :)
  4. ownCloud Bookmarks, Lightning Talks Part 2, Sun 10am
    An introduction of one of the oldest apps in ownCloud and a call for contributors. It was stagnating recently, and I want to revive it.
  5. Do you have any questions or suggestions on those? Shoot them via the comment form below!


Still did not register? Do it! As said, entrance is for free, but we would like to plan and foresee the number of attendees. If you are already a contributor and have some pull requests merged into the code base (or have other significant contributions) but struggle with finances to pay the travel costs, you can ask for assistance. If you really cannot do it, we will stream the main conference room (keynotes and lightning talks), but you miss all the hacking fun :'-(.

Tags: ownCloudPlanetOwnCloudPlanetUbuntuSailfishOSLinux

The Fridge: Ubuntu Weekly Newsletter Issue 430

Mon, 08/17/2015 - 21:41

Aaron Honeycutt: My forecast for the next 4 months

Mon, 08/17/2015 - 21:10

With energy from Akademy still running though my veins but slowly lowering I’m looking at the next FLOSS (Free Libre Open Source Software) events. I’ve asked the community funds to go to OpenHelp (still no reply yet), FOSSETCON (which was approved!). Now over to just general IT event(s): ITPalooza, which will be my first time there. I’m super excited for all the events! I’ve learned much from all the events I have gone to and found more voids in OSS/FLOSS projects that I can fill ex. Kubuntu Packages, KDE SVG, Plasma Mobile and hopefully more will come soon!

This past Saturday we (Ubuntu FL LoCo) had our 2nd Ubuntu Hour at Mojo Donut which was a great time like the first. I also got a new person to come over that I met at a vBeer the Wednesday before.

I would like to thank the awesome Ubuntu Community for helping me reach more projects and meet awesome people and tech!