Skip to main content

a silhouette of a person's head and shoulders, used as a default avatar

openSUSE Tumbleweed – Review of the week 2020/02

Dear Tumbleweed users and hackers,

Week 2 this year brings you what many have been asking for: Kernel 5.4! YES, After the holiday season came to an end and the right people were back in business, we could address the issue around the invalid certificate chain and correct the issue. In total, Week 2 brought you five snapshots: 0103, 0105, 0106, 0107 and 0108, with all these nice changes:

  • Linux kernel 5.4.7 (Snapshot 0108, fresh off the press)
  • NetworkManager 1.22.2
  • Flatpak 1.6.0
  • Mesa 19.3.1
  • Rust 1.40

Also, the staging projects are making progress and some of the long-standing areas are likely to be checked in rather soon. The major things coming your way in the near (or maybe distant) future are:

  • RPM 4.15.1: tests have all passed, you can expect this to come your way next week
  • systemd 244: one package’s test suite keeps on failing without anybody understanding what’s going on. Since this is a legacy package, it was decided to disable the test suite. So systemd 244 should now also be ready and be checked in soon
  • Qt 5.14: we are awaiting some legal reviews. Tests by openQA have all passed
  • Kubernetes 5.17: the last tests were still failing, but just today we received a submission that is supposedly fixing it
  • Python 3.8: not going to happen very soon – but it’s being worked on
  • Removal of python 2: python 2 is now officially no longer maintained by upstream. Work is undertaken to lower the usage footprint of python2, to the point where it can be removed from the distro
  • SQlite 3.30: python-Django is still failing
  • More kernels from the Linux 5.4 branch. You can expect them to come more frequent again
  • Mozilla Firefox 72
  • KDE Applications 19.12.1
  • KDE Plasma 5.17.5

As you can see, the holiday is over – and things are being thrown at me at a high pace, in the hope to get it all integrated into Tumbleweed quickly. I’ll do what I can – but OBS and openQA resources tend to be limited 🙂

the avatar of Nathan Wolf

the avatar of openSUSE News

Tumbleweed Provides Some Stability to 2020

The year of 2020, at least in the openSUSE world, is starting out to be pretty stable. In little more than a week into the new year, there have been five openSUSE Tumbleweed snapshots released.

The releases, with the exception of one, are either posting a stable rating or are trending at a stable rating, according to the Tumbleweed snapshot reviewer.

With the release of snapshot 20200107, more OpenGL and Vulkan driver features and improvements came in the update of the Mesa 19.3.1 package. The newer version update also provides better AMD Radeon Accelerated Processing Unit (APU) performance

The bluez-tools package that is a set of tools to manage Bluetooth devices for Linux had a minor update from the previous three-year-old package included in Tumbleweed. GNOME’s web browser package epiphany provided some security AdBlocker preferences in the 3.34.3.1 version. Message transfer agent exim reduced the start up process initialization with version 4.93.0.4 and fixed more than a half dozen bugs. KDE’s kdevelop5 5.4.6 version fixed some wrong text in the license. Network detector, packet sniffer, and intrusion detection system package for wireless network kismet updated to its December release in the snapshot. One package update that stands out in the snapshot is the release of the finger reader package for Linux devices libfprint 1.0; this first major release provides better documentation and bug fixes related to restarting a failed verification immediately.The osc 0.167.2 package fixed regression in osc chroot. Other packages updated in the snapshot were rubygem-parser 2.7.0.1 and tigervnc 1.10.0 among others.

Snapshot 20200106 snapshot provided an update of ImageMagick 7.0.9.13 that fixed the a bug for custom profile (CMYK or RGB) conversions and the -layers optimize option now requires a fully transparent previous image. Argyll Color Management System package argyllcms had a new major version update; the 2.1.1 version update removes bundled zlib source, that could trigger a fatal rpm check failure on Leap 15.x. The library for handling OpenGL function pointer management libepoxy 1.5.4 requires only the python3-base package for building instead of full python3 package. GNOME’s photo manager shotwell 0.30.8 updated translations and fixed Tumblr publishing.

Several updated YaST packages came in the 20200105 snapshot. Improved sorting by device name and size in tables were made with the yast2-storage-ng 4.2.67 update and an improved warning when all repositories are disabled were made with the yast2-packager 4.2.42 update. The same version number for yast2-network added support for reading / writing Maximum Transmission Unit (MTU). The libstorage-ng 4.2.44 package improved the sort-key for block devices and libyui 3.9.1 added sort key to the table cell. Python-passlib 1.7.2 added some new features like supports Argon2 and utility program to control and monitor computer storage systems smartmontools 7.1 added enhancements for AT Attachment (ATA) ACS-4 and ACS-5. The snapshot also provided an update to the 2.6.0 version of usb_modeswitch, which added several devices and changed the Makefile to prevent parallel build issues.

ImageMagick also had an update in the 20200103 snapshot. NetworkManager 1.22.2 fixed multiple issues in the internal DHCP client and drop support for BlueZ 4 for BlueZ 5, which has been around since 2012. The  Advanced Linux Sound Architecture (ALSA) 1.2.1.2 package brought about 30 upstream patches. File searching tool catfish 1.4.12 adds support for running on Wayland and provided dialog improvements, which were introducted in the 1.4.10 version. Flatpak 1.6.0 made a change in the support for OCI and only support the use of labels, not annotations, as labels work with more registries. Pre-existing OCI flatpak registries (like Fedora) may need some changes, according to the changelog. The new major 7.0 glusterfs, which is an open source platform for scale-out public and private cloud storage, provided improved read workload latency in a cluster, especially in a cloud setup along with load balancing with the outstanding pending requests. The library for reading raw files from digital cameras, libraw 0.19.5, fixed a possible buffer underrun in the modern Samsung loader. Improved responsiveness during large file transfers were made with the sshfs 3.7.0 and vim text editor 8.2.0063 fixed several problems. This snapshot is trending at a rating of 83, according to the Tumbleweed snapshot reviewer, but most of the issues recorded with the rating were related to the NetworkManager.

Tumbleweed had a New Year’s snapshot this year. Snapshot 20200101 had 13 packages updated. Of those, key ones to point out were the update of diffstat 1.63, which improved parsing for git diffs, and Fast Light Toolkit, which is a cross-platform widget library for graphical user interfaces, had some security fixes with the fltk 1.3.5.

the avatar of Nathan Wolf
the avatar of Nathan Wolf

the avatar of openSUSE News

Q&A: What it is like to be on the openSUSE Board

You already know what a fantastic platform openSUSE is for doing just about anything with Linux. So what’s behind that easy-to-use and super powerful distribution that we know and love, and have come to rely on. In many minds there is a perception that its simply SUSE with the proprietary code stripped out. It’s true that a lot of the development work does flow down from SUSE but there is also an active community of dedicated volunteers who drive and make the project work, adding the goodies we have come to take for granted for the myriad of uses we have come to rely on it for.

It’s election time at openSUSE and the election board asked an existing board member Gertjan who has agreed to step up again and run for re-election of what it is like to be on the board. Below is a transcript of an offline interview between fellow election committee member Edwin and Gertjan highlighting what it’s like to be on the board of openSUSE.

Edwin: Would you like to tell us about your daily schedule and how does being an openSUSE Board member impacts on that?

Gertjan: To be fair, my daily schedule varies a lot, depending on what is on my table. Most of the time this leaves me with enough spare time to do board related things. But before I was on board, I spent that time in openSUSE too, i.e. forums, IRC etc., so the main impact on my daily schedule were the bi-weekly video conference calls. For the rest I just spread the spare time a bit differently. It does take a couple of hours though, on an average week.

Edwin: Do you still remember what motivated you to step up for Board candidacy the first time? And then why a second time?

Gertjan: O, yes, I do. I was asked by Richard whether I had ever considered running for board. My reply was “Hey, you know me, I’m the one that considers others to run”… Followed by a small discussion, a night of sleep, some others asking me to step up as a candidate. All in all, I felt I could not ignore all that, and at least see if the community would have me on board. So basically the community motivated me, and felt I had to go for it. The second time was not much different. And, in both cases, a huge motivation was the love I feel for the project and the people in its community.

Edwin: What was your first task as a Board member?

Gertjan: To read all the docs. Like many people, I had to find out that my impression of what the board does wasn’t accurate.

Edwin: What’s your best memory serving on the openSUSE Board?

Gertjan: Lots of good memories, but to summarize: The learning experience re. all the aspects of the openSUSE Project, the relationship with SUSE.

Edwin: Any negative incident that you recall and would like to share?

Gertjan: I do recall some, yeah. Most of them with the PRIVATE stamp all over them, but the thing I disliked most was me crossing ( a.o. my own ) lines on a couple of occasions.

Edwin: Could you tell us what is the biggest transformation / change in the openSUSE community that you witnessed after becoming Board member?

Gertjan: For me that would be the current process of getting some form of openSUSE Foundation on its feet.

Edwin: How is life as an openSUSE Board member?

Gertjan: Not too bad. I loved the biweekly video meetings, the F2F meetings, working together with people passionate about the project and the community.

Edwin: Any message or suggestion for members unsure about running for Board?

Gertjan: Don’t doubt, do it. It’s fun. And, the project needs you !!!

Edwin: Is there anybody you would like to nominate?

Gertjan: O, yes !!! Stasiek Michalski, a.k.a. hellcp, a.ka. LCP

Edwin: Would you still be involved in the project as your second and last term ends?

Gertjan: No doubt. I’m still a forums admin / mod, mod on Discord, Matrix, Facebook, so I’ll be around on those a bit more after my term ends. And who knows, I might go for another term next year.

So you can see there is no magic to being a board member the main criteria is to have a love for the project and a desire to move it forward. You don’t have to be a geek or niche expert, the project and the board needs all types of skill-sets so if you feel you have some free time and something to contribute jump in and put in your nomination, as Gertjan says “Don’t doubt, do it. It’s fun. And, the project needs you !!!”

This article was revised at 10:35 on Jan. 7, 2020.

the avatar of Nathan Wolf

Building an AMD Server and Game Machine out of Yester-Year’s Parts

Some time ago I started noodling around the idea of building a replacement server for my home. I wanted to make this an extreme budget build. I came to the realization that I have become rather disconnected with the state of desktop class video cards and really much of anything that was outside of the … Continue reading Building an AMD Server and Game Machine out of Yester-Year’s Parts

the avatar of openSUSE Heroes

Etherpad updated (again)

As you might have noticed on our status page, our etherpad instance at https://etherpad.opensuse.org/ was updated to the latest version 3 days ago.

But this time,we did not only upgrade the package (which lives, btw, in our openSUSE:infrastructure project), we also migrated the underlying database.

As often, the initial deployment was done with a "just for testing" mindset by someone, who afterward left his little project. And - also as often - these kind of deployments suddenly became productive. This means - in turn - that our openSUSE heroes team suddenly gets tickets for services we originally did neither set up, nor maintain.

For etherpad, this means that we suddenly faced a "dirty.db" file of over 2GB in size, filling up the root-fs of the machine. Upstream even has a warning in their boot script, telling everyone that a dirty.db is NOT for production... :-/

The first try, using the dirty-db-cleaner.py script to reduce the size, did not finish after 2 days. So we decided to dump the data directly from the dirty.db into our Galera cluster. After fixing the initially created table scheme from MyISAM to InnoDB (Galera does not like MyISAM), the migration script took "only" 16 hours.

With this final migration, we hope to be prepared for the next update - and hope that this only takes minutes again.

the avatar of Nathan Wolf

Noodlings 11 | Quick Tiling Fusion 360 in the Kitchen

New episode for the New Year and that title is almost entirely nonsensical because they are different subjects. Have a listen to episode 11 of this jibber jabber! Fusion 360 Review Fusion 360 is a CAD / CAM application with finite element analysis capabilities. I was going through the Autodesk forums and read a lot … Continue reading Noodlings 11 | Quick Tiling Fusion 360 in the Kitchen
the avatar of Andrés G. Aragoneses

Introducing geewallet

Version 0.4.2.187 of geewallet has just been published to the snap store! You can install it by looking for its name in the store or by installing it from the command line with `snap install geewallet`. It features a very simplistic and minimalistic UI/UX. Nothing very fancy, especially because it has a single codebase that targets many (potential) platforms, e.g. you can also find it in the Android App Store.

What was my motivation to create geewallet in the first place, around 2 years ago? Well, I was very excited about the “global computing platform” that Ethereum was promising. At the time, I thought it would be like the best replacement of Namecoin: decentralised naming system, but not just focusing on this aspect, but just bringing Turing-completeness so that you can build whatever you want on top of it, not just a key-value store. So then, I got ahold of some ethers to play with the platform. But by then, I didn’t find any wallet that I liked, especially when considering security. Most people were copy+pasting their private keys into a website (!) called MyEtherWallet. Not only this idea was terrifying (since you had to trust not just the security skills of the sysadmin who was in charge of the domain&server, but also that the developers of the software don’t turn rogue…), it was even worse than that, it was worse than using a normal hot wallet. And what I wanted was actually a cold wallet, a wallet that could run in an offline device, to make sure hacking it would be impossible (not faraday-cage-impossible, but reasonably impossible).

So there I did it, I created my own wallet.

After some weeks, I added bitcoin support on it thanks to the library NBitcoin (good work Nicholas!). After some months, I added a cross-platform UI besides the first archaic command-line frontend. These days it looks like this:



What was my motivation to make geewallet a brain wallet? Well, at the time (and maybe nowadays too, before I unveil this project at least), the only decent brain wallet out there that seemed sufficiently secure (against brute force attacks) was WarpWallet, from the Keybase company. If you don’t believe in their approach, they even have placed a bounty in a decently small passphrase (so if you ever think that this kind of wallet would be hacked, you would be certainly safe to think that any cracker would target this bounty first, before thinking of you). The worst of it, again, was that to be able to use it you had again to use a web interface, so you had the double-trust problem again. Now geewallet brings the same WarpWallet seed generation algorithm (backed by unit tests of course) but on a desktop/mobile approach, so that you can own the hardware where the seed is generated. No need to write anymore long seeds of random words in pieces of paper: your mind is the limit! (And of course geewallet will warn the user in case the passphrase is too short and simple: it even detects if all the words belong to the dictionary, to deter low entropy, from the human perspective.)

Why did I add support for Litecoin and Ethereum Classic to the wallet? First, let me tell you that bitcoin and ethereum, as technological innovations and network effects, are very difficult to beat. And in fact, I’m not a fan of the proliferation of dubious portrayed awesome new coins/tokens that claim to be as efficient and scalable as these first two. They would need not only to beat the network effect when it comes to users, but also developers (all the best cryptographers are working in Bitcoin and Ethereum technologies). However, Litecoin and Ethereum-Classic are so similar to Bitcoin and Ethereum, respectively, that adding support for them was less than a day’s work. And they are not completely irrelevant: Litecoin may bring zero-knowledge proofs in an upcoming update soon (plus, its fees are lower today, so it’s an alternative cheaper testnet with real value); and Ethereum-Classic has some inherent characteristics that may make it more decentralised than Ethereum in the long run (governance not following any cult of personality, plus it will remain as a Turing-complete platform on top of Proof Of Work, instead of switching to Proof of Stake; to understand why this is important, I recommend you to watch this video).

Another good reason of why I started something like this from scratch is because I wanted to use F# in a real open source project. I had been playing with it for a personal (private) project 2 years before starting this one, so I wanted to show the world that you can build a decent desktop app with simple and not too opinionated/academic functional programming. It reuses all the power of the .NET platform: you get debuggers, you can target mobile devices, you get immutability by default; all three in one, in this decade, at last. (BTW, everything is written in F#, even the build scripts.)

What’s the roadmap of geewallet? The most important topics I want to cover shortly are three:
  • Make it even more user friendly: blockchain addresses are akin to the numeric IP addresses of the early 80s when DNS still didn’t exist. We plan to use either ENS or IPNS or BNS or OpenCAP so that people can identify recipients much more easily.
  • Implement Layer2 technologies: we’re already past the proof of concept phase. We have branches that can open channels. The promise of these technologies is instantaneous transactions (no waits!) and ridiculous (if not free) fees.
  • Switch the GTK Xamarin.Forms driver to work with the new “GtkSharp” binding under the hood, which doesn’t require glue libraries. (I’ve had quite a few nightmares with native dependencies/libs when building the sandboxed snap package!)
With less priority:
  • Integrate with some Rust projects: MimbleWimble(Grin) lib, the distributed COMIT project for trustless atomic swaps, or other Layer2-related ones such as rust-lightning.
  • Cryptography work: threshold keys or deniable encryption (think "duress" passwords).
  • NFC support (find recipients without QR codes!).
  • Tizen support (watches!).
  • Acceptance testing via UI Selenium tests (look up the Uno Platform).

Areas where I would love contributions from the community:
  • Flatpak support: unfortunately I haven’t had time to look at this sandboxing technology, but it shouldn’t be too hard to do, especially considering that there’s already a Mono-based project that supports it: SparkleShare.
  • Ubuntu packaging: there’s a patch blocked on some Ubuntu bug that makes the wallet (or any .NET app these days, as it affects the .NET package manager: nuget) not build in Ubuntu 19.10. If this patch is not merged soon, the next LTS of Ubuntu will have this bug :( As far as I understand, what needs to be solved is this issue so that the latest hotfixes are bundled. (BTW I have to thank Timotheus Pokorra, the person in charge to package Mono in Fedora, for his help on this matter so far.)
  • GNOME community: I’m in search for a home for this project. I don’t like that it lives in my GitLab username, because it’s not easy to find. One of the reasons I’ve used GitLab is because I love the fact that being open source, many communities are adopting this infrastructure, like Debian and GNOME. That’s why I’ve used as a bug tracker, for merge requests and to run CI jobs. This means that it should be easy to migrate to GNOME’s GitLab, isn’t it? There are unmaintained projects (e.g. banshee, which I couldn’t continue maintaining due to changes in life priorities...) already hosted there, so maybe it’s not much to ask if I could host a maintained one? It's probably the first Gtk-based wallet out there.

And just in case I wasn't clear:
  • Please don’t ask me to add support for your favourite %coin% or <token>.
  • If you want to contribute, don’t ask me what to work on, just think of your personal itch you want to scratch and discuss it with me filing a GitLab issue. If you’re a C# developer, I wrote a quick F# tutorial for you.
  • Thanks for reading up until here! It’s my pleasure to write about this project.

I'm excited about the world of private-key management. I think we can do much better than what we have today: most people think of hardware wallets to be unhackable or cold storage, but most of them are used via USB or Bluetooth! Which means they are not actually cold storage, so software wallets with offline-support (also called air-gapped) are more secure! I think that eventually these tools will even merge with other ubiquitous tools with which we’re more familiar today: password managers!

You can follow the project on twitter (yes I promise I will start using this platform to publish updates).

PS: If you're still not convinced about these technologies or if you didn't understand that PoW video I posted earlier, I recommend you to go back to basics by watching this other video produced by a mathematician educator which explains it really well.

PS II: Apologies if this blogpost shows up in planets again, as it might be a side-effect of updating it to fix broken links or typos.