Welcome to Planet openSUSE

This is a feed aggregator that collects what openSUSE contributors are writing in their respective blogs.

To have your blog added to this aggregator, please read the instructions.

04 August, 2015

Jakub Steiner: FPV Addicts

12:28 UTCmember


I’ve started doing longer edits of the 15 second clips I usually put on Instagram. I’ve been really creative with the naming so far.

FPV Addicts

FPV Addict


We’re used to type erasure ruining our day in Java. Want to create a new T() in a generic method? Normally not possible. We can pass a Class<T> around, but that doesn’t work for generic types. We can’t write List<String>.class

One exception to this was using super type tokens. We can get the generic type of a super class at runtime, so if we can force the developer to subclass our type, then we’re able to find out our own generic types.

It let us do things like

List<String> l1 = new TypeReference<ArrayList<String>>() {}.newInstance();

This was really convenient prior to Java 8, because without lambdas we had to use anonymous inner classes to represent functions, and they could double up as type references.

Unfortunately, the super type token does not work with Lambdas, because Lambdas are not just sugar for anonymous inner classes. They are implemented differently.

However, there’s another trick we can use to get the generic type. It’s far more hacky implementation-wise, so probably not useful in a real scenario, but I think it’s neat nonetheless.

Here’s an example of what we can do, a method that takes a TypeReference<T> and creates an instance of that type

public static <T> T create(TypeReference<T> type) {
    return type.newInstance();

So far just the same as the supertype tokens approach. However, to use it we just need to pass an identity lambda.

This prints hello world

ArrayList<String> list = create(i->i);

This prints hello=1 world=2

LinkedHashMap<String, Integer> map = create(i->i);
map.put("hello", 1);
map.put("world", 2);

We could also use as a variable. This prints String

TypeReference<String> ref = i->i;

Unfortunately, it won’t work for the main motivation for supertype tokens – we can’t use this TypeReference as a key in a map because it will be a different instance each time.

Massive hack

So what’s the trick? If we try casting something, and the cast is invalid we’ll get a ClassCastException at runtime that will tell us exactly what the type actually is. This does work with lambdas, since they’re translated into normal methods.

Underneath the above Java snippet with a TypeReference<String> has been translated into something like

private static java.lang.String lambda$main$0(java.lang.String input) {
    return input;

As you can see, calling this with a type other than String is going to generate a ClassCastException.

Putting it together

First we’ll create a Newable interface that will take care of instantiating our type for us. It will have an abstract consumer() method which will provide a method that accepts a value of type T. This is a placeholder for the above autogenerated lambda method.

We can get the name of the type of T

Jos Poortvliet: Special people

06:31 UTCmember

After a rant on G+ I thought it'd be nice (for me, at least) to share a thought: we have an urge to put certain people on a pedestal because it helps our own identity and self esteem.

We need to feel superior

Self Esteem is very important for us - Maslov put individuality on top of the piramid for a reason. We need it to function, be happy in life.

So our brain lies to us

But how do you feel special and unique when you're not? Our brain lies to us, causing our illusion of superiority. I say 'our' because this is a near universal issue: 90% of people in pretty much any profession feels they are better than average, despite skills pretty much always following a bell curve (statistics speak for "half the people is worse and half is better than average").

Our brain is in charge of maintaining that positive sense of identity and has a series of tricks to keep that.

For example, identity depends on contrast. So we tend to exaggerate differences with others who are close to us. See for example countries who make fun of each other - it is inevitably between peoples very similar. Some interesting experiments were done with group behavior at a young boys' summer camp in the US in the 50's. Read a bit about this here if you're interested. You'll realize some of the problems we have in society are ingrained in our brains - a point I've made in an earlier blog.

Then there is the Fundamental Attribution Error:
In social psychology, the fundamental attribution error, also known as the correspondence bias or attribution effect, is the tendency for people to place an undue emphasis on internal characteristics (personality) to explain someone else's behavior in a given situation rather than considering the situation's external factors.

We do that? Yes, we do. Examples are everywhere, and some honest introspection will show you. Why do we do it? Because it makes us feel better about ourselves! If something goes wrong, it's the fault of the world. If things go well, I DID AWESOME!

Another important strategy is self justification: it is how we deal with a perceived discrepancy between what we believe about the world and what we see (also called 'cognitive dissonance'). And there are many more of these biases which maintain our belief in ourselves.

Special or not

So, the rich have their brain lies to them, maintaining their illusory superiority. Now we can understand why somebody on top of the world feels that it is justified that he/she is paid more per hour than much of the world population earns in a year.

But why do we support this illusion by buying auto-biograpies and looking up to the Steve Jobs and Fords and Warren Buffets like they are such special people?

Because they support the narrative that we all need: the self made (wo)man.

We westerners have

01 August, 2015


My last post was about how I got rid of flash on my host, to have it run only in a VM. After 3 weeks of no flash on the host, I have realized how little I really use it.

Many sites now use HTML5 at least as an alternative to flash so even for things like video streaming I did not miss it as much as I thought I would. And those few times that I did need to use flash I found it ran very well within my VMs. There is no noticeable latency even if I have several instances of flash loaded at the same time. I also ran into a neat alternative to flash called youtube-dl. This is a handy script packaged by most linux distros which allows you to download videos from sites by just providing it the URL to the page the video is embedded on. Its a great tool to use if you dont want to run flash at all or would like to make a personal archive of a video. You can also use mpv to stream videos, once again all you need to do is provide it a URL to the page the video is embedded on.

Overall I think life without flash has gone well and I hope soon I can say I wont have to use it at all. Until then though, I am fine with using it within a VM.

31 July, 2015



The GNOME.Asia Committee is inviting interested parties to submit proposals for hosting GNOME.Asia Summit during the 2nd quarter of 2016.
GNOME.Asia Summit is the annual GNOME Conference in Asia. The event focuses primarily on the GNOME desktop, but also covers applications and the development platform tools. It brings together the GNOME community in Asia to provide a forum for users, developers, foundation leaders, governments and businesses to discuss the present technology and future developments.
GNOME.Asia Summits have been held in Beijing, Ho-Chi-Minh City, Taipei, Bangalore, Hong Kong, Seoul, Beijing, Depok respectively over the last eight years.
The Committees’s preference is to find a new location each year in order to spread GNOME throughout Asia and we are looking for local organizers to rise to the challenge of organizing an excellent GNOME event. The GNOME.Asia committee will assist in the process, but there is a definitive need for individuals to be actively involved and committed to the planning and execution of the event.
You can learn more about GNOME.Asia Summit at our website: http://www.gnome.asia Interested parties are hereby invited to submit a formal proposal to the GNOME Asia Committee. The deadline for the proposals is September 11, 2015. Please email your proposal to gnome-asia-committee-listgnome org. We might invite you to present your proposal in more details over our regular IRC meetings or send you additional questions and requests. Results will be announced by the first week of October 2015.
The conference will require availability of facilities for 3-5 days, including a weekend, during the 2nd quarter of 2016 (between March and June). Key points which each proposals should consider and which will be taken into account when deciding among candidates, are:
  • Local community support for hosting the conference.
  • Venue details. Information about infrastructure and facilities to hold the conference should be provided.
  • Preliminary schedule with main program & different activities.
  • Information about how Internet connectivity will be managed.
  • Lodging choices ranging from affordable housing to nicer hotels, and information about distances between the venue and lodging options.
  • The availability of restaurants or the organization of catering on-site, cost of food/soft drinks/beer.
  • The availability and cost of travel from major Asian and European cities.
  • Local industries, universities and government support.
Please provide a reasonably detailed budget (sponsorships, expenses, etc).
  • Plans for local sponsorship's
Please refer to the GNOME.Asia website. Please also check the GNOME.Asia Summit check listhowtos and the winning proposal for 2012 when putting together a proposal. You are welcome to contact gnome-asia-committee-list AT gnome org if you have any questions. Please help to spread the word and we are looking forward to hearing from you soon! GNOME.Asia Committee

  • I've been making a little map of things in Göteborg, for GUADEC. The red markers are for the main venue (Folkets Hus) and the site of the BOFs (IT University). There's a ferry line to get from near Folkets Hus to the IT Univerisy. The orange marker is the Liseberg amusement park where the roller coasters are. The blue markers are some hotels.

    Go here if you cannot see the map.


At litl we use Docker images to package and deploy our Room for More services, using our Galaxy deployment platform. This week I spent some time looking into how we might reduce the size of our images and speed up container deployments.

Most of our services are in Go, and thanks to the fact that compiled Go binaries are mostly-statically linked by default, it’s possible to create containers with very few files within. It’s surely possible to use these techniques to create tighter containers for other languages that need more runtime support, but for this post I’m only focusing on Go apps.

The old way

We built images in a very traditional way, using a base image built on top of Ubuntu with Go 1.4.2 installed. For my examples I’ll use something similar.

Here’s a Dockerfile:

FROM golang:1.4.2

RUN go get github.com/joeshaw/qotd

# Don't run network servers as root in Docker
USER nobody

CMD qotd

The golang:1.4.2 base image is built on top of Debian Jessie. Let’s build this bad boy and see how big it is.

$ docker build -t qotd .
Successfully built ae761b93e656

$ docker images qotd
qotd           latest      ae761b93e656      3 minutes ago     520.3 MB

Yikes. Half a gigabyte. Ok, what leads us to a container this size?

$ docker history qotd
IMAGE               CREATED BY                                      SIZE
ae761b93e656        /bin/sh -c #(nop) CMD ["/bin/sh" "-c" "qotd"]   0 B
b77d0ca3c501        /bin/sh -c #(nop) USER [nobody]                 0 B
a4b2a01d3e42        /bin/sh -c go get github.com/joeshaw/qotd       3.021 MB
c24802660bfa        /bin/sh -c #(nop) EXPOSE 1717/tcp               0 B
124e2127157f        /bin/sh -c #(nop) COPY file:56695ddefe9b0bd83   2.481 kB
69c177f0c117        /bin/sh -c #(nop) WORKDIR /go                   0 B
141b650c3281        /bin/sh -c #(nop) ENV PATH=/go/bin:/usr/src/g   0 B
8fb45e60e014        /bin/sh -c #(nop) ENV GOPATH=/go                0 B
63e9d2557cd7        /bin/sh -c mkdir -p /go/src /go/bin && chmod    0 B
b279b4aae826        /bin/sh -c #(nop) ENV PATH=/usr/src/go/bin:/u   0 B
d86979befb72        /bin/sh -c cd /usr/src/go/src && ./make.bash    97.4 MB
8ddc08289e1a        /bin/sh -c curl -sSL https://golang.org/dl/go   39.69 MB
8d38711ccc0d        /bin/sh -c #(nop) ENV GOLANG_VERSION=1.4.2      0 B
0f5121dd42a6        /bin/sh -c apt-get update && apt-get install    88.32 MB
607e965985c1        /bin/sh -c apt-get update && apt-get install    122.3 MB
1ff9f26f09fb        /bin/sh -c apt-get update && apt-get install    44.36 MB
9a61b6b1315e        /bin/sh -c #(nop) CMD ["/bin/bash"]             0 B
902b87aaaec9        /bin/sh -c #(nop) ADD file:e1dd18493a216ecd0c   125.2 MB

This is not a very lean container, with a lot of intermediate layers. To reduce the size of our containers, we did two additional steps:

(1) Every repo has a clean.sh script that is run inside the container after it is initially built. Here’s part of a

In a few hours the voting period for the next OpenStack Summit in Tokyo ends at 30. July, 11:59 PDT (31. July  6:59 UTC / 08:59 CEST).

Here a some interesting talks regarding Ceph you may would like to vote for (this list is not intended to be exhaustive):

30 July, 2015


LibreOffice 5.0 is expected soon in openSUSE Tumbleweed.

openSUSE’s rolling release Tumbleweed posted six snapshot updates this past week following the release of Leap’s first milestone.

The only day a snapshot was not posted was on Sunday, so quite a few updates made it onto users’ computers this past week.

Tumbleweed followed the release of the Leap milestone by updating the Linux Kernel to 4.1.3, which is the latest stable version. Oracle’s VirtualBox was updated to 5.0.0 from 4.3.28.

There was an update to the YaST spec for the 20150727 snapshot. GNOME had some minor updates that fixed a crash when reading invalid backlight values. KDE had some minor updates as well and some Plasma 5 addons.

AppArmor updated to 2.10 and received several development updates. The cache time stamp issue was fixed and several memory leak/crashes bugs were fixed for libapparmor.

There was a fix for systemd on Xen and python-sip updated.

LibreOffice 5.0 is approaching soon, according to its roadmap and should make it into Tumbleweed soon, while perl and xfce still need to be fixed before being released in a Tumbleweed snapshot.

28 July, 2015


For a short while, the Plasma Mobile forums were hosted outside of the official KDE Forums. In our quest to put everything under KDE governance, we have now moved the Plasma Mobile forums under KDE’s forums as well. Enjoy the new Plasma Mobile forums.

As a few users had already registered on the “old” forums, this means a smallish interruption as the threads could not be quickly moved to the new forums. We’re sorry for that inconvenience and would like to ask everyone to move to the new forums.

Thanks for your patience and sorry again for the hassle involved with that.

27 July, 2015

  • An inlaid GNOME logo, part 5

    Esta parte en español

    (Parts 1, 2, 3, 4)

    This is the shield right after it came out of the clamps. I had to pry it a bit from the clamped board with a spatula.

    Unclamped shield

    I cut out the shield shape by first sawing the straight sections, and then using a coping saw on the curved ones.

    Sawing straight edges

    Coping the curves

    All cut out

    I used a spokeshave to smooth the convex curves on the sides.

    Spokeshave for the curves

    The curves on the top are concave, and the spokeshave doesn't fit. I used a drawknife for those.

    Drawknife for the tight curves

    This gives us crisp corners and smooth curves throughout.

    Crisp corner

    On to planing the face flat! I sharpened my plane irons...

    Sharp plane iron

    ... and planed carefully. The cutoff from the top of the shield was useful as a support against the planing stop.

    Starting to plane the shield

    The foot shows through once the paper is planed away...

    Foot shows through the paper

    Check out the dual-color shavings!

    Dual-color shavings

    And we have a flat board once again. That smudge at the top of the sole is from my dirty fingers — dirty with metal dust from the sharpening step — so I washed my hands and planed the dirt away.

    Flat shield

    The mess after planing

    But it is too flat. So, I scribed a line all around the front and edges, and used the spokeshave and drawknife again to get a 45-degree bevel around the shield. The line is a bit hard to see in the first photo, but it's there.

    Scribed lines for bevel

    Beveling with a spokeshave

    Final bevel around the shield

    Here is the first coat of boiled linseed oil after sanding. When it dries I'll add some coats of shellac.

    First coat of linseed oil

25 July, 2015


At Blue Systems, we have been working on making Plasma shine for a while now. We’ve contributed much to the KDE Frameworks 5 and Plasma 5 projects, and helping with the transition to Qt5. Much of this work has been involving porting, stabilizing and improving existing code. With the new architecture in place, we’ve also worked on new topics, such as Plasma on non-desktop (and non-laptop) devices.

Plasma Mobile on an LG Nexus 5

Plasma Mobile on an LG Nexus 5

This work is coming to fruition now, and we feel that it has reached a point where we want to present it to a more general public. Today we unveil the Plasma Mobile project. Its aim is to offer a Free (as in Freedom), user-friendly, privacy-enabling and customizable platform for mobile devices. Plasma Mobile runs on top of Linux, uses Wayland for rendering graphics and offers a device-specific user interface using the KDE Frameworks and Plasma library and tooling. Plasma Mobile is under development, and not usable by end users now. Missing functionality and stability problems are normal in this phase of development and will be ironed out. Plasma Mobile provides basic functionality and an opportunity for developers to jump in now and shape the mobile platform, and how we use our mobile devices.

As is necessary with development on mobile devices, we’ve not stopped at providing source code that “can be made to work”, rather we’re doing a reference implementation of Plasma Mobile that can be used by those who would like to build a product based on Plasma Mobile on their platform. The reference implementation is based on Kubuntu, which we chose because there is a lot of expertise in our team with Kubuntu, and at Blue Systems we already have continuous builds and package creation in place. Much of the last year was spent getting the hardware to work, and getting our code to boot on a phone. With pride, we’re now announcing the general availability of this project for public contribution. In order to make clear that this is not an in-house project, we have moved the project assets to KDE infrastructure and put under Free software licenses (GPL and LGPL according to KDE’s licensing policies). Plasma Mobile’s reference implementation runs on an LG Nexus 5 smartphone, using an Android kernel, Ubuntu user space and provides an integrated Plasma user interface on top of all that. We also have an x86 version, running on an ExoPC, which can be useful for testing.

Plasma Mobile uses the Wayland display protocol to render the user interface. KWin, Plasma’s window manager and compositor plays a central role. For apps that do not support Wayland, we provide X11 support through the XWayland compatibility layer.

Plasma Mobile is a truly converged user interface. More than 90% of its code is shared with the traditional desktop user interface. The mobile workspace is implemented in the form of a shell or workspace suitable for mobile phones. The shell provides an app

24 July, 2015

  • An inlaid GNOME logo, part 4

    Esta parte en español

    (Parts 1, 2, 3)

    In the last part, I glued the paper templates for the shield and foot onto the wood. Now comes the part that is hardest for me: excavating the foot pieces in the dark wood so the light-colored ones can fit in them. I'm not a woodcarver, just a lousy joiner, and I have a lot to learn!

    The first part is not a problem: use a coping saw to separate the foot pieces.

    Foot pieces, cut out

    Next, for each part of the foot, I started with a V-gouge to make an outline that will work as a stop cut. Inside this shape, I used a curved gouge to excavate the wood. The stop cut prevents the gouge from going past the outline. Finally, I used the curved gouge to get as close as possible to the final line.

    V channel as a stop cut Excavating inside the channel

    Each wall needs squaring up, as the curved gouge leaves a chamfered edge instead of a crisp angle. I used the V-gouge around each shape so that one of the edges of the gouge remains vertical. I cleaned up the bottom with a combination of chisels and a router plane where it fits.

    Square walls

    Then, each piece needs to be adjusted to fit. I sanded the edges to have a nice curve instead of the raw edges from the coping saw. Then I put a back bevel on each piece, using a carving knife, so the back part will be narrower than the front. I had to also tweak the walls in the dark wood in some places.

    Unadjusted piece Sanding the curves Beveling the edges

    After a lot of fiddling, the pieces fit — with a little persuasion — and they can be glued. When the glue dries I'll plane them down so that they are level to the dark wood.

    Gluing the pieces Glued pieces

    Finally, I clamped everything against another board to distribute the pressure. Let's hope for the best.



My "Generalised Penrose pattern generator" van be seen at http://gppg.rogerwhittaker.org.uk/.

The code is available at http://code.rogerwhittaker.org.uk/gppg/.

You can build a command line executable gppg which will generate svg, pdf and ps formats, as well as a text file of co-ordinates for further processing.

Sample PDF output.


Leap1The newest openSUSE release Leap 42.1, which is based on core SUSE Linux Enterprise source code, has just released its first development milestone.

Milestone is being used to avoid the term Alpha because the milestone is able to be deployed without the additional future items and subsystems that will become available when Leap is officially released.

“This is where the excitement for Leap begins,” said Richard Brown, chairman of the openSUSE board. “The opportunity for topping this SLE core with the things you want in a long-term release really makes this attractive and I see people wanting to get involved with this next chapter of openSUSE.”

As Tumbleweed keeps rolling with the latest features and subsystems, Leap will fill the gap between the longevity of a SLE core and the innovation related to Tumbleweed, he said.

The quality and environmental care Tumbleweed provides with its development model should quickly translate to a top-quality distribution for Linux users, sysadmins and developers.

The milestone was moving forward with a 3 series Linux Kernel, but the Long-Term Support 4.1 Kernel, which enhances EXT4 file-system encryption and power improvements for both ARM and x86 devices, was needed for the release of the first milestone. The new Kernel was practically flawless when added to the next build, which had some minor errors. 

Updated drivers and more general improvements are expected in the second milestone.

GNOME 3.16, KDE Plasma 5 and Firefox 38 are projected for the release of Leap in November at SUSECon in Amsterdam.

Stephan “Coolo” Kulow, the release manager, provided an update on the packages for Leap. Since the announcement four weeks ago, the sources leaped from 2,000 to about 5,450 source, which about 1,150 are from SLE 12. The binary packages for the milestone currently stand at about 56,500 compared to 13.2’s 71,750 for the same measure.

If you want to see what the future of Leap will be, try the milestone and contribute to making Leap an LTS-rock release, which will have enduring updates and maintenance commitments by the community and SUSE. Part of that commitment can be seen through the recent job announcement of a Release Engineer for openSUSE.

There is currently no plans for live CDs, but expect other media formats to be added later.

For more information, email ddemaio@suse.com.


In case you missed the openSUSE images for Docker got suddenly smaller.

During the last week I worked together with Marcus Schäfer (the author of KIWI) to reduce their size.

We fixed some obvious mistakes (like avoiding to install man pages and documentation), but we also removed some useless packages.

These are the results of our work:

  • openSUSE 13.2 image: from 254M down to 82M
  • openSUSE Tumbleweed image: from 267M down to 87M

Just to make some comparisons, the Ubuntu image is around 188M while the Fedora one is about 186M. We cannot obviously compete with images like busybox or Alpine, but the situation definitely improved!

Needless to say, the new images are already on the DockerHub.

Have fun!

As mentioned before: then next OpenStack Summit will take place in Tokyo, Japan from 27-30 October 2015. The "Call for Speakers" ended some days ago and now the vote for presentation period started and will end 30. July, 11:59 PDT (31. July  6:59 UTC / 08:59 CEST). 

I've submitted for Toky two talks:

  • "99.999% available OpenStack Cloud - A builder’s guide" - This talk will provide insight in how to build a highly available OpenStack cloud together with Ceph in a classical highly available data centers with e.g. two fire compartments and redundant infrastructure. The focus will be on failure scenarios and their impact on OpenStack and Ceph components, quorum devices you have to consider, strategies on how to ensure quorums and keep the cloud running, pitfalls and solutions.
  • "NFV orchestration powered by OpenStack" - This talk would be about existing OpenStack orchestration projects and how they can be used to manage a NFV Cloud, how they integrate, what is missing, and how to map these projects on the ETSI-NFV model.
You can vote, if you are interested to see my talks [1][2] at the summit, every vote is highly welcome. You can find a full abstract at the voting page.

My colleague Ralf Trezeciak submitted also a NFV related talk. He will appreciate your votes for sure, if you are interested in the presentation.

There is a long list of interesting Ceph related talks, simply use the search field on the voting page. I may provide a list in an additional post later.

23 July, 2015


TumbleweedLeap’s milestone is inching ever so close to being released. The milestone is very close to being released, but it won’t come out today.

The timeline for the development of these milestones is never concrete, and while the first milestone was looking close to being released today, there was a decision to jump from a 3-series Linux kernel that was planned for developing the first milestone to a 4.1 kernel that is planned for the official Leap release.

People interested in the build and how soon it will be released can track the progress of Leap’s first milestone at https://openqa.opensuse.org/group_overview/7. When everything is green, the Leap milestone is a go. Anyone wanting to help with the following in Leap is more than welcome:

xfce – missing package to complete the pattern (fix submitted)
zdup-13.2 – missing package (bit complex)
sysauth – text needs to be reworked
rescue system – seems the CD does not boot
lxde – does not do autologin (should be using lxdm instead of xdm)

While Leap has been progressing extensively throughout the day, Tumbleweed needed some items debugged, and a snapshot was released at 1600 UTC.

There were some fixes for NFS. Few packages were added in snapshot 20150722  but several were removed. Mozilla Firefox updated to its next major release 39.0, which  enables safe browsing malware detection. Apache2 added a patch. A bash patch for a perl 5.22 fix was added. GNOME had a version update to 3.16.3 and the default kernel updated to 4.1.2.

22 July, 2015

Jos Poortvliet: Link

12:35 UTCmember

The Washington Post again demanded that tech companies create special 'golden keys' for authorities to keep and use for access to private communication. Protected by a warrant, of course. For the benefit of this discussion (which is really getting old), I just put together the reasons why it is a dumb idea.

First of all. It is a pure fantasy, an entirely unrealistic wish of the Pink Unicorn variety that it is possible to create a key which only the US goverment (and other sanctioned agencies) would have access to. It is technically not possible. Ever. I explained that before so let me now just quote Bruce Schneier:
"We have one infrastructure. We can't choose a world where the US gets to spy and the Chinese don't. We get to choose a world where everyone can spy, or a world where no one can spy. We can be secure from everyone, or vulnerable to anyone. And I'm tired of us choosing surveillance over security."
And let's be clear - we've been over this, the Clinton government wanted a similar thing with the Clipper chip and as security researcher Matthew Green pointed out:
Clipper is only one of several examples of 'government access' mechanisms that failed and blew back on us catastrophically.
A second issue with the proposal is that it doesn't do anything. Just like all the spying programs that came before in this and previous decade. Here's Bruce talking about that, here the Guardian, the Newyorker, Wired and Washingtonsblog. Whatever these spy programs do - from spying on German Chancellor Merkel to US congress (that's the Washington Post itself!) to the United Nations and Unicef - the government spying programs certainly don't target or are helpful against terrorism or pedophilia or any of the other stuff they are claimed to be for. And neither will these 'golden keys' be used to catch terrorists.

Last, and this should already be blindingly clear if you see the list above of some of the targets of surveillance, you should doubt if the government agencies will abide by the rules - they haven't in the past.

I also want to point out that the very reason we're having this conversation in the first place is because we're idiots.


t-shirt-motiv1A job announcement for a Release Engineer for openSUSE was published today and it offers a unique challenge, which sounds pretty cool. The optional bonus challenges to be included in the candidates’ application are:

1. Being a regular contributor to a community distribution? Point us to your work!

2. Using a programming language of your choice, write a small program that extracts all CVE identifiers from a given set of RPMs, and creates a sort index mapping CVEs to packages.

Bonus points if you can do it in 10 lines of perl. Extra bonus points if our perl experts scratch their head and ask “how does he do that?!” :)

3. Find out what changed in the minimal text installation between 13.2 and current TW and try to find the reasoning behind the changes.

Providing answers to the challenge really give people applying for the position an opportunity to stand out among other candidates.

There are many smart people in the openSUSE Community and taking part in the openSUSE Project every day constantly reminds me of how many brilliant people I work with here in Germany and elsewhere.

If you are going to apply for this position, be sure to bring your “A Game” because to make our perl experts scratch their head is quite the challenge.

20 July, 2015

Michael Meeks: 2015-07-20 Monday.

14:21 UTCmember

  • Mail chew, 1:1 with Kendy, Niall, lunch with H. team call. Mail chew, booked LibreOffice conference travel - thank God for RyanAir direct Stansted to Arhus; wow.

19 July, 2015

Michael Meeks: 2015-07-19 Sunday.

21:00 UTCmember

  • Off to NCC, tried to help the older kidlets understand Good Shepherds; home for a pizza lunch, got singing our quartet surprisingly well in harmony. Tried to replicate that with other music - not so easy.
  • Advanced slugging, read books, lazed, Yes Minister in the evening. Bed.

18 July, 2015

Michael Meeks: 2015-07-18 Saturday.

21:00 UTCmember

  • Drove to Bruce & Anne's for a combined 80th and 45th birthday party celebration; a lovely time had by all, fine food, weather, wider family company etc. Babes played a quartet or two to celebrate. Chewed mail on the way home in the car, undid some data-loss, filed an easy-hack, etc.

17 July, 2015

Michael Meeks: 2015-07-17 Friday.

21:00 UTCmember

  • Up early; train into Cambridge not running, struck by lightning overnight or somesuch. Drove 5x stranded others into Cambridge. Battled with awful Windows machines & hardware.
  • Meeting with Philippe & Tracie; quick lunch, back to battling hardware. Unbelievably broken Windows 7 - blue-screen and auto-re-booting with a totally generic crash-dump despite a full Acer BIOS & Intel driver upgrade, endless disk manager fiddling etc.. Attempted to install Windows 8 - after struggling to disable the horrendous anti-Linux 'secure-boot' foo - then external USB CD drive refused to play with the BIOS; irritating. Attempted to debug other thermal issues fruitlessly.
  • Home via picking up kids, relaxed watched Yes Minister with them; bit more hackery before bed.


Adding more to the Raspberry Pi Having already basically created a thermostat using a Raspberry Pi and a temperature monitor in conjunction with the WiFi power socket I was wondering what functionality I could add. Having looked around for a bit I found that there is a camera module available which can pick up infra-red […]


Running Unfortunately, it’s more running without heart rate monitoring earphones, as the fifth pair have now failed. I make that just about 5 pairs failed inside 5 months. I am not going to warranty replace these ones – there is quite clearly a flaw and I don’t really see the point in continuing to trek […]

Jonathan Ervine: Loops

06:51 UTC


Running in circles Another run without earphones was completed last night – I’ve reverted to using a Polar chest strap hear rate monitor whilst the Jabras are in their non-working state. Relatively faster and slow interval running last night – at over 30C and high humidity it’s not much fun. Jabra have offered to check […]


TV Struggles Watching live sport in Hong Kong can always be a bit of a challenge. There’s generally two providers of many things pay TV, and sometimes it feels like it’s all a bit of a stitch up. When I first arrived in Hong Kong (8+ years ago!) I signed up for nowTV with the […]

16 July, 2015

Michael Meeks: 2015-07-16 Thursday.

21:00 UTCmember

  • Mail chew, ESC call, Advisory Board call, worked on financials, misc. ranking bits.


TumbleweedSince our last update on news.opensuse.org about Tumbleweed, a lot has happened. The rolling release now uses GCC 5 for the compiler. There was a large chunk of bugfixes and powerpc backports. The list for the July 2 snapshot was lengthy and quite a few packages were removed from that snapshot. Apparmor and many libraries a had extensive work done, but the real story about that snapshot is how GCC 5 was tested extensively in openQA and before being released as a Tumbleweed snapshot.

“Better tested/failed in openQA than tested/failed on your own machine, right?” wrote Dominique Leuenberger, the Factory master.

This proves the environmental care and trust people have with using Tumbleweed.

The next big thing coming in Tumbleweed will be Perl updates.

The July 11 snapshot focused primarily on KDE Plasma updating to 5.3.2 and providing bugfixes.

The last Tumbleweed snapshot on July 13 had minimal updates, but there is a reason. Why? Leap!

Leap’s milestone is being tested in openQA and receiving attention. People involved within Factory may want to check and submit the packages, for example xfce.

Polishing patterns will advance the release of the Leap milestone and some incomplete packages need attention.

The snapshot released 15 minutes ago just updated the Linux Kernel from 4.0.5 to 4.1.1.

Older blog entries ->