Language Selection

English French German Italian Portuguese Spanish

March 2019

My Outreachy 2019 experience with Fedora Happiness Packets: Contribution phase

Filed under
Red Hat

Outreachy is a program that provides internships to work in Free and Open Source Software (FOSS). Outreachy internships are open to applicants around the world. Interns work remotely, and are not required to move. Interns are paid a stipend of $5,500 USD for the three month internship. Interns have a $500 USD travel stipend to attend conferences or events.

Read more

Also: Fedora Community Blog: FPgM report: 2019-13

Programming Leftovers

Filed under
  • GCC 9 Is Being Worked Into Shape For Releasing In The Weeks Ahead

    GCC 9 release manager Richard Biener of SUSE has provided a status report concerning the state of getting the GNU Compiler Collection 9.1 shipped.

    Since the last status report, the developers have halved the number of P1 bug reports, the most severe regressions. There still are 12 P1 priority regressions blocking GCC 9.1.0 from moving forward, but they hope to address that in the weeks ahead. There's also the possibility some of these issues will deemed not P1 priority and demoted to P2/P3 and thus clear the compiler release to happen.

    While only P1 issues are blocking the release, there are current 158 regressions of P2 (down 27), 25 P3 regressions (down 7), and 138 P4 regressions (down 31).

  • What Red Hat OpenShift Connector for JetBrains products offers developers

    We are extremely pleased to announce that the preview release of the Red Hat OpenShift Connector for JetBrains products (IntelliJ IDEA, WebStorm, etc.) is now available in Preview Mode and supports Java and Node.js components. You can download the OpenShift Connector plugin from the JetBrains marketplace or install it directly from the plugins gallery in JetBrains products.

    In this article, we’ll look at features and benefits of the plugin and installation details, and show a demo of how using the plugin improves the end-to-end experience of developing and deploying Spring Boot applications to your OpenShift cluster.

    Red Hat OpenShift is a container application platform that brings the power of Kubernetes and containers to the enterprise. Regardless of the applications architecture, OpenShift lets you easily and quickly build, develop, and deploy in nearly any infrastructure, public or private.

  • Red Hat Enterprise Linux compiler toolset updates: Clang/LLVM 7.0, Go 1.11, Rust 1.31

    We are pleased to announce the general availability of these three compiler toolsets for Red Hat Enterprise Linux 7:

    Clang/LLVM 7.0
    Go 1.11
    Rust 1.31
    These toolsets can be installed from the Red Hat Enterprise Linux 7 Devtools channel. See the “Compiler toolset details” section of this article to learn about the new features.

    These toolsets became officially supported Red Hat offerings as of the previous release.

  • Working With JSON Data in Python

    JSON is a lightweight data-interchange format. It allows us to represent the objects in our Python programs as human-readable text that can be sent over the internet. Lots of APIs and databases use JSON for communication.

    You’ll learn how to work with Python’s built-in json module to serialize the data in your programs into JSON format. Then, you’ll deserialize some JSON from an online API and convert it into Python objects.

  • Quarkus: Why compile to native?

    Quarkus is Kubernetes native, and to accomplish that we’ve spent a lot of time working across a number of different areas, such as the Java Virtual Machine (JVM) and various framework optimizations. And, there’s much more work still to be done. One area that has piqued the interest of the developer community is Quarkus’s comprehensive and seamless approach to generating an operating system specific (aka native) executable from your Java code, as you do with languages like C and C++, which we believe will typically be used at the end of the build-test-deploy cycle.

    Although the native compilation is important, as we’ll discuss later, Quarkus works really well with vanilla OpenJDK Hotspot, thanks to the significant performance improvements we’ve made to the entire stack. The native executable aspect Quarkus offers is optional and, if you don’t want it or your applications don’t need it, then you can ignore it. In fact, even when you are using native images, Quarkus still relies heavily on OpenJDK. The well-received dev mode is able to deliver near-instantaneous change-test cycles all due to Hotspot’s rich dynamic code execution capabilities. Additionally, GraalVM internally uses OpenJDK’s class library and HotSpot to produce a native image.

  • wxPython 4 and PubSub

    The Publish-Subscribe pattern is pretty common in computer science and very useful too. The wxPython GUI toolkit has had an implementation of it for a very long time in wx.lib.pubsub. This implementation is based on the PyPubSub package. While you could always download PyPubSub and use it directly instead, it was nice to be able to just run wxPython without an additional dependency.

    However, as of wxPython 4.0.4, wx.lib.pubsub is now deprecated and will be removed in a future version of wxPython. So now you will need to download PyPubSub or PyDispatcher if you want to use the Publish-Subscribe pattern easily in wxPython.

  • Iteration in Python: The for, while, break, and continue statements
  • Wing Tips: Auto-Editing in Wing Pro (Part 1 of 3)
  • Episode #123: Time to right the py-wrongs
  • Test and Code: 70: Non-traditional paths to software and the skills required - Dane Hillard
  • Doing Math with Python in Coder's Bookshelf Humble Bundle
  • Writing a Minimum-Heap in Python3
  • 3 Ways to Upskill in Python with DataCamp and Anaconda
  • Six easy ways to run your Jupyter Notebook in the cloud
  • Python interview question: tuple vs list
  • AIOps and our Robot Kubernetes Kops

    Linux Academy has recently published courses covering the AIOps and the Python technologies mentioned in this article.

Security: Updates, Matthew Garrett Breaking Things Again and GNU Guix Strives for Reproducibility

Filed under
  • Security updates for Friday
  • Matthew Garrett: Remote code execution as root from the local network on TP-Link SR20 routers

    The TP-Link SR20[1] is a combination Zigbee/ZWave hub and router, with a touchscreen for configuration and control. Firmware binaries are available here. If you download one and run it through binwalk, one of the things you find is an executable called tddp. Running arm-linux-gnu-nm -D against it shows that it imports popen(), which is generally a bad sign - popen() passes its argument directly to the shell, so if there's any way to get user controlled input into a popen() call you're basically guaranteed victory. That flagged it as something worth looking at, but in the end what I found was far funnier.

    Tddp is the TP-Link Device Debug Protocol. It runs on most TP-Link devices in one form or another, but different devices have different functionality. What is common is the protocol, which has been previously described. The interesting thing is that while version 2 of the protocol is authenticated and requires knowledge of the admin password on the router, version 1 is unauthenticated.

  • Connecting reproducible deployment to a long-term source code archive

    GNU Guix can be used as a “package manager” to install and upgrade software packages as is familiar to GNU/Linux users, or as an environment manager, but it can also provision containers or virtual machines, and manage the operating system running on your machine.

    One foundation that sets it apart from other tools in these areas is reproducibility. From a high-level view, Guix allows users to declare complete software environments and instantiate them. They can share those environments with others, which can replicate them or adapt them to their needs. This aspect is key to reproducible computational experiments: scientists need to reproduce software environments before they can reproduce experimental results, and this is one of the things we are focusing on in the context of the Guix-HPC effort. At a lower level, the project, along with others in the Reproducible Builds community, is working to ensure that software build outputs are reproducible, bit-for-bit.

    Work on reproducibility at all levels has been making great progress. Guix for instance allows you to travel back in time. That Guix can travel back in time and build software reproducibly is a great step forward. But there’s still an important piece that’s missing to make this viable: a stable source code archive. This is where Software Heritage (SWH for short) comes in.

The Fastest Linux Distributions For Web Browsing - Firefox + Chrome Benchmarks On Eight Distros

Filed under

With now having WebDriver/Seleneium integration in PTS for carrying out browser benchmarks, we've been having fun running a variety of web browser benchmarks in different configurations. The latest is looking at the Mozilla Firefox and Google Chrome web browser performance across eight Linux distribution releases (or nine if counting Fedora Workstation on both X.Org and Wayland) for looking at how the web browsing performance compares.

For this round of benchmarking I carried out clean installs of Ubuntu 19.04 beta, Ubuntu 18.10, Ubuntu 18.04.2 LTS, OpenSUSE Tumbleweed, Majaro Linux 18.0.4, Fedora Workstation 29 with Wayland, Fedora Workstation 29 with X.Org, Debian Buster/Testing, and Clear Linux 28500 for looking at the web browser performance. Each operating system was cleanly installed on the same system and kept to the default/stock settings (the only notable exception is for Debian Buster having to install the non-free Linux firmware/microcode package for tapping Radeon GPU acceleration). All stable release updates on each of the operating systems were carried out prior to testing.

Read more

The Apache Software Foundation Continues To Grow Open-Source Software

Filed under

Open-source in 2019 is commonplace and serves as the foundation for much of modern IT infrastructure, including the cloud - but it wasn't entirely that way in 1999.

20 years ago the Apache Software Foundation (ASF) got started as a group to help organize and support open-source project efforts. According to the ASF, it now provides over $20 billion worth of software at no cost, under an open-source model. The ASF in 2019 helps to manage and incubate over 350 open-source projects and initiatives as it continues to deliver on its founding vision.

"What started before the term 'Open Source' was coined has now grown to support hundreds of projects, thousands of contributors and millions of users," said Phil Steitz, Chairman of The Apache Software Foundation, wrote in a media advisory. "The Apache Way has shown itself to be incredibly resilient in the wake of the many changes in software and technology over the last twenty years."

Read more

Games: Don't Starve Together, Volcanoids, Last Epoch, Tropico and Pathway

Filed under
  • Don't Starve Together adds a new character with an animated short, major update due next month

    Don't Starve Together, the incredibly stylish survival game from Klei Entertainment has a new updated out adding in the Wortox character.


    What's interesting, is that there's multiple ways to actually get access to Wortox. You can either buy the Wortox Chest in-game, the Deluxe Chest DLC on Steam or you can "weave Wortox for 2700 spool" actually in the game. A very interesting way to do it, so those who want to support Klei further can pay a little more while dedicated gamers without the extra cash can basically unlock it in-game.

  • Steampunk first-person survival game 'Volcanoids' has gone through a small evolution

    The developer of Volcanoids has just pushed out a huge upgrade to their Early Access steampunk survival game and it's pretty impressive stuff. Note: Key provided by the developer.

    For those not following, it's the game where you travel around in a massive moving drill you also call home. You upgrade it, craft with it and so on it's such a brilliant idea. The problem was, the initial version didn't really have a lot to see and do. The developer took on tons of feedback and this massive patch is a step towards making it a much better game. This is what Early Access is truly for, to properly help shape a game into something good.

  • The action-RPG 'Last Epoch' has a huge new build out, plenty of new features

    Last Epoch is turning out to be an impressive action-RPG with good Linux support, with a developer I've been impressed with and a huge new feature-filled build is out. Originally funded on Kickstarter, Eleventh Hour Games managed to do rather well with over $250K pledged!

  • Tropico 6 releases today with Linux support from Limbic Entertainment and Kalypso Media

    El Presidente returns for one more try at building a prosperous city on the island state of Tropico, as expected the release comes with official Linux support. For those who've never played a Tropico game, it's a very satirical take on city-builders and very different to things like Cities: Skylines.

  • Strategy adventure 'Pathway' from Robotality and Chucklefish has new footage, still coming to Linux

    Pathway definitely looks like an interesting game, developed by Robotality (Halfway) and published by Chucklefish (Starbound, Wargroove) and there's new footage up on it.

    Little late on covering this, as the footage has been up since two weeks ago but I wanted to ensure the Linux version was still coming first. I managed to speak to Simon Bachmann from Robotality about Linux support and the reply was a massively positive "Of course it comes to Linux :)" so that's awesome.

KDE neon New Edition Names

Filed under

KDE neon offers a few different editions depending on what you’re interested in.

We’ve renamed our editions a bit as the current names were causing confusion. This affects the URLs used for repos and filenames used for installable ISOs and Docker images.

The editions are now:

User Edition: the main event, built from released tars of KDE software, continuously updated as soon as releases are made assuming all the QA tests pass (which sometimes they don’t and so it gets held back until we fix them). Use this if unsure.

Testing Edition: built from the beta Git branches of KDE apps (often the same as unstable), no automated QA, will contain bugs and breakage, useful for testing beta software. (Formerly Dev Stable Edition.)

Unstable Edition: built from unstable master Git branches of KDE apps, no automated QA, will contain bugs and muchos breakage, useful for testing features in development software. (Formerly Dev Unstable Edition.)

Developer Edition: An ISO with the unstable edition plus development headers pre-installed. Useful to not have to install all of Qt and KDE dev headers.

Read more

KDE Plasma Desktop + Unity Layout + Ubuntu Ambiance Theme

Filed under

Following my latest customization tutorial and my old 2016 one, this short tutorial explains how to install Ambiance theme from Ubuntu so the custom Plasma can look more like Unity. After you made the top and left panel, now you will have black titlebar with orange circle close-button and make the left panel translucent and finally install the famous Humanity icon theme. I hope you enjoy this better than my old tutorial. Happy tweaking!

Read more

OSS Leftovers

Filed under
  • KDAB at ACCU, Bristol

    ACCU is the foremost annual conference in the UK for people interested in C++ and C, and runs from Wednesday the 10th to Saturday 13th April at the Bristol Marriott City Centre Hotel, with pre-conference tutorials on April 9th.

  • Scroll Anchoring in Firefox 66

    Firefox 66 was released on March 19th with a feature called scroll anchoring.

    It’s based on a new CSS specification that was first implemented by Chrome, and is now available in Firefox.

    Have you ever had this experience before?

    You were reading headlines, but then an ad loads and moves what you were reading off the screen.

    Or how about this?!

    You rotate your phone, but now you can’t find the paragraph that you were just reading.

    There’s a common cause for both of these issues.

  • LibreOffice monthly recap: March 2019

    Check out our regular summary of events and updates in the last month!

  • LibreOffice is now on Mastodon social media

    You may have seen that we have Twitter accounts for LibreOffice and The Document Foundation – and now, we’re on Mastodon too!

    But what is Mastodon, you may ask? Well, it’s an open source social media platform that’s self-hosted and federated. Instead of everything being controlled by a single company,

  • Linux C Programming Tutorial Part 17: Variable Initialization

    Initialization of variables is something which we have been doing throughout this ongoing C programming tutorial series so far, but we never really discussed it explicitly. Well, that changes now as we'll be discussing variable initialize in a bit of detail here.

  • A JIT in Time...

    It’s been a different 3 months. For over 6 years I had been working almost exclusively on the GNU toolchain with a focus on glibc and I now had the chance of working on a completely different set of projects, something I had done a lot of during my Red Hat technical support days but not since. I was to look into Pypy, OpenJDK and LuaJIT, three very different projects with very different development styles, communities and technologies. The comparison of these projects among themselves and the GNU projects is an interesting point but not the purpose of this post, maybe some other day. In this post I want to talk about the project I spent the most time on (~1.5 months) and found to be technically the most intriguing: LuaJIT.

  • Security updates for Thursday
  • As Elsevier Falters, Wiley Succeeds in Open-Access Deal Making [iophk: "falsely attributes decline due to 'leakage' rather than sky-high, and rising, pricing"]


    Under the new agreement, which lasts for three years and commences in July, researchers at DEAL-represented institutions will be able to both publish open-access articles and read any papers in the publisher’s journals for a single fee. The final sum will depend on the total number of articles published by German researchers, which, according to the contract, is expected to amount to 9,500 papers per year and cost €26,125,000 (around $29.5 million USD) annually.

More in Tux Machines

Programming: CI/CD and 'DevRel'

  • CloudBees and Google Cloud Partner to Accelerate Application Development on Anthos

    Respective leaders in DevOps and cloud computing are partnering to provide end-to-end application development automation from source to production...

  • Codefresh’s More Robust, Open Source Marketplace Makes Coding Easier, Faster, More Secure

    First deployed in December 2018, the Codefresh Marketplace makes it easier for code developers to find commands without having to learn a proprietary API – every step, browsable in the pipeline builder, is a simple Docker image. The Marketplace contains a more robust set of pipeline steps provided both by Codefresh and partners, such as Blue-Green and Canary deployment steps for Kubernetes, Aqua security scanning, and Helm package and deployment. All plugins are open source and users can contribute to the collection by creating a new plugin.

  • Codefresh freshens produce at the Kubernetes code marketplace

    Codefresh is the first Kubernetes-native CI/CD technology, with CI denoting Continuous Integration and CD denoting Continuous Delivery, obviously. The organisation has this month worked to improve its open source marketplace with features that focus on faster code deployment. First deployed in December 2018, the Codefresh Marketplace [kind of like an app store] allows developers to find commands without having to learn a proprietary API — this is because every step, which is browsable in the pipeline builder, is a simple Docker image.

  • DevOps World | Jenkins World: CircleCI orbs, DevOps Institute’s Ambassador Program, and Codefresh Marketplace

    DevOps and Jenkins is on full display this week at CloudBees’ DevOps World | Jenkins World taking place in San Francisco. In addition to the DevOps thought leaders and community members coming together to learn, explore and help shape the next generation of Jenkins and DevOps, a number of organizations took the opportunity to reveal new products. [...] SmartBear revealed TestEngine, a new solution designed to automate test execution in CI/CD environments. In addition, the company announced ReadyAPI 2.8 to accelerate functional, security and load testing of RESTful, SOAP, GraphQL and other web services. The new tools are aimed at accelerating API delivery. Users can now execute ReadyAPI, SoapUI Pro and SoapUI Open Source tests simultaneously on a central source that’s integrated into their development processes. This tackles the challenges that Agile and DevOps teams have such as complex deployments, large regression suites, and global development teams, according to SmartBear in a post.

  • What Is Developer Relations?

    Matthew Broberg, Advocate and Editor at says that in practice the implementation of DevRel has been far from consistent. "DevRel, in theory, is the intersection of three disciplines: engineering, marketing, and community management," he says. "In practice, DevRel applies to a wildly popular set of job titles with wildly different expectations across different organizations." [...] Rebecca Fitzhugh, Principal Technologist at Rubrik agrees. "While there is certainly a marketing component when representing the company to the customer and community, it's equally about representing the customer to the company," she says. "Our DevRel team brings feedback from our customers to the product and engineering team in order to drive a better developer experience against our product's APIs."

Network transparency with Wayland: Final report.

The goal of this 2019 Google Summer of Code project is to develop a tool with which to transparently proxy applications that use the Wayland protocol to be displayed by compositors. Unlike the original X protocol, only part of the data needed to display an application is transferred over the application's connection to the compositor; instead, large information transfers are made by sharing file descriptors over the (Unix socket) connection, and updating the resources associated with the file descriptors. Converting this side channel information to something that can be sent over a single data stream is the core of this work. The proxy program I have developed for the project is called Waypipe. It can currently be found at (I am currently looking for a better stable path at which to place the project; the preceding URL will be updated once this is done.) A few distributions have already packaged the program; see here; alternatively, to build and run the project, follow the instructions in the README and the man page. My work is clearly identified by the commit logs, and amounts to roughly ten thousand lines of C code, and a few hundred of Python. Read more Also: Vulkan 1.1.120 Released As The Newest Maintenance Release

The ClockworkPi GameShell is a super fun DIY spin on portable gaming

Portable consoles are hardly new, and thanks to the Switch, they’re basically the most popular gaming devices in the world. But ClockworkPi’s GameShell is something totally unique, and entirely refreshing when it comes to gaming on the go. This clever DIY console kit provides everything you need to assemble your own pocket gaming machine at home, running Linux-based open-source software and using an open-source hardware design that welcomes future customization. The GameShell is the result of a successful Kickstarter campaign, which began shipping to its backers last year and is now available to buy either direct from the company or from Amazon. The $159.99 ( on sale for $139.99 as of this writing) includes everything you need to build the console, like the ClockworkPi quad-core Cortex A7 motherboard with integrated Wi-Fi, Bluetooth and 1GB of DDR3 RAM — but it comes unassembled. Read more

KNOPPIX 8.6.0 Public Release

Version 8.6 basiert auf → Debian/stable (buster), mit einzelnen Paketen aus Debian/testing und unstable (sid) (v.a. Grafiktreiber und aktuelle Productivity-Software) und verwendet → Linux Kernel 5.2.5 sowie Xorg 7.7 (core 1.20.4) zur Unterstützung aktueller Computer-Hardware. Read more English: Knoppix 8.6 new public version is finally out !