Keep OSNews alive by becoming a Patreon, by donating through Ko-Fi, or by buying merch!

elementary OS is imploding

The comments have pointed out that the person I was linking to is a transphobic bigot, and that deadnaming was taking place. I had no idea this was the case, and was entirely unaware of the situation. Still, that is not an excuse, and I should have done better due diligence to ensure this didn’t happen. Rest assured, there was no ill intent on my part whatsoever – just ignorance of the people involved. My sincerest apologies to everyone involved, and I will strive to do better. elementaryOS was never going to be long for this world. They go years without releases, new releases require fresh installations (often no upgrade path), the only way to install software out of the box is through their virtually empty application store (you need to manually enable things like apt repositories), and so on. A lot of people suggest elementaryOS as a distribution for beginners, but I never understood why – it will leave users locked into an operating system that barely has any applications, requires fresh installations, and requires a ton of manual fiddling and command line work to make more usable and capable. At that point, you might as well jump straight to Mint, pop!_OS, Fedora, or any of the other truly capable, user friendly, foolproof Linux distributions that don’t try to lock users out of all kinds of useful features and applications. It’s no surprise to me that the company behind elementaryOS has been unable to make any money. It always gave me major Lindows/Linspire vibes.

PipeWire: a year in review & a look ahead

The PipeWire project has made major strides over the past few years, bringing shiny new features, and paving the way for new possibilities in the Linux multimedia scene. With 2021 seeing significant progress made on all fronts, let’s take a moment to look back at what was accomplished, and what lies ahead for 2022. Just one of the many project that make Linux easier to use on the desktop.

Android 12L released

Android 12L, the big-screen updated version of Android 12, is now rolling out after months of testing, landing as part of today’s Feature Drop update for Pixels and coming soon to other tablets and foldables from companies like Samsung, Lenovo, and Microsoft. If you haven’t followed along with our Android 12L feature coverage, the very short version is that most of the changes were meant to address issues larger devices face when running Android. That includes UI tweaks covering a range from the notification shade to launcher grid sizing, plus some tweaks to multitasking, as well as a new taskbar that behaves a little more like Chrome OS — Google’s unifying its interfaces across compatible screen sizes. Most of the changes are, as said, for devices with larger screens, so most likely there isn’t much in here for people with regular phones.

Apple’s M1 Ultra tapes two M1 Max chips together

Apple is adding “one last chip” to the M1 processor family. The M1 Ultra is a new design that uses “UltraFusion” technology to strap two M1 Max chips together, resulting in a huge processor that offers 16 high-performance CPU cores, four efficiency cores, a 64-core integrated GPU, and support for up to 128GB of RAM. It looks like Apple is using a chiplet-based design for the M1 Ultra, just like AMD is doing for many of its Ryzen chips. A chiplet-based approach, as we’ve written, uses multiple silicon dies to make larger chips and can result in better yields since you don’t need to throw a whole monolithic 20-core chip out if a couple of cores have defects that keep them from working. This is a beast of a chip, and it fits in this neat little new Mac, called the Mac Studio. Apple also unveiled a new, more “affordable” monitor, but I’m not sure a monitor that maxes out at 60Hz in 2022 is worth €1779.

Ntfs2btrfs: convert NTFS to Btrfs

Ntfs2btrfs is a tool which does in-place conversion of Microsoft’s NTFS filesystem to the open-source filesystem Btrfs, much as btrfs-convert does for ext2. The original image is saved as a reflink copy at image/ntfs.img, and if you want to keep the conversion you can delete this to free up space. Neat tool, but probably with a rather limited application.

All desktop calculators are wrong, so I had to build my own

Writing this article wasn’t easy. At first glance, it’s all about a fairly unentertaining subject (building a calculator, the kind of exercise that every IT student tried at some point of its education), and to make the matter worse, it’s pedantically advertised. But in the end, I believe that this article really brings out valuable features, highlights enjoyable development stories, and offers an interesting experience, so bear with me! I built a desktop calculator called Chalk, which is free and supports macOS 10.9+. Because I had to make unconventional choices and introduce ideas that I never saw anywhere else before, my first task is to convince you that Chalk is more interesting than it looks. Alright, let’s see what the not-at-all critical and discerning OSNews readership thinks of this one.

Google, Microsoft, Apple, and Mozilla are working together to improve the web for developers

For the first time ever, all major browser vendors, and other stakeholders, have come together to solve the top browsers compatibility issues identified by web developers. Interop 2022 will improve the experience of developing for the web in 15 key areas. In this article, find out how we got here, what the project focuses on, how success will be measured, and how you can track progress. I’m all for working together in this industry, since working together usually means better experiences for consumers. Making browsers render websites more consistently is a great goal to strive towards, especially when it’s a joint effort.

Windows Defender is enough, if you harden it

This article is not intended to convince you to abandon your current antivirus solutions. In this post I would like to share my observations and ways to improve the effectiveness of Defender. But today, let’s focus on Defender for the home user. It does not have additional functions that are offered by other commercial solutions, but what it does is enough. However, it is worth enabling some additional functions that are not available from the graphical interface. Excellent article, and worth a read if you’re still using Windows.

Here’s the full Google Chrome browser running on Fuchsia

Google’s homegrown Fuchsia operating system has taken another step closer to being broadly usable by gaining the full Google Chrome browser experience. It’s been possible to access the web in a very limited way on Fuchsia for quite some time now via the operating system’s “Simple Browser” app – which was powered by the Chromium engine under the hood. While usable, this “browser” didn’t offer the usual necessities like an address bar or tabs. Mid last year, we reported that Google had begun efforts to bring the full Chrome browser experience to Fuchsia. As first spotted by oldschool-51 of Fuchsia’s Reddit community, these efforts have come to fruition in recent days, with Simple Browser being replaced in Fuchsia’s app list with “Chromium.” It’s steps like these that show that Google is serious about Fuchsia. For whatever that’s worth.

Tech’s cult of thinness needs to come to an end

Gadgets are getting too thin, again. These past few weeks saw some of the latest victims of the seemingly unending drive towards making our devices as thin as possible, no matter the consequences. Samsung’s Galaxy S22 and S22 Plus — what will undoubtedly be some of the most popular Android phones of the year — are thinner than last year’s models and held back by disappointing battery life. The new Dell XPS 15 is “exceptionally thin and light” but barely lasts four hours on a charge and runs nearly as hot as the sun. And the OnePlus 10 Pro is a flagship smartphone that can somehow be snapped in half with your bare hands. It seems that despite over a decade of chasing the thinnest, lightest phones and computers around to the detriment of battery life, cooling, and durability, companies still haven’t learned their lessons. I prefer a few more millimeters if it means better heat dissipation, less fan noise, and better battery life. I’m not entirely sure if consumers in general prefer thinness over these other aspects, but I doubt they do.

Enthusiast makes the Mac mini more mini

At 7.7×7.7×1.4 inches, the Mac mini is a tiny desktop. When the form factor debuted in 2010, it was pretty impressive. But 12 years later, with mini PCs like the Intel NUC measuring 4.6×4.4×1.5 inches, the Mac mini doesn’t feel all that mini anymore. As it turns out, the PC is packing some extra baggage, and by getting rid of some of those parts—like an overly powerful internal power supply unit (PSU)—an enthusiast has been able to rebuild the system with a 28 percent reduction in volume while allegedly keeping the same performance as the original machine. Since I’m no archeologist who specialises in prehistoric measurement “systems”, I have no idea what those weird, alien measurements mean, but the pictures and video are clear: this is a really tiny M1 Mac Mini now. And the “enthusiast” is Quinn Nelson, all-around good guy.

Samsung appears to be throttling 10,000 Android apps on Galaxy devices, just like OnePlus

Oh, oh, oh Samsung, up to their usual tricks. Samsung phones ship with a Game Optimizing Service app pre-installed as a system app — we confirmed it’s installed on the Galaxy S22+, as pictured below. It cannot be disabled. The app’s exact purpose isn’t described very well anywhere, but its name certainly implies the app is used to improve performance for games. However, as one Twitter user points out, with the backing of a lengthy thread from frustrated Samsung Galaxy owners in Korea (via Android Authority), Samsung seems to be using this app to “optimize” the performance of thousands of non-gaming apps. When an app is in the Game Optimizing Service list, its performance is limited, as demonstrated by a YouTuber who changed the package name of the 3DMark benchmark app to trick Samsung’s software into throttling it, and the results are pretty telling. In and of itself there’s really nothing wrong with managing the performance of various applications in order to preserve battery life. However, it has to be done transparently and openly, so that users can easily see what’s going on and disable any optimisations they’re not interested in. This kind of obfuscation by Samsung is deception, and simply should not be allowed.

The decline and fall of Java on the desktop part 1 (1999-2005)

This is the first in a series of articles about the history of Java on the Desktop, from my perspective as a developer who started working with Java in the late ‘90’s. I’m writing this, partly as a background for why I created jDeploy, a developer-friendly desktop deployment tool for Java. Despite the ominous tone of this article’s title, I believe that Java is a compelling platform for modern desktop applications. Stick around for the whole series to find out why. Isn’t Java still one of the languages every aspiring programmer learns in school?

Genode OS Framework 22.02 released

The 22.02 release is dominated by three topics, the tightening and restructuring of the code base, device-driver infrastructure, and the transition of Sculpt OS towards a versatile toolkit for building specialized operating-system appliances. Genode’s release notes are always a sight to behold. Detailed, interesting, and always worth a read.

Microsoft is testing a desktop watermark for unsupported Windows 11 PCs

If you’ve already installed Windows 11 on unsupported devices, you might soon notice a new watermark on the desktop. The watermark, which appears above the taskbar clock, is similar to the “Windows is not activated” error, but it won’t affect apps, windows or web browsers. The desktop watermark simply states “system requirements not met” and it may irritate some users, but it should not come as too much of a surprise, as Microsoft previously warned users of possible ‘damage’. You have to feel sad for Windows users. Windows 7 really seems to have been the high point of Windows – ever since then it’s been one mess after another.

Make Linux look exactly like Windows 95

Linux themes and icon sets, inspired by other operating systems, have been around for as long as Linux has had a GUI. Some times those themes get pretty close to looking like the original. But… What if — what if — you could make your Linux desktop look almost exactly like Windows 95? It’s damn headerbars in GNOME (and now also Xfce) that mess this utopia up. They looks preposterously bad using these classic operating systems skins.

Writing an OS in Rust

This blog series creates a small operating system in the Rust programming language. Each post is a small tutorial and includes all needed code, so you can follow along if you like. The source code is also available in the corresponding Github repository. A great way to learn Rust.

The cats sitting on a fence in early builds of Windows 8

Now, a black screen could have multiple causes. The video driver may have crashed. Or the video driver could be working fine, but the compositor has crashed, so that nothing is being given to the video driver. Or the compositor could be working fine, but the shell has crashed, so the compositor has nothing to render. Or the shell could be running, but it simply forgot to put something on the screen. For that last case, the Windows 8 shell created a backstop window that sat at a layer below all of the other layers. If none of the other layers were present, then at least you got a backstop window. And in early debug builds, that backstop window contained an ASCII drawing of cats. That way, if you saw cats, you knew that you were in that last failure case: The shell is running but forgot to put something on the screen. Why cats? I approve of cats.

Neptune OS: a WinNT personality of the seL4 microkernel

Neptune OS is a Windows NT personality of the seL4 microkernel. It implements what Microsoft calls the “NT Executive”, the upper layer of the Windows kernel NTOSKRNL.EXE, as a user process under the seL4 microkernel. The NT Executive implements the so-called NT Native API, the native system call interface of Windows upon which the more familiar Win32 API is built. These are exposed to the user mode via stub functions in NTDLL.DLL (a somewhat redundant name if you ask me) with names such as NtCreateProcess. The NT Executive is also responsible for the Windows kernel driver interface (known as the Windows driver model), which includes functions like IoConnectInterrupt and IoCallDriver. On Windows these are loaded into kernel mode and linked with the NTOSKRNL.EXE image. On Neptune OS, we run all the Windows kernel driver in user mode and they communicate with the NT Executive process via standard seL4 IPC primitives. The eventual goal of the Neptune OS project is to implement enough NT semantics such that a ReactOS user land can be ported under Neptune OS, as well as most ReactOS kernel drivers. In theory we should be able to achieve binary compatibility with native Windows executables provided that our implementation of the NT Native API is sufficiently faithful. We should also be able to achieve a high degree of source code compatibility with Windows kernel drivers. The main obstacle of achieving binary compatibility of kernel drivers is that many Windows kernel drivers do not follow the standard Windows driver communication protocol (ie. passing IRPs when you need to call another driver) and instead just pass pointers around and call into other drivers directly. In Neptune OS unless it’s a driver-minidriver pair we always run “kernel” drivers in their separate processes so it is not possible to do that. Very cool idea for a project, and awesome to see that they plan on integrating the work done by the ReactOS team.

DevOps for the Sinclair Spectrum

We’re fast approaching the 40th birthday of the Sinclair Spectrum in 2022, and to keep myself occupied during COVID lockdowns I decided it would be a lot of fun to go back and re-visit the computer that started it all for me. I set about coding and building the infrastructure for a Spectrum-based community project (website at tnfs.markround.com) incorporating my current-day tools and knowledge, hence the title of this series of posts. The enterprise grew into a curious mix of old and new: Container-based pipelines with Ruby server-side components, all interacting with Spectrum BASIC and z80 assembly code, running on real 1980s hardware with a TCP/IP connection. If you’ve ever wondered how to unit-test Sinclair BASIC programs in GitOps pipelines running on Kubernetes clusters, this is the set of articles for you. I love it when people push these old machines to their limits with modern knowledge.