Bonum Certa Men Certa

Links 7/4/2021: “Getting Things GNOME” Reaches 0.5, IBM Boasts Its Role in Masters



  • GNU/Linux

    • Server

      • How do China's supercomputers and wind tunnels function in its aircraft design?

        Tianhe-2 uses nothing but Intel processors. Moreover, both systems' operating system is Linux. Compilers on all Chinese supercomputers — the software that translates and optimizes human logic instructions into machine-readable format — all come from U.S.-invented GNU or Intel.

      • How MSP Thomas Peer saved 15 days with Linux

        Victoria-based MSP Thomas Peer recently realised the value that the simplicity of Linux-based systems can bring through a backup-as-a-service deployment.

        Lead engineer Chris Stone said he was “really impressed” by the time, effort and (above all) cost savings that were gained by using Linux VMs over Windows.

        Based on Veeam, the deployment was across all of Event Hospitality & Entertainment’s hotels, which are dispersed across Australia and New Zealand.

        At first, Stone explained, it was simply a cost-cutting exercise.

    • Audiocasts/Shows

    • Kernel Space

      • PulseAudio 15 Lands mSBC Codec Support To Enable Bluetooth Wideband Speech

        While PipeWire is being increasingly looked at by desktop Linux distributions as the future of audio/video stream handling on the Linux desktop, aside from Fedora most Linux distributions are so far being cautious in replacing PulseAudio. In any event, PulseAudio is showing no signs of letting up and continues seeing new feature development.

        The latest work to land on Monday for the PulseAudio sound server was mSBC codec support for its Bluetooth native headset backend. This mSBC codec support in turn allows for wideband speech to be supported for capable Bluetooth headsets interfacing with the Linux desktop by way of PulseAudio.

      • AMD Sends Out Linux Kernel Patches To Allow Disabling Predictive Store Forwarding (PSF) - Phoronix

        AMD last week published a security whitepaper on Zen 3's Predictive Store Forwarding (PSF) functionality introduced with Ryzen 5000 series and EPYC 7003 series processors. In the whitepaper they mentioned Linux patches were published for allowing this feature to be disabled if concerned about the security risk, well, today those patches were made public.

        Hitting the Linux kernel mailing list today were the five patches for mitigating Predictive Store Forwarding if desired. With a patched kernel, PSF remains on by default but can be disabled via the Spectre V4 mitigation control or by setting the nopsfd kernel parameter boot option to just force off this feature. Again, this is only relevant for Zen 3 (and presumably future) CPUs.

      • Linux 5.13 - Another Step In Prepping Intel Discrete Graphics, Preferring Local Memory - Phoronix

        Over the past two years we have seen a lot of Intel Linux kernel graphics driver work in preparing to support Intel discrete graphics cards. That work is still ongoing even for the DG1 graphics card that has been sampling to customers while Linux 5.13 will take things another step forward this summer.

        Much of Intel's discrete GPU bring-up for Linux has been restructuring of their i915 kernel driver to handle device-local memory. Up to now with their exclusively integrated graphics focus their video memory handling has been much simpler and made assumptions about always using system RAM. But now with discrete GPUs and having dedicated video memory, over the past two years has been a lot of video memory code changes to their driver as part of their bring-up for DG1 and future discrete graphics processors.

      • Graphics Stack

        • Apps to Monitor GPUs Using Open Source Drivers in Linux

          This article will cover a few useful applications that can be used to monitor statistics about AMD GPUs installed in your Linux system. These applications will only work properly and show correct information if you are using open source AMD GPU drivers (typically called AMDGPU drivers). If you have an AMD GPU, most Linux distributions should install and enable open source drivers automatically during OS installation. Since the release of “RX” series GPUs, open source drivers for AMD cards have improved leaps and bounds and now have performance almost at par with proprietary drivers. You should prefer open source drivers for AMD GPUs unless you are facing some hiccups or exceptions.

    • Formats

      • What is the HEIC File?

        HEIC or many people know it as HEIF, is an image format widely used to its tremendous benefits. However, this file format is not supported in many Linux machines, so it becomes hard to view these files on Linux OS.

        In case you have a Linux system and want to view HEIC files, then read the article below that mentions multiple procedures to open a HEIC file on the Linux machines without any trouble. Apart from it, you will get to know about the essential aspects of HEIC files.

    • Applications

      • Best command-line web tools for Linux

        The web is graphical; you cry from old habits. This is just what most sites have been made up to be. We all know that it starts with a documentation format called HTML! With the way websites work nowadays, we may believe that it is all images and video and incredible animations, not to mention cats. This means significant, complicated web browsers to find even the tiniest scrap of information. Your favourite browser carries a heavyweight on your system, and you have to be online to read it. But it does not have to be like this.

        Why Command-Line?

        The truth is slightly different; much of the information on a web page, even YouTube, is text-based. You can use this to find and filter data to suit your needs. On top of that, if you want to avoid tracking, it could be good to consider the offline reading of many webpages. Another reason is to collect information for scraping projects. Scraping a web page means finding the information you need with software, usually machine learning, to conclude. If you need help with a programming problem, those sites are made to work with text-based browsers, so if you need them, you can stay on the command-line.

      • Changes in technologies supported by syslog-ng: Python 2, CentOS 6 & Co.

        Technology is continuously evolving. There are regular changes in platforms running syslog-ng: old technologies disappear, and new technologies are introduced. While we try to provide stability and continuity to our users, we also need to adapt. Python 2 reached its end of life a year ago, CentOS 6 in November 2020. Using Java-based drivers has been problematic for many, so they were mostly replaced with native implementations.

        From this blog you can learn about recent changes affecting syslog-ng development and packaging.

    • Instructionals/Technical

      • Chrome and Chill: Here are 13 basic Linux Commands You Should Know

        In your journey to discovering the Linux terminal in chromeOS, it is essential that you put the basics to rest for a well-rounded experience as you proceed. I’ll do my best to make the case scenario where these tools really shine in my overview below. Consider this a continuation of our Linux series and connect with Chromies by signing up

      • Jelmer Vernooij: Automatic Fixing of Debian Build Dependencies

        In my last blogpost, I introduced the buildlog consultant - a tool that can identify many reasons why a Debian build failed.

        For example, here’s a fragment of a build log where the Build-Depends lack python3-setuptools:

      • How To Install Jellyfin on CentOS 8 - idroot

        In this tutorial, we will show you how to install Jellyfin on CentOS 8. For those of you who didn’t know, Jellyfin is an open-source media streaming tool that allows you to build your own home media systems, such as your personal Netflix or Plex. With Jellyfin you organize your media content (book, movies, music, etc.) and stream to any device from your own server, with no strings attached. Jellyfin supports GNU/Linux, macOS, and Microsoft Windows operating systems.

        This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you through the step-by-step installation of the Jellyfin open-source media stream on a CentOS 8.

      • How to Check Swap Memory in Linux – Linux Hint

        Are you reaching maximum usage of your swap memory?

        Stuck?

        How to see swap memory in your Linux system?

        You just landed at the right place to get unstuck. I am going to discuss some better and perfect new ways of observing swap memory for you. I’m using Lubuntu 20.04 to demonstrate all these processes. Lubuntu is a lightweight distro and runs effectively on most of the hardware.

        Let’s begin.

      • Linux df Command

        The “df” is a standard command in Linux, and Unix-like systems termed “Disk Filesystem.” It is used to display consumed and available disk space for the specific file system. Whenever you run this Linux command-line utility, it displays the amount of used and available blocks, total disk space, and a summary of where the file system is mounted.

        In short, the dubbed “df” command is a helpful tool to get disk space information having file name arguments.

      • Linux Column Command

        While using Linux distributions, some of the data needs to be displayed in columnar format. Linux system makes it easy to display content in columns using the “column” command. The “column” command is a simple command-line utility to print the file contents in columns. This command-line tool supports multiple options containing proper functionality that are worth considering.

        When using the “column” command in a terminal, it ignores blank lines by default.

        If we have data displayed in multiple columns, the command will start to display the data from the left side to the right side i-e; it will begin to add content in the left column first and then move towards the right columns.

      • Hwclock Command – Linux Hint

        The “hwclock” is a command-line utility for both Linux and Unix-like operating systems to access Hardware Clock. It is also termed as Real-Time Clock (RTS) or BIOS clock. The Hardware Clock is quite different from the clock that is managed by the Linux kernel. It runs when the system is running, and it even remains active when the machine is turned off as it is independent of the operating system you are using.

      • How to share Linux Mint 20 Desktop

        In various situations, we need to access other desktops or share our desktops with other people. Accessing someone else’s desktop or sharing our desktop with others over the internet is remote desktop sharing. For instance, if you need to troubleshoot someone’s computer or work in a group, then the work can be done smoothly by sharing the desktop. TeamViewer is a popular and multi-platform desktop sharing application.

        In this article, we will install TeamViewer and share the Linux Mint 20 desktop with other computers.

      • How to Open Tar file Linux

        There are multiple files available on the internet which are downloadable for Linux but compressed as a tar file. Tar files store different files and squeeze them to keep the space and bandwidth in the downloading procedure.

        These tar files work like a portable container to store various files, and it is also known as a tarball. However, many people can’t find out how to open a tar file in Linux, so you also want to learn how to open tar files and then read our article. This article will cover complete information on how to open tar files in Linux without facing errors.

      • How to Install Kdenlive on Linux Mint 20 – Linux Hint

        Kdenlive is a free, open-source, and multi-platform video editor. It can support MP4, MKV, and my other formats. Using Kdenlive, you can add effects and transitions to your video. Moreover, it also allows us to render the video in any format.

        We can install Kdenlive on Linux Mint 20 through the Software Manager utility, PPA repository, and snap application manager.

      • How to Install GCC compiler on Linux Mint 20 – Linux Hint

        The GNU compiler collection, which is the abbreviation for GCC, contains multiple compilers for various languages like C, C++, Go, etc. Using GCC, you can easily compile your programs on Linux Mint. Many open-source projects, including Linux Kernel, are compiled using the GCC compiler.

        The build-essential package contains the GCC compiler, debugger, and many additional development tools. By installing the build-essential package, we can use GCC compiler on Linux Mint.

      • How to Check Graphics Card Details in Linux – Linux Hint

        A GPU or graphic card is becoming essential for any system as it offers excellent compatibility to run heavier tools, software, and games on a system. It is necessary to know about the graphics card and its specification to run software on your machines according to its requirements. However, many Linux users face issues while checking the specification of their graphic card so if you are one of them, then read this article thoroughly.

        This article has all of the required information to check what graphics card you have in Ubuntu and its tech specs. We are using the Ubuntu system as a Linux OS as it is widely used as a Linux distro all over the world.

      • How to Install and Use MEGA Cloud Drive Sync on Linux Mint – Linux Hint

        MEGA is a multi-platform application that syncs our files and folders between the local computer and the online MEGA cloud server. All the changes made locally on a personal computer will automatically be synced on the cloud server. MEGA provides a client application for Linux desktops, including Linux Mint. MEGA offers a free 50 GB of storage on the cloud. Moreover, you can also buy more storage if you use more than 50 GB of space.

        This post explains the installation and usage of MEGA cloud drive Synch on Linux Mint.

      • Linux lshw Command – Linux Hint

        The Linux Operating System’s beauty is that it allows users to do anything using a command-line tool. You can download applications, fetch information, or even whatever you want to intend can be done using the terminal. To extract hardware information of the system, the Linux system introduced the command-line utility “lshw.”

        The “lshw” command is a small tool to display a complete picture of hardware configuration. While using this command in a terminal, you will get a print of CPU version, memory configuration, cache information, bus speed, and other PowerPC machines running on the backend.

        It is a simple command-line tool, but to display complete information, you must be a super-user; otherwise, it will print partial information.

      • How to Open a GZ File in Linux – Linux Hint

        There are various tools to compress any file to minimize its size for saving storage. GZ files are squeezed through the “GZIP” tool, which is a little bit similar to the zip file. GZIP is one of the most popular compression programs that decrease any file size while keeping the original timestamp, ownership, and file mode. Generally, this compression is used for compressing the web elements to reduce the load time of webpages. However, many people don’t know how to open a GZ file; we will cover complete details on opening a GZ file in Linux.

      • How to Enable Two-factor Authentication for SSH in Fedora Linux – Linux Hint

        In the information technology world, security is a major concern these days. Every day new and sophisticated attacks are launched against organizations. System administrators use different ways to harden the security of their servers. One of the common ways to interact with a server is using the SSH (or Secure SHell) protocol which is widely used for remote logging to a server. Besides remote shell logins, it is also used for copying files between two computers. Unlike other methods like telnet, rcp, ftp, etc., SSH protocol uses an encryption mechanism to secure the communication between two hosts.

        The security provided by the SSH protocol can be further enhanced by using two-factor authentication. This will further put a strong wall between your host computer and the attackers. To connect to your remote server with SSH, you will require a password as well as a verification code (or OTP) from an authenticator application running on your mobile device. This is really helpful if an attacker steals your password, he will not be able to login into your server without the verification code.

        There are many authenticator applications available for mobile devices running Android or Apple IOS. This guide has used the Google Authenticator application for both the Fedora server and the mobile device.

      • How to Install Vinagre Remote Desktop Client on Linux – Linux Hint

        Vinagre is a remote desktop client created by the GNOME project. Vinagre supports multiple remote desktop protocols.

      • How to Homelab: Considerations for adding a Domain to your Gear

        I get asked often how you go about adding a domain to your homelab. While it's a relatively easy thing to do, the process differs greatly depending on the gear you have. In this mostly-lecture video, I go over some thoughts and considerations for adding a domain to your lab.

      • How to create a VirtualBox virtual machine backup on a Linux host - TechRepublic

        Your data center might depend on virtual machines (VMs), and you might use VirtualBox for some of those VMs. If that's the case, what do you do when disaster strikes? Do you already have a plan set in motion for such an eventuality? You should. In fact, you must.

      • How to create an SQS queue on AWS using Terraform

        In this article, we will create an SQS queue using Terraform in "region = eu-west-3". We will also add a policy that will allow all to send messages to the queue. Before we proceed with the article, it is assumed that you already have a basic understanding of SQS and Terraform as well. After you create an SQS queue, click here if you want to learn to create a subscription between SQS and SNS as it is not in the scope of this article. In this article, we will create a standard queue. Click here if you want to know more about arguments and properties available in Terraform for SQS. You can use those properties to customize the SQS queue.

      • How to install Friday Night Funkin' Multiplayer on a Chromebook

        Today we are looking at how to install Friday Night Funkin' Multiplayer on a Chromebook. Please follow the video/audio guide as a tutorial where we explain the process step by step and use the commands below.

      • How to view and monitor log files in Linux

        If you’re a systems administrator, you know the importance of log files. Without those crucial bits of saved information, you might not know where to start troubleshooting issues on your servers. With that information on hand, you are empowered to not only troubleshoot but better optimize your servers for the task at hand.

        If you’ve been a Windows admin for years, you know how to view the necessary log files. But what about those Linux servers that are now taking over your data center and populating your cloud hosts? You’ll need to know how to view those log files as well. And since you might be looking at an unfamiliar platform, it might behoove you to get to know how to monitor those Linux log files.

      • Understanding the Linux Virtual Directory Structure

        Beginning Linux users are met with a huge mountain of information to learn. What is this terminal thing? How do I run software updates? Which distro do I choose? Those are all common questions. However, there’s a question that still plagues many more experienced Linux users: what’s in each of the directories in the Linux virtual directory system? Here we cover everything from “/” to “/boot” in our guide to the Linux virtual directory system.

        What Is Linux Virtual Directory System?

        A Virtual Directory System is a way of organizing files and directories in a computer operating system. The reason why it’s called “virtual” is that there’s no actual physical component – on Window, you have your “C:” drive, “D:” drive, and so on. On Linux, all physical disks are treated as files in your virtual directory system. This is where the phrase “everything is a file” comes from. Even the disk in your system that you’re working off of for your operating system is treated as a file.

      • Add Google Suggestions to System Search in Ubuntu 20.04 via Extension

        Want to get Google search suggestions in your system search results? There’s now an extension to enable the feature in Gnome Desktop.

        Google Search Provider is the extension inspired by DuckDuckGo Search Provider. With it, typing any keyword in the Activities overview or ‘Show Applications’ search box will display Google search suggestions. And you can click to open the result in your favorite web browser.

    • Games

      • 8-bit inspired horror Sunshine Manor to release this Fall and has a new trailer up | GamingOnLinux

        Bringing on some 8-bit inspired horror, Sunshine Manor from Fossil Games is confirmed to be releasing this Fall and the developer put out a new trailer.

        Another game that was successfully funded from Kickstarter, Sunshine Manor is a standalone prequel to their previous game Camp Sunshine. It's designed as a love-letter to retro gaming and classic 1980s horror films. Taking inspiration from movies such as From Beyond, Friday the 13th, and A Nightmare on Elm Street, while mixing gameplay mechanics from games such as the beloved – and long-running - The Legend of Zelda, Resident Evil and Silent Hill series.

      • Steam on FreeBSD | [bobulate]

        Steam is a gaming platform that sells and manages games on Windows and Linux. Since FreeBSD has some pretty good Linux emulation, it is possible – with some footnotes – to run Linux Steam Games on FreeBSD. This was already possible in 2016 but the tooling keeps being updated, so let’s take a look at how things work.

      • Take on procedurally-generated bosses in Whisker Squadron from the dev of Race The Sun

        Race The Sun was a wonderful little game released back in 2013 and now Flippfly LLC are back with a new more combat-focused game called Whisker Squadron that might scratch your Star Fox itch.

        "Whisker Squadron is brought to you by the team who made Race The Sun. We are building on that game's technology to combine silky smooth, immersive flight with roguelike elements, to create an experience that's unlike anything on the market today. If you liked Starfox, you'll love the character banter and playful story. If you liked Race The Sun, you'll feel right at home with the forward-moving action and smooth controls. If you liked tactical roguelikes such as FTL or Slay The Spire, you're going to love the special events between worlds and tactical upgrade choices."

      • Vectorio is a new free to play survival tower defense game out on Steam | GamingOnLinux

        If you love tower defense games mixed with a little real-time strategy try out Vectorio, a new Early Access release on Steam that blends them together and it's free too.

        The main objective in Vectorio is simply to expand and claim the map in the one game mode currently available. A simple idea but it does end up quite tense! As you expand, your heat level rises and as it does so more and more enemies will be attracted towards you. A fun idea for gamers who love base building and optimising defences. You also have power to keep in mind so you can't just overload your defences as you will end up completely overrun.

    • Desktop Environments/WMs

      • K Desktop Environment/KDE SC/Qt

        • KDE Plasma 5.21.4, Bugfix Release for April
          Plasma 5.21 was released in February 2021 with many feature refinements and new modules to complete the desktop experience.

          This release adds three weeks' worth of new translations and fixes from KDE's contributors. The bugfixes are typically small but important and include...

        • Reuse Licensing Helper

          For the past couple of years Andreas Cord-Landwehr has done excellent work on moving KDE in a more structured licensing direction. Free software licensing is an often overlooked topic, that is collectively understood to be important, but also incredibly annoying, bureaucratic, and complex. We all like to ignore it more than we should.

          If you are working on KDE software you really should check out KDE’s licenses howto and maybe also glance over the comprehensive policy. In particular when you start a new repo!

          I’d like to shine some light on a simple but incredibly useful tool: reuse. reuse helps you check licensing compliance with some incredibly easy commands.

          Say you start a new project. You create your prototype source, maybe add a readme – after a while it’s good enough to make public and maybe propose for inclusion as mature KDE software by going through KDE Review. You submit it for review and if you are particularly unlucky you’ll have me come around the corner and lament how your beautiful piece of software isn’t completely free software because some files lack any sort of licensing information. Alas!

      • GNOME Desktop/GTK

        • “Getting Things GNOME” 0.5 released!

          This release of GTG has been 9 months in the making after the groundbreaking 0.4 release. While 0.4 was a major “perfect storm” overhaul, 0.5 is also a very technology-intensive release, even though it was done in a relatively short timeframe comparatively.

          Getting Things GNOME 0.5 brings a truckload of user experience refinements, bugfixes, a completely revamped file format and task editor, and a couple of notable performance improvements. It doesn’t solve every performance problem yet (some remain), but it certainly improves a bunch of them for workaholics like me. If 0.4 felt a bit like a turtle, 0.5 is a definitely a much faster turtle.

        • Tobias Bernard: Permanent Revolution

          10 years ago today was April 6, 2011.

          Windows XP was still everywhere. Smartphones were tiny, and not everyone had one yet. New operating systems were coming out left and right. Android phones had physical buttons, and webOS seemed to have a bright future. There was general agreement that the internet would bring about a better world, if only we could give everyone unrestricted access to it.

          This was the world into which GNOME 3.0 was released.

          I can’t speak to what it was like inside the project back then, this is all way before my time. I was still in high school, and though I wasn’t personally contributing to any free software projects yet, I remember it being a very exciting moment.

        • GNOME Internet Radio Locator 4.0.1 with KVRX on Fedora Core 33

          GNOME Internet Radio Locator 4.0.1 with KVRX (Austin, Texas) features updated language translations, new, improved map marker palette with 125 other radio stations from around the world with live audio streaming implemented through GStreamer.

    • Distributions

      • Screenshots/Screencasts

      • SUSE/OpenSUSE

        • Telegram Bridge - Zoltán's Blog

          I got lucky with my original hackweek project and I have managed to set up my Leap 15.3 based NAS and private cloud running on NextCloud earlier than planned. So I though that as an extra project I will set up a proper system monitoring service. The monit service is very handy (thanks for the idea to Paolo Stivanin) but by default it wants to send emails when something goes wrong. Instead of emails I would prefer a real instant message. I am using mostly Telegram for personal purposes. Sure I am using Signal, Matrix, Slack and Rocket.Chat too and technically I have WhatsApp account too. But I decided to start with Telegram. Installing and configuring monit was easy and quick. The monit is using so called alert where it can execute any shell command.

        • SUSE Sponsors 300 Scholarships in Cloud Native Education
        • Upgrading to the next PostgreSQL version

          We upgraded our internal PostgreSQL cluster to the latest version last week.

          Time passes by so quickly: we installed our PostgreSQL cluster around 2008. At least, this was the time of the first public MirrorBrain release 2.2, which was the reason to run a PostgreSQL installation for openSUSE. But MirrorBrain (and therefor the PostgreSQL cluster behind it) is way older. So maybe it’s fair to say that MirrorBrain started with openSUSE in 2005…?

          Anyway: if you maintain a database for such a long time, you don’t want to loose data. Downtimes are also not a good idea, but that’s why we have a cluster, right?

          While the MirrorBrain database is currently still the biggest one (>105GB in size and ~120 million entries alone in the table listing the files on the mirrors), our new services like Matrix, Mailman3, Gitlab, Pagure, lnt or Weblate are also not that small any more. All together use currently 142GB.

          We already upgraded our database multiple times now (starting with version 7. in the past). But this time, we decided to try a major jump from PostgreSQL 11 to 13, without any step in between.

      • IBM/Red Hat/Fedora

        • Summary from the Diversity & Inclusion Team Meetup

          Fedora’s Diversity & Inclusion Team held a virtual meetup on Sunday March 21st, 2021. We had more than 20 attendees, with three main planning sessions and a Storytelling Workshop. The team had a successful event connecting, processing, and looking towards the future. The Storytelling Workshop was a fun way to unwind after a day of meetings and do something different as a team.

        • Yep, the 'Who owns Linux?' case is back from the dead

          It seemed like a classic April The First spoof. Indeed, some tech titles had it on their lists of best pranks of the day. But it's true: the software zombie court case to end all zombie software court cases has woken from its slumber. Nearly 29 years after it first lurched from the crypt, SCO v The World Of Linux is back, and it smells just as bad as ever.

          The details need not worry us: they were bad enough at the time. Have a look at this timeline if you want to follow the trail of dead.

          At its most basic, the whole saga started with the reanimated Unix dev corpse SCO Group claiming it owned the rights to core technology in Unix and Linux, and that everyone else was using them illegally. An opening court case against IBM was followed by a salvo of letters demanding money from 1,500 companies, then the pre-IBM Red Hat countersued to stop the nonsense.

        • Linux on Oracle Cloud Infrastructure: Using Storage in your cloud made easy with short training videos

          In this week’s Training Tuesday blog, we present a set of free, short videos on storage topics related to your Linux cloud instances. These videos demonstrate how to attach various types of cloud storage to your Linux instances and how to create shared cluster storage for Linux instances in Oracle Cloud Infrastructure.

        • Kafka Monthly Digest – March 2021

          This is the 38th edition of the Kafka Monthly Digest! In this edition, I’ll cover what happened in the Apache Kafka community in March 2021.

          For last month’s digest, see Kafka Monthly Digest: February 2020.

        • A developer goes to the Masters: Round 1

          Two of my greatest passions in life are sports and technology. So, I feel incredibly fortunate that I’m a Technology Program Manager for IBM Sports & Entertainment Partnerships, the team that produces the digital experience with some of the greatest sporting events in the world, like the US Open Tennis Championships and Wimbledon.

          In this role, I’ve had some incredible experiences, attending iconic events and meeting world-renown athletes. But, today I fulfilled a long-held dream. Today, I set foot on Augusta National Golf Club, the home of the Masters.

        • Accelerating Network Packet Processing on RHEL 8.3 with Intel Gen 3 Ice Lake Xeon

          With the push towards wide-scale 5G and edge service deployments, it’s important for Digital Service Providers (DSPs) to have a solid foundation for responding to customer challenges and requirements. Red Hat Enterprise Linux 8 offers several benefits for DSPs. With improved operating system performance, DSPs can take advantage of better throughput to deliver enhanced user experience for their customers.

          With the release of Red Hat Enterprise Linux (RHEL) 8.3 and building on our successful collaboration with Intel, Red Hat has extended the list of certified hardware to include Intel’s 3rd Gen Xeon Scalable processors (code-named Ice Lake, model Platinum 8360Y), and support for Intel’s latest 100Gb network adapter, the E810 series.

        • Announcing Red Hat regional leadership appointments

          Earlier this year we announced changes to our global sales leadership, and as Larry Stack takes on the role of executive vice president of Global Sales and Services, we’re excited to announce changes to our regional leadership team. Dirk-Peter (DP) van Leeuwen, previously senior vice president and general manager in Asia Pacific, has been named senior vice president and general manager of North America Commercial Sales. Marjet Andriesse, who joined Red Hat as vice president of Sales in Asia Pacific in October 2020, succeeds van Leeuwen in leading the company’s Asia Pacific region as vice president and general manager. Both appointments are effective immediately and van Leeuwen and Andriesse will report to Stack.

      • Debian Family

        • Debian KDE/Plasma and Digikam Status 2021-04-07 | There and back again

          Two months have passed since the last status update, but not much has changed since Debian is more or less frozen for the release of Bullseye, and only critical bugfixes are allowed. As reported before Debian/bullseye will have Plasma 5.20.5, Frameworks 5.78, Apps 20.12. Debian/experimental already carries Plasma 5.21.4 and Frameworks 5.80, and that is also the level at the OSC builds.

        • Osmo crash fixed

          Note that we use version 0.2.10 of osmo, as that is the last that uses libhtml2 for markup. Later versions of osmo require webkitgtk, which is an enormous package. libhtml2 is small and is used in a couple of other apps in EasyOS and the pups. One of them is Notecase, the other is Surfer (the small html file viewer used in EasyOS for viewing local help documents). So please don't recommend that we upgrade osmo! We will keep patching it for as long as we can. It is suggested in the Murga Forum thread linked-to above, that libxml2 version is to blame. I found that 2.8.0 is too old, a required function is missing. However, 2.9.0 works. What I have done is build the osmo executable by linking it statically with libxml2.a from the 2.9.0 package. This results in a somewhat larger 'osmo' binary, that works in EasyOS and there is no conflict with the later version libxml2 shared libraries in Easy.

        • Ventoy

          There is a new application available for Sparkers: Ventoy

      • Canonical/Ubuntu Family

        • Best Graphical Backup Tools for Linux Mint

          Creating the backup is an important activity to be carried out if you are working on sensitive data. For instance, if you have some sensitive official documents on your hard drive and lost your hard drive, your necessary data is gone. Therefore, having a backup of your confidential and essential data is always a wise decision. From the backup, you can quickly restore your data at any time.

          For Linux Mint, there are several graphical tools available for creating backups.

          This post discusses the best graphical backup tools for Linux Mint.

    • Devices/Embedded

    • Free, Libre, and Open Source Software

      • Google Posts Initial Code For Lyra Speech Codec

        Back in February we covered Google's work on the Lyra voice/audio codec designed for fitting with very low bit-rate audio for speech compression in use-cases like WebRTC and video chatting even on the most limited Internet connections. Thanks to leveraging machine learning, Lyra can function at just 3kbps. The code to Lyra is now public.

        Lyra when originally announced by Google back in February sounded quite promising with their effort to allow for video chats over 56kbps Internet connections when Lyra is paired with the AV1 video codec. Getting decent voice quality at 3kbps was quite an engineering feat but made possible via their machine learning work.

      • Signal Just Made One Years Worth Of Server-Side Source Code Available In One Huge Dump

        Signal Messenger LLC forgot to update the GitHub repository for the server-side part of their Signal messaging application for almost one year. Their last git commit to the Signal server was done on April 22nd, 2020 - until someone there remembered that they had promised to be a "open source" company a few hours ago. Signal just pushed a massive source code dump with all the code commits for Signal Server v3.21 to v5.48 to their public GitHub repository.

        [...]

        The new public code commits are accurately dated, reflecting the dates when the code was added to a private repository. That makes it look as if Signal has been pushing their code updates to git all along if you just glance at the commit history on their public GitHub repository. Signal Messenger LLC has apparently been using a git version control system all along, they were just not making their code commits public.

        Tume, our source in the Systems Analyst / Game Developer / FLOSS community who informed us about this code dump, has not been able to find any official statement explaining why Signal Messenger LLC seemingly forgot to update their Signal-Servers public repository for almost one year or why they suddenly remembered.

      • Web Browsers

        • Mozilla

          • [Reposted] Firefox Proton is Almost Ready. Here’s What’s New and How to Enable.

            The new Firefox design change – code-named “Proton” is almost ready for release. Let’s take a look at how it looks and how to enable it.

            The Proton design is in “work-in-progress” for quite some time and we reported a quick preview earlier. They were mostly wireframe design, not a real prototype at that time. However, the developers worked over the months and we have the Proton design refresh is available in Firefox Nightly which you can try right now.

            The Firefox Proton will be released as default with Firefox 89 due in May 2021. So that means, we have almost 1.5 months until the final release of this new Firefox look. Let’s dive in.

          • Firefox Is Making WebRender The Default Rendering Engine On Linux This Month And There Is A Facelift Coming In May

            The Firefox web browser is finally making the long-anticipated WebRender rendering engine the default on GNU/Linux when Firefox 88 is released later this month. WebRender, developed as apart of the "Quantum" project, has been optionally available since Firefox 67. It's not impressive performance-wise, but it doesn't hurt either. There's also a new configuration switch that makes enabling VAAPI hardware video decoding easier. More is planned, a improved, or perhaps just slightly different, interface will arrive when Firefox 89 is released towards the end of May.

            [...]

            Mozilla integrated the WebRender rendering engine from Servo into Firefox and made it optionally available when Firefox 67 was released on May 21st, 2019. It has been possible to turn it on by flipping gfx.webrender.all to true in the special configuration page you can get typing about:config in the address bar since then, but it has so far not been a default. That will change when Firefox 88 is released on April 20th.

          • A Better Replacement for ls

            This old addage is valuable advice that has been passed down through generations. But it hasn’t stopped these people from rewriting command line tools perfected 30+ years ago in Rust.

            This week we’ll take a quick look at exa, a replacement for ls. So why should you ignore the wise advice from the addage and replace ls? Because there are marginal improvements to be had, duh! Although the improvements in this case are far from marginal.

      • FSF

        • Results of Debian Vote On Stallman To Be Known By April 17

          During the organization's LibrePlanet virtual event on March 19, Stallman announced that he was rejoining the board and does not intend to resign again. His return has drawn condemnation from many people in the free software community. Just days after his announcement, an open letter calling for Stallman to be removed again and for the FSF's entire board to resign was signed by hundreds of people.

        • GNU Projects

          • libredwg @ Savannah: libredwg-0.12.4 released
          • poke @ Savannah: [VIDEO] Terminal Hyperlinks in GNU poke

            Terminal Hyperlinks are a new way for programs to print click-able text in terminals and terminal emulators. Along with the app:// protocol, the hyperlinks can be used to greatly enhance the experience of using CLI (command-line interface) programs. We are making extensive usage of this novel feature in GNU poke and we are very happy with the results.

          • GCC 11 Lands A Last Minute Optimization For Intel Skylake - Phoronix

            While Skylake was introduced a half-decade ago already, Intel's open-source engineers aren't done relentlessly optimizing for it and subsequent 14nm processors. Hitting the GCC 11 open-source compiler today was an optimization for benefiting Skylake through the likes of Cascade Lake with some possible performance benefits.

            Intel open-source compiler expert H.J. Lu merged a patch he posted a few days prior to the GCC mailing list. The patch that landed this morning is updating the memcpy and memset inline strategies for Skylake family CPUs.

      • Programming/Development

        • Clang precompiled headers and improving C++ compile times, conclusion

          With Clang12 almost released, I guess it's high time to write a conclusion to the Clang11 changes that improve compilation times with PCHs. I originally planned to do this after the Clang11 release, but with the process to get the changes reviewed and merged having been so tedious I was glad it was finally over and I couldn't at the time muster the little extra effort to also write this down (I spent way more time repeatedly writing 'ping' and waiting for a possible reaction than writing the code, which was really demotivating). But although the new options are described in the Clang11 release notes, I think it'd be useful to write it down in more detail.

          First of all, I've already written why C++ developers might care, but a thousand pictures can be worth more than a thousand words saying how this can save you even 60% of the build time...

        • Experiment on your code freely with Git worktree

          Git is designed in part to enable experimentation. Once you know that your work is safely being tracked and safe states exist for you to fall back upon if something goes horribly wrong, you're not afraid to try new ideas. Part of the price of innovation, though, is that you're likely to make a mess along the way. Files get renamed, moved, removed, changed, and cut into pieces. New files are introduced. Temporary files that you don't intend to track take up residence in your working directory.

          In short, your workspace becomes a house of cards, balancing precariously between "it's almost working!" and "oh no, what have I done?". So what happens when you need to get your repository back to a known state for an afternoon so that you can get some real work done? The classic commands git branch and git stash come immediately to mind, but neither is designed to deal, one way or another, with untracked files, and changed file paths and other major shifts can make it confusing to just stash your work away for later. The answer is Git worktree.

        • Teach anyone how to code with Hedy | Opensource.com

          Learning to code involves learning both the programming logic and the syntax of a specific programming language. When I took my first programming class in college, the language taught was C++. The first code example, the basic "Hello World" program, looked like the example below.

        • Hacks.Mozilla.Org: Eliminating Data Races in Firefox – A Technical Report

          We successfully deployed ThreadSanitizer in the Firefox project to eliminate data races in our remaining C/C++ components. In the process, we found several impactful bugs and can safely say that data races are often underestimated in terms of their impact on program correctness. We recommend that all multithreaded C/C++ projects adopt the ThreadSanitizer tool to enhance code quality.

          What is ThreadSanitizer?

          ThreadSanitizer (TSan) is compile-time instrumentation to detect data races according to the C/C++ memory model on Linux. It is important to note that these data races are considered undefined behavior within the C/C++ specification. As such, the compiler is free to assume that data races do not happen and perform optimizations under that assumption. Detecting bugs resulting from such optimizations can be hard, and data races often have an intermittent nature due to thread scheduling. Without a tool like ThreadSanitizer, even the most experienced developers can spend hours on locating such a bug. With ThreadSanitizer, you get a comprehensive data race report that often contains all of the information needed to fix the problem.

        • Eliminating Data Races in Firefox – A Technical Report
        • Fully Digital Automotive HMIs Now Available for Everyone

          As an Automotive HMI crew, we wonder how to make the digital experience available for everyone. Our objective was to define the automotive HMI solution of a fully digital dashboard from premium cars in a much simpler and cost-effective way.

          We focused on modern HMI UI and automotive components by using a single MCU. Nowadays, automotive hardware has rapidly become more powerful. In parallel, we can now use new tools for the rapid development of production-ready interfaces.

          Teamed-up with Qt & NXP, we created the HVAC demo in a real case scenario for the automotive market. The demo is using dual-core architecture, dedicated GPU acceleration, and shared memory. All that gives a constant 60 fps on the newest NXP board with Qt for MCUs technology.

        • What are Progressive Web Apps?

          These days, there's an app for everything – from banking to styding and from trading to shopping. Every business has an app, and even our governments have simplified their services into app form. But wait a minute – building and mantainig an app is cumbersome, and it's quite expensive for small businesses.

        • Python

          • Django 3.2 released

            The Django team is happy to announce the release of Django 3.2.

            This version has been designated as a long-term support (LTS) release, which means that security and data loss fixes will be applied for at least the next three years. It will also receive fixes for crashing bugs, major functionality bugs in newly-introduced features, and regressions from older versions of Django for the next eight months until December 2021.

          • Django 3.2 released

            Version 3.2 of the Django web framework is out; it has been designated as a long-term-support release.

          • Django 3.2 release notes

            Welcome to Django 3.2!

            These release notes cover the new features, as well as some backwards incompatible changes you’ll want to be aware of when upgrading from Django 3.1 or earlier. We’ve begun the deprecation process for some features.

            See the Upgrading Django to a newer version guide if you’re updating an existing project.

            Django 3.2 is designated as a long-term support release. It will receive security updates for at least three years after its release. Support for the previous LTS, Django 2.2, will end in April 2022.

          • Create an E-Commerce Site With Django and Vue.

            It is estimated that there are 24 million eCommerce websites on the internet. Do you want to learn how to make one more?

            We released a course on the freeCodeCamp.org YouTube channel that will teach you how to create an e-commerce website using Django and Vue.

            This course was developed by CodeWithStein. He has created many great tutorials on his YouTube channel and we wanted to bring him to a wider audience.

            To watch this course, it would be helpful to have at least some knowledge of both Python and JavaScript since Django uses Python and Vue uses JavaScript.

          • How to use Django Inclusion tag

            Django framework uses different types of templates to present the data of the application. The Django admin interface uses the custom template tag. The looks of these interface elements, such as buttons, fields, etc., are the same for all pages. The Django developer can define the custom template tag and filter to the extent the template engine and the new template tag can be used using the {% custom_tag %}. The template tag that is used to display data by rendering another template is called the inclusion tag. The way of using the inclusion tag in the Django template is shown in this tutorial.

          • Use of default value of NULL in Django Model

            Model is one of the significant parts of the database-based Django application. The model defines the structure of the database. The data type of the database table and the way of inserting data based on different attributes are described in the Model. The data validation can be controlled by using the model also. Each table in the database contains a particular number of fields or columns. The model defines the type of each field of the table. The default attribute is used in the model to set a default value for a particular area if the user for that field inserts no data. The default value of a field can be blank or any specific value. The null and blank values are not the same. null is used to define that the empty value is allowed or not for a particular field. If the null is set to False, then the empty string will not be permitted in the integer-typed field, but the empty string can be assigned in the string-typed field. If the null is set to True, then the NULL value will be given in the integer-typed field in place of an empty string. blank is used for the form validation mainly and does not check the field’s data type. The way of using default and null attributes in the Django model has shown in this tutorial.

          • How to use the PYTZ module of Python – Linux Hint

            Date and time values vary based on the zone. These values are needed to change for those Python applications that require dealing with international users. According to the zone, the dateTime module of Python cannot convert the date and time values. This problem can be solved by using the pytz module of Python. This module is not installed in Python. So, you have to install this module before using it in the script. How the pyzt module can be installed and used in Python, have shown in this tutorial.

        • Java

          • JetBrains Releases Projector For Swing

            JetBrains has released the initial version of Projector, an open source tool and framework for running JetBrains IDEs and Swing apps remotely over your network.

            Swing is a lightweight graphical toolkit for Java that provides a wide range of widgets.It is part of Oracle's Java Foundation Classes (JFC) that provide a GUI for Java programs, is written in Java, and is built on top of the AWT (Abstract Windowing Toolkit) API. It goes further than AWT in providing platform-independent and lightweight components including buttons, checkboxes, menus and radio buttons. IDEs such as Android Studio and JetBrains IDEs use Swing for the UI part of applications.

  • Leftovers

    • Integrity/Availability

      • Proprietary

        • Pseudo-Open Source

          • Privatisation/Privateering

            • Linux Foundation

              • OpenHPC Announces the Release of OpenHPC v2.1 [Ed: The so-called 'Linux' Foundation keeps outsourcing everything to Microsoft's proprietary software trap because Microsoft pays it to enhance GitHub monopoly]

                OpenHPC is pleased to announce the release of OpenHPC, v2.1. This is an update release for the OHPC 2.x branch targeting support for CentOS8 and OpenSUSE Leap 15. This update release provides a number of component updates and two package additions.

        • Security

          • Security updates for Tuesday

            Security updates have been issued by Debian (chromium, netty, python-bleach, and python3.5), Fedora (libmediainfo, libzen, and mediainfo), Mageia (openssl), openSUSE (chromium), Red Hat (389-ds:1.4, flatpak, kernel, kernel-rt, kpatch-patch, libldb, and virt:rhel and virt-devel:rhel), and Ubuntu (python-django and ruby-rack).

          • Hardened ROS with 10 year security from Open Robotics and Canonical [Ed: Longterm-security-patches-as-a-service]

            Canonical and Open Robotics announced today a partnership for Robot Operating System (ROS) Extended Security Maintenance (ESM) and enterprise support, as part of Ubuntu Advantage, Canonical’s service package for Ubuntu. ROS support will be made available as an option to Ubuntu Advantage support customers. As a result, users already taking advantage of critical security updates and Common Vulnerabilities and Exposures (CVE) fixes now have a single point of contact to guarantee timely and high quality fixes for ROS.

            Together, the two companies support the robotics community by making ROS robots and services easier to build and package, simpler to manage, and more reliable to deploy.

            “With ROS deployed as part of so many commercial products and services, it’s clear that our community needs a way to safely run robots beyond their software End-Of-Life dates. Canonical’s track record delivering ESM, together with our deep understanding of the ROS code base, make this partnership ideal. Ubuntu Linux has been central to the ROS project from the beginning, when we released ROS Box Turtle on Ubuntu Hardy over a decade ago” says Brian Gerkey, CEO of Open Robotics. “We’re excited to be part of this offering that will enable users to access quality support from both organizations.”

          • What is ROS Extended Security Maintenance?

            Developing robots is not like building apps or IoT devices. Robots balance complex features such as scene awareness, social intelligence, physical intelligence, communication, dialogue, learning from interaction, memory, long-term autonomy, safe failure… the list goes on and on.

            As a result, robotics startups can take years to get to a minimum viable product (MVP). As code develops and packages change, the Robot Operating System (ROS) needs to be continuously patched and updated. This is time consuming and detracts from your robotics development, but running unpatched and unmaintained versions of ROS exposes your robot, company and customers to serious risk.

            Once deployed, robots are expected to last years on-site, meaning robotics companies either need to factor in OS and software upgrade into their maintenance plans, or run on unsupported software. This also affects those developing services for robots such as fleet management solutions, navigation or computer vision systems.

          • Cook: Security things in Linux v5.9

            Kees Cook has posted a long list of security-related improvements that made it into the 5.9 kernel release.

          • Reproducible Builds: Supporter spotlight: Ford Foundation [Ed: Taking money from evil oligarchs will only tarnish the image of Debian. Plutophilia is problematic. Reproducible Builds ought to focus on removing back doors risk, not doing greenwashing and hagiographies for polluters who enabled Nazism (literal Nazis).]

            The Reproducible Builds project relies on several projects, supporters and sponsors for financial support, but they are also valued as ambassadors who spread the word about the project and the work that we do.

            This is the second instalment in a series featuring the projects, companies and individuals who support the Reproducible Builds project. If you are a supporter of the Reproducible Builds project (of whatever size) and would like to be featured here, please let get in touch with us at contact@reproducible-builds.org.

            We started this series by featuring the Civil Infrastructure Platform project, but in today’s post we are speaking with Michael Brennan, the program officer on the Technology and Society team at the Ford Foundation.

          • PodSecurityPolicy Deprecation: Past, Present, and Future

            PodSecurityPolicy (PSP) is being deprecated in Kubernetes 1.21, to be released later this week. This starts the countdown to its removal, but doesn’t change anything else. PodSecurityPolicy will continue to be fully functional for several more releases before being removed completely. In the meantime, we are developing a replacement for PSP that covers key use cases more easily and sustainably.

            What are Pod Security Policies? Why did we need them? Why are they going away, and what’s next? How does this affect you? These key questions come to mind as we prepare to say goodbye to PSP, so let’s walk through them together. We’ll start with an overview of how features get removed from Kubernetes.

          • Privacy/Surveillance

            • Facebook Leaked 533 Million Users Private Data

              Facebook can't keep themselves out of trouble, fairly recent Facebook had another really big data leak. Well maybe, the data may not be as recent as initially thought but a lot of the data is still going to be very valuable for bad actors.

            • Further Info Given on Verkada Security Cameras Hack

              Last month, it was learned that the security cameras for police departments, hospitals, prisons, and schools were hacked. All the cameras involved in the breach were connected to the Verkada security firm. Further information has now been learned on how this hack was carried out.

    • Monopolies

      • KOL331 | Phil Gibson: A Boy Named Pseu

        Kinsella on Liberty Podcast, Episode 331. This is my appearance on Phil Gibson's podcast A Boy Named Pseu. From his shownotes: Stephan Kinsella is an attorney and libertarian writer. We discuss: Libertarianism Patents Trademarks Intellectual Property Economics [See Knowledge vs. Calculation] Bitcoin and then some…

      • Patents

        • The Next Chief Judge: Judge Moore [Ed: Moore was often leaning towards patent maximalists and lobbyists, so this isn't exactly good news (if true)]

          Chief Judge Prost took over as Chief at the end of May 2014 just after Judge Rader stepped-down from the position. The position lasts for seven years and that date is approaching in May 2021. In addition, the statute prohibits a judge from being Chief Judge once they turn 70 years old. Judge Prost is also turning 70 toward the end of May 2021. 28 U.S.C. 45. Thus, we’ll have a new Chief Judge within the next 7 weeks or so.

          [...]

          Assuming that Judge Moore takes to the role and remains Chief Judge for her full 7 year term, the next Judge on deck will be Judge Chen in 2028. Since all of the current Judges are >50 years old, none would be eligible for the subsequent go-round in 14 years.

        • The biggest change to European patent law in a generation rests on the fate of two German constitutional challenges [Ed: Patent litigation profiteers can't wrap their heads around the fact that the UPC died; it won't be until 2023 (maybe) that we'll know what they try to do next...]

          On 18th December 2020 the German government approved the legislation required to ratify the Unified Patent Court Agreement. This allows the German government to trigger the arrival of a new European patent court and a new pan-European patent. However, since the legislation was approved, the German Constitutional Court has received two new constitutional complaints in relation to the legality of the Agreement under German national law. The last such complaint delayed the new system by several years. As before, the German president is waiting for news from the Constitutional Court before signing the required legislation into law. So the new complaints may cause a significant delay to the project, or they might otherwise be handled quickly enabling the new system to come into force in around 2022.

          The new system is made up of the Unified Patent Court (UPC) and the Unitary Patent (UP). UPs would be a new option for the fate of a patent application granted by the European Patent Office (EPO) following examination under the current system. A UP would have unitary effect across all participating member states, providing coverage for ultimately 24 countries via a single unitary right. The UPC would have exclusive jurisdiction over UPs and all EPs granted by the EPO, including those already granted (subject to transitional provisions). The UPC’s rulings would be enforceable across all of the participating member states. More information on the new system can be found on our website here.

        • Software Patents

          • Federal Circuit dismisses Uniloc 2017's appeal [Ed: Also see background to this notorious patent troll]

            On March 31, 2021, the Federal Circuit granted a motion to dismiss Uniloc 2017's appeal in Case No. 21-1644 (see below). The appeal stemmed from IPR2019-01126, in which Unified received a final written decision finding all of the challenged claims of U.S. Patent 6,519,005 unpatentable under two independent grounds. The patent relates to a method for motion estimation for a digital video encoder.

      • Copyrights

        • Over a decade on, and millions in legal fees, Supreme Court rules for Google over Oracle in Java API legal war

          The US Supreme Court on Monday ruled in a 6-2 decision that Google's limited copying of Oracle's Java APIs in its Android operating system constitutes fair use under US law.

          The ruling puts an end to a case that troubled the software industry for more than a decade and narrows the scope of copyright law as it applies to software.

          The court had two questions before it: whether software interfaces qualify for copyright protection and whether Google's use of Oracle's software interface code represents fair use, assuming the Java APIs can be copyrighted.

          Oracle filed its lawsuit against Google in 2010, claiming copyright and patent infringement for Google's use of Java APIs in Android. In 2012, after the patent claims had been dismissed, US District Court Judge William Alsup ruled that Oracle's Java APIs did not qualify for copyright protection. In 2014, the US Court of Appeals for the Federal Circuit disagreed. Google then asked the Supreme Court to review the decision but its petition was denied.

        • Supreme Court rules that Android Java usage is fair use in win for Google over Oracle
          In 2019, Google asked the Supreme Court to review Oracle’s long-running lawsuit over whether Android’s usage of Java was fair use. The Supreme Court this morning sided with Google and overturned Oracle’s win following a lower court ruling three years ago.

          This suit dates back to Oracle’s 2010 purchase of Java developer Sun Microsystems. After the acquisition, the new language owners sued Google, claiming that Android’s use of Java entitled them to an $8.8 billion slice of the operating system’s business and $475 million in lost potential licensing revenue.

        • Supreme Court sides with Google in years long fight with tech giant Oracle
          The Supreme Court weighed into a decade-old battle Monday between tech firms Google and Oracle, finding the search giant was allowed to use thousands of lines of code to build the Android platform found in mobile devices.

        • The US Supreme Court just handed Google a huge win in its massive Android lawsuit
          It's been over a decade since Oracle first began its lawsuit against Google over the use of parts of the Java platform in Android. Today, the United States Supreme Court finally ended it, with Google being the long-protracted winner. While the relevant bits of Java haven't been used by Android in years, the end of this court battle sets a precedent in US copyright law that will be important for almost anyone making software platforms in the future.

        • Google wins decade-long battle against Oracle over Java on Android
          Google has just secured a major win for Android. The company has been locked in a decade-long battle with Oracle over its use of Java code in earlier Android versions. Oracle sued Google after purchasing Sun Microsystems, which developed the Java platform. Oracle claimed that Google stole its property when it copied code based on Java APIs to develop Android and attract developers, seeking almost $9 billion in damages.

        • Supreme Court sides with Google over Oracle in case of Android code
          The US Supreme Court has ruled for Google in the battle between the search giant and Oracle over the architecture of Google's Android operating system. In a 6-2 decision published Monday and written by Justice Stephen Breyer, the court ruled that "Google's copying of the Java SE API, which included only those lines of code that were needed to allow programmers to put their accrued talents to work in a new and transformative program, was a fair use of that material as a matter of law."

        • Supreme Court rules that Google's use of Java APIs in Android represent fair use
          Oracle, if you recall, filed suit against Google in August 2010, alleging its Android mobile operating system infringed upon Java patents Oracle acquired following its purchase of Sun Microsystems.

          Specifically, Google copied roughly 11,500 lines of code from 37 Java application programming interfaces (APIs) “to allow the millions of programmers familiar with the Java programming language to work with its new Android platform.”

        • Google Stock Rises As Supreme Court Rules Against Oracle In Android Software Dispute
          The U.S. Supreme Court on Monday ruled in Alphabet's (GOOGL) favor in a copyright dispute with Oracle (ORCL) involving Android software, in a decision that could have broader implications for technology developers. Google stock climbed into a buy zone.

        • Google wins legal duel with Oracle over Android's use of Java code
          In a 6:2 verdict the US Supreme Court ruled on Monday (05 April) that Google did not violate the copyright law by copying Java API code owned by Oracle, overturning an earlier Appeals Court’s ruling in Oracle’s favour back in 2018. The Supreme Court sided with Google’s argument that the copying of the code was “fair use” when Android APIs were developed.

          The case was first filed in 2010 by Oracle after it bought Sun Microsystems, who created the Java programming language, therefore assumed the ownership of the software. Oracle alleged that Google, having refused a commercial licence arrangement, copied over 11,000 lines of the most recognisable portions of the Java platform and used it in a competing platform (Android), therefore violated the copyright law that protects software.

        • Google v. Oracle - The Final Shoe Drops

          The Supreme Court ruled yesterday in Google v. Oracle that Google did not infringe Oracle's copyright in its APIs by virtue of fair use. The vote was 6-2, with Justice Breyer writing for the Court, and Justices Thomas and Alito dissenting.

          The opinion was straightforward and went to great lengths to attempt to explain the technology at issue. I thought it did a decent job of it (definitely more Godot than Guffman), even as the opinion continued to struggle for a good analogy. The Court adopted the file cabinet/drawer/folder analogy presented in Google's brief, which I thought was a terrible analogy...so I guess there's no accounting for taste (or winning advocacy). The court's fair use analysis was influenced by Judge Boudin's concurrence in Lotus v. Borland, though that concurrence didn't actually call it fair use, but instead "privileged use."

          Others have and will surely write about the fair use aspects and what this means for software APIs. Contrary to Oracle's ridiculous and vitriolic press statement yesterday, this case will likely not change the way anyone in the industry behaves in the least. APIs have been used and reused for decades, and will continue to be. And contrary to being a barrier to entry, reuse of APIs allows for competitive inroads and entry, including by Oracle, in its mimicry of Amazon's AWS API. (Indeed, the hubris of Oracle's statement in light of its implementation of another company's API is stunning.)

          The opinion also has some nuggets for other fair use - discussion of transformation and art, definition of markets for determining harm, another reaffirmation of Campbell v. Acuff-Rose Music, fair use as a mixed question of law and fact (something I discussed in a prior blog post), and so forth.

          Instead, I will focus on my hobby horse-whether the APIs are copyrighted, and if so how we get to non-infringement. The Supreme Court explicitly decided that the copyrightability of APIs is a third-rail and did not attempt to touch the issue. There are two ways to read the tea leaves. First, perhaps a majority of the court thought they were uncopyrightable, but feared the effects of saying so. Second (and my guess), perhaps a majority of the court (or a 4-4 split) thought that they were copyrightable, but fair use was an acceptable compromise. The second possibility is why I wrote and submitted my amicus brief, which was intended to give a path to non-infringement even if the APIs were copyrightable.

        • Google v. Oracle and the Mixed Question of Law and Fact

          In Google LLC v. Oracle Am., Inc., 593 U. S. ____ (2021), the Supreme Court spends a few pages walking through procedural aspects of the fair use defense.

          Like many patent law doctrines, fair use is a mixed question of law and fact. The defendant’s use of the asserted copyrighted work and its impact on the plaintiff are typically factual issues that must be proven by evidence as weighed by the factfinder (often a jury). These are questions such as “how much of the copyrighted work was copied” and “whether there was harm to the actual or potential markets for the copyrighted work.” Google at 19. However, the questions of law emerge when we are categorizing the importance of the factual findings as well as asking the ultimate question of whether the use was a fair use.

          The fact-law divide comes up in various ways: Is there a Constitutional right to a jury trial on the issue; lacking that may a jury still decide the issue; does proof require evidence (as defined by the Federal Rules of Evidence) proven to a particular standard; or instead do we simply look for the ‘right’ answer; on appeal, what is the standard of review — deference or not? Fact/Law also comes up in patent prosecution, but examiners are not charged with making the distinction and the rules of evidence don’t apply.

          At the trial court this leads to the very practical question of how easily a judge can dispose of the issue pre-trial. Questions of law are often easy to determine pre-trial; some mixed questions are also relatively easy to determine pre-trial if there is no right to a jury determination; mixed questions involving substantial factual disputes and a right to a jury trial are hard. In patent cases, courts are regularly making pre-trial determinations on claim construction and eligibility, both of which are ultimately questions of law but that can involve underlying factual determinations. Obviousness is another mixed question. Although the ultimate determination of obviousness is a question of law, it is treated differently from claim construction and eligibility. Rather than being decided by a judge, obviousness is typically decided by a jury as fact-finder. The difference is that obviousness typically requires detailed factual determinations that are hard to separate from the ultimate conclusion of obviousness and that are subject to a Constitutional right to a jury trial.



Recent Techrights' Posts

2025 Will be Fought and Fraught With LLM Slop or Fake 'Articles' (Former Media/News Sites Turning to Marketing Spam)
The elephant in the room?
Brittany Day Can Rest and Let Microsoft/Chatbots Write Fake 'Articles' About "Linux" This Christmas
Who said people don't work on Christmas? Chatbots or plagiarism-as-a-service work 24/7, every day of the year except during Microsoft downtimes
 
Microsoft Openwashing Stunts Initiative (OSI) is A Vulture in "Open" Clothing
it's quite telling that the OSI isn't protecting the Open Source Definition
Gemini Links 25/12/2024: Reality Bites and Gopher Thanks
Links for the day
Links 26/12/2024: Japan-China Mitigations and Mozambique Prison Escape (1,500 Prisoners)
Links for the day
Links 26/12/2024: Ukraine's Energy Supplies Bombed on Christmas Day, Energy Lines Cut/Disrupted in the Baltic Sea Again
Links for the day
Gemini Links 26/12/2024: Rot Economy, Self-hosted Tinylogs
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Wednesday, December 25, 2024
IRC logs for Wednesday, December 25, 2024
[Meme] Time to Also Investigate Bill Gaetz
Investigation overdue
IBM Has Almost Obliterated or Killed the Entire Fedora Community (Not IBM Staff)
Remaining Fedora insiders are well aware of this, but bringing this up (an "accusation" against IBM) might be a CoC violation
Links 25/12/2024: Fentanylware (TikTok) Scams and "Zelle Scams Lead to $870M Loss"
Links for the day
Links 25/12/2024: Windows TCO Brought to SSH, Terence Eden 'Retires'
Links for the day
Links 25/12/2024: Latest Report Front Microsoft Splinter Group, War Updates
Links for the day
Links 25/12/2024: Hong Kong Attacks Activists During Holidays, Xerox to Buy Lexmark
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Tuesday, December 24, 2024
IRC logs for Tuesday, December 24, 2024
Gemini Links 25/12/2024: Open Source Social and No Search
Links for the day
Brittany Day Connects Windows Ransomware to "Linux" Using Microsoft LLMs (FUD Galore, Zero Effort, No Accountability)
FUD and misinformation made by Microsoft LLMs again?
Links 24/12/2024: Labour Strikes and TikTok Scrambling to Prop Up Radical Politicians That Would Protect TikTok
Links for the day
Where the Population is Controlled by Skinnerboxes Inside People's Pockets (or Purses)
A very small fraction of mobile users practise or exercise freedom/control over the skinnerbox
[Meme] Coin-Operated Publishers (Gaming the Message, Buying the Narrative)
Advertise (sponsor) to 'play'
Advertisers and Their Covert Impact on Publications' Output (or Writers' Topics of Choice, as Assigned or Approved by Editors)
It cannot be trivially denied that sponsorship in the form of "advertising" impacts where publishers go (or don't go, won't go)
Terrible Year for Microsoft Windows in Cyprus
down from 86% to 72% since January
[Meme] How to Kill Unions (Staff on Shoestring Budget Cannot Afford Lawyers)
What next for the EPO? "Gig economy"?
The EPO's Staff Union (SUEPO) Takes Legal Action to Rectify the Decrease in Wages (Lessening of Purchasing Power)
here is what the union published
Gemini Links 24/12/2024: Deedum Gemini Client Gets Colour Support, Advent of Code 2024
Links for the day
Microsoft Windows Slides to New Lows in Colombia
Now Windows is at an all-time low
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Monday, December 23, 2024
IRC logs for Monday, December 23, 2024