Bonum Certa Men Certa

Links 9/2/2021: KWinFT 5.21 Beta, Microsoft Inside Rust Foundation Board, and ECharts as a Top-Level Project (TLP) in Apache



  • GNU/Linux

    • Audiocasts/Shows

      • LHS Episode #392: Display Server Deathmatch

        Hello and welcome to the 392nd episode of Linux in the Ham Shack. In this episode, the hosts discuss amateur radio related horror films, an ISS EVA snafu, ham radio in the BSA, YOTA, Microsoft on the Raspberry Pi, software freedom, display servers and much more. We hope you enjoy this episode and also have a safe and prosperous upcoming week.

      • New Kernel To Change Linux Gaming Forever
      • Destination Linux 212: SUSE Interview with Gerald Pfeifer (CTO at SUSE & Chairman of openSUSE Board) - Destination Linux

        This week we are joined by Dr. Gerald Pfeifer, the Chief Technology Officer of SUSE and Chairman of the openSUSE Board for an interview about SUSE, openSUSE & his journey in Linux. Later in the show, we’re also covering Ubuntu’s new fluttering Desktop Installer and in the gaming section, we’ll travel to the viking world of Valheim. Plus we’ve also got our famous tips, tricks and software picks. All of this and so much more this week on Destination Linux.

    • Kernel Space

      • Network adaptive streaming with Hwangsaeul

        When flying above a cityscape, we can't demand our wireless provider to build more base stations or ask the passersby to kindly refrain from watching cat videos on their phones and let our stream through. We can't fix the network, but maybe we can adapt to it.

        Hwangsaeul, or H8L, a remote surveillance streaming solution, utilizes the capability of libsrt to collect statistics from open SRT sockets and by continuously analyzing the available data tries to detect potential connectivity issues. When a problem is diagnosed, a customizable logic may decide to change some parameters of the video encoding process, sacrificing quality to preserve smooth and steady streaming at lower bitrate.

      • Graphics Stack

        • Panfrost Gallium3D Lands Its New Bifrost Scheduler In Mesa 21.1 - Phoronix

          Hitting Mesa 21.1 this morning is a scheduler implementation for Panfrost Gallium3D, the open-source Arm Mali graphics driver.

          Lead Panfrost developer Alyssa Rosenzweig has been working to implement a scheduler in panfrost for the Arm Bifrost graphics code path. The scheduler has been in the works for a number of months and is passing the relevant conformance tests and has now been merged.

        • AMDVLK 2021.Q1.3 Brings Performance Tuning For War Thunder - Phoronix

          AMDVLK 2021.Q1.3 is out this morning as the latest snapshot of the official open-source AMD Radeon Vulkan driver for Linux systems that is derived from their shared platform driver sources.

          AMDVLK 2021.Q1.3 is on the lighter side with AMDVLK 2021.Q1.2 having arrived just over one week ago.

          Of the two listed driver changes, AMDVLK 2021.Q1.3 is rebuilt against the Vulkan API 1.2.168 headers.

        • Freedreno's MSM DRM Driver Adds More Adreno Support, Speedbin Capability For Linux 5.12 - Phoronix

          The MSM Direct Rendering Manager driver originally developed as part of the Freedreno effort for open-source Qualcomm Adreno graphics on Linux while now supported by the likes of Google and Qualcomm's Code Aurora engineers has some notable changes in store for the next Linux kernel cycle.

          New Adreno hardware support coming with Linux 5.12 is the A508, A509, and A512. The Adreno 508 is part of the Snapdragon 630 SoC, the mid-range Adreno 509 is found with the Snapdragon 636, and the Adreno 512 is what was found in the Snapdragon 660.

        • Intel "Protected Xe Path" Code Updated For Hardware-Protected GPU Sessions - Phoronix

          Intel PXP -- Protected Xe Path -- is a means of hardware-protected sessions for graphics clients on Gen12 / Xe Graphics. The support code for enabling PXP with their open-source Linux driver stack was updated this past week.

          While it's still under a "request for comments" flag and too late for possibly seeing it come with the soon-to-open Linux 5.12 merge window, this Intel PXP functionality is moving along and will be important for Xe server GPUs in public cloud type deployments where protected sessions are desirable for better segregation between shared resources.

    • Applications

      • The Allure of The Terminal

        Ignore for a moment it’s a GNOME Terminal window on Ubuntu with the Yaru theme, it’s the contents of the window that’s alluring to me. That and the IBM Plex font showing it off so well.

        In around 1988, the first “IBM Compatible” I owned was an Epson 8086 PC with a Monochrome Display Adapter (MDA). It had a mono screen which could only output text, no graphics.

        In 1990, I had to upgrade to a Hercules Graphics Card if I wanted to see anything other than text and symbols from code page 437.

    • Instructionals/Technical

      • How To Login With A USB Flash Drive Instead Of A Password On Linux Using pam_usb (Fork) - Linux Uprising Blog

        pam_usb is a PAM module that provides hardware authentication for Linux using ordinary USB flash drives, SD cards, MMC, etc.

        Using this, you'll be able to login without a password, by simply connecting a USB stick or memory card to your computer. This USB authentication also works when running terminal commands that require superuser - you will not be prompted for a password when using sudo for example.

        pam_usb works with any application supporting PAM, such as login managers (GDM, Lightdm, etc.), and su / sudo.

        For authentication, pam_usb makes use of the USB flash drive / memory card serial number, model and vendor, as well as optional One Time Pads (OTP). When One Time Pads are enabled (this is enabled by default, but you can disable it), the public user pad file is stored on the USB / memory card in a hidden folder called .pamusb, while the private key is stored in a hidden folder with the same name, stored in the user home directory.

      • Enable Disable Unattended Upgrades in Ubuntu – Linux Hint

        Update packages are essential for the system to protect the data because these packages have specific security patches. However, Ubuntu’s feature called Unattended Upgrades installs all of the latest security-related updates automatically.

      • How to install Autodesk on a Chromebook - also known as Eagle

        Today we are looking at how to install Autodesk on a Chromebook, also known as Eagle, 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.

      • A Guide to the Wireshark Command Line Interface “tshark” – Linux Hint

        In the earlier tutorials for Wireshark, we have covered fundamental to advanced level topics. In this article, we will understand and cover a command-line interface for Wireshark, i.e., tshark. The terminal version of Wireshark supports similar options and is a lot useful when a Graphical User Interface (GUI) isn’t available.

        Even though a graphical user interface is, theoretically, a lot easier to use, not all environments support it, especially server environments with only command-line options. Hence, at some point in time, as a network administrator or a security engineer, you will have to use a command-line interface. Important to note that tshark is sometimes used as a substitute for tcpdump. Even though both tools are almost equivalent in traffic capturing functionality, tshark is a lot more powerful.

      • How to Install Oracle JRE on Fedora – Linux Hint

        Java is one of the most used programming languages. Due to its object-oriented nature, it is preferred by developers. Java can be used to develop Mobile, Desktop and Web-based applications. Java allows running java programs on many platforms with the help of JVM. JVM has a JRE or Java Run-time Environment that provides resources and class libraries to Java code for execution. JDK is only needed for developing Java applications.

      • How to Upgrade Fedora Linux? – Linux Hint

        Fedora is a Linux distribution that is sponsored by Red Hat. The best thing is that it is free and open source. It is also available for desktop, server, and IoT systems. It has a different desktop environment like KDE Plasma, XFCE, LXQT, etc.

      • How to Install MySQL on Fedora – Linux Hint

        MySQL is a database system that provides database services for storing and managing data. It is one of the popular open-source databases.

        MySQL comes with the following commercial products:

        MySQL Standard Edition MySQL Enterprise Edition MySQL Cluster Carrier Grade Edition

        All these editions come with a price tag and are mostly suitable for commercial use. We will use the MySQL Community Edition, which is available for free usage under the GPL license for our this guide.

      • Elasticsearch Shard List – Linux Hint

        Elasticsearch’s cat API is very handy because it allows users to view information related to various Elasticsearch engine resources in Compact and Aligned Text (CAT).

        This tutorial will show you how to use the _cat API to view information about shards in an Elasticsearch cluster, what node the replica is, the size it takes up the disk, and more.

      • Elasticsearch Shard Rebalancing Tutorial – Linux Hint

        An Elasticsearch shard is a unit that allows the Elasticsearch engine to distribute data in a cluster. In Elasticsearch, we say that a cluster is “balanced” when it contains an equal number of shards on every node without having a large concentration of shards on a single node. Depending on how you configure Elasticsearch, it automatically performs shards rebalancing in your cluster to improve performance.

        Automatic shard rebalancing conforms to restrictions and rules like allocation filtering and forced awareness, leading to the most efficient and well-balanced cluster possible.

        NOTE: Do not confuse shard reallocation, which is the process of finding and moving unassigned shards to the nodes in which they reside, with rebalancing. Rebalancing takes assigned shards and moves them evenly to various nodes, the purpose being the equal distribution of shards per node.

      • Elasticsearch Reindex in Place – Linux Hint

        Elasticsearch indexing is an important feature that allows the engine to perform fast and accurately.

        However, as you know, once data gets mapped into an index, it’s unmodifiable. To do this, you will need to reindex the data with the modifications you require. This process may lead to downtime, which is not a very good practice, especially for a service that is already in circulation.

        To circumvent this, we can use index aliases, which allow us to switch between indices seamlessly.

      • Elasticsearch Reindex Change Field Type – Linux Hint

        Working with databases is very fun but can sometimes be challenging, especially when dealing with already-existing data.

        For example, if you want to change the type of a specific field, it might require you to take the service down, which can have grave repercussions, especially in services that process large amounts of data.

        Fortunately, we can use Elasticsearch’s powerful features such as Reindexing, ingest nodes, pipelines, and processors to make such tasks very easy.

        This tutorial will show you how to change a field type in a specific index to another, using Elasticsearch Ingest nodes. Using this approach will eliminate downtime that affects services while still managing to perform the field type change tasks.

      • Elasticsearch Create User – Linux Hint

        Users, privileges, and permissions are some of Elasticsearch’s primary security features. Security features allow you to secure your clusters and manage how users interact with the engine.

        In this quick guide, we will examine how to enable Elasticsearch Xpack security features and how to use security API to create users and roles.

    • Games

      • Failbetter Games launched a Kickstarter for Mask of the Rose: a Fallen London romance | GamingOnLinux

        Mask of the Rose: a Fallen London romance is an upcoming romantic visual novel set in the same universe as Fallen London, Sunless Sea, and Sunless Skies. Considering their history you know it's going to be good, with deep writing and probably plenty of really weird characters to meet.

        "Mask of the Rose begins in 1862, just months after London was stolen by bats and relocated to the Neath: a vast cavern far below the earth. Down here, the sun doesn't shine, and Parliament has sunk into the Thames. Queen Victoria never emerges from her palace. Cats spy on their owners and whisper their secrets abroad. And it's rapidly becoming clear that London isn't going to be returning to the Surface any time soon…"

    • Desktop Environments/WMs

      • K Desktop Environment/KDE SC/Qt

        • Roman Gilg: The Windowing Revolution

          The beta for the upcoming 5.21 release of the KWinFT projects is now available. It contains a monumental rewrite of KWinFT's windowing logic. Read on for an overview of the changes and why this rewrite was necessary.

          A Confused Heart

          Let's define first what windowing logic is. In my definition this means all structures and algorithms in code to decide where a window should be stacked, placed, moved or in which other ways its geometry can be manipulated to allow the user to interact with and organize the totality of all windows.

          And if you agree to such windowing logic being of central importance for a windowing manager and what distinguishes it in the end from others, we may call it the heart of KWinFT.

          The KWinFT compositor is based on KWin, KDE's official compositor for the Plasma Workspace. KWin was founded over two decades ago. Necessarily some of its code is very old, does not adhere to any modern development principles and sometimes, due to changes in other levels of the graphics stack, it is just plain wrong.

          It is kind of unexpected though, that this has been in particular the case for the windowing logic, the heart of KWinFT. For example at the HEAD of KWin's current master branch do a git-blame over the ludicrous code in layers.cpp responsible for all window stacking and count how many lines are older than a decade.

          But old code is not necessarily bad. The reason why this old code is bad, is two-fold: for one under the leadership of the former maintainer the Wayland support was shoehorned into an already complex code base and secondly he followed a strategy to keep the old code untouched as much as possible. Instead of doing necessary incremental refactors to the old code, he tried to firewall it with an abundance of tests.

          For sure one can find reasons and excuses to pick such a strategy, but ultimately one has to say it failed. This can not be judged of course from the outside, but I feel comfortable in making this assessment as someone who knows the code in detail and because I am not the only one who abandoned his strategy.

        • KWinFT 5.21 Beta Pushes a "Monumental Rewrite" Of The Windowing Logic

          KDE developer Roman Gilg continues pushing ahead with KWinFT as a fork of the KWin window manager / compositor and other select components. He spent a lot of time last year better optimizing the X11 and Wayland handling while he's been relentlessly working this year to push it even further.

          Roman has released the KWinFT 5.21 Beta following what he describes as a "monumental rewrite" to the windowing logic as part of an overall "windowing revolution." For this windowing revolution Gilg has been working on flattening/simplifying the window/surface hierarchy, making the code cleaner and more comprehensible, and ultimately to improve the Wayland sub-surfaces support.

        • Autocrypt support in Kontact

          Autocrypt support is now in Kontact! This has been several weeks of work. Autocrypt makes it easier for you to use encrypted messages, as is handles key transfer for you automatically.

          There are several parts involved in supporting Autocrypt. First, Autocrypt uses Protected Headers, implemented already. Within Autocrypt I found some issues and fixed them. Than I began implementing the receiving of Autocrypt messages. The key concept of Autocrypt is to always send the public key within each email, so the receivers are always able to answer encrypted. The first step was extraction of the key and saving it to disk. Because Autocrypt sends keys unverified at the moment, I decided to not import the Autocrypt keys into the users' keyrings, but keep them separately in json files under ~/.local/share/autocrypt.

    • Distributions

      • Screenshots/Screencasts

        • Debian 10.8 Run Through

          In this video, we are looking at Debian 10.8.

        • Debian 10.8

          Today we are looking at Debian 10.8. It comes with Linux Kernel 4.19, XFCE 4.12, and uses about 400-500 MB of ram when idling.

      • SUSE/OpenSUSE

        • Reducing the scope of software.opensuse.org

          We have some exciting news to share regarding the consolidation of our web pages.

          [...]

          Both sites were offering similar functionality for downloading install media. Both sites had to be updated with every Alpha, Beta, or changes to media descriptions. The new reduced scope of software-o-o will be purely browsing of available software. The scope of get-o-o won’t change. It will be media downloads and pointers to relevant documentation such as installation or upgrade instructions. We believe that these changes will help to keep it small and simple.

          We’re happy to reduce duplication of efforts while not introducing further fragmentation as get.opensuse.org has been around for quite some time already.

      • IBM/Red Hat/Fedora

        • How to use Red Hat Insights to maintain your Linux systems

          Red Hat Insights is a Software-as-a-Service (SaaS) product that helps administrators report on applicable errata and known configuration issues as well as proactively identify security issues. Insights makes you aware of potential service-impacting problems before they happen, letting you plan how to address them before there is an issue that might affect production. Access to Red Hat Insights is included with every Red Hat Enterprise Linux (RHEL) subscription, so there is nothing extra to buy. This article covers the basics of how to register with Red Hat Insights, how to use it, and a couple of examples to demonstrate its remediation capabilities.

      • Canonical/Ubuntu Family

        • Ubuntu Backports a Major App Update to Ubuntu 20.04 LTS

          Thunderbird 78 is being backported to Ubuntu 20.04 LTS — no PPAs, Snaps, or Flatpaks required!

          Ubuntu 20.04 LTS shipped with Thunderbird 68.x but this version is no longer supported upstream. This leaves Ubuntu developers will a problem: backport individual security fixes to Thunderbird 68, or port the newer (and still-supported) Thunderbird 78 to LTS users?

        • Ubuntu Blog: Ubuntu in the wild – 9th of February 2021

          The Ubuntu in the wild blog post ropes in the latest highlights about Ubuntu and Canonical around the world on a bi-weekly basis. It is a summary of all the things that made us feel proud to be part of this journey. What do you think of it?

        • The Fridge: Ubuntu Weekly Newsletter Issue 669

          Welcome to the Ubuntu Weekly Newsletter, Issue 669 for the week of January 31 – February 6, 2021. The full version of this issue is available here.

        • Design and Web team summary – 8 February 2021

          The web team at Canonical run two-week iterations building and maintaining all of Canonical websites and product web interfaces. Here are some of the highlights of our completed work from this iteration.

    • Devices/Embedded

      • Ryzen Embedded V1807B AI Edge PC supports dual-slot graphics cards

        The embedded AI computer supports Windows 10/7 and Linux distributions, and can optionally wall-mounted via a mounting bracket. Vecow says the PC supports NVIDIA Tesla/Quadro/GeForce and AMD Radeon Graphics, as well as the latest NVIDIA RTX 30 series powered by Ampere architecture featuring DLSS AI acceleration up to max 10496 CUDA cores for expanded AI computing capability.

      • Lisperati1000 Lisp portable programming workstation features Raspberry Pi Zero W, ultra-wide display

        Conrad Barski (Lisperati) wanted a portable “workstation” to write in Lisp and see all those parentheses. Since there aren’t many devices with an ultra-wide display, he decided to build his own “Lisperati1000” ultra-compact Lisp programming workstation powered by a Raspberry Pi Zero W, and equipped with an ultra-wide 1920×480 8.8-inch display, a compact keyboard made of Cherry Brown switches, and a 4,400mAh dual battery all housed in a 3D printed enclosure.

      • Open Hardware/Modding

        • Arduino Blog €» eMBee ONE turns an Arduino and an Altoids tin into an ’80s-style pocket computer

          Matthew Begg wanted a pocket computer that had some of the charm of his 1980s vintage Casio FX-730P, so he decided to build his own.

          His prototype device uses an Arduino Nano to boot into BASIC, and features a 1.54″ OLED display as well as a PCB-based QWERTY keyboard. Power is provided via a pair of AAA batteries, along with a boost converter. Most notably, however, the entire thing is meant to fit inside of an Altoids tin.

        • ESP8266 board with 24-pin ATX connector drives RGB LED strips

          “Adding Open Hardware to Open Software for a More Equitable IoT” talk at FOSDEM 2021 discussed the importance of open-source hardware and software for IoT devices, notably to avoid getting a brick after the cloud service is suddenly terminated.

          Adrian McEwen then specifically talked about his “My Baby’s Got LED” ESP8266 open-source hardware board powered by… a USB charger? nope. A battery? You’ve got to be kidding. Instead, the ESP8266 board is equipped with an ATX connector taking a standard power supply found in PC towers and desktops.

      • Mobile Systems/Mobile Applications

        • Sailfish OS 4.0.1 No Longer Support The Jolla Phone But Has Many Other Improvements

          Jolla's Sailfish OS 4.0.1 was released this past week to early access subscribers as a major milestone for Sailfish OS 4.

          Sailfish OS 4.0.1 "Koli" is available currently to early access users since Thursday. With Sailfish OS 4.0.1, Jolla Phone is no longer supported as their original smartphone ambition. Supported by Sailfish OS 4 remain the Jolla C, Jolla Tablet, and Sony Xperia 10 / XA2 models, Gemini PDA x25/x27, and other select devices.

        • [release notes] Koli 4.0.1 - Announcements - Sailfish OS Forum

          Jolla Phone is not supported any more. OS release 3.4.0 was the last one for this device launched 7 years ago.

          The lowest supported kernel version of Sailfish 4 in the remaining Sailfish OS devices is 3.10. It is in Jolla C, Jolla Tablet and Xperia X

          The instructions for installing Sailfish OS to Sony Xperia X, Xperia XA2 and Xperia 10 devices are here - covering Windows, Linux, and macOS computers.

          Read this, please, to learn about the Sailfish X licence.

    • Free, Libre, and Open Source Software

      • The Apache Software Foundation Announces Apache€® EChartsâ„¢ as a Top-Level Project : The Apache Software Foundation Blog

        The Apache Software Foundation (ASF), the all-volunteer developers, stewards, and incubators of more than 350 Open Source projects and initiatives, announced today Apache€® EChartsâ„¢ as a Top-Level Project (TLP).

        Apache ECharts is an intuitive, interactive, and powerful charting and visualization library ideally suited for commercial-grade presentations. The project originated in 2013 at Baidu and entered the Apache Incubator in January 2018.

        [...]

        The project has recently released ECharts 5, which provides rendering ability for tens of millions of data points, and supports accessibility requirements in compliance with W3C’s Web Accessibility Initiative Accessible Rich Internet Applications Suite (WAI-ARIA) standards.

        Building on EChart’s core features, ECharts 5 makes it even easier for developers to tell the story behind the data through 15 new features and improvements in story-telling and data expression, optimized visualization and responsive design, interaction and performance enhancement, developer experience, internationalization, and more.

      • Events

        • Open source, teamwork and mental health: my FOSDEM 2021

          For the past 4 years I have participated to FOSDEM, a conference about free and open source software for developers. I love this event. It’s a welcome opportunity to see friends, watch great talks and drink excellent Belgium beer.

          This year unfortunately it was a remote event. The event was all managed via matrix, a decentralized communication system. There were a few network issues at the beginning, with a pick of more than 11.000 people simultaneously, but in general it went pretty smoothly.

          I participated mostly in the “community”, “open source design” and “web performance” rooms. Here is a little summary of what a saw. Hope there is stuff that might trigger your curiosity.

        • Handling PDF digital signatures with PDFium FOSDEM talk

          The next step in the recent PDFium-based signature verification story is my Handling PDF digital signatures in LibreOffice with PDFium talk at FOSDEM 2021, in the LibreOffice devroom (pre-recorded video). The talk gives you an overview of digital signing in general, all the ODF/OOXML/PDF handling, signing/verification, various other related past Collabora projects, and then goes into details regarding how PDFium was improved and is used to do a better PDF signature verification in LibreOffice when opening PDF files in Draw.

          The virtual room had around 150 participants and the Matrix based online conference was well-organized. Speakers even got a free t-shirt before the event, I appreciated the "bring your own beer" joke :-)

          An other benefit of this unusual setup was to avoid the dreaded room is full problems, where you carefully selected a talk to attend and then failed to hear it.

        • The State of Apache OpenOffice As Of Early 2021

          It's rare to hear of OpenOffice usage these days compared to LibreOffice, but the open-source office suite is still going ahead under its volunteer work at the Apache Software Foundation. This past weekend at FOSDEM 2021 was a status update on Apache OpenOffice.

          Peter Kovacs provided a status update on Apache OpenOffice on the work and milestones over the past year. Compared to LibreOffice 7.0 in 2020 with Vulkan rendering support and many other new features, Apache OpenOffice just had a maintenance release. But even with OpenOffice not being in the limelight like it once was, it's still seeing over one million downloads per month.

      • Web Browsers

        • Mozilla

          • Mike Taylor: Obsolete RFCs and obsolete Cookie Path checking comments

            The other day I was reading Firefox’s CookieService.cpp to figure out how Firefox determines its maximum cookie size (more on that one day, maybe) when the following comment (from 2002, according to blame) caught my eye:

            The following test is part of the RFC2109 spec. Loosely speaking, it says that a site cannot set a cookie for a path that it is not on. See bug 155083. However this patch broke several sites -- nordea (bug 155768) and citibank (bug 156725). So this test has been disabled, unless we can evangelize these sites. Note 1: Anything having to do with broken websites is wont to catch my attention, especially olde bugs (let’s face it, in 2002 the internet was basically the High Middle Ages. Like yeah, we were killing it with the technological innovation on top of windmills and we’re getting pretty good at farming and what not, but it’s still the Middle Ages compared to today and kind of sucked).

            Note 2: The two sites referenced in the Firefox comment are banks (see 155768 and 156725). And one of the axioms of web compatibility is that if you break a bank with some cool new API or non-security bug fix, game over, it’s getting reverted. And I’m pretty sure you can’t legally create test accounts for banks to run tests against and Silk Road got taken down by the feds.

      • CMS

        • WordPress Plugins

          Welcome back to WordPress 101 series. In this 4th part of the series, we’ll learn about WordPress plugins, the biggest reason behind WordPress’s massive usage on the Internet.

          From creating a simple blog to launching an e-commerce store, WordPress does it all very well. It solves some of the most frustrating problems when starting a new online business.

          Any business needs improvements. One may start a business website with a few products in the store. As the store sells more products, the website needs to be upgraded for better customer satisfaction. From launching a new customer forum to an entire professional customer support system, everything is extremely easy in WordPress.

      • Programming/Development

        • Macro in C language – Linux Hint

          A macro in C language is a piece of code which has been assigned a name. When the name is used anywhere in the program, the macro value is replaced before the program’s compilation. In this article, we will see in detail how to write a macro in C language.

        • Exception Handling in C++ – Linux Hint

          There are three types of software errors that exist. These are Syntax Errors, Logic Errors, and Runtime Errors.

        • C++ Qualifiers and Storage Class Specifiers – Linux Hint

          CV stands for Constant-Volatile. The declaration of an object that is not preceded by const and/or volatile is a cv-unqualified type. On the other hand, the declaration of an object that is preceded by const and/or volatile is a cv-qualified type. If an object is declared const, the value in its location cannot be changed. A volatile variable is a variable whose value is under the influence of the programmer, and hence cannot be changed by the compiler.Storage Class Specifiers refer to the life, place, and way in which a type exists. Storage class specifiers are static, mutable, thread_local, and extern.

          This article explains C++ Qualifiers and Storage Class Specifiers. Thus, some preliminary knowledge in C++ comes in handy to really appreciate the article.

        • Overloading in C++ – Linux Hint

          C++ does not allow a function that adds two integers and return an integer, to add two floats and return a float. Imagine that there is a function to add two integers and return an integer. Would it not be nice to have another function with the same name, that adds but two or even more floats to return a float? Doing so is said to be, overloading the first function. Arithmetic operators are typically used for arithmetic operations. Is it not nice to have the +, join two strings? Enabling that is said to be overloading the arithmetic addition operator, for strings.

          The increment operator, ++ adds 1 to an int or a float. When dealing with pointers, it does not add 1 to the pointer. It makes the pointer point to the next consecutive object in memory. An iterator points to the next object in a linked-list, but the linked-list objects are in different places in memory (not in consecutive regions). Would it not be nice to overload the increment operator for an iterator, to increment but point to the following element, in the linked-list?

          This article explains overloading in C++. It is divided into two parts: function overloading and operator overloading. Having already basic knowledge in C++ is necessary to understand the rest of the article.

        • Building The Linux Kernel With Clang Continues To Be Useful, New Features Pursued - Phoronix

          At last month's Linux.Conf.Au virtual conference was a presentation by Google engineer Nick Desaulniers on the current state of building the Linux kernel with LLVM Clang as an alternative to GCC.

          Over the past year the "ClangBuiltLinux" effort has continued maturing with more Linux kernel code issues resolved to improve the portability across compilers. The industry interest has been around using Clang to build the Linux kernel for reasons including ensuring better code portability / testing, making use of various LLVM/Clang functionality not offered currently by GCC, some vendors using Clang as their preferred code compiler for licensing or other reasons, and in the case of Google they have already been using Clang to build their Linux kernel for a while and have been working to upstream more of the support.

        • Shell/Bash/Zsh/Ksh

          • [Older] Bash Advanced Variable Idioms for Case Sensitivity Management

            Whenever we work with textual strings, sooner or later the issue of case comes up. Does a word need to be fully uppercase, fully lowercase, with a capitalized letter at the start of the word or sentence, and so on.

            An idiom is a natural language expression of a simple programming task. For example, in the sleep 10 command (which will pause the terminal one is working in for ten seconds), the word sleep is a natural language expression of what is a time based coding construct, developed in the Bash GNU coreutils software package.

            There are a number of special variable-bound idioms (i.e. suffixes which can be added to a variable name, indicating what we would like to do with a given variable), which can be used in Bash to more easily do these types of conversions on the fly instead of having to use for example the Sed Stream Editor with a Regular Expression to do the same.

        • Rust

          • The Rust language gets a foundation

            The newly formed Rust Foundation has announced its existence.

          • Rust Foundation Established To Steward The Rust Programming Language

            Mozilla has been sponsoring the Rust programming language for more than a decade while in 2020 as part of Mozilla's big round of layoffs most of the Rust team was let go along with dropping the Servo web engine team. Following that plans were drafted to create the Rust Foundation as an independent entity.

          • Hello World! [Ed: Microsoft is in the Board of the Rust Foundation]

            Today, on behalf of the Rust Core team, I’m excited to announce the Rust Foundation, a new independent non-profit organization to steward the Rust programming language and ecosystem, with a unique focus on supporting the set of maintainers that govern and develop the project. The Rust Foundation will hold its first board meeting tomorrow, February 9th, at 4pm CT. The board of directors is composed of 5 directors from our Founding member companies, AWS, Huawei, Google, Microsoft, and Mozilla, as well as 5 directors from project leadership, 2 representing the Core Team, as well as 3 project areas: Reliability, Quality, and Collaboration.

  • Leftovers

    • Integrity/Availability

    • Monopolies

      • Patents

        • Patent Term Adjustment: What Happens When Examiner Withdraws Case from Appeal?

          Chudik filed his patent application back in 2006. After receiving a final rejection back in 2010, Chudik filed a request for continued examination (RCE). At that point the examiner withdrew the prior rejection, but then rejected the claims on an alternative ground. Chukik appealed to the PTAB, but the Board did not get a chance to hear the case. Rather, the examiner again withdrew their rejection and re-opened prosecution with a new alternative ground for rejection. That appeal-withdraw-new-ground process happened again. Then it happened again.

          Now we’re up to 2017. Chudik had filed four appeals in the same case but the PTAB with the examiner backing-down each time. Finally, on the fourth go-round, the examiner issued a notice of allowance after withdrawing the rejection. His patent: US 9,968,459. Good job Chudik. The patent covers a medical device used in shoulder surgery. This is the type of invention that – if its use becomes widespread – will use-up the whole 20-year patent term.



Recent Techrights' Posts

Microsoft-Connected Sites Trying to Shift Attention Away From Microsoft's Megabreach Only Days Before Important If Not Unprecedented Grilling by the US Government?
Why does the mainstream media not entertain the possibility a lot of these talking points are directed out of Redmond?
Firefox Has Fallen to 2% in New Zealand
At around 2%, at least in the US (2% or below this threshold), there's no longer an obligation to test sites for any Gecko-based browser
 
GNU/Linux in Georgia: Looking Good
Windows down from 99% to less than 33%
Tomorrow is a Historic Day for Press Freedom in the UK
Take note of the Julian Assange case
Hiding in a Forest Without a Phone and Hiding Behind the First Amendment in the United States (US)
some serial defamer is trying to invert the narrative
Links 19/05/2024: Iran's President Lost in Helicopter Crash, WikiLeaks’ Julian Assange Awaits Decisions in Less Than a Day
Links for the day
Links 19/05/2024: Microsoft Investigated in Europe
Links for the day
4 Old Articles About Microsoft/IBM SystemD
old but still relevant
Winning Streak
Free software prevalence
Links 19/05/2024: Conflicts, The Press, and Spotify Lawsuit
Links for the day
GNU/Linux+ChromeOS at Over 7% in New Zealand
It's also the home of several prominent GNU/Linux advocates
libera.chat (Libera Chat) Turns 3 Today
Freenode in the meantime continues to disintegrate
[Teaser] Freenode NDA Expires in a Few Weeks (What Really Happened 3 Years Ago)
get ready
GNU/Linux is Already Mainstream, But Microsoft is Still Trying to Sabotage That With Illegal Activities and Malicious Campaigns of Lies
To help GNU/Linux grow we'll need to tackle tough issues and recognise Microsoft is a vicious obstacle
Slovenia's Adoption of GNU/Linux in 2024
Whatever the factor/s may be, if these figures are true, then it's something to keep an eye on in the future
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Saturday, May 18, 2024
IRC logs for Saturday, May 18, 2024
Links 19/05/2024: Profectus Beta 1.2
Links for the day
Site Archives (Not WordPress)
We've finally finished the work
[Meme] The EPO Delusion
on New Ways of Working
EPO Representatives Outline Latest Attacks on Staff
Not much has happened recently in terms of industrial action
Links 18/05/2024: Revisiting the Harms of Patent Trolls, Google Tries to Bypass (or Plagiarise) Sites Under the Guise of "AI"
Links for the day
Links 18/05/2024: BASIC Story, Site Feeds, and New in Geminispace
Links for the day
GNU/Linux in Kyrgyzstan: From 0.5% to 5% in Eight Years
the country is almost the size of the UK
Justice for Victims of Online Abuse
The claims asserted or pushed forth by the harasser are categorically denied
[Meme] Senior Software Engineer for Windows
This is becoming like another Novell
Links 18/05/2024: Deterioration of the Net, North Korean IT Workers in the US
Links for the day
Windows in Lebanon: Down to 12%?
latest from statCounter
[Video] 'Late Stage Capitalism': Microsoft as an Elaborate Ponzi Scheme (Faking 'Demand' While Portraying the Fraud as an Act of Generosity and Demanding Bailouts)
Being able to express or explain the facts isn't easy because of the buzzwords
Links 18/05/2024: Caledonia Emergency Powers, "UK Prosecutor's Office Went Too Far in the Assange Case"
Links for the day
Microsoft ("a Dying Megacorporation that Does Not Create") and IBM: An Era of Dying Giants With Leadership Deficits and Corporate Bailouts (Subsidies From Taxpayers)
Microsoft seems to be resorting to lots of bribes and chasing of bailouts (i.e. money from taxpayers worldwide)
US Patent and Trademark Office Sends Out a Warning to People Who Do Not Use Microsoft's Proprietary Formats
They're punishing people who wish to use open formats
Links 18/05/2024: Fury in Microsoft Over Studio Shutdowns, More Gaming Layoffs
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Friday, May 17, 2024
IRC logs for Friday, May 17, 2024
Links 18/05/2024: KOReader, Benben v0.5.0 Progress Update, and More
Links for the day
[Meme] UEFI 'Secure' Boot Boiling Frog
UEFI 'Secure' Boot: You can just ignore it. You can just turn it off. You can hack on it as a workaround. Just use Windows dammit!
The Market Wants to Delete Windows and Install GNU/Linux, UEFI 'Secure' Boot Must Go!
To be very clear, this has nothing to do with security and those who insist that it is have absolutely no credentials
In the United States Of America the Estimated Share of Google Search Grew After Microsoft's Chatbot Hype (Which Coincided With Mass Layoffs at Bing)
Microsoft's chatbot hype started in late 2022
Techrights Will Categorically Object to Any Attempts to Deny Its Right to Publish Informative, Factual Material
we'll continue to publish about 20 pages per day while challenging censorship attempts
Links 17/05/2024: Microsoft Masks Layoffs With Return-to-office (RTO) Mandates, More YouTube Censorship
Links for the day
YouTube Progresses to the Next Level
YouTube is a ticking time bomb
Journalists and Human Rights Groups Back Julian Assange Ahead of Monday's Likely Very Final Decision
From the past 24 hours...
[Meme] George Washington and the Bill of Rights
Centuries have passed since the days of George Washington, but the principles are still the same
Daniel Pocock: "I've Gone to Some Lengths to Demonstrate How Corporate Bad Actors Have Used Amateur-hour Codes of Conduct to Push Volunteers Into Modern Slavery"
"As David explains, the Codes of Conduct should work the other way around to regulate the poor behavior of corporations who have been far too close to the Debian Suicide Cluster."
Video of Richard Stallman's Talk From Four Weeks Ago
2-hour video of Richard Stallman speaking less than a month ago
statCounter Says Twitter/X Share in Russia Fell From 23% to 2.3% in 3 Years
it seems like YouTube gained a lot
Journalist Who Won Awards for His Coverage of the Julian Assange Ordeals Excluded and Denied Access to Final Hearing
One can speculate about the true reason/s
Richard Stallman's Talk, Scheduled for Two Days Ago, Was Not Canceled But Really Delayed
American in Paris
3 More Weeks for Daniel Pocock's Campaign to Win a Seat in European Parliament Elections
Friday 3 weeks from now is polling day
Microsoft Should Have Been Fined and Sanctioned Over UEFI 'Lockout' (Locking GNU/Linux Out of New PCs)
Why did that not happen?
Gemini Links 16/05/2024: Microsoft Masks Layoffs With Return-to-office (RTO) Mandates, Cash Issues
Links for the day
Over at Tux Machines...
GNU/Linux news for the past day
IRC Proceedings: Thursday, May 16, 2024
IRC logs for Thursday, May 16, 2024
Ex-Red Hat CEO Paul Cormier Did Not Retire, He Just Left IBM/Red Hat a Month Ago (Ahead of Layoff Speculations)
Rather than retire he took a similar position at another company
Linux.com Made Its First 'Article' in Over and Month, It Was 10 Words in Total, and It's Not About Linux
play some 'webapp' and maybe get some digital 'certificate' for a meme like 'clown computing'