22 Oct 2014

feedPlanet Ubuntu

Mythbuntu: Actions required by Nov 1st due to Schedules Direct change

The following announcement will affect users using the Schedules Direct service to get guide data, including but not limited to USA and Canada.

On November 1st, 2014, the existing SD service is changing.

We have been informed that Gracenote (formerly Tribune Media Services) will be ending the guide data service currently used by most users of Schedules Direct. Their plan is to end support for this service on November 1, 2014.

A service is being developed to mimic the DataDirect feed. It has most, but not all of the data currently in the Data Direct feed and will be updated daily.

What does this mean for Schedules Direct?

The guide data provider (Gracenote) that Schedules Direct uses is changing how they present the guide data to users. Schedules Direct has taken it upon themselves to write a server side compatibility layer so existing applications will continue to get guide data. This does require a change in the URL that applications use to download which is why an update to MythTV is necessary.

What does this mean to you as a user?

If you have a paid subscription to Schedules Direct that will continue the way it has worked previously. A simple update to MythTV will be required for users on a supported version of MythTV.

Users that have enabled the MythTV Updates repo and are on a current version of MythTV and a supported version of Ubuntu will receive the fix for this via regular updates. The Mythbuntu team has always recommended enabling the MythTV Updates repo in the Mythbuntu Control Centre and staying up to date on fixes builds. The fix for this issue was added to our packages in the versions in the below table. More information on the Mythbuntu provided MythTV Update repo can be found here.

Users on builds prior to 0.27 (eg. 0.26, 0.25) will need to either upgrade to a supported build version (see Mythbuntu Repos) or use one of the workarounds (See MythTV Wiki)

MythTV Version Fixed in version
0.28 (development) 2:0.28.0~master.20141013.4cb10e5-0ubuntu0mythbuntu#
0.27.X 2:0.27.4+fixes.20141015.e4f65c8-0ubuntu0mythbuntu#
0.26.X 2:0.26.2+fixes.20141022.4c4bb29-0ubuntu0mythbuntu1
Prior to 0.26.X WILL NOT BE FIXED, please either update or see the MythTV Wiki for a workaround


For more information on this issue, please see the writeup on the MythTV wiki. Questions can be directed to the MythTV-Users mailing list

22 Oct 2014 7:13pm GMT

Nicholas Skaggs: Sprinting in DC: Tuesday

This week, my team and I are sprinting with many of the core app developers and other folks inside of Ubuntu Engineering. Each day I'm attempting to give you a glimpse of what's happening.

On Tuesday I was finally able to sit down with the team and plan our week. In addition I was able to plan some of the work I had in mind with the community folks working on the core apps. Being obsessed with testing, my primary goals this week are centered around quality. Namely I want to make it easier for developers to write tests. Asking them to write tests is much easier when it's easy to do so. Fortunately, I think (hope?) all of the community core apps developers recognize the benefits to tests and thus are motivated to drive maturity into the testing story.

I'm also keen to work on the manual testing story. The community is imperative in helping test images for not only ubuntu, but also all of it's flavors. Seriously, you should say thank you to those folks helping make sure your install of ubuntu works well. They are busy this week helping make sure utopic is as good as it can be. Rock on image testers! But the tools and process used weigh on my mind, and I'm keen to chat later in the week with the canonical QA team and get there feedback.

During the day I attended sessions regarding changes and tweaks to the CI process. For core apps developers, errors in jenkins should be easier to replicate after these changes. CI will be moving to utilizing adt-run (autopkgtest) for there test execution (and you should too!). They will also provide the exact commands used to run the test. That means you can easily duplicate the results on the dashboard locally and fix the issues found. No more works on my box excuses!

I also met the team responsible for the application store and gave them feedback on the application submission process. Submitting apps is already so simple, but even more cool things are happening on this front.

The end of the evening found us shuffling into cab's for a team dinner. We had a long table of folks eating Italian food and getting to know each other better.


After dinner, I pressured a few folks into having some dessert and ordered a sorbet for myself. After receiving no less than 4 fruit sorbets due to a misunderstanding, I began carving the fruits and sending plates of sorbet down the table. My testcase failed however when the plates all came back :-(



22 Oct 2014 6:13pm GMT

Nicholas Skaggs: Sprinting in DC: Monday

This week, my team and I are sprinting in Washington DC with many of the core app developers and other folks inside of Ubuntu Engineering. Sprints are always busy, but the work tends to be a mix of social and technical. I get to assign names (IRC nicknames mostly) to faces as well as get to know my co-workers and other community members better.

I thought it might be useful to give writeups each day of what's going on, at least from my perspective during the sprint. I won't yammer on too much about quality and instead bring you pictures of what you really want. And some of this too. Whoops, here's one.

Pictures of people taking pictures . . .

Monday was the first day of the sprint, and also the day of my arrival! Personally I'm busy at home during this week, so it's tough to get away. That said, I can't imagine being anywhere else for the week. The sprints are a wonderful source of respite for everyone.

Monday itself consisted of making sure everything is ready for the week, planning events, and icebreakers. In typical fashion, an opening plenary set the bar for the week with notes about the progress being made on the phone as well as the future of the desktop. Lots of meetings and a few blurry jet lagged hours later, everyone was ready to sit for a bit and have some non-technical conversation!

Fortunately for us there was an event planned to meet both our social and hunger needs. After being split randomly into teams of bugs (love the play on quality), we played a bit of trivia. After each round teams were scored not only on the correct response, but also how quickly they responded. The questions varied from the obscure to fun bits about ubuntu. The final round centered around Canonical itself which was fun trip down memory lane to remember.

As I crawled into bed I still had the wonderfully cheesy announcer playing trivia questions in my head.


22 Oct 2014 6:01pm GMT

Zygmunt Krynicki: Launching a process to monitor stdout, stderr and exit code reliably

Recently I'm fixing a rather difficult bug that deals with doing one simple task reliably. Run a program and watch (i.e. intercept and process) stdout and stderr until the process terminates.


Doing this is surprisingly difficult and I was certainly caught in a few mistakes the first time I tried to do this. I recently posted a lengthy comment on the corresponding bug. It took me a few moments to carefully analyze and re-think the situation and how a reliable approach should work. Non the less I am only human and I certainly have made my set of mistakes.

Below is the reproduction for my current approach. The implementation is still in progress but it seems to work (I need to implement the termination phase of non-kill-able processes and switch to fully non-blocking I/O). So far I've used epoll(7) and signalfd(7). I'm still planning to use timerfd_create(2) for the timer, perhaps with CLOCK_RTC for hard wall-clock-time limit enforcement. I'll post the full, complete examples once I'm done with this but you can look at how it mostly looks like today in the python-glibc git tree's demos/ directory.

I'd like to ask everyone that has experience with this part of systems engineering to poke holes in my reasoning and show how this might fail and misbehave. Thanks.

The current approach, that so far works good on all the pathological cases is to do this.
The general idea is that we're in a I/O loop, using non-blocking I/O and a select-like mechanism to wait for wait for:
- timeout (optional, new feature)
- read side of the stdout pipe data
- read side of the stdout pipe being closed
- read side of the stderr pipe data
- read side of the stderr pipe being closed
- SIGCHLD being delivered with the intent to say that the process is dead
In general we keep looping and terminate only when the set of waited things (stdout depleted, stderr depleted, process terminated) is empty. This is not always true so see below. The action that we do on each is event is obviously different:
If the timeout has elapsed we proceed to send SIGTERM, reset the timer for shutdown period, followed by SIGQUIT and another timer reset. After that we send SIGKILL. This can fail as the process may have elevated itself beyond our capabilities. This is still undecided but perhaps, at this time, we should use an elevated process manager (see below). If we fail to terminate the process special provisions apply (see below).
If we have data to read we just do and process that (send to log files, process, send to .record.gz). This is a point where we can optimize the process and improve reliability in event of sudden system crash. Using more modern facilities we can implement tee in kernel space which lowers processing burden on python and, in general, makes it more likely that the log files will see actual output the process made just prior to its death.
We can also use pipes in O_DIRECT (aka packet mode) here to ensure that all writes() end up as individual records, which is the indented design of the I/O log record concept. This won't address the inherent buffering that is enabled in all programs that detect when they are redirected and no longer attached to a tty.
Whenever one of the pipes is depleted (which may *never* happen, lesson learned) we just close our side.
When the child dies, and this is the most important part and the actual bugfix, we do the following sequence of events:
- if we still have stdout pipe open, read at most one PIPE_BUF. We cannot read more as the pipe may live on forever and we can just hang as we currently do. Reading one PIPE_BUF ensures that we catch the last moments of what the originally started process intended to tell us. Then we close the pipe. This will likely result in SIGPIPE in any processes that are still attached to it though we have no guarantee that it will rally kill them as that signal can be blocked.
- if we still have stderr pipe open we follow the same logic as for stdout above.
- we restore some signal handling that was blocked during the execution of the loop and terminate.
There's one more trick up our sleeve and that is PR_SET_CHILD_SUBREAPER but I'll describe that in a separate bug report that deals with runaway processes. Think dbus-launch or anything that double-forks and demonizes

If you have any comments or ideas please post them here (wherever you are reading this), on the launchpad bug report page or via email. Thanks a lot!

22 Oct 2014 2:50pm GMT

Ubuntu LoCo Council: Regular LoCo Council Meeting for 21 October 2014

Meeting information

#ubuntu-meeting: Regular LoCo Council Meeting for October 2014, 21 Oct at 20:00 - 21:33 UTC
Full logs at http://ubottu.com/meetingology/logs/ubuntu-meeting/2014/ubuntu-meeting.2014-10-21-20.00.log.html
Meeting summary

Opening Business

The discussion about "Opening Business" started at 20:00.

Listing of Sitting Members of LoCo Council (20:00)
For the avoidance of uncertainty and doubt, it is necessary to list the members of the council who are presently serving active terms.
Marcos Costales, term expiring 2015-04-16
Jose Antonio Rey, term expiring 2015-10-04
Pablo Rubianes, term expiring 2015-04-16
Sergio Meneses, term expiring 2015-10-04
Stephen Michael Kellat, term expiring 2015-10-04
There is currently one vacant seat on LoCo Council
Roll Call (20:00)
Vote: LoCo Council Roll Call (All Members Present To Vote In Favor To Register Attendance) (Carried)
Re-Verification: France

The discussion about "Re-Verification: France" started at 20:03.

Vote: That the re-verification application of France be approved and that the period of verification be extended for a period of two years from this date. (Carried)
Update on open cases before the LoCo Council

The discussion about "Update on open cases before the LoCo Council" started at 20:19.

LoCo Council presently has before it pending verification and re-verification proceedings for the following LoCo Teams: Mauritius, Finland, Netherlands, Peru, Russia, Serbia.
The loco-contacts thread "Our teams reject the new LoCo Council policy"

The discussion about "The loco-contacts thread 'Our teams reject the new LoCo Council policy'" started at 20:20.

Requests from the Galician and Asturian teams

The discussion about "Requests from the Galician and Asturian teams" started at 20:59.

Vote: That the Galician Team, pursuant to their request this day, be considered an independent LoCo team notwithstanding representing less than a country. (Carried)
Vote: That the Asturian Team, pursuant to their request this day, be considered an independent LoCo Team notwithstanding representing less than a country. (Carried)
Marcos Costales, in his capacity as leader of Ubuntu Spain and as a member of LoCo Council, stood aside from both votes.
Any Other Business

The discussion about "Any Other Business" started at 21:13.

Those who have requests of the LoCo Council are advised to write to it at loco-council@lists.ubuntu.com for assistance.
Vote results

LoCo Council Roll Call (All Members Present To Vote In Favor To Register Attendance)

Motion carried (For/Against/Abstained 4/0/0)
Voters PabloRubianes, skellat, costales, SergioMeneses
That the re-verification application of France be approved and that the period of verification be extended for a period of two years from this date.

Motion carried (For/Against/Abstained 4/0/0)
Voters PabloRubianes, skellat, costales, SergioMeneses
That the Galician Team, pursuant to their request this day, be considered an independent LoCo team notwithstanding representing less than a country.

Motion carried (For/Against/Abstained 2/0/1)
Voters PabloRubianes, skellat, SergioMeneses
That the Asturian Team, pursuant to their request this day, be considered an independent LoCo Team notwithstanding representing less than a country.

Motion carried (For/Against/Abstained 2/0/1)
Voters PabloRubianes, skellat, SergioMeneses

22 Oct 2014 12:45pm GMT

Mattia Migliorini: Debian hangs during boot

This morning I came to work a hour earlier than usual. I started my work PC and waited for it to boot into Debian Jessie. And waited… waited… waited…

This sounds strange, doesn't it? It generally boots rather quickly. In fact Debian hangs during boot with this message:

A start job is running for Create Volatile Files and Directories

Followed by a timer and no limit. You can leave it there, but it does not finish and just hangs there. So, let's try understand the problem.

The problem

The problem here is quite obvious: in the previous session you updated systemd to version 215-5+b1. If you have a look at your system's /tmp directory (you can't do it now, but we'll do it later for sake of knowledge), you find out that it's bloated. Here's the bug report.

Edit

As OdyX points out in the comments, the real problem has to do only with the /tmp directory and is caused by a bug in system-config-printer, and systemd is responsible only to expose the problem.

The solution

Thankfully, the solution is pretty straightforward. Reboot your computer with Ctrl+Alt+Del and wait for Grub to load, then press e to edit Debian's entry. After the line with /boot/vmlinuz... add the following:

--add rw init=/bin/bash

And press F10 to boot. Debian will load as a shell with root permissions, so you can do whatever you want (but be careful, because you can cause big issues too!

Now it's time to check your /tmp directory:

ls -l /tmp

You should wait some minutes until it finishes, and the output may scare you. It's bloated, as I told you before. What can you do now? Just remove and recreate it.

rm -rf /tmp
mkdir /tmp
chmod 1777 /tmp

Now restart your PC and check it out: Debian will boot correctly!

Conclusion

Is systemd ready to go towards a Debian stable release? I don't think so. The team has to work hard to accomplish this step. So, good luck guys, and please test it a little more next time!

See edit above.

Source: Debian User Forums

The post Debian hangs during boot appeared first on deshack.

22 Oct 2014 8:05am GMT

Valorie Zimmerman: Session notes/research for Linux Unplugged 63

Interview today for Linux Unplugged 63 which was fun! However we never discussed Kubuntu, which I understood was the subject. I had gotten together facts and links in case they were needed, so I thought I would post them in case anybody needs the information.


Created and supported by community: http://www.kubuntu.org/support
Professional support for users: http://kubuntu.emerge-open.com/buy
Support by Blue Systems to some developers & projects:
http://www.blue-systems.com/ http://www.blue-systems.com/projects/
Infrastructure support by Ubuntu, KDE, Blue Systems and Debian
Governance: Kubuntu Council https://launchpad.net/~kubuntu-council

How to contact us: kubuntu.org, freenode irc: #kubuntu (-devel), kubuntu-user list, kubuntu-devel list, kubuntuforum
- http://kubuntu.org
- http://webchat.freenode.net/
- https://lists.ubuntu.com/mailman/listinfo/kubuntu-users
- https://lists.ubuntu.com/mailman/listinfo/kubuntu-devel
- https://www.kubuntuforums.net
- Documentation on KDE userbase: http://userbase.kde.org/Kubuntu
- Kubuntu in the news: http://wire.kubuntu.org/

* our "upstream" KDE is also making big changes, starting by splitting kdelibs into the Frameworks, and basing them on Qt5
- that work is largely done, although of course each library is being improved as time goes along. Releases monthly.
- We're writing a KDE Frameworks book; more about that at books.kde.org
- Developers: apidox at api.kde.org

* KDE has now released Plasma 5, based on those new frameworks
- that is nearly done, and 5.1 was released 15 Oct.
https://www.kde.org/announcements/plasma-5.1/
- lots of excitement around that, because it looks and works really elegant, smooth and modern
- Riddell: 14.12 release of KDE Applications will be in December with a mix of Qt 4 and Qt 5 apps, they should both work equally well on your Plasma 4 or 5 desktop and look the same with the classic Oxygen or lovely new Breeze themes

* so our upstream is up to lots of new wonderful stuff, including using CI too (CI: continuous integration with automated testing)

* meanwhile, bugfixes continue on KDE4:
https://www.kde.org/announcements/announce-4.14.2.php

* Our base for 14.10 (codename Utopic Unicorn) is that stable KDE platform.
* At the same time, we are releasing weekly ISOs of Plasma 5, to make
it easy for people to test
- http://apachelog.wordpress.com/2014/10/17/plasma-5-weekly-iso-revisited/
- Riddell: We're releasing a tech preview of Kubuntu Plasma 5 as part of 14.10 for people to test. I'm using it daily and it's working great but expect testers to be competent enough to check for and report beasties

* we're following along to KDE's CI effort, and doing that with our packages
- see #kubuntu-ci IRC channel for the reports as they are generated
- Riddell: gory details at http://kci.pangea.pub/
- packages built constantly to check for any updates that need changed

* Our new packaging is now in Debian git, so we can share packaging work
- as time goes on, all our packaging files will be there
- tooling such as packaging scripts are being updated
- Debian and Kubuntu packagers will both save time which they can use to improve quality

* moving from LightDM to SDDM (Simple Desktop Display Manager), KDE/Qt default
graphical login program

* moving to systemd replacing upstart along with Debian and Ubuntu at some point in the future

* moving to Wayland when it is ready along with KDE (Kwin); now on xorg windowing system. We do not plan to use Ubuntu's Mir

* Testing until release (please!) on the 23rd:
- http://iso.qa.ubuntu.com/qatracker/milestones/325/builds/82050/testcases
- http://iso.qa.ubuntu.com/qatracker/milestones/325/builds/82052/testcases

* Testing Plasma 5:
http://apachelog.wordpress.com/2014/10/17/plasma-5-weekly-iso-revisited/
(fresh install)
- https://community.kde.org/Plasma/Packages#Kubuntu (upgrading)

* Another way we stay close to KDE is that since Ubuntu stopped inviting community members to participate in face-to-face meetings, we have a Kubuntu Day with Akademy, KDE's annual meeting. Thanks to the Ubuntu Contributors who paid the travel costs for some of us to attend

Qt Free: http://qt-project.org/wiki/The_Qt_Governance_Model

--
Thanks to Jonathan Riddell for his clarifications and corrections

22 Oct 2014 5:56am GMT

21 Oct 2014

feedPlanet Ubuntu

Bryan Quigley: Still running 32 bit Ubuntu?

I'm considering a proposal to have 16.04 LTS be the last release of Ubuntu with 32 bit images to run on 32 bit only machines (on x86 aka Intel/AMD only - this has no bearing on ARM). You would still be able to run 32 bit applications on 64 bit Ubuntu.

Please answer my survey on how this would affect you or your organization.

Please only answer if you are running 32-bit (x86) Ubuntu! Thanks!

If you can't see the form below click here.

Loading…

21 Oct 2014 6:32pm GMT

Svetlana Belkin: [mupen64plus] Controller Config for GameCube Controller via HuiJia USB GamePad

This is the config that I have but I need help (below):
[Linux: HuiJia USB GamePad]
plugged
= True
plugin
= 2
mouse
= False
AnalogDeadzone = 100,100
AnalogPeak = 20000,20000
DPad R = button(13)
DPad L = button(15)
DPad D = button(14)
DPad U = button(15)
Start = button(9)
Z
Trig = button(7)
B
Button = button(2)
A
Button = button(1)
C
Button R = axis(3+)
C
Button L =
C
Button D = axis(4-)
C
Button U =
R
Trig = button(3)
L
Trig = button(0)
Mempak switch = key(109)
Rumblepak switch = key(114)
X
Axis = axis(0-,0+)
Y
Axis = axis(1-,1+)

I almost have every button/axis working but not the c-pad as an axis. Based on what the joystick test program is giving me, the d-pad is also an axis, but I can't that axis to work. Can someone help me with that.

Hardware: http://www.amazon.com/gp/product/B0089NVTDM/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1
OS: Ubuntu 14.04 32-bit


21 Oct 2014 4:07pm GMT

Ronnie Tucker: Systemd Creator Says Linux Community Is Rotten, Points at Linus Torvalds as the Source

The creator of systemd, Lennart Poettering, had some very harsh words to say about the Linux community and about one of its role models, Linus Torvalds.

It might seem that the Linux community in its entirety is all about rainbows and bunnies, but the truth is that it's made up of regular people and the likes. Most of the other communities are formed in this way and Linux is no exception. The problem is that Linus is pegged as one of the people responsible by Lennart Poettering.

There has been some small friction between the two projects, Linux and systemd, but nothing that would indicate that something was amiss. In fact, when asked what he thought about systemd, just a couple of weeks ago, Linus Torvalds was actually very tactful about it.

Source:

http://news.softpedia.com/news/Systemd-Creator-Say-Linux-Community-Is-Rotten-Points-at-Linus-Torvalds-as-the-Source-461219.shtml

Submitted by: Silviu Stahie

21 Oct 2014 6:00am GMT

The Fridge: Ubuntu Weekly Newsletter Issue 388

Welcome to the Ubuntu Weekly Newsletter. This is issue #388 for the week October 13 - 19, 2014, and the full version is available here.

In this issue we cover:

The issue of The Ubuntu Weekly Newsletter is brought to you by:

If you have a story idea for the Weekly Newsletter, join the Ubuntu News Team mailing list and submit it. Ideas can also be added to the wiki!

Except where otherwise noted, content in this issue is licensed under a Creative Commons Attribution 3.0 License BY SA Creative Commons License

21 Oct 2014 12:12am GMT

20 Oct 2014

feedPlanet Ubuntu

The Fridge: Happy 10th Birthday Ubuntu!

10 years ago today, Mark Shuttleworth made the 4th post ever to the ubuntu-announce mailing list when he wrote: Announcing Ubuntu 4.10 "The Warty Warthog Release"

In this announcement, Mark wrote:

Ubuntu is a new Linux distribution that brings together the extraordinary breadth of Debian with a fast and easy install, regular releases (every six months), a tight selection of excellent packages installed by default and a commitment to security updates with 18 months of security and technical support for every release.

So it's with much excitement, the Ubuntu News team wishes Ubuntu a happy 10th Birthday!

Ubuntu cake

Over the years, we've had several cakes celebrating releases, here are a sampling we found on Flickr, first from the 8.04 release party in London:

ubuntu cake

And an amazing trio from Kitchener-Waterloo, Ontario, Canada for 9.10, 10.10 and 11.04:

Ubuntu 9.10: Karmic Koala Release Party
CIMG4679.JPG
CIMG4817

And dozens of strictly Ubuntu logo cakes over the years (this one from 2006):

Ubuntu cake!!

With the release of 14.10 just days away, enjoy your release parties and perhaps take some time to reflect upon how far we've come in these 10 years!

Posted by Elizabeth K. Joseph, on behalf of the Ubuntu News Team

20 Oct 2014 7:34pm GMT

Jono Bacon: Happy Birthday Ubuntu!

Today is Ubuntu's ten year anniversary. Scott did a wonderful job summarizing many of those early years and his own experience, and while I won't be as articulate as him, I wanted to share a few thoughts on my experience too.

I heard of this super secret Debian startup from Scott James Remnant. When I worked at OpenAdvantage we would often grab lunch in Birmingham, and he filled me in on what he was working on, but leaving a bunch of the blanks out due to confidentiality.

I was excited about this new mystery distribution. For many years I had been advocating at conferences about a consumer-facing desktop, and felt that Debian and GNOME, complete with the exciting Project Utopia work from Robert Love and David Zeuthen made sense. This was precisely what this new distro would be shipping.

When Warty was released I installed it and immediately became an Ubuntu user. Sure, it was simple, but the level of integration was a great step forward. More importantly though, what really struck me was how community-focused Ubuntu was. There was open governance, a Code Of Conduct, fully transparent mailing lists and IRC channels, and they had the Oceans 11 of rock-star developers involved from Debian, GNOME, and elsewhere.

I knew I wanted to be part of this.

While at GUADEC in Stuttgart I met Mark Shuttleworth and had a short meeting with him. He seemed a pretty cool guy, and I invited him to speak at our very first LugRadio Live in Wolverhampton.

Mark at LugRadio Live.


I am not sure how many multi-millionaires would consider speaking to 250 sweaty geeks in a football stadium sports bar in Wolverhampton, but Mark did it, not once, but twice. In fact, one time he took a helicopter to Wolverhampton and landed at the dog racing stadium. We had to have a debate in the LugRadio team for who had the nicest car to pick him up in. It was not me.

This second LugRadio Live appearance was memorable because two weeks previous I had emailed Mark to see if he had a spot for me at Canonical. OpenAdvantage was a three-year funded project and was wrapping up, and I was looking at other options.

Mark's response was:

"Well, we are opening up an Ubuntu Community Manager position, but I am not sure it is for you."

I asked him if he could send over the job description. When I read it I knew I wanted to do it.

Fast forward four interviews, the last of which being in his kitchen (which didn't feel awkward, at all), and I got the job.

The day I got that job was one of the greatest days of my life. I felt like I had won the lottery; working on a project with mission, meaning, and something that could grow my career and skill-set.

Canonical team in 2007


The day I got the job was not without worry though.

I was going to be working with people like Colin Watson, Scott James Remnant, Martin Pitt, Matt Zimmerman, Robert Collins, and Ben Collins. How on earth was I going to measure up?

A few months later I flew out to my first Ubuntu Developer Summit in Mountain View, California. Knowing little about California in November, I packed nothing but shorts and t-shirts. Idiot.

I will always remember the day I arrived, going to a bar with Scott and some others, meeting the team, and knowing absolutely nothing about what they were saying. It sounded like gibberish, and I felt like I was a fairly technical guy at this point. Obviously not.

What struck me though was how kind, patient, and friendly everyone was. The delta in technical knowledge was narrowed with kindness and mentoring. I met some of my heroes, and they were just normal people wanting to make an awesome Linux distro, and wanting to help others get in on the ride too.

What followed was an incredible seven and a half years. I travelled to Ubuntu Developer Summits, sprints, and conferences in more than 30 countries, helped create a global community enthused by a passion for openness and collaboration, experimented with different methods of getting people to work together, and met some of the smartest and kindest people walking on this planet.

The awesome Ubuntu community


Ubuntu helped to define my career, but more importantly, it helped to define my perspective and outlook on life. My experience in Ubuntu helped me learn how to think, to manage, and to process and execute ideas. It helped me to be a better version of me, and to fill my world with good people doing great things, all of which inspired my own efforts.

This is the reason why Ubuntu has always been much more than just software to me. It is a philosophy, an ethos, and most importantly, a family. While some of us have moved on from Canonical, and some others have moved on from Ubuntu, one thing we will always share is this remarkable experience and a special connection that makes us Ubuntu people.

20 Oct 2014 5:52pm GMT

David Tomaschik: PSA: Typos in mkfs commands are painful

TL;DR: I apparently typed mkfs.vfat /dev/sda1 at some point. Oops.

So I rarely reboot my machines, and last night, when I rebooted my laptop (for graphics card weirdness) Grub just came up with:

Error: unknown filesystem.
grub rescue>

WTF, I wonder how I borked my grub config? Let's see what happens when we ls my /boot partition.

grub rescue>ls (hd0,msdos1)
unknown filesystem

Hrrm, that's no good. An ls on my other partition isn't going to be very useful, it's a LUKS-encrypted LVM PV. Alright, time for a live system. I grab a Kali live USB (not because Kali is necessarily the best option here, it's just what I happen to have handy) and put it in the system and boot from that. file tells me its an x86 boot sector, which is not at all what I'm expecting from an ext4 boot partition. It slowly dawns on me that at some point, intending to format a flash drive or SD card, I must've run mkfs.vfat /dev/sda1 instead of mkfs.vfat /dev/sdb1. That one letter makes all the difference. Of course, it turns out it's not even a valid FAT filesystem... since the device was mounted, the OS had kept writing to it like an ext4 filesystem, so it was basically a mangled mess. fsck wasn't able to restore it, even pointing to backup superblocks: it seems as though, among other things, the root inode was destroyed.

So, at this point, I basically have a completely useless /boot partition. I have approximately two options: reinstall and reconfigure the entire OS, or try to fix it manually. Since it didn't seem I had much to lose and it would probably be faster to fix manually (if I could), I decided to give door #2 a try.

First step: recreate a valid filesystem. mkfs.ext4 -L boot /dev/sda1 takes care of that, but you better believe I checked the device name about a dozen times. Now I need to get all the partitions and filesystems mounted for a chroot and then get into it:

% mkdir /target
% cryptsetup luksOpen /dev/sda5 sda5_crypt
% vgchange -a y
% mount /dev/mapper/ubuntu-root /target
% mount /dev/sda1 /target/boot
% mount -o bind /proc /target/proc
% mount -o bind /sys /target/sys
% mount -o bind /dev /target/dev
% chroot /target /bin/bash

Now I'm in my system and it's time to replace my missing files, but how to figure out what goes there? I know there are at least files for grub, kernels, initrds. I wonder if dpkg-query can be useful here?

# dpkg-query -S /boot
linux-image-3.13.0-36-generic, linux-image-3.13.0-37-generic, memtest86+, base-files: /boot

Well, there's a handful of packages. Let's reinstall them:

# apt-get install --reinstall linux-image-3.13.0-36-generic linux-image-3.13.0-37-generic memtest86+ base-files

That's gotten our kernel and initrd replace, but no grub files. Those can be copied by grub-install /dev/sda. Just to be on the safe side, let's also make sure our grub config and initrd images are up to date.

# grub-install /dev/sda
# update-grub2
# update-initramfs -k all -u

At this point, I've run out of things to double check, so I decide it's time to find out if this was actually good for anything. Exit the chroot and unmount all the filesystems, then reboot from the hard drive.

...

It worked! Fortunately for me, /boot is such a predictable skeleton that it's relatively easy to rebuild when destroyed. Here's hoping you never find yourself in this situation, but if you do, maybe this will help you get back to normal without a full reinstall.

20 Oct 2014 2:19pm GMT

Mark Shuttleworth: V is for Vivid

Release week! Already! I wouldn't call Trusty 'vintage' just yet, but Utopic is poised to leap into the torrent stream. We've all managed to land our final touches to *buntu and are excited to bring the next wave of newness to users around the world. Glad to see the unicorn theme went down well, judging from the various desktops I see on G+.

And so it's time to open the vatic floodgates and invite your thoughts and contributions to our soon-to-be-opened iteration next. Our ventrous quest to put GNU as you love it on phones is bearing fruit, with final touches to the first image in a new era of convergence in computing. From tiny devices to personal computers of all shapes and sizes to the ventose vistas of cloud computing, our goal is to make a platform that is useful, versal and widely used.

Who would have thought - a phone! Each year in Ubuntu brings something new. It is a privilege to celebrate our tenth anniversary milestone with such vernal efforts. New ecosystems are born all the time, and it's vital that we refresh and renew our thinking and our product in vibrant ways. That we have the chance to do so is testament to the role Linux at large is playing in modern computing, and the breadth of vision in our virtual team.

To our fledgling phone developer community, for all your votive contributions and vocal participation, thank you! Let's not be vaunty: we have a lot to do yet, but my oh my what we've made together feels fantastic. You are the vigorous vanguard, the verecund visionaries and our venerable mates in this adventure. Thank you again.

This verbose tract is a venial vanity, a chance to vector verbal vibes, a map of verdant hills to be climbed in months ahead. Amongst those peaks I expect we'll find new ways to bring secure, free and fabulous opportunities for both developers and users. This is a time when every electronic thing can be an Internet thing, and that's a chance for us to bring our platform, with its security and its long term support, to a vast and important field. In a world where almost any device can be smart, and also subverted, our shared efforts to make trusted and trustworthy systems might find fertile ground. So our goal this next cycle is to show the way past a simple Internet of things, to a world of Internet things-you-can-trust.

In my favourite places, the smartest thing around is a particular kind of monkey. Vexatious at times, volant and vogie at others, a vervet gets in anywhere and delights in teasing cats and dogs alike. As the upstart monkey in this business I can think of no better mascot. And so let's launch our vicenary cycle, our verist varlet, the Vivid Vervet!

20 Oct 2014 1:22pm GMT

Mattia Migliorini: Pinit 1.0: Pinterest for WordPress rewritten

Pinit, Pinterest for WordPress, is a handy plugin that lets you add Pinterest badges to your website quickly and with no effort.

Today I released the first complete version of this plugin, which was around since 30/10/2013. Although it had only a few widgets and was not so powerful, it has been appreciated by more than 800 people in one year of life. But now it's time to change! With this new 1.0 release you can leverage the simplicity, lightness and power of Pinit.

Download Pinit

Features

Pinit 1.0, or Pinterest for WordPress, includes only one widget to let you add three different Pinterest badges to your website's sidebar:

Interested in adding badges to your posts and pages too? New in this version are three shortcodes:

Pinit Shortcodes Usage

Here is a little reference for the shortcodes.

Pin Shortcode

The Pin Shortcode [pit-pin] lets you add the badge of a single pin to your posts and pages and accepts only one argument:

Example:

[pit-pin url="http://www.pinterest.com/pin/99360735500167749/"]

Profile Shortcode

With the Profile Shortcode [pit-profile] you can add a Pinterest profile's badge to your WordPress. It accepts up to four arguments:

Example:

[pit-profile url="http://www.pinterest.com/pinterest/" imgWidth="100" boxHeight="300" boxWidth="200"]

Board Shortcode

The Board Shortcode [pit-board] lets you add a Board badge to your pages and posts. It accepts the same arguments of the Profile Shortcode:

Example:

[pit-board url="http://www.pinterest.com/pinterest/pin-pets/" imgWidth="100" boxHeight="300" boxWidth="200"]

Languages

Pinterest for WordPress is currently available in 3 different languages:

You can submit new translations with a pull request to the GitHub repository or by email to deshack AT ubuntu DOT com.

Conclusion

Feel free to submit issues to the GitHub repository or the official support forum. If you like this plugin, you can contribute back to it simply by leaving a review.

The post Pinit 1.0: Pinterest for WordPress rewritten appeared first on deshack.

20 Oct 2014 12:23pm GMT