Getting up close and personal with openSUSE 42.2

Who is it for?

Anyone who is a Raspberry Pi enthusiast. A Raspberry Pi kitted out with openSUSE can be used as an extremely inexpensive desktop replacement in emerging economies wherever people can't afford expensive computers. It can be used for education too. But the real community of Raspberry Pi is the makers community, the tinkerers.

Richard Brown, chairman of openSUSE Board (see the interview), argues that one advantage openSUSE has over other stripped down distributions is that you don't get a feature poor distribution. You get all the tools that you would use on an IBM mainframe. You get the same utilities that sysadmins and developers use. Another advantage is that being a 64 bit operating system, openSUSE offers more power compared to 32 bit operating systems.

So what are you waiting for? Go ahead and install openSUSE on your Pi.

Andrew Wafaa: ARM Support for openSUSE

Andrew Wafaa is Senior Principal Engineer, Open Source at ARM who works closely with SUSE and openSUSE. During SUSECon (2016) I sat down with Wafaa to get a first-hand account of the work being done to bring SUSE Linux Enterprise (SLE) and openSUSE to Raspberry Pi 3.

Swapnil Bhartiya: I recall my interview with Michael Hrusecky at FOSDEM in 2013. He gave me a demo of openSUSE running on ARM Chromebook. When did SUSE start working on ARM?

Andrew Wafaa: It was the openSUSE community that started working on ARM, originally around 2010. It was pure community work, it was one guy working on it. There was a lot of heavy lifting. It sorts of worked but it was just one guy, there wasn't much pull from the community. And that effort died down.

When ARM announced ARM v8, the 64-bit architecture, there was some discussion among openSUSE developers during openSUSE Conference (over beer), that it would be nice to support another architecture. That kicked off and by 2012 openSUSE had a full build for ARM v8. Both SUSE and openSUSE developers worked on it, but a lot of that work was driven by openSUSE developers.

SB: A lot of legwork seems to be done by openSUSE developers, so what role did SUSE and ARM play in it?

AW: SUSE and ARM have been working together for a while and over time the partnership grew to such a level where we are very open with each other and can actually work together on projects. SUSE focuses a lot on partners and last year they announced a partner program with a handful of partners and OEMs. The primary goal of the program was to ensure that silicon vendors and OEM solution designers can have SUSE's enterprise offerings fine tuned for their platform to ensure full support for the silicon. It involved bug fixing, and support for technologies like KVM, Xen or whatever a partner may require. Everything should work as best as possible. So it did help in ironing out wrinkles from SLES support on ARM.

SB: Now openSUSE Leap and Tumbleweed are also available for Raspberry Pi 3...

AW: In 2015 openSUSE unified the codebase of openSUSE Leap with that of SUSE Linux Enterprise. Now both distributions share the same code base. That made it obvious for openSUSE to also support Raspberry Pi 3.

SB: While you work for ARM, you are very well known within the openSUSE community. You have been an openSUSE community member for a long time. Can you tell us how ARM works with SUSE and openSUSE?

AW: We work with both openSUSE and SUSE in slightly different ways. With openSUSE being a community project, there are areas of enablement, areas of sponsorship that we as a company can do to support their efforts in supporting ARM. Since ARM doesn't manufacture anything we introduce them with hardware companies that can potentially support them with hardware and other things that we, as a fabless chip company, can't.

On the development side, we liaison internally with our engineers to ensure that there are no architectural issues. When it comes to SUSE, which is a corporate sponsor of openSUSE, we work closely with them ensuring that they have the correct documentation needed that isn't necessarily available to the public. We work closely in partnerships with SUSE, introducing them to new silicon partners, new OEMs, new component vendors, etcetera, to ensure that the full solution can be offered.

SB: There are many Raspberry Pis around. Which ones are supported on SLES/openSUSE?

AW: SLES12 SP2 only supports 64-bit, so only the Raspberry Pi 3. The openSUSE Community wanted to ensure that all users are catered for, so Leap only supports 64bit RPi3 at the moment, work is ongoing to support 32bit RPi2. Tumbleweed supports both 32bit and 64bit, meaning that older RPi2 and newer RPi3 is supported.

Richard Brown: openSUSE is for makers

I sat down with long time openSUSE contributor and current chairman of openSUSE Board, Richard Brown, to talk about openSUSE's arrival to Raspberrry Pi 3. Here is an edited version of that interview.

Swapnil Bhartiya: What was the goal behind bringing openSUSE to Raspberry Pi 3?

Richard Brown: (chuckles) I like that you assume we have a plan. At openSUSE we do a lot of stuff because there are contributors who want to do it. There is no grand plan; if you want to do something with openSUSE, being a purely open source project, you can do it. That's how openSUSE for Raspberry Pi happened.

SB: Now with openSUSE officially supporting Raspberry Pi 3, who is your target audience?

RB: Generally speaking, the openSUSE project more and more is targeting the group of people we're calling "makers." In that case we're specifically talking about technical sysadmins, developers, and technical power users. That's where openSUSE typically aims. That obviously has a great appeal for Raspberry Pi. That's why openSUSE for Raspberry Pi makes so much sense to us.

SB: Pi is not a very powerful device for developers to compile or develop their applications?

RB: It's a very inexpensive device for someone who is targeting IoT, ARM or portable side of things.

SB: True, but why should someone go with openSUSE when there is Raspbian and other stripped down versions of Linux based operating systems for Pi?

RB: Most of those distributions target noobs, there is nothing wrong with that, but often by targeting that audience you expend a very large amount of energy on parts of the project which, in many respects, end up getting in the way when you start dealing with more technical aspects. You end up cutting out features because they're intimidating to noobs. You end up focusing entirely on that initial user experience and forgetting, okay, how does this thing actually work? In production? In the long term? All of that kind of thing.

It is very much openSUSE's typical strength, that we don't forget about the beginners. We want to appeal to them. We obviously need to get new blood into the project, but at the same time we want to be able to help them as they graduate from being a beginner to advanced users. Our core audience is definitely leaning on the more technical side of things. Our distribution is angled that way. We are tooled that way, so, having tools like YaST, which are both basic and incredibly powerful, at the same time as getting out of your way, so if you just want to be a lazy sys admin and get the job done, you've got YaST there to do that.

At the same time, users then want more fully fledged tooling. If you are actually developing on this stuff and want to be building packages, that's why we've got OBS and OpenQA, with a whole kind of openSUSE ecosystem around the tools. Which other distributions just don't have. That's why someone should try openSUSE Pi rather than Raspbian. Raspbian doesn't have this huge family of tools, all of which fully integrate on this platform just as it does on mainframes and Intel's x86 architecture.

SB: openSUSE is the first 64 bit operating system for Raspberry Pi, what are actual advantages for users? Why should they care about running a 64-bit operating system on Raspberry Pi?

RB: When you talk about 64-bit CPU, 64-bit processing in general, everybody focuses on the memory limit issue of 32-bit CPU which is limited to 4GB of RAM. When you're dealing with 64-bit it's up in the ridiculous numbers that I can't even remember where they are now.

However, that's irrelevant for the Raspberry Pi, but it's also a part of the story. It's a part that a lot of people forget, because when doing 64-bit computation, you're able to deal with larger numbers, larger arithmetic in a single command. When you're running the same task as a 32-bit processor, the same task as a 32-bit task, on a 64-bit OS in 64-bit instruction set, you're able to actually do more in a single transaction.

SB: Can you give a real life example that Raspberry Pi users can relate to?

RB: To aim for the basic side of things, a perfect example would be even basic encryption. Like an SSH transaction. Just logging in. Behind SSH there's a large amount of encryption going on, that's included lots of large numbers. In 32-bit what the CPU is having to do is quite often, do three or four different transactions to actually handle that initial handshake for SSH. In the 64-bit OS it can do it in a lot less commands. Therefore it does it a lot faster. That's where you get this, somewhere between 15% – 20% improvement, straight out of performance on, even basic stuff. By running 64-bit on 64-bit.

SB: openSUSE brags about upstream first, so are you working with the Raspberry Pi foundation or doing this on your own?

RB: Yes, we're working with the Pi foundation on this. A lot of the stuff that we've been doing we have been giving to them. In many cases, a lot of the enablement we've done has gone straight into the Linux kernel. We've basically upstreamed stuff which Raspbian hasn't been able to do.

SB: There are now three distributions from SUSE/openSUSE camp that are supported on Raspberry Pi 3: SLE, openSUSE Leap and openSUSE Tumbleweed. Which one is upstream? If there is a Raspberry Pi developer who wants their package in openSUSE what is the correct path for the package to find it's way into openSUSE?

RB: The correct path for any package to openSUSE would be via Tumbleweed. That's why we have the Tumbleweed images. In the case of the Tumbleweed images, we currently have two flavors of the Tumbleweed image. One of them which is effectively upstream based, so very close to what the upstream kernel is currently doing. With a few modifications for the parts we really had to get working, but generally speaking vanilla upstream stuff. The non-upstream kernel, which is the other way around, has a lot more in common with Leap and Raspbian style kernels. Which, yeah … So you can pick your poison. If you're dealing with kernel stuff, the upstream kernel one is the one you want to be working on obviously. If you just want something that works, you've got a bit more options with the non-upstream kernel.

Buy this article as PDF

Express-Checkout as PDF

Pages: 6

Price $2.95
(incl. VAT)

Buy Raspberry Pi Geek

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content