Adekunle Adepoju discusses how limitations in the Linux kernel can lead to unneeded horizontal scale, and how to circumvent those and other limitations.
People have been shilling Pipewire to me recently so I decided to try it out and you know what, it's absolutely amazing, I wanted something, anything to break but it's been absolutely plug and play for me.
Memory management generally works at the level of pages, which typically contain 4,096 bytes but may be larger. The kernel, though, has extended the concept of pages to include compound pages, which are groups of contiguous single pages. That, in turn, has made the definition of what a "page" is a bit fuzzy. Matthew Wilcox has been working since last year on a concept called "page folios" which is meant to bring the picture back into focus; whether the memory-management community will accept it remains unclear, though. At the lowest level, pages are a concept implemented by the hardware; the tracking of memory and whether it is present in RAM or not is done at page granularity. Any given CPU architecture may offer a limited selection of page sizes, but one "base" page size must be chosen, and the most common choice remains 4,096 bytes — the same as it was when the first Linux kernels were released 30 years ago.
The kernel, though, often has reason to work with memory in larger chunks. One example is the management of "huge pages" which, once again, are implemented by the hardware. The x86 architecture, for example, can work with 2MB huge pages, and there are performance advantages to using them where they are applicable. The kernel will also allocate groups of pages in other sizes, though, typically for DMA buffers or other uses where a set of physically contiguous pages is needed. This sort of grouping of pages is known as a "compound page" in the kernel.
Last week's installment in this series on lockless patterns took a first look at the compare-and-swap (CAS) operation. CAS is a powerful tool that can be used to implement a number of lockless primitives. The next step is to look at other atomic read-modify-write operations that can be implemented on top of compare-and-swap. CAS-based primitives usually operate on int values. The Linux kernel uses atomic_t, a struct type that wraps int so that loads and stores are marked explicitly. For example, it is not possible to write x++; if x is an atomic_t. Instead one must write atomic_inc(&x);. All operations on atomic_t start with "atomic_".
The kernel's memory-management subsystem is built upon many concepts, one of which is called "copy on write", or "COW". The idea behind COW is conceptually simple, but its details are tricky and its past is troublesome. Any change to its implementation can have unexpected consequences and cause subtle breakage for existing workloads. So it is somewhat surprising that last year we saw two major changes the kernel's COW code; less surprising is the fact that, both times, these changes had unexpected consequences and broke things. Some of the resulting problems are still not fixed today, almost ten months after the first change, while the original reason for the changes — a security vulnerability — is also not fully fixed. Read on for a description of COW, the vulnerability, and the initial fix; the concluding article in the series will describe the complications that arose thereafter. Copy on write is a standard mechanism for sharing a single instance of an object between processes in a situation where each process has the illusion of an independent, private copy of that object. Examples include memory pages shared between processes or data extents shared between files. To see how COW is used in the memory-management subsystem, consider what happens when a process calls fork(): the pages in that process's private memory areas should no longer be shared between the parent and child. But, instead of creating new copies of those pages for the child process during the fork() call, the kernel will simply map the parent's pages in the child's page tables. Importantly, the page-table entries in both parent and child are set as read-only (write-protected).
If either process attempts to write to one of these pages, a page fault will occur, and the kernel's page-fault handler will create a new copy of the page, replacing the page-table entry (PTE) in the faulting process with a PTE that references the new page, but which allows the write to proceed. This action is often referred to as "breaking COW". If the other process then tries to write to that same page, another page fault will occur, as that process's PTE is still marked read-only. But now the page-fault handler will recognize that the page is no longer shared, so the PTE can just be made writable and the process can resume.
The benefits of this scheme are lower memory consumption and a reduction of CPU time spent copying pages during fork() calls. Often the price of copying is never paid for many of the pages because the child might call exit() or exec() before either the parent or the child writes to those pages.
A full rcutorture run will do about 20 kernel builds, which can take some tens of minutes or, on slower systems, well over an hour. This can be extremely annoying when you simply want to re-run the last test in order to obtain better failure statistics or to get more test time on a recent bug fix.
The traditional rcutorture way of avoiding rebuilds is to optionally edit the qemu-cmd files for each scenario to be re-run, then manually invoke sh on each resulting file. The editing step allows you to avoid overwriting the previous run's console output, but may be omitted if you don't care about that console output or if you have already saved it off somewhere. This works, but is painstaking and error-prone.
[...]
Although the kvm-remote.sh approach of using ssh works reasonably well on a few tens of systems, if someone wanted to run rcutorture on thousands of systems, something else would likely be required. On the other hand, there are not that many sites where one would reasonably devote anywhere near that many systems to rcutorture. There might be downloading improvements at some point, most likely in the form of allowing a script to be provided to allow kvm-remote.sh to use some site-specific optimized multi-system download utility. Both kvm-again.sh and kvm-remote.sh might someday need a way to specify that only a subset of a prior run's scenarios be re-run, for example, to chase down a bug that occurred in only a few of those scenarios.
And as mentioned earlier, perhaps a future version of kvm-remote.sh will gracefully handle remote systems with varying numbers of CPUs or running actual tests on the system running the kvm-remote.sh script.
Patches back in 2013 were proposed for "PRAM" as persistent over-kexec memory storage to allow saving of memory pages across kernel reboots via kexec or when hitting a new kernel via kexec. Nearly one year ago Oracle retook up the effort and sent out PKRAM as their "preserved-over-Kexec" RAM and now finally a second iteration of PKRAM has been published.
PKRAM remains focused on providing the ability to save memory pages of the currently running kernel so that those pages can be restored after a kexecc into a new kernel.
The X.Org Foundation has successfully completed a migration from Google Kubernetes Engine (GKE) to Packet, which it reckoned "should save us around $30 per day."
The X.Org Foundation manages a number of key open-source projects including the Wayland graphics protocol, the X.Org server, and the Mesa 3D graphics library. The migration was mentioned in the X.Org board minutes last week.
The brief note has brought closure to a problem that at one time threatened to disrupt the developers' work. In January 2020, the monthly bill from Google Cloud Platform (GCP) was over $6,000, and the following month board member Daniel Vetter sent out an email explaining that if the costs were not reduced, CI (Continuous Integration) services would have to be cut "somewhere between May and June this year."
"That would have been a pretty bad drawback for all the projects there," Benjamin Tissoires, a senior software engineer at Red Hat, told us. His company allowed him the time to investigate.
Blogging is tough, but I’m getting the posts out there one way or another.
Today marks what is likely to be the last of the “big” changes to zink in Mesa 21.1 before the merge window closes in less than two weeks, and what changes they were.
Threaded context support is now implemented, which, on its own, makes zink vaguely competitive against native GL drivers. I’d expect that for many scenarios, people should start seeing upwards of 60-70% native perf when previously the numbers were much lower, excepting things like furmark, where a weird problem with alpha blending is still causing a massive perf hit.
In movies, we all have seen that expert IT guys use a fancy terminal or command shell to hack files through the internet. Well, those fancy clips are not that much edited. You can use a movie-like terminal shell on your system with actual hacking sound effects. Yes, the eDEX-UI terminal emulator allows you to install a movie-like terminal bash shell on your Ubuntu Linux. It has a few attractive features that might attract you, and you can show it to your friends to make them fool. However, the eDEX-UI terminal emulator is not built for only fun purposes; it also works perfectly on Linux, Windows, and macOS. The eDEX-UI terminal emulator has pervasive features capable of using a touch screen and widescreen device.
This article is Part 8 of the LFCA series, here in this part, you will acquaint yourself with the general system administration commands to monitor basic system metricks and schedule administrative tasks in the Linux system.
Keeping tabs on the performance of your system is one of the crucial roles that you will have to undertake as a systems administrator. Sure, there are enough open-source monitoring tools such as Grafana and Nagios for monitoring system metrics.
Ubuntu MATE 21.04 ships with a new Yaru MATE theme enabled by default — but users don’t have to upgrade to use it!
Yaru MATE is an official port of Ubuntu’s Yaru GTK theme (plus a companion icon set) to the MATE desktop. It comes with all of the relevant nips, tucks, and colour tweaks one might expect and, no lie, it looks pretty sharp!
Now, Ubuntu MATE project lead Martin Wimpress has announced a back-port of the Yaru MATE theme to Ubuntu MATE 20.04 LTS — which is great news for me as that’s the version I run on my dinky GPD MicroPC (which I still use daily, btw).
Net-filter as we all know it’s a firewall in Linux. Firewalld is a dynamic daemon to manage firewalls with support for network zones. In the earlier version, RHEL & CentOS 6 we have been using iptables as a daemon for packet filtering framework. In RHEL/CentOS 7/8 and Fedora iptables interface is being replaced by firewalld.
Today we are looking at how to install the Friday Night Funkin Sarvente mod 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.
If you have any questions, please contact us via a YouTube comment and we would be happy to assist you!
Common web servers run on LAMP (Linux Apache MySql Php). With python evolving into one of most loved programming language, Flask became a more and more important option in creating web application, as it runs also in our loved Raspberry PI computer boards
Passbolt is a free and open source password manager for teams. It allows team members to store and share credentials/password securely. Passbolt is created with PHP and can be run under the LEMP stack or run as docker container.
In this tutorial, we will show you step-by-step install and configure open source password manager 'Passbolt' on CentOS 7 server. Passbolt is a web application developed with PHP, and we will run it under the LEMP (Linux, Nginx, MySQL/MariaDB, and PHP-FPM).
Etcher is a tool which helps you to create a bootable USB flash drive from an ISO file. In this tutorial, we’ll show you step by step how to do it with its help in Linux.
Bootable USB drives are a great way to try out a new Linux distribution to see if you like it before you install. But you can’t simply copy an ISO file to a USB drive. Instead, you must “burn” the ISO image to the USB drive so that it’s bootable. Etcher is software that allows you to easily create bootable USB flash drives to install or use operating systems.
Of course, there is always the option to use dd command to create bootable media on the command line, but even for the experienced user, that’s still a pain. However in this tutorial we’ll use Etcher to accomplish the task.
The Japanese have examined the K5 Pro Audio DAC+AMP technology in combination with B&W P7 headphones and Sony SRS-D5 speakers and found it to be a great audio solution for GNU/Linux machines. They tweaked the PulseAudio settings to send the K5 Pro "high resolution" audio quality, but they did not find any audible difference between the defaults and the "tweaked" settings.
Linux gaming has grown by leaps and bounds over the past few years. Over 14,000 games are now compatible on Steam and Steam Play, including top titles like Assassin’s Creed: Odyssey, No Man’s Sky, and Skyrim—and the list is constantly growing. To give you the scoop on some fun, Linux-compatible games you may not have tried or even heard of, System76 asked their writer, Alex, to recommend a few.
Oh yeah, that’s me. I’m Alex. Uh… How ya doin’!
My recommendations come from each of 5 different genres: Dark RPG, Shooter, Narrative, Crafting Survival, and Free to Play. I played all 5 of these games on my System76 Adder WS laptop using Pop!_OS. All worked for me flawlessly on startup.
Generally, when I do have trouble with a game, I find changing Proton versions usually solves the issue. Select the game in your sidebar, click the gear icon on the right side of the screen, and then select “Properties”. After checking the box on the Compatibility screen, you can select which Proton version to use from the drop-down menu.
Before we continue, I’d also like to recommend any new or potential new users to check out our beginner’s guide to gaming on Pop!_OS.
With the start of the new month comes updated Steam Survey figures for the month prior.
This is another month where the numbers seem a bit flakey... Originally for February 2021 the Steam on Linux marketshare came in at about 0.81%. That 0.81% threshold was seen originally at the start of March and recently when checking back on the Steam Survey. However, as has happened many times before, the revision for March isn't adding up for whatever reasons this time. Reported today for March 2021 is a 0.85% marketshare for Linux, a reported 0.06% drop. So at least going by the reported -0.06% drop, February was then at 0.91%, not the 0.81% previously indicated.
To kick off a new month of Linux gaming, Valve today released Proton 6.3-1 as the latest version of their Wine downstream that powers Steam Play for running Windows games on Linux.
Proton 6.3-1 is significant in that it has re-based against Wine 6.3 compared to the prior Wine/Proton 5.13 series. Besides re-basing against the newer Wine upstream, there are many changes too.
Ready for a long weekend testing out the latest Steam Play Proton compatibility layer? Good news! Valve announced the release of Proton 6.3-1 along with a Proton Experimental update.
This is a big release as it rebases Proton from Wine 5.13 to 6.3 which comes with thousands of changes!
This is a major release and the first in the 6.x series, adding support for numerous video games, including Arena Wars 2, ARK Park, Battle Arena VR, Bioshock 2 Remastered, Company of Heroes 2, Divinity: Original Sin 2, Gravity Sketch, Home Behind 2, King Arthur: Knight’s Tale, logiCally, Mass Effect 3 N7 Digital Deluxe Edition (2012), Rise of the Triad, Rise of Venice, Shadow Empire, Shenmue I and II, Tom Clancy’s Rainbow Six Lockdown, and XCOM: Chimera Squad.
Nifty new feature in Kate for KDE Gear 21.04
So OK the previous blog was a bit exaggerated. There is no AI in the works (right now at least) :) But with KDE Gear 21.04 there will actually be be a Git Blame plugin.
So what does it do for real?
Ever wonder why a code line is as it is? Git helps with that. There is the git blame command that provides information about when and who committed a line in a file. Using the commit hash, printed by git blame, it is possible to read the commit message and diff. That is usually a good place to start finding the clues for why it was written in that strange way.
What the git blame plugin does is, it tries to run git blame on the current file and when we are in a git repository it uses the nifty InlineNoteProvider interface of KTextEditor to display the author, date and title of the commit message on the current line.
The WireGuard VPN tunnel is a fast and easy-to-use solution for those who need or want a secure tunnel for their traffic. The project has been around since 2016, but it has had a somewhat circuitous route into Linux; it was merged for the 5.6 kernel, which was released in March 2020. Getting into Linux required WireGuard developer Jason A. Donenfeld to acquiesce to having WireGuard use some of the existing kernel crypto primitives, rather than merging his Zinc crypto library. Some of the same tensions that were seen in that process seem to be cropping up again in the more recent efforts to add WireGuard support to several BSD kernels.
[...]
As alluded to in Donenfeld's original post, there have also been efforts to add WireGuard support in NetBSD, but those have not gone entirely smoothly, seemingly. An August 2020 thread started by Donenfeld on the tech-kern and tech-net mailing lists for NetBSD was similarly critical of an existing WireGuard implementation; he asked that the existing code be reverted in favor of an evaluation of the proper path forward. He offered to work with Taylor R Campbell, who had picked up some code written by Ryota Ozaki back in 2018; "it seemed to be in pretty good shape when I reviewed it this year, with a few small issues I saw, so I dusted it off and merged it".
[...]
By all accounts, WireGuard itself is an excellent VPN solution, but it would seem that unlike the usual approach for a network protocol, where multiple implementations are made independently based on a specification, WireGuard needs to be treated differently. Donenfeld is justifiably proud of his accomplishment, but his requirements for other implementations seem far too rigid—at least for some communities. As we have seen in several different operating system projects (Linux, FreeBSD, NetBSD), Donenfeld often expects that the other, much larger projects conform to his exacting standards and methods. In the end, that attitude may discomfit more than just graybeards.
In this video, we are looking at Deepin 20.2.
Today we are looking at Deepin 20.2. It comes with Linux Kernel 5.10 and uses about 1.5GB of ram when idling. Enjoy!
As of today, the Genchu Council has decided to switch our stage3 tarballs to systemd as init system by default.
New stage files available for download will automatically be based on a systemd profile. For now, openrc stages will still be available as separate files with openrc in the name. This way, we will ensure a top-notch and modern Linux experience for all our users. Happy compiling!
After many years, it’s time for a radical overhaul. So, here we present our new brand - Gentoo Linux becomes Genchu Linux! Genchu is also our new mascot, as you can see in the very kawaii graphics. Definitely a big improvement over our boring old stylized letter. New artwork is still under construction, but we already have lots of wallpapers available for enthusiastic fans. Enjoy!
Last week, we celebrated the 20th edition of Hack Week. During this time, we are meant to invest our working hours in any project we want: it can be related to your daily duties, something you want to learn or just a crazy experiment. It is up to you. But the idea is to foster collaboration and innovation. And it is not limited to SUSE; the openSUSE community is welcome to join us.
In this blog post, we would like to share some of the projects the YaST team members were working on, even if they are not related to YaST (and some of them aren’t). We encourage you to join the discussion if you are interested in any of them.
We are honoured to be accepted into the Gaia-X project. Our participation is an opportunity to impart the benefits of open source software toward data governance in Europe, whilst also instilling confidence in data sovereignty amongst cloud service users.
May you live in interesting times. Or, alternatively: Good luck getting professional audio properly configured on Linux. At least, this used to be the predicament. Getting ALSA to work together with Jack to work together with PulseAudio is an esoteric business worthy of the deepest forms of black magic. Now, however, the clever human beings at the Gnome project are working on something that might just bring us from the dark ages into an era of enlightenment, at least as far as the end user is concerned: pipewire.
The pipewire promise is one of easy, plug-and-play configuration of all your audio devices. No more worrying about whether your application supports jack, PulseAudio or both. Now you should be able to just run your application, and sound will magically appear from your speakers. Just like that. Last week I decided it was time to check out this fabulous new invention, and so I set about making it work for me.
The installation medium now provides a guided installer.
This addition to the default method of installation (based on the installation guide) is similar to the other methods.
Yesterday, UnixWare/OpenServer vendor Xinuos filed a lawsuit in the US Virgin Islands, alleging theft of intellectual property and monopolistic market collusion against joint defendants IBM and Red Hat.
If this sounds like a familiar, well-worn tale, it should. Xinuos is the company that purchased the remnants of the SCO Group in 2011. The SCO Group, in turn, is a company most famous not for its actual products but for its litigation against IBM and Linux. That litigation began in 2003—partially funded by a very different Microsoft, only five years after the leak of the Halloween documents in which Microsoft acknowledged the "long-term viability" of open source software and discussed strategies to choke it out of the market.
The substance of the original lawsuit is SCO's claim that IBM pulled proprietary code out of SCO Unix and inserted it into the Linux kernel. The subsequent 18 years have not been kind to SCO, which first filed for bankruptcy in 2007 and then eventually sold off its intellectual property (but not its litigation rights) to Xinuos, then named UnXis, in 2011.
Lawsuit revisits ancient legal war over Unix code
Under CEO Arvind Krishna, IBM is in the midst of the biggest transformation in its 109-year history, doubling down on the hybrid cloud and artificial intelligence.
As part of that overhaul, the company is drawing a new red line. All new products must be built on OpenShift, the company's open-source developer platform it acquired with its $34 billion purchase of Red Hat in 2019.
Network upgrades come and go, so why is 5G a big deal? In this episode, Srini Kalapala, Vice President of Technology and Supplier Strategy at Verizon, joins host Chris Wright to talk about what makes 5G different from previous networks and explains the role open source has played in the development of the network and its potential for the future of the telco ecosystem. Plus, if fashionable vest wear makes you want to break out into song, this is the episode for you.
Davie Street Enterprises (DSE) continues its digital transformation journey. After transforming the culture, standardizing and automating the IT infrastructure, deploying a middleware strategy, and deploying its cloud strategy, DSE is beginning to shift towards DevOps. This is where DSE can leverage the cultural changes implemented within its development and operations teams to release features faster than the competition, using container technology.
Version 248 of systemd, a widely used system and service manager for Linux, adds a feature called system extension images, designed to allow system files to be added, or appear to be added, even on read-only file systems.
As developer Lennart Poettering explained: "When a system extension image is activated, its /usr/ and /opt/ hierarchies and os-release information are combined via overlayfs with the file system hierarchy of the host OS."
The primary use case for system extension images is for immutable operating systems like Red Hat's Silverblue and Kinoite. In these OSes, the file system is read-only and is updated by replacing it with a new image rather than being patched, which is better both for security and stability.
The AlmaLinux team announced the release of the first stable version that is AlmaLinux 8.3. And it is immediately available to download.
The now renamed Bullseye Project stopped all further development moments after it deemed its own code as perfection.
There is not much information to share at this time other than to say an errant fiber cable plugged into the wrong relay birthed an exchange of information that then birthed itself. While most to all Debian Developers and Contributors have been locked out of the systems the Publicity team's shared laptop undergoing repair, co-incidentally at the same facility, maintains some access to the publicity team infrastructure, from here on the front line we share this information.
One of the seconders of the motion to spread defamation about a volunteer is Paul Tagliamonte.
From 2015 to 2019, Tagliamonte was an employee at the White House in the US Digital Service. In particular, Tagliamonte worked on projects for Veteran's Affairs (VA). He recently moved to Rebellion Defense.
Aligning to the release schedule, the Ubuntu team announced the release of the Ubuntu 21.04 Beta code-named 'Hirsute Hippo'. The beta images are immediately available for download and test.
The beta of Ubuntu as well as its various flavors/derivatives is out ahead of the official "Hirsute Hippo" launch later this month.
Ubuntu 21.04 is to be powered by the Linux 5.11 stable kernel, is sticking to the GNOME 3.38 desktop as its default environment, Mesa 21.0 is in place providing the newest open-source graphics drivers, GCC 10 is the default code compiler, LTO is being enabled, standalone XWayland is available, better Wayland support to the point that Wayland is now enabled by default for Ubuntu with its default desktop, and a slew of other updated packages like LibreOffice 7.1 and much more.
Developers and non-developers alike can download the Ubuntu 21.04 beta release to help test out the many changes that make up the “Hirsute Hippo”.
This is the only beta release planned, and anyone who installs the distro using this image can upgrade to the final Ubuntu 21.04 release once it arrives later this month. How? By installing all updates as they arrive. Simple!
And in case anyone missed the memo: the final stable release of Ubuntu 21.04 is due on April 22, 2021.
The beta of Ubuntu as well as its various flavors/derivatives is out ahead of the official "Hirsute Hippo" launch later this month.
Ubuntu 21.04 is to be powered by the Linux 5.11 stable kernel, is sticking to the GNOME 3.38 desktop as its default environment, Mesa 21.0 is in place providing the newest open-source graphics drivers, GCC 10 is the default code compiler, LTO is being enabled, standalone XWayland is available, better Wayland support to the point that Wayland is now enabled by default for Ubuntu with its default desktop, and a slew of other updated packages like LibreOffice 7.1 and much more.
We are pleased to announce that the beta images for Lubuntu 21.04 have been released!
While we have reached the bugfix-only stage of our development cycle, these images are not meant to be used in a production system. We highly recommend joining our development group or our forum to let us know about any issues.
The Ubuntu team is pleased to announce the Beta release of the Ubuntu 21.04 Desktop, Server, and Cloud products.
21.04, codenamed “Hirsute Hippo”, continues Ubuntu’s proud tradition of integrating the latest and greatest open source technologies into a high-quality, easy-to-use Linux distribution. The team has been hard at work through this cycle, introducing new features and fixing bugs.
This Beta release includes images from not only the Ubuntu Desktop, Server, and Cloud products, but also the Kubuntu, Lubuntu, Ubuntu Budgie, UbuntuKylin, Ubuntu MATE, Ubuntu Studio, and Xubuntu flavours.
The Beta images are known to be reasonably free of showstopper image build or installer bugs, while representing a very recent snapshot of 21.04 that should be representative of the features intended to ship with the final release expected on April 22nd, 2021.
Canonical has announced the availability of Ubuntu 21.04 Hirsute Hippo beta for Desktop, Server, and Cloud. There are also downloadable beta images of alternative Ubuntu flavours including Kubuntu, Lubuntu, Ubuntu Budgie, UbuntuKylin, Ubuntu MATE, Ubuntu Studio, and Xubuntu.
The main Ubuntu 21.04 for Desktop is quite a good release this time around; it includes the newer 5.11 Linux kernel so more hardware will be supported and Canonical has switched to Wayland sessions by default away from X.org. Unlike Fedora 34, Canonical has decided to stick with GNOME 3.38 so that it can adapt its desktop extensions to work properly with GNOME 40.
The beta of Hirsute Hippo (to become 21.04 in April) has now been released, and is available for download.
This milestone features images for Kubuntu and other Ubuntu flavours.
[...]
The Beta includes some software updates that are ready for broader testing. However, it is an early set of images, so you should expect some bugs.
We STRONGLY advise testers to read the Kubuntu 21.04 Beta release notes before installing, and in particular the section on ‘Known issues‘.
Kubuntu is taking part in #UbuntuTestingWeek from 1st to 7th of April, details of which can be found in our Kubuntu 21.04 Testing Week blog post, and in general for all flavours on the Ubuntu Discord announcement.
Today is April 1, also known as "April Fool's Day," which is a holiday for pranks and jokes. On this day, it can be hard to know what news stories are real and which are fake. Some find April Fool's Day to be fun, while others see it as annoying.
Well, folks, I am happy to say that today, Ubuntu Linux 21.04 achieves final Beta status. And no, that isn't a joke -- it is the real deal! Code-named "Hirsute Hippo," the Beta can be had with your choice of several desktop environments, such as GNOME, KDE Plasma, and Xfce.
'The Ubuntu team is pleased to announce the Beta release of the Ubuntu 21.04 Desktop, Server, and Cloud products.21.04, codenamed 'Hirsute Hippo,' continues Ubuntu's proud tradition of integrating the latest and greatest open source technologies into a high-quality, easy-to-use Linux distribution. The team has been hard at work through this cycle, introducing new features and fixing bugs," explains à Âukasz Zemczak, Canonical.
Some Linux phone user interfaces, like Plasma Mobile, draw obvious inspiration from other modern smartphone operating systems like Android or iOS. Sxmo doesn’t do that.
It’s a simple, lightweight user interface with a dynamic window manager (dwm) that uses tiling to stack windows side-by-side, atop one another, or a combination. You can navigate using a combination of button presses and touchscreen taps and gestures, and Sxmo comes bundled with a handful of simple applications and scripts.
While it takes a little getting used to, having played around with Sxmo a few times in the past, I’ve found it to be one of the speediest, most responsive user interfaces available for the PinePhone. This week the developers released Sxmo version 1.4 (quickly followed by v1.4.1), and the software has picked up a number of new features and improvements.
Geniatech’s “DB1126” dev kit has a compute module that runs Linux on Rockchip’s quad -A7, NPU-equipped RV1126 and offers 2x LAN plus HDMI and CSI inputs. Geniatech also unveiled an RK3399 based SDM board for kiosks.
Geniatech has posted a product page for a full-featured DB1126 development board equipped with a compute module built around Rockchip’s new quad-core, Cortex-A7 based RV1126 with up to 2.0-TOPS NPU. The Beijing-based company has also posted a page for an SDM3399 that runs Android on a Rockchip RK3399 and adopts Intel’s SDM-S modular form factor for interactive signage systems (see farther below).
I’ve already looked at Windows performance on the NUC11PHKi7C Enthusiast Phantom Canyon which is Intel’s latest NUC 11 flagship product specifically targeting gamers as it includes an NVIDIA RTX 2060 GPU. Now it is the turn of Linux and like before I will compare performance against Intel’s previous NUC with a discrete GPU: the NUC 9 Extreme Ghost Canyon. I will also briefly revisit Windows performance by looking at the impact of using 3200MHz memory as opposed to the 2400MHz used during the previous review.
[...]
One of the benchmarks requires compiling its code which is written in C with the ‘-march=native’ option. However, the default 9.3.0 version of ‘gcc’ installed in Ubuntu 20.04 fails to recognize the ‘tigerlake’ architecture of this new CPU so the solution is to install and use the later 10.2.0 version of ‘gcc’ as this simple example shows:
Kontron’s Linux-friendly “COMe-bV26” COM Express Basic Type 6 module ships with AMD’s Ryzen Embedded V2000 with up to 64GB DDR4 and up to 1TB NVMe plus 8x PCIe lanes and optional -40 to 85€° support
We’ve already covered some COM Express modules based on AMD Ryzen Embedded V2000 processors with products like ADLINK cExpress-AR COM Express Type 6 Compact computer-on-module, but Kontron COMe-bV26 is the first we’ve seen that follow COM Express Basic Type 6 standard.
The module supports up to 64GB DDR4 via two SO-DIMM connectors, up to 1TB NVMe onboard SSD, exposes 8x PCIe lanes, and with an 8-core/16-thread Ryzen Embedded V2000 processor is well-suited to IoT edge devices that must perform parallel processing tasks.
Advantech’s rugged “UNO-238” embedded PC runs Linux or Win 10 on Intel’s 8th Gen UE-series and offers up to 32GB of easily swappable DDR4 plus 32GB eMMC, 2x GbE, 4x USB 3.2 Gen2, 2x serial, 2x M.2, and DP and HDMI.
Advantech announced a fanless, Whiskey Lake based IoT edge computer called the UNO-238 that is touted for its swappable RAM. “Equipped with a removable heatsink, UNO-238 enables convenient installation without disassembling the entire chassis,” says the company. Similar 8th Gen based systems include Axiomtek’s recent eBOX560-52R-FL.
QR codes are normally used to convey short snippets of information, such as web addresses. Chain a few of them together, as “The Resistor Network” was able to do in the video below, and you can produce a non-negligible amount of storage.
Dubbed QRTape, the project employs custom software to break up a song, encoded using the efficient Opus codec, into small chunks that can be embedded onto individual QR codes. These are printed on a continuous strip of paper by a thermal printer, and read for playback via a webcam.
To keep the music flowing, this hacker created a cardboard reel-to-reel player that pulls the ribbon of codes past the camera with the help of an Arduino-controlled stepper setup.
There are been some initiatives to work on open-source tools for FPGA. Major FPGA vendors have made limited efforts, with for example Xilinx recently releasing the source code for HLS FPGA tool’s front-end, but most of the work is done by the community with projects like Symbiflow dubbed the GCC of FPGAs, or Project IceStorm for Lattice Semi FPGAs.
YouTuber Gavin Scott (AKA Make Fun Stuff) and his friend Kevin have been pranking each other with garden gnomes for years. In the video below, Scott decided to take things to a new level, placing an Adafruit sound board and speaker into one of these small ceramic creatures to make it scream when picked up. The system is triggered via an LDR sensor, along with an Arduino Nano to interpret this input and start the sound.
I have a 3D Printer, so almost every real-world problem looks like a use case for 3D printing, and this was no exception. I wasn’t sure if a 3D-printed clamp would have the strength and capability to support the lights, and didn’t think the printer could make threads small enough to fit into the base of the lamp monopods (which accept a 1/4x20 thread, just like used on cameras and other photography equipment).
GIMP 2.10.24 may sound like a minor bug-fix release, but that's not the case. There is a brand new "Negative Darkroom" for photo negatives, many improvements to commonly used file formats (JPEG, PNG, TIFF, etc), better support for off-canvas editing and many smaller subtle bug-fixes in this release.
Do you read RSS newsfeeds? Do you also use Emacs? Then you are in luck!
Git-cinnabar is a git remote helper to interact with mercurial repositories. It allows to clone, pull and push from/to mercurial remote repositories, using git.
As of today, Rcpp stands at 2255 reverse-dependencies on CRAN. The graph on the left depicts the growth of Rcpp usage (as measured by Depends, Imports and LinkingTo, but excluding Suggests) over time. We actually crossed 2250 once a week ago, but “what CRAN giveth, CRAN also taketh” and counts can fluctuate. It had dropped back to 2248 a few days later.
A new release 1.1.39-3 of x13binary, of the X-13ARIMA-SEATS program by the US Census Bureau (with upstream release 1.1.39) is now on CRAN.
The x13binary package takes the pain out of installing X-13ARIMA-SEATS by making it a fully resolved CRAN dependency. For example, when installing the excellent seasonal package by Christoph, then X-13ARIMA-SEATS will get pulled in via the x13binary package and things just work. Just depend on x13binary and on all major OSs supported by R you should have an X-13ARIMA-SEATS binary installed which will be called seamlessly by the higher-level packages such as seasonal or gunsales. With this the full power of the what is likely the world’s most sophisticated deseasonalization and forecasting package is now at your fingertips and the R prompt, just like any other of the 17350+ CRAN packages. You can read more about this (and the seasonal package) in the Journal of Statistical Software paper by Christoph and myself.
This release was needed because the recent M1mac build was reporting leftover ‘detritus’ in the temporary directory, which we addressed with an explicit removal at end. We also addressed another CRAN Policy change since the last release, namely a conversion of the configure script from bash to sh.
The month of March is very special to me. It was in this month 2 years ago, I started my dream project The Weekly Challenge (a.k.a. Perl Weekly Challenge).
For Team PWC, it was back to back celebrations. We celebrated 100th week challenge in February first followed by completion of 2 years in March. In fact for the second year anniversary, I had planned something bigger but unfortunately it didn't work out for some reason. Having said that, for me the biggest achievement is that we now have a platform where everyone is welcome. It doesn't matter whether you like Perl or Raku or for that matter any other programming language. And the best part of it, the same person who happens to be an expert in Perl, goes on and do it 20+ different languages as well. Then there is this guy who is very famous for his Raku skill, suddenly decided to share solutions in Perl as well. How cool it is? This is something you wouldn't have imagine 2 years ago.
Let me share my own story, few years ago at the London Perl Workshop event, I was gifted a book on Raku for my contributions to CPAN. For the next one year, I didn't get chance to read even a single page. Then came the weekly challenge where I got the opportunity to see the work of many Raku experts. I was inspired by each one of them and decided to get my hand dirty too. As of today, I contributed 73 Perl solutions and 67 Raku solutions. Not a bad stats for a first timer.
Enumerated types or "enums" are a feature of many languages, including Python; enums provide a convenient way to collect up a bunch of related symbols that (typically) evaluate to integer values. The canonical example would seem to be for colors, at least for demonstration purposes, but there are others, especially for handling "magic" constants from source likes POSIX or the host operating system. A recent thread on the python-ideas mailing list discusses different ways to add a new feature to enums—seven years after they were added to the standard library as part of Python 3.4.
[...]
There was some discussion of whether aliases (i.e. multiple names with the same value) would cause a problem for "by value" lookups, but Furman made it clear that there actually is no ambiguity. Values are associated with the first name that uses them, which is why "Color.AZUL" displays as "Color.BLUE" in the example above.
Furman has not circled back with a final decision on his plans, but it seems clear that the constructor-based idea is a non-starter even though it seemed like the right way to go from early on. Overall, the short thread gave a nice little peek into the kinds of thinking that go on in language and library design. Sometimes, the obvious solution is really not quite right, even when it seems to tick all of the right boxes. And, once again, this kind of discussion shows the value of FOSS communities openly working to arrive at a better solution; while it is not perfect by any means, the results generally speak for themselves.
The specifications are all done. They’re now waiting in queues to get their final edits and approvals before they will get assigned RFC numbers and get published as such – they will not change any further. That’s a set of RFCs (six I believe) for various aspects of this new stack. The HTTP/3 spec is just one of those. Remember: HTTP/3 is the application protocol done over the new transport QUIC. (See http3 explained for a high-level description.)
The HTTP/3 spec was written to refer to, and thus depend on, two other HTTP specs that are in the works: httpbis-cache and https-semantics. Those two are mostly clarifications and cleanups of older HTTP specs, but this forces the HTTP/3 spec to have to get published after the other two, which might introduce a small delay compared to the other QUIC documents.
The working group has started to take on work on new specifications for extensions and improvements beyond QUIC version 1.
[...]
I realize I can’t blog about this topic without at least touching this question. The main reason for adding support for HTTP/3 on your site is probably that it makes it faster for users, so does it?
According to cloudflare’s tests, it does, but the difference is not huge.
We’ve seen other numbers say h3 is faster shown before but it’s hard to find up-to-date performance measurements published for the current version of HTTP/3 vs HTTP/2 in real world scenarios. Partly of course because people have hesitated to compare before there are proper implementations to compare with, and not just development versions not really made and tweaked to perform optimally.
I think there are reasons to expect h3 to be faster in several situations, but for people with high bandwidth low latency connections in the western world, maybe the difference won’t be noticeable?
Linux Foundation Training (LiFT) Scholarships are back! Since 2011, The Linux Foundation has awarded over 600 scholarships for more than a million dollars in training and certification to deserving individuals around the world who would otherwise be unable to afford it. This is part of our mission to grow the open source community by lowering the barrier to entry and making quality training options accessible to those who want them.
Android and iOS phones transmit telemetry back to Google and Apple, even when users have chosen not to send analytics data.
In a recent released research paper, titled "Mobile Handset Privacy: Measuring The Data iOS and Android Send to Apple And Google" [PDF], Douglas Leith, chairman of computer systems in the school of computer science and statistics at Trinity College Dublin, Ireland, documents how iPhones and Android devices phone home regardless of the wishes of their owners.
According to Leith, Android and iOS handsets share data about their salient characteristics with their makers every 4.5 minutes on average.
"The phone IMEI, hardware serial number, SIM serial number and IMSI, handset phone number etc are shared with Apple and Google," the paper says. "Both iOS and Google Android transmit telemetry, despite the user explicitly opting out of this."
The U.S. Patent and Trademark Office Patent Trial and Appeal Board (PTAB) has issued a notice of extension of certain deadlines by party stipulation in the two interferences involving ToolGen Inc. as Senior Party (No. 106,126 with The Broad Institute, the Massachusetts Institute of Technology, and Harvard College as Junior Party, and No. 106,127 naming the University of California, Berkeley, the University of Vienna, and Emmanuelle Charpentier ("CVC") as Junior Party).
The Unified Network is proud to announce its newest service UnifieDisco, the Anti-Techno. An innovative and new business model to deter bad music and dance floor trolling. Completely complementary with Unified’s existing services such as Patents, Brands, and Consulting, UnifieDisco will seamlessly overlay them all with music, food, and cocktails to enhance their value and the increase adoption in the Intellectual Property community.
The initial venue will be located in Dublin, California, an up and coming city in Northern California situated at the intersection of two major East Bay freeways and home to a Korean BBQ, Hobby Lobby, and Tesla dealership which demonstrates its clear diversity. The actual location will be kept secret for now to avoid the inevitable trolls, but luckily there was an abandoned bowling alley within striking distance of an Outback Steakhouse, Starbucks, and a BART entrance available which has the deep acoustics necessary to house the next major stop on the Top 100 DJs circuit and some serious BASS. Also, local zoning allowed for the easy addition of soap and gelatin machines.
The America Invents Act of 2011 included a major reshuffling of what counts as “prior art” against a given patent. 35 U.S.C. €§ 102 was substantially rewritten with a new focus on an application’s effective filing date, and zero focus on whether a patent applicant was the “first to invent.” The new law applies only to post-AIA patents. The Act defines these as any patent that “contains or contained at any time” a patent claim “that has an effective filing date” on or after March 16, 2013. We are now in the midst of a major change-over. Most in-force patents are still pre-AIA, but most newly issued patents are post-AIA.
The pretty chart below provide a sense of where we stand for newly issued patents. For 2021, 90%+ of newly issued patents are post-AIA, meaning that their effective filing date was on or after the March 16, 2013 threshold. Patents coming out of TC-1600 (Biotech + Organic Chemistry) are the most likely to still be pre-AIA (18% pre-AIA in 2021) while TC-2800 (Semiconductors, Electrical and Optical Systems and Components) is at the other end of the table (4% pre-AIA in 2021).
Seven attorneys reflect on what Tiffany Cunningham’s historic nomination to the Federal Circuit means for the court and the patent bar