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 May, 2016


Tumbleweed-blackPlans to update to GCC 6

After an entire full rebuild last week, openSUSE Tumbleweed is shifting its focus to another area.

Tumbleweed is planning to switch the compiler to GCC 6, and if all goes well, according to Dominique Leuenberger, it might be available in a few weeks, but will certainly trigger another full rebuild.

For TW users waiting for Qt 5.6, they will have to wait a little longer due to a bug that is holding up its release.

Less than an hour ago, snapshot 20160503 was released and it updates Mesa to version 11.2.1, virtualbox to 5.0.18, snapper to 0.3.2) and perl-Bootloader to 0.912.

Perhaps a little more exciting was the 20160430 snapshot, which had an enormous amount of updates. Updated versions of libzypp, libvirt, the Linux Kernel, sssd and many others were made available in this snapshot. Gstreamer’s newest stable and tested version in Tumbleweed is 1.8.0. Libreoffice updated to version Wireshark 2.0.3 has fixes for some crash issues and gettext-runtime updated to version 0.19.7.

After a recent YaST sprint, further developments continued as autoyast2 updated to version 3.1.125. Kiwi updated to 7.03.67 and apparmor updated to 2.10.1. The only major version update was to cpupower, which is now at 4.6 from 3.19.

Tumbleweed snapshot 20160502 updated kernel-firmware to 20160421, which provided an update firmware file for Intel Bluetooth 8265. Wine was updated twice during the past week and is now at version 1.9.9. The perl-Image-ExifTool, which had the most changes in the snapshot, updated to 10.1 5.

GGC 5 was updated in Tumbleweed less than a year ago.

03 May, 2016

Coming Thursday I'll be talking and workshopping at the Open Tech Summit about getting your ownCloud up and running, either on a laptop, desktop or server or on a Pi(like) device like a Raspberry or Banana Pi. I will bring a few devices to play with, it will be fun!

If you'd like to join, there's a number of free tickets available. Go to this website to register and use the code WELOVEOWNCLOUD.

See you there!

02 May, 2016


The wait is over, the report of the latest Scrum sprint of the YaST Team is here! In the previous post we promised that after this sprint we would have much more to show… and now we do. This sprint was quite productive, so let’s go straight to the most interesting bits.

More improvements in the self-update

The YaST self-update feature mentioned in the two previous blog posts (sprint 16 and sprint 17) has also received a couple of improvements.

At this gist (with screenshots) you can see some of the fixes done when going back and forward in the work-flow after an installer self-update.

But even more important are the improvements done in AutoYaST to properly handle the new feature. If you want to use your own self-update repository you have to specify it on the boot command line. This is easy in a single installation, but if you want to install many machines using AutoYaST then writing the possibly long URL at each installation again sounds annoying.

In this sprint we improved handling of the custom update URL so that it can be read from the AutoYaST XML profile. Now you need to write the custom URL only once into the profile and it will be used automatically in every AutoYaST installation.

There is not much to show in the UI, the log proves that the self update was really loaded.

AutoYaST self-update

You can find more details about specifying the URL in the profile and evaluating the self-update repository URL at the documentation.

Goodbye perl-Bootloader

For quite some time, we have had the plan to stop using Perl-Bootloader as library for yast2-Bootloader and finally we managed to make it happen. There were many reasons for this change.

From the user point of view, the most visible reasons were speed and size. Getting rid of Perl-Bootloader means that we not longer perform hardware probing twice (one for Perl-Bootloader and another one for grub2-config), making kernel updates faster. In addition, we are not only simplifying and reducing the size of yast2-bootloader itself. Dropping the Perl libraries and other associated dependencies, makes possible to have a smaller minimal system, something quite relevant in various environments and scenarios.

From the developer point of view, the main reason was to unify the used programming languages and also reuse existing solution for file reading and parsing. Now yast2-bootloader uses an Augeas file parser and serializer, which does not only allow us to have less code to maintain, but also offers smarter editing and better handling of the comments in the configuration files.

As nice side effects, this change also leaded to the removal of a lot of work-arounds, the simplification of the installation work-flow for bootloader and a very visible improvement in the source code quality. In addition, we improved the test coverage of the whole module to make sure we didn’t break things too much. But all those would be bold statements if we wouldn’t have some geeky numbers to prove


oscfinalThe first round of proposals for the openSUSE Conference have been accepted and people who submitted a call for papers should log-in to events.opensuse.org and check to see if their talk has been accepted as part of the first round of proposals.

For proposals that have been accepted, users should confirm their proposal as soon as possible and also register for the conference if they had not done so already.

About 20 proposals have been confirmed, but there are about 45 proposals from the first round proposals that need to be confirmed.

There will be a second round of accepted proposals announced next week.

01 May, 2016


A new version of Danbooru Client is now available!

What is Danbooru Client?

Danbooru Client is an application to access Danbooru-based image boards (Wikipedia definition).

It offers a convenient, KF5 and Qt5-based GUI coupled with a QML image view to browse, view, and download images hosted in two of the most famous Danbooru boards (konachan.com and yande.re).

Highglights of the new version

  • Support for width / height based filtering: now you can exclude posts that are below a specific width or height (or both)
  • New dependency: KTextWidgets

Coming up next

Sooner or later I’ll get to finish the multiple API support, but given that there’s close to no interest for these programs (people are happy to use a browser) and that I work on this very irregularly (every 6-7 months at best), there’s no ETA at all. It might be done this year, perhaps the next.

Release details

Currently, there is only a source tarball. For security, I have signed it with my public GPG key (A29D259B) and I have also provided a SHA-512 hash of the release.

30 April, 2016

Michael Meeks: 2016-04-30 Saturday.

13:27 UTCmember

  • Breakfast and out to the hack-fest; had some fun helping people with tasks, code reading, etc. Spent some time unwinding why LibreOffice wouldn't compile in tr_TR.UTF-8 locale, a rather fun bug. Interestingly toupper('i') != 'I' in a tr_TR locale, cf. easy hack.

29 April, 2016

Michael Meeks: 2016-04-29 Friday.

21:00 UTCmember

  • Fine breakfast, a day of training together with the great Turkish student team - tiring but worthwhile - still trying to put a dozen new names to new faces.
  • Built a new talk capturing at least my thinking on how to tackle non-trivial problems; sucking eggs for beginners:
    Solving arbitrary problems

    And also updated some older slides to the recent code-base.
    LibreOffice code structure overview

    LibreOffice core classes

  • Back to relax in the evening with some students.


Tumbleweed-blackThere has not been a new snapshot for openSUSE Tumbleweed for the past week, and it has been a couple weeks since the last time it was discussed on news.opensuse.org.

A new snapshot of Tumbleweed arrived today and the reason for not having one the past week is that the entire rolling release distribution was rebuilt on the Open Build Service and thoroughly tested by openQA.

Snapshot 20160422 updated glibc to version 2.23 and libvirt to 1.3.3. The libraries provide new compatibility and remove some obsolete functions. Several patches were removed from glibc and libvirt. Libvirt’s update also improved support for ppc64.

GCC 5 upgraded to version 5.3.1+r234891 and kernel-firmware updated to 20160412.

Php7 has been added and is available in the the repositories.

Other updates of interest are to openssl with new patches from SUSE Linux Enterprise 12 and cmake 3.5.2. YaST had several updates with yast2 upgrading to 3.1.185, yast2-vm upgrading to 3.1.26, and yast2-bootloader upgrading to 3.1.176 among others YaST updates.

Tumbleweed users can expect Qt 5.6 to make it in a snapshot within the next few weeks and will more than likely be available after the next YaST sprint.

28 April, 2016

Michael Meeks: 2016-04-28 Thursday.

21:00 UTCmember

  • Early up; set off for Turkey; the train ticket to LHR costing almost as much as the flight - hmm; if only one could fly everywhere. Poked at code and mail, and slides on the train.
  • Met an interesting chap - James McDermott on the plane; doing market data development.
  • Met up with Gokhan and Muhammet and out for dinner together - picked up Markus, to the hotel; baggage scanned; checkin; up for a pint, and back to the room - worked until very late on slides.


Leap-greenThe openSUSE Board announced today a call to action for a Community Release Team to assist with tasks associated to the development of the next Leap version 42.2.

The announcement was made in an email to the project’s development mailing list opensuse-factory (at) opensuse.org.

“In the past, these tasks were… distributed among the SUSE employed openSUSE team, which tried to incorporate community and in the end made sure that everything gets done,” wrote Tomáš Chvátal, a newly elected board member.

Contributors can help Leap’s new release manager Ludwig Nussel with a variety of tasks associated with the development of 42.2, but the opportunities for contributing are more than just development.

“We would like the community to be directly responsible for ensuring these tasks get carried out,” Chvátal wrote. “To accomplish this we intend to create a full team of people taking care about what needs to be done for the release. We expect the people in this Community Release Team to be the ones responsible for the tasks in their respective areas of responsibility.”

The tasks are split into several areas like marketing, design, infrastructure, documentation, translations and quality assurance.

Tasks for marketing include creating and following a marketing plan and taking care of social media among other things. Design tasks include making sure the desktops are consistently branded and the the look and feel is consistent. Infrastructure tasks include making sure critical infrastructure works.

The documentation tasks include updating content on the wiki and ensuring release notes are updated. Translations for 42.2 will be needed and QA tasks include creating a test plan for milestones, monitoring bugzilla and escalating important regressions to the release manager.

People interested in joining the Community Release Team should contact the board and Nussel.

A link to the action items from the last release can be found at http://tinyurl.com/grg5szf and volunteers are welcomed to expand the tasks.

Michal Čihař: Weblate 2.6

16:00 UTC


Going back to faster release cycle, Weblate 2.6 has been just released. There is improved support for Python 3 or brand new HTTP REST API.

Full list of changes for 2.6:

  • Fixed validation of subprojects with language filter.
  • Improved support for XLIFF files.
  • Fixed machine translation for non English sources.
  • Added REST API.
  • Django 1.10 compatibility.
  • Added categories to whiteboard messages.

If you are upgrading from older version, please follow our upgrading instructions.

You can find more information about Weblate on https://weblate.org, the code is hosted on Github. If you are curious how it looks, you can try it out on demo server. You can login there with demo account using demo password or register your own user. Weblate is also being used https://hosted.weblate.org/ as official translating service for phpMyAdmin, OsmAnd, Aptoide, FreedomBox, Weblate itself and many other projects.

Should you be looking for hosting of translations for your project, I'm happy to host them for you or help with setting it up on your infrastructure.

Further development of Weblate would not be possible without people providing donations, thanks to everybody who have helped so far! The roadmap for next release is just being prepared, you can influence this by expressing support for individual issues either by comments or by providing bounty for them.

Filed under: English phpMyAdmin SUSE Weblate | 0 comments

27 April, 2016

Michael Meeks: 2016-04-27 Wednesday.

21:00 UTCmember

  • Up early; mail chew; research, team call; admin; customer call.

I want to start a FOSS project. FOSS Licenses are a grey area. I am trying to seek some public opinion here, to choose a license and a Contributor License Agreement (CLA). The project details are:

  • The project is a database (say, like mongodb, Cassandra etc.). It will have a server piece that users can deploy for storing data. Though it is a hobby personal project as of now, I may offer the database as a paid, hosted solution in future.
  • There are some client libraries too, for providing the ability to connect to the above mentioned server, from a variety of programming languages.
  • The client libraries will all be in Creative Commons Zero License / Public Domain. Basically anyone can do anything with the client library sources. The server license is where I have difficulty choosing.
  • Anyone who contributes any source to the server software should re-assign their copyrights and ownership of the code, to me. By "me", I refer to myself as an individual and not any company.  I should reserve the right to transfer the ownership in future to anyone / any company. I may relicense the software in future to public domain or sell it off to a company like: SUSE, Red Hat, Canonical, (or) a company like: Amazon, Google, Microsoft etc.
  • Anyone who contributes code to my project, should make sure that [s]he has all the necessary copyrights to submit the changes to me and to re-assign the copyrights to me. I should not be liable for someone's contribution. If a contributor's employer has a sudden evil plan and want to take over my personal project to court (unlikely to happen, nevertheless), it should not be possible
  • I or the users of the software, should not be sued for any patent infringement cases, for code that is contributed by someone else. If a patent holder wants to sue me for a code that I have written in the software, that is fine. I will find a way around.
  • Anyone should be free to take the server sources, modify it and deploy it in his/her own hardware/cloud, for their personal and/or commercial needs, without paying me or any of the contributors any money/royalty/acknowledgement.
  • If they choose to either sell the server software or host it and sell it as a service, (basically commercial reasons) they must be enforced to open source their changes in public domain, unless they have a written permission from me, at my discretion. For instance, if coursera wants to use my database source, after modifications, it is fine with me; but I will not want, say Oracle to modify my software and sell the modified software / service, without opensourcing their changes. If someone is hosting and selling a service of my software, with modified sources, there is no easy way for me to prove their modification, but I would still like to have that legal protection.

The best license model that I could come up for


For most documents about kernel module building just need a Makefile like this,

HELLO = helloworld

obj-m += $(HELLO).o

$(HELLO)-objs := hello.o world.o

KERNEL_SOURCE := /lib/modules/`uname -r`/build/


        $(MAKE) -C $(KERNEL_SOURCE) M=`pwd` modules


        $(MAKE) -C $(KERNEL_SOURCE) M=`pwd` clean

        $(RM) Module.markers modules.order

Then type “make” will make everything set. (Of cause source of current kernel is ready at /lib/modules/`uname -r`/build).

But yesterday when I tried to build a kernel module for Linux-4.6-rc5 (openSUSE vanilla) kernel, I observed an error never saw before.

helloworld> make

make -C /lib/modules/`uname -r`/build/ M=`pwd` modules

make[1]: Entering directory ‘/home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla’

make[2]: *** No rule to make target ‘/home/colyli/source/tmp/helloworld/hello.o’, needed by ‘/home/colyli/source/tmp/helloworld/helloworld.o’.  Stop.

Makefile:1428: recipe for target ‘_module_/home/colyli/source/tmp/helloworld’ failed

make[1]: *** [_module_/home/colyli/source/tmp/helloworld] Error 2

make[1]: Leaving directory ‘/home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla’

Makefile:10: recipe for target ‘default’ failed

make: *** [default] Error 2

It seems nothing missed, but the error message was there.  Today a friend (Chang Liu from Memblaze) tells me maybe I should check the output of “make modules_prepare” in the kernel source directory, here is my result,

linux-4.6-rc5-vanilla> make modules_prepare

Makefile:1016: “Cannot use CONFIG_STACK_VALIDATION, please install libelf-dev or elfutils-libelf-devel”

This is an informative clue, so I install libelf-dev package and re-run “make modules_prepare”,

linux-4.6-rc5-vanilla> make modules_prepare

  CHK     include/config/kernel.release

  CHK     include/generated/uapi/linux/version.h

  CHK     include/generated/utsrelease.h

  CHK     include/generated/bounds.h

  CHK     include/generated/timeconst.h

  CHK     include/generated/asm-offsets.h

  CALL    scripts/checksyscalls.sh

  DESCEND  objtool

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/fixdep.o

  LD       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/fixdep-in.o

  LINK     /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/fixdep

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/exec-cmd.o

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/help.o

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/pager.o

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/parse-options.o

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/run-command.o

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/sigchain.o

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/subcmd-config.o

  LD       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/libsubcmd-in.o

  AR       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/libsubcmd.a

  GEN      /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/arch/x86/insn/inat-tables.c

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/arch/x86/decode.o

  LD       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/arch/x86/objtool-in.o

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/builtin-check.o

  CC       /home/colyli/source/suse-kernel/patched/linux-4.6-rc5-vanilla/tools/objtool/elf

26 April, 2016

Michael Meeks: 2016-04-26 Tuesday.

21:00 UTCmember

  • Mail chew, interview, sales team call; poked at this and that. Plugged away at misc. labours.


This is a question raised quite quite often, the last time in a blogpost by Thomas, so I thought it is a good idea to give a slightly longer explanation (and also create an article to link to…).

There are basically three reasons for using XML as the default format for metainfo files:

1. XML is easily forward/backward compatible, while YAML is not

This is a matter of extending the AppStream metainfo files with new entries, or adapt existing entries to new needs.

Take this example XML line for defining an icon for an application:

<icon type="cached">foobar.png</icon>

and now the equivalent YAML:

  cached: foobar.png

Now consider we want to add a width and height property to the icons, because we started to allow more than one icon size. Easy for the XML:

<icon type="cached" width="128" height="128">foobar.png</icon>

This line of XML can be read correctly by both old parsers, which will just see the icon as before without reading the size information, and new parsers, which can make use of the additional information if they want. The change is both forward and backward compatible.

This looks differently with the YAML file. The “foobar.png” is a string-type, and parsers will expect a string as value for the cached key, while we would need a dictionary there to include the additional width/height information:

  cached: name: foobar.png
          width: 128
          height: 128

The change shown above will break existing parsers though. Of course, we could add a cached2 key, but that would require people to write two entries, to keep compatibility with older parsers:

  cached: foobar.png
  cached2: name: foobar.png
          width: 128
          height: 128

Less than ideal.

While there are ways to break compatibility in XML documents too, as well as ways to design YAML documents in a way which minimizes the risk of breaking compatibility later, keeping the format future-proof is far easier with XML compared to YAML (and sometimes simply not possible with YAML documents). This makes XML a good choice for this usecase, since we can not do transitions with thousands of independent upstream projects easily, and need to care about backwards compatibility.

2. Translating YAML is not much fun

A property of AppStream metainfo files is that they can be easily translated into multiple languages. For that, tools like intltool and itstool exist to aid with translating XML using Gettext files. This can be done at project build-time, keeping a clean, minimal XML file, or before, storing the translated strings directly in the XML document. Generally, YAML files can be translated too. Take the following example (shamelessly copied from Dolphin):

<summary>File Manager</summary>
<summary xml:lang="bs">Upravitelj datoteka</summary>
<summary xml:lang="cs">Správce souborů</summary>
<summary xml:lang="da">Filhåndtering</summary>

This would become something like this in YAML:

  C: File Manager
  bs: Upravitelj datoteka
  cs: Správce souborů
  da: Filhåndtering

Looks manageable, right? Now


Two weeks ago was the GNOME Software hackfest in London, and I’ve been there! And I just now found the time to blog about it, but better do it late than never 😉 .

Arriving in London and finding the Red Hat offices

After being stuck in trains for the weekend, but fortunately arriving at the airport in time, I finally made it to London with quite some delay due to the slow bus transfer from Stansted Airport. After finding the hotel, the next issue was to get food and a place which accepted my credit card, which was surprisingly hard – in defence of London I must say though, that it was a Sunday, 7 p.m. and my card is somewhat special (in Canada, it managed to crash some card readers, so they needed a hard-reset). While searching for food, I also found the Red Hat offices where the hackfest was starting the next day by accident. My hotel, the office and the tower bridge were really close, which was awesome! I have been to London in 2008 the last time, and only for a day, so being that close to the city center was great. The hackfest didn’t leave any time to visit the city much, but by being close to the center, one could hardly avoid the “London experience” 😉 .

Cool people working on great stuff

towerbridge2016That’s basically the summary for the hackfest 😉 . It was awesome to meet with Richard Hughes again, since we haven’t seen each other in person since 2011, but work on lots of stuff together. This was especially important, since we managed to solve quite some disagreements we had over stuff – Richard even almost managed to make me give in to adding <kudos/> to the AppStream spec, something which I was pretty against supporting (it didn’t make it yet, but I am no longer against the idea of having that – the remaining issues are solvable).

Meeting Iain Lane again (after FOSDEM) was also very nice, and also seeing other people I’ve only worked with over IRC or bug reports (e.g. William, Kalev, …) was great. Also lots of “new” people were there, like guys from Endless, who build their low-budget computer for developing/emerging countries on top of GNOME and Linux technologies. It’s pretty cool stuff they do, you should check out their website! (they also build their distribution on top of Debian, which is even more awesome, and something I didn’t know before (because many Endless people I met before were associated with GNOME or Fedora, I kind of implicitly assumed the system was based on Fedora 😛 )).

The incarnation of GNOME Software used by endless looks pretty different from what the normal GNOME user sees, since it’s adjusted for a different audience and input method. But it looks great, and is a good example for how versatile GS already is! And for upstream GNOME, we’ve seen some pretty great mockups done by Endless too – I

25 April, 2016

Michael Meeks: 2016-04-25 Monday.

21:00 UTCmember

  • Admin, mail chew, connected with a customer, lunch. Team call, poked at tests, prodded some financials. Built ESC agenda. Dinner, J. out, read stories to lots of babies; finished a unit test I'd been working on.

Today the OpenStack Summit starts in Austin, TX. Sitting right now in the keynote hall with live music and wait for the keynotes to begin. This time my talk wasn't selected. Nevertheless I expect a great summit with numerous interesting sessions and locking forward to meet with other fellows and partners from the OpenStack and Ceph communities.


Google made an announcement April 22 that 1,206 students were selected for the Google Summer of Code and six of those students will be mentored through the openSUSE Project, which is one of 178 mentoring organizations in this year’s GSoC.

The six university students will spend their summer break writing code and learning about open source developments through six projects with the openSUSE Project while earning money through Google’s international program.

“I believe that one of the most important tasks for a Free Software hacker is to bring new people with new perspectives, backgrounds and fresh ideas into the community,” said Hendrik Vogelsang, who is one of the mentors for the openSUSE Project. “GSoC provides the perfect opportunity for a project like openSUSE to build new relationships with students from all over the world.”

Those new relationships and fresh ideas will develop within six projects for openSUSE, which are titled Alternatives YaST Module, Enhancing visitor experience of OSEM, Implementing Ticket payment feature for OSEM, Improve One-Click Installer, Improve the UI of Portus and Port Jangouts from AngularJS 1.4.

Students wrote more than 20 project proposals to participate with openSUSE as a mentoring organization. A list of available project that were available to students can be viewed at 101.opensuse.org.

The next phase of GSoC will be the Community Bonding phase and the students will begin working on the projects May 23. The students will have a mid-term evaluation between June 20 – 27 and will submit their code for evaluation between August 15 -23.

Google Summer of Code is open to post-secondary students, age 18 and older in most countries.

24 April, 2016

Michael Meeks: 2016-04-24 Sunday.

21:00 UTCmember

  • To church early for CRB checks; enjoyed Tony's great, final talk in The Story - chatted afterwards. Home for a passover-style meal with Martin, Mary-Anne & family, a lovely afternoon. Quartet practice, read stories to babes, bed - still feeling awful.

23 April, 2016



I recently learned about VulnHub, a site where you can download and attack some demo machines that others have shared. It is very useful if you are looking to learn about security or advance your existing skills. In this post I was targeting the LAMPSecurity: CTF6 machine. Setup is pretty simple, I downloaded the VM, converted it into qcow2 format and then fired it up with kvm.



To start off I wanted to see what ports and services are running so I decided to run a scan to see if I could get more information.

The first issue is that the machine uses a DHCP so I need to determine its ip address.

# nmap -sP

Starting Nmap 7.12 ( https://nmap.org ) at 2016-04-22 21:03 EDT
Nmap scan report for
Host is up (0.00011s latency).
MAC Address: 52:54:00:2E:EF:25 (QEMU virtual NIC)
Nmap scan report for
Host is up.
Nmap done: 256 IP addresses (2 hosts up) scanned in 6.38 seconds

Now I know the IP of the gateway is so the IP address of the target machine is Now that I know that I can perform a scan on the ports to see what is open.

# nmap -sS -sV
Nmap scan report for
Host is up (0.00013s latency).
Not shown: 991 closed ports
22/tcp   open  ssh      OpenSSH 4.3 (protocol 2.0)
80/tcp   open  http     Apache httpd 2.2.3 ((CentOS))
110/tcp  open  pop3     Dovecot pop3d
111/tcp  open  rpcbind  2 (RPC #100000)
143/tcp  open  imap     Dovecot imapd
443/tcp  open  ssl/http Apache httpd 2.2.3 ((CentOS))
993/tcp  open  ssl/imap Dovecot imapd
995/tcp  open  ssl/pop3 Dovecot pop3d
3306/tcp open  mysql    MySQL 5.0.45
MAC Address: 52:54:00:2E:EF:25 (QEMU virtual NIC)

The website seems to have Apache running so I decided to try scanning it with nikto to see if there are any interesting pages avaliable.

# nikto -h
- Nikto v2.1.6
+ Target IP:
+ Target Hostname:
+ Target Port:        80
+ Start Time:         2016-04-22 21:25:05 (GMT-4)
+ Server: Apache/2.2.3 (CentOS)
+ Cookie PHPSESSID created without the httponly flag
+ Retrieved x-powered-by header: PHP/5.2.6
+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-XSS-Protection header is not defined. This header can hint to the user agent to protect against some forms of XSS
+ The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type
+ Apache/2.2.3 appears to be outdated (current is at least Apache/2.4.12). Apache 2.0.65 (final release) and 2.2.29 

Michael Meeks: 2016-04-23 Saturday.

21:00 UTCmember

  • Starting to feel ill. H. out for a leadership course; slugged in the morning variously, lunch, out for a walk with the babes; home bit of hackery, cleaning up some code. Out for a drink, and meal with J. - an anniversary bash; lovely.

22 April, 2016

Michael Meeks: 2016-04-22 Friday.

21:00 UTCmember

  • Up early; poked at some mail & code. Breakfast, out for a run, back, my logical fix makes everything worse: nice. Lunch, team call, admin, customer call, chat with Tor. Admin. Worked lateish with Niall.


Dear Tumbleweed users and hackers,

Tumbleweed seems to have found its rhythm at around 4 snapshots per week. I will cover the snapshots 0414, 0415, 0416 and 0417. After that, it took unfortunately a bit of effort to get more stagings ready. This then lead now to the fact that the next snapshot (0422) will be rather large. I will mention more about this further down.

What were the 4 last snapshots about:

  • GNOME 3.20.1
  • Samba 4.4.2 (ensure to update using zypper dup!)
  • Many other bugfixes and updates

The next snapshot (20160422) will be rather large and quite some packages will have new release numbers. Glibc 2.23 finally found its way through staging, which was the perfect time to change OBS to do a full rebuild of the distribution, ensuring all packages are again built against each other. Further, we disabled the support script that “removed the .desktop file translations in favor of gettext based language overlays”. Even though this was an interesting feature, it lead to quite some issues in the past with the fast pace of Tumbleweed. Sometimes upstream shipped a .desktop file with correct translations, but we stripped those ‘in favor of our own’ (which often were based on older strings). No longer doing this means eliminating all kind of such issues. But it was another reason for full package rebuilds. In an attempt to minimize how often we trigger such large updates, we scheduled this intentionally together with the glibc update.

There are still a couple of things prepared in staging, most notably:

  • Qt 5.6 – The YaST issue / installer not having keyboard focus is still present
  • Linux Kernel 4.5.2
  • KDE Applications 16.04.0
  • GStreamer 1.8.0

Let’s all work on all those great additions and many more


This morning I could not launch SMPlayer as it would complain about a ‘relocation error’.

smplayer: relocation error: /usr/lib64/samba/libauthkrb5-samba4.so: symbol tevent_req_is_unix_error, version TEVENT_UTIL_0.0.1 not defined in file libtevent-util.so.0 with link time reference

It’s been quite a few days I did not use SMPlayer and somehow a recent update of Tumbleweed could have updated that Samba library. Yes, it comes from the samba-libs package.

ish@coffee-bar:~> rpm -qf /usr/lib64/samba/libauthkrb5-samba4.so

I ran the above command when writing this blog post, which was after a Samba update. Therefore I guess a previous version of the samba-libs was behind the apps-breaking incident. Yup! SMPlayer would work just fine after the update. Reading from the openSUSE forums, a couple of days ago other geekos complained about some items failing to launch after Tumbleweed update.

Ideally, one could run zypper up to update the system rather than just the Samba package.

The post Samba ‘libauthkrb5’ library breaks several apps appeared first on HACKLOG.

21 April, 2016

Michael Meeks: 2016-04-21 Thursday.

21:00 UTCmember

  • Up early; customer call, team call, ESC call, JanI call, Advisory Board call - E-mail, admin, and no significant code hackery.

20 April, 2016

Michael Meeks: 2016-04-20 Wed.

21:00 UTCmember

  • A day packed with business and calls, also my 14th Wedding Anniversary - what a blessing it is to have a patient, kind, intelligent, beautiful wife, and to have too little time for a fuller set of adjectives.

  • A Cycling Map

    Este post en español

    There are no good, paper cycling maps for my region. There are 1:20,000 street maps for car navigation within the city, but they have absolutely no detail in the rural areas. There are 1:200,000 maps for long trips by car, but that's too big of a scale.

    Ideally there would be high-quality printed maps at 1:50,000 scale (i.e. 1 Km in the real world is 2 cm in the map), with enough detail and some features:

    • Contour lines. Xalapa is in the middle of the mountains, so it's useful to plan for (often ridiculously steep) uphills/downhills.

    • Where can I replenish my water/food? Convenience stores, roadside food stands.

    • What's the quality and surface of the roads? This region is full of rural tracks that go through coffee and sugarcane plantations. The most-transited tracks can be ridden with reasonable "street" tyres. Others require fatter tyres, or a lot of skill, or a mountain bike, as they have rocks and roots and lots of fist-sized debris.

    • Any interesting sights or places? It's nice to have a visual "prize" when you reach your destination, apart from the mountainous landscape itself. Any good viewpoints? Interesting ruins? Waterfalls?

    • As many references as possible. The rural roads tend to look all the same — coffee plants, bananas, sugarcane, dirt roads. Is there an especially big tree at the junction of two trails so you know when to turn? Is there one of the ubiquitous roadside shrines or crosses? Did I just see the high-voltage power lines overhead?

    Make the map yourself, damnit

    For a couple of years now, I have been mapping the rural roads around here in OpenStreetMap. This has been an interesting process.

    For example, this is the satellite view that gets shown in iD, the web editor for OpenStreetMap:

    Satellite view
	      of rural area

    One can make out rural roads there between fields (here, between the blue river and the yellow highway). They are hard to see where there are many trees, and sometimes they just disappear in the foliage. When these roads are just not visible or 100% unambiguous in the satellite view, there's little else to do but go out and actually ride them while recording a GPS track with my phone.

    These are two typical rural roads here:

    Rural road between plantations Rural road with
		  view to the mountains

    Once I get back home, I'll load the GPS track in the OpenStreetMap editor, trace the roads, and add some things by inference (the road crosses a stream, so there must be a bridge) or by memory (oh, I remember that especially pretty stone bridge!). Behold, a bridge in an unpaved road:

    Bridge in the editor Bridge in the real


What to know

openSUSE Conference CrowdThe openSUSE Conference in Nuremberg, Germany, June 22 – 26 is just nine weeks away and attendee might want to start planning their trip to this year’s conference.

With a pre-conference party planned for June 21 at the Kater Murr at 7 p.m., attendees might want to consider arriving on June 21; arriving a day before the conference is a good idea.

The conference will begin at 10 a.m. on June 22, which should give people time to recovery either jet lag or the pre-conference party.

People who take the train will arrive in downtown Nuremberg. People coming in on a flight can go downtown using the subway (U-Bahn) from the airport. U2 is the train that goes too and from downtown (Hauptbahnhof).

People who plan on driving to Nuremberg will find plenty of parking garages around the city. Parking at the Z Bau is free.

Travel Support Program

People who plan on using the Travel Support Program can start submitting their requests now via Connect and need to have it submitted six weeks before the start of oSC16. (May 9 at the latest).

Learn more about the Travel Support Program and be informed of the policies to make your process easy and to understand the requirements for receiving support funds.

Attendees should look for the cheapest tickets available so that the funds can be used to accommodate the largest amount of attendees requesting support.


Besides the pre-conference party, there will be a couple social events scheduled throughout the week.

There will be a city tour and a cellar tour available in Nuremberg at two different times (6:30 p.m. and 8 p.m.) on June 22, 23 and 25. Each tour has the capacity of 25 people and people who want to attend these tours will need to reserve a seat through events.opensuse.org. Reserving a seat for the tours is not currently available, but will be before the conference starts; an announcement will be sent out to attendees about reserving a seat.

The SUSE Band will play live music on stage at the Z Bau June 24 from 6:45 p.m. The band has been practicing for this for some time is hyped to be playing in front of a live audience.

Going Home

The conference is scheduled to end at 2 p.m. on June 26 so attendees can have enough time to get to the airport for a flight leaving at 5 p.m. or later. There are several flights leaving Nuremberg after 5 p.m. Three hours is more than enough time to get to the airport from the Z Bau. Using public transportation takes a little under 30 minutes from the Z Bau to Nuremberg Airport.

There will be a Hack Week for those who would like to stay and hack in Nuremberg. Give it some thought before making travel plans and maybe stay a few days to hack with people at the SUSE headquarters in Nuremberg.

Older blog entries ->