Language Selection

English French German Italian Portuguese Spanish


Waffle 1.7.0

Filed under

Hi all,

I'd like to announce waffle 1.7.0 as available for download immediately.

Notable changes since 1.6.0:
 - wayland: Support for the xdg-shell protocol.
 - surfaceless: Implement window resize
 - GLX/WGL: Behave correctly in the presence of ARB_create_context
 - tests: Rework and extend test suite
 - cmake: Bump requirement to 2.8.12
 - man: Spelling and associated fixes.
 - GBM: Pass valid arguments to gbm_surface_create_with_modifiers
 - apple: Build fixes

Read more

Also: Waffle 1.7 Released For Runtime OpenGL / Windowing System Selection

Mesa 21.1 Addresses Issue Of Gallium Nine Often Hitting Memory Issues With 32-bit Games

Filed under

For those using Gallium3D Nine as a Direct3D 9 state tracker when running Windows games on Linux rather than the likes of DXVK for going through Vulkan, next quarter's Mesa 21.1 will better handle 32-bit games with the Nine state tracker.

As written about a few days ago, Gallium Nine has been seeing a fresh round of improvements for this D3D9 state tracker that has long been part of Gallium3D. Gallium Nine is still used particularly by those with older hardware lacking Vulkan support where DXVK is then unsupported. Gallium Nine also generally performs better than using Wine's Direct3D 9 to OpenGL code path albeit making use of "Nine" requires a patched version of Wine.

Read more

LABWC Is The Newest Stacking Wayland Compositor

Filed under

The LABWC Wayland compositor advertises itself as an Openbox alternative and just saw its inaugural release.

LABWC is a Wayland stacking compositor based on the WLROOTS library engineered by the Sway folks. So while it's "yet another Wayland compositor", WLROOTS is doing much of the heavy lifting.

Read more

NVIDIA 470 Linux Driver

Filed under
  • NVIDIA 470 Linux Driver Series To Be "Even More Wayland-Friendly"

    The next major NVIDIA driver series, the 470 release series, is slated to be "even more Wayland-friendly" but what all that encompasses remains to be seen.

    NVIDIA engineers already had confirmed that the DMA-BUF passing support will be in place for this major driver series. The NVIDIA DMA-BUF passing support is long overdue and should improve their Wayland compositor support will be part of the R470 driver series. This goes along nicely with NVIDIA working on proper XWayland support.

  • NVIDIA Vulkan Beta Driver 455.50.10 rolls out for Linux

    Need the absolute latest special fixes? The developer-focused NVIDIA Vulkan Beta Driver 455.50.10 has rolled out and it includes quite a few fixes - including some just for Linux.

Wine's Project Leader Has Given A Blessing To The Wayland Effort

Filed under

Published last month was an updated but still experimental version of the native Wayland support for Wine after that code was originally published last year. One of the lingering questions has been around the prospects of mainlining this Wayland driver in Wine while last week the longtime Wine project leader, Alexandre Julliard, provided some clarity on the matter.

The engineers at Collabora have been making good progress on the Wayland driver for Wine to allow Windows games/applications to run on Wayland without having to go through XWayland while in the ensuing discussion on the latest version of the patches were the prospects or requirements around getting it accepted upstream.

Read more

Chrome 89 vs. Firefox 86 Performance Benchmarks On AMD Ryzen + Ubuntu Linux

Filed under

Given this week's launch of Chrome 89 and the recent Firefox 86 debut, here are some quick benchmarks for those curious about the current performance when using Ubuntu Linux with a AMD Ryzen 9 5900X and Radeon graphics.

Curious about the latest standing of the newest Firefox and Chrome releases on Linux, here are some quick benchmarks carried out on one of the systems locally. A larger comparison will come soon while this is just a quick one-page article for those eager to see some new browser numbers for AMD on Linux.

The Ryzen 9 5900X was at stock speeds - the reported CPU frequency is due to a kernel bug working its way to 5.11/5.10 stable still.

Read more

Updated Portal 2 Vulkan Rendering Code Yielding Great Radeon Results

Filed under

Valve on Monday rolled out a new Portal 2 build that improves its new Vulkan renderer support. For those interested here are some fresh benchmarks of Portal 2 with OpenGL and Vulkan on the open-source AMD Radeon Linux drivers.

In February was the surprise announcement of Vulkan rendering API support for Portal 2. Valve is making use of Vulkan with Portal 2 by leveraging the DXVK native library for translating the game's existing Direct3D 9 usage to Vulkan. The existing OpenGL support for Portal 2 on Linux remains available.

Valve yesterday released their first significant Portal 2 update since the initial Vulkan rendering support last month. Some of the specific improvements in this latest Portal 2 update include "massively improved" performance for multi-sample anti-aliasing (MSAA) with AMD graphics hardware, overall performance improvements, and a large number of bug fixes -- including many Linux-specific fixes.

Read more

AES-NI XTS Crypto Performance Looking Good For AMD With Linux 5.12 Fix

Filed under

Of the performance-related changes with Linux 5.12 worth noting is faster AES-NI XTS performance for systems relying upon return trampolines "Retpolines" as part of the CPU's Spectre V2 mitigations. On the Intel side this primarily impacts older CPUs where Retpolines is still used while on the AMD side through Zen 3 the Retpolines is still relied upon, which as shown by these benchmarks is now much better off for AMD Ryzen AES XTS performance as measured by Cryptsetup.

As reported last year, AES-NI regressed heavily under Retpolines and seemingly went unnoticed for the better part of three years. Now with Linux 5.12 the AES-NI kernel module code has been reworked so it doesn't face such overhead in Retpolines-enabled environments and in turn really helps out with performance.

I previously ran some benchmarks while now for getting an idea as to the impact with Linux 5.12 mainline, I carried out some fresh cryptsetup benchmarks with two AMD systems of Linux 5.11 stable versus Linux 5.12 Git at the end of the merge window.

Read more

Let's talk about Wayland ...

Filed under

In the past few weeks, I read several articles on Wayland. And I thought, what the Internet needs is more debate, not less! So I figured I should add my own opinion into the ether and foster the productive, respectful and totally not emotional discussion around Wayland, the new desktop thingie what shows images on your screen. If you're a techie, you are already flipping, but if you're not, you may be wondering, what? Indeed, for non-techies, Wayland doesn't mean anything. Neither does Xorg.

But the two are display engines, which results ultimately in stuff being painted on your monitor. Xorg is the old technology, a display server, and Wayland is the new display server protocol, and it is meant to replace the former. Except ... this has been going on for more a decade, without end in sight. It boils down to a boss fight of Xorg vs Wayland, and why one is better than the other, and so forth ad infinitum. Now, the real problem is, because this debate is heralded by techies, it boils down to technical details, which is WRONG. The reality is far simpler, far more abstract. Follow me.


Thirdly, logging keystrokes can be done in many many different ways. Why limit the discussion to this being possible with Xorg? Do you know how you prevent such a scenario? Don't have a rogue application or process on your host! Very simple. But then, why not go for malware that is sophisticated enough to install its own driver, or install its own device? Why not something that does all sorts of wonders when installed?

If you have malware on your system, then you have a much bigger problem than the fact once it gets past your perimeter security, it could potentially do bad things. The solution is to make sure that your system does not get exposed or infected, and then, the discussion around Xorg is no longer relevant. Moreover, if someone gets onto your system, it's game over. Not in the movie drama sense, but there's no reason to limit oneself to an arbitrary usecase that serves the narrative. Why not listen to the microphone? Why not delete data? Why not pop a message in your terminal every nine seconds? Lots of options.


We also need to put things into perspective. The Linux desktop - desktop, as in you actually have a graphical interface where the Xorg vs Wayland argument would matter - controls a tiny proportion of the global PC market. To make things worse, the 1% mark has been around for a good decade plus, so it's not like we're going anywhere with any great majesty.

The discussion around Wayland and Xorg affects 1% of users at best - and even then, lots of people don't really care about the technological ingredients in their systems, they just want functionality. The same way you don't care where the flax in your bed linen was sourced, how porcelain in your plates is made, the angle of the spark plug in your car's cylinders, or the composition of the fertilizer at the nearby farm. Those are trivial details behind functionality. They are only of interest to diehard fans.


The discussion around Wayland and Xorg shouldn't be about implementation details - those matter to the experts in the field, of course. But lacking any fundamental user-centric reasons why Xorg should be gone and why something (Wayland) should replace it, the narrative must deteriorate to bickering about tech lingo and buzzwords. At the end of the day, the proof is in the pudding. Functionality. Usability.

Can Wayland do what Xorg does today? Does it offer users at least what they have today? Can a person, no matter their tech credentials, achieve their basic needs using this thing? And the answer to all of these is, unfortunately, NO. Wayland is just part of the greater equation called Linux. But it is a great example of a technology tool that intrudes into userspace and breaks the user experience, whereas technology should be the opposite. Totally invisible and silent. Hint: for those of you already rushing for your pitchforks, Xorg isn't the ideal solution either. It also breaks the user experience, only much less than Wayland.

But the Linux desktop as a whole does not offer the seamless functionality that people need, because it is designed with software tools as the end goal and not with the user experience supported by software tools as the end goal. Cause and effect, reversed. Because it's not a product. It's a bundle of tech. And until this mindset changes (extremely unlikely), the Linux desktop will never get past its 1% share.

Read more

Graphics: Radeon ROCm, Vulkan 1.2.171, and Mesa/OpenCL

Filed under
  • Radeon ROCm Updates Documentation Reinforcing Focus On Headless, Non-GUI Workloads - Phoronix

    The Radeon ROCm open-source compute documentation has been updated to more clearly spell out what was already implied: their focus is on compute for headless, GUI-less workloads and not OpenCL or compute for conventional desktop applications.

    Added last week to the main README file on the ROCm repository is a notice that the AMD ROCm platform is intended as a "compute stack for headless system deployments" and not focused on GUI-based software applications. This doesn't appear to be a change in policy but just making it clear that their focus is on HPC and other headless deployments -- not necessarily on allowing you to have a nice OpenCL compute stack for the likes of Blender, Darktable, DaVinci Resolve, and other OpenCL-using GUI desktop programs.

  • Vulkan 1.2.171 Is Released With Ray-Tracing Fix And BlackBerry QNX Support

    The Khronos Group has released an updated specification for the Vulkan graphics/compute API. Vulkan 1.2.171 has a new VK_QNX_screen_surface extension specifically for the BlackBerry QNX real-time operating system used in many cars and a improvement for raytracing pipeline creation.

  • Vulkan 1.2.171 Released With New Extension For BlackBerry QNX Support - Phoronix

    Vulkan 1.2.171 is out this morning with several fixes and clarifications to this high performance graphics / compute API specification while there is also a new extension for allowing BlackBerry QNX support.

    As reported on Phoronix back in January, BlackBerry was working to bring Vulkan to QNX. That tentative extension reserved back in January, VK_QNX_screen_surface, is now formally added to the Vulkan specification.

  • There's Finally An Easy Way To Track Mesa's OpenCL Support - Phoronix

    Hitting Mesa 21.1-devel this weekend is finally the OpenCL status reporting to the features documentation (docs/features.txt). The OpenCL status reporting is done in a similar manner to the Vulkan and OpenGL extension/version reporting, which makes it now quite easy and quick to check on the current Mesa OpenCL status.

    The current Mesa features reporting can be seen via the Git interface. Or more easily is that tracks the Mesa Git features.txt in a nice, HTML'ed interface.

Syndicate content

More in Tux Machines

Audiocasts/Shows: Open Source Security Podcast, Linux Action News, and SMLR

Review: Artix Linux in 2021

Artix Linux is a fork (or continuation as an autonomous project) of the Arch-OpenRC and Manjaro-OpenRC projects. Artix Linux offers a lightweight, rolling-release operating system featuring alternative init software options, including OpenRC, runit, and s6. The distribution is available in many editions, including Base, Cinnamon, LXDE, LXQt, MATE, KDE Plasma and Xfce. With all of the desktop options, combined with the available init choices, there are 21 editions, not including community spins from which to choose. All editions appear to be built for 64-bit (x86_64) machines. Picking randomly, I selected Artix's Plasma edition featuring the runit init software. The download for this edition is is 1.3GB. Browsing the other editions it looks like most flavours are about 1.1GB to 1.3GB in size, though the minimal Base edition is a compact 618MB. The project's live media boots to the KDE Plasma desktop. On the desktop we find multiple documentation and README icons. There is also an icon for launching the system installer. The default layout places a panel at bottom of the screen where we can find the application menu and system tray. The default wallpaper is a soft blue while the theme for windows and menus is dark with high contrast fonts. [...] Artix Linux is one of those distributions I really enjoy using and yet struggle to review in a meaningful way because it doesn't really go out of its way to introduce new or exciting features and everything works smoothly. The distribution is wonderfully easy to install, offers top-notch performance, and is unusually light on resources. Artix is somewhat minimal, but still ships enough software to be immediately useful right out of the gate. We can browse the web, install packages, view files, and play videos. Meanwhile the application menu isn't cluttered with a lot of extras. The developers clearly expect us to install the functionality we need, while doing a really good job of providing enough for the desktop environment to feel base-line useful right from the start. Artix does a nice job of balancing performance and functionality while also juggling ease of use against not getting in the way. There is a little documentation, but no initial welcome screen or configuration wizards that might distract the user. The one piece I felt was missing was a graphical package manager which would have made it easier to build the extra functionality I wanted on top of the base distribution. However, that one piece aside, I felt as though Artix was really well designed and put together, at lease for someone like me. It's not a distribution geared toward beginners, it's not a "first distro". It is a bit minimal and requires command line knowledge. However, for someone with a little experience with Linux, for someone who doesn't mind the occasional trip to the command line or installing new applications as needed, then Artix provides an excellent experience. It's fast, light, looks (in my opinion) great with the default theme, and elegantly walks the line between minimalism and having enough applications ready to go out of the box to be immediately useful. I'm unusually impressed with how smooth and trouble-free my experience was with this distribution and the fact it offers such a range of desktop and init diversity is all the more appealing. Read more

Alpine Linux Review: Ultimate Distro for Power Users

Alpine Linux is gathering a lot of attention because of its super-small size and focus on security. However, Alpine is different from some of the other lightweight distros we covered on FOSSLinux. It isn’t your typical desktop distribution as it is terminal-based like Arch and is marketed as a “general purpose distro.” It is currently widely adopted as a Docker container thanks to its ultra-small footprint. However, it can be used for all sorts of Linux deployments that benefit from small, resource-efficient Linux distros. Now, that statement might feel too generic. But don’t worry, as we have put together an in-depth and comprehensive review of Alpine Linux, giving you a detailed look at what it has under the hood and how to use it. As such, by the end, you should have a clear understanding of whether you should consider Alpine Linux as your next Linux distro. So without further ado, let’s dive in. Read more

Programming Leftovers

  • How to manipulate strings in bash

    Without explicit support for variable types, all bash variables are by default treated as character strings. Therefore more often than not, you need to manipulate string variables in various fashions while working on your bash script. Unless you are well-versed in this department, you may end up constantly coming back to Google and searching for tips and examples to handle your specific use case. In the spirit of saving your time and thus boosting your productivity in shell scripting, I compile in this tutorial a comprehensive list of useful string manipulation tips for bash scripting. Where possible I will try to use bash's built-in mechanisms (e.g., parameter expansion) to manipulate strings instead of invoking external tools such as awk, sed or grep. If you find any missing tips, feel free to suggest it in the comment. I will be happy to incorporate it in the article.

  • Python Generators

    Python generators are very powerful for handling operations which require large amount of memory.

  • We got lucky

    If you’re having enough production incidents to be able to evaluate your preparation, you’re probably either unlucky or unprepared ;) If you have infrequent incidents you may be well prepared but it’s hard to tell. Chaos engineering experiments are a great way to test your preparation, and practice incident response in a less stressful context. It may seem like a huge leap from your current level of preparation to running automated chaos monkeys in production, but you don’t need to go straight there. Why not start with practice drills? You could have a game host who comes up with a failure scenario. You can work up to chaos in production.

  • React Testing Library – Tutorial with JavaScript Code Examples

    This post will help you to learn what React Testing Library is, and how you can use it to test your React application. This tutorial will assume you already know some basic JavaScript and understand the basics of how React works. React Testing Library is a testing utility tool that's built to test the actual DOM tree rendered by React on the browser. The goal of the library is to help you write tests that resembles how a user would use your application, so that you'll have more confidence that your application work as intended when a real user do use it.

  • Why I Moved From Ops to DevOps (and why you might want to)