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

Monthly Archive:: January 2022

Debut of X

I’ve spent the last couple weeks writing a window system for the VS100. I stole a fair amount of code from W, surrounded it with an asynchronous rather than a synchronous interface, and called it X. Overall performance appears to be about twice that of W. The code seems fairly solid at this point, although there are still some deficiencies to be fixed up. The original mailing list announcement of the Linux kernel gets regurgitated quite often, but I had never seen the original announcement for X. Fascinating.

Hello Mac OS X Tiger

2005! The future is here! You have just spent $129 for the newest release of Mac OS X: Tiger. You’re amazed by the brand new Spotlight and Safari RSS, you like your new OS so much you want to develop apps for it. You read on Apple’s website about this app “Xcode” that just received the version 2.0 update. That’s it! Time to code! You fire up Safari, go to Yahoo! and start searching for Xcode tutorials, unfortunately, besides a bunch of Geocities websites mentioning “Web 2.0” (or whatever that means), you don’t find much information online on how to create apps for Tiger. Wouldn’t it be nice to find a tutorial to help you to get started? I attended a launch party for Tiger at a third party Apple reseller in Berlin. The good old days – when Apple was fun. Good times.

GhostBSD 22.01.12 released

This new ISO contains fixes, improvements, and software updates. Finally, the installer hanging at the cleaning stage for ZFS installation got fixed, and OpenRC and dhcpcd were removed from the base code. Furthermore, automation configuration for HD 7000 series and older GPUs has been added. I also added the support for os-release to show GhostBSD name and GhostBSD version in applications like mate-system-monitor, python distros, pfetch, and neofetch and added a new set of wallpapers for 2022 and removed p7zip from the default selection since it is vulnerable and unmaintained. GhostBSD is a desktop-oriented FreeBSD distribution, mating Mate with the FreeBSD base system.

Exploring System76’s new Rust-based desktop environment

A few months ago, System76 announced that they would be developing a new desktop environment based on the Rust programming language called COSMIC. Their idea is to create a desktop environment that is similar to the one that is currently available for the Pop!_OS operating system, but with a different focus. System76’s objective is to create something that is faster, more customizable, and free of the limitations of the GNOME desktop environment, and let’s face it, we’re all curious how this desktop will look. This post will explore how this new desktop environment is shaping up. There’s not a ton to see here yet, and it’s clearly very early days. Still, it’s interesting to see the beginnings.

PCIe 6.0 specification published

PCI Express technology has served as the de facto interconnect of choice for nearly two decades. The PCIe 6.0 specification doubles the bandwidth and power efficiency of the PCIe 5.0 specification (32 GT/s), while providing low latency and reduced bandwidth overhead. We’re barely seeing the rollout of PCIe 5.0 begin, and we’re already moving ahead. Also, who knew the standards organisation for PCIe is headquartered in Beaverton, Oregon, of all places. Although, to be fair, any city that understands and caters to the beautiful, thrilling, and honest sport of curling is a great city. And I’m not joking here – curling is exquisite, and quite probably the noblest of sports.

Linux 5.16 released

Linux 5.16 has many new features including the FUTEX2 futex_waitv system call for helping Steam Play (and Wine), memory folios have been mainlined, AMD Ryzen 6000 mobile series support is getting into better shape, Intel Alder Lake S graphics are now considered stable, Intel AMX support for Sapphire Rapids has landed, big AMD Ryzen with Radeon graphics performance improvements, and a wealth of other hardware improvements. And this new kernel release will find its way to your computer soon if you’re using either a bleeding edge distribution or manually added a kernel repository with up-to-date kernels (I tend go with xanmod).

A data black hole: Europol ordered to delete vast store of personal data

The EU’s police agency, Europol, will be forced to delete much of a vast store of personal data that it has been found to have amassed unlawfully by the bloc’s data protection watchdog. The unprecedented finding from the European Data Protection Supervisor (EDPS) targets what privacy experts are calling a “big data ark” containing billions of points of information. Sensitive data in the ark has been drawn from crime reports, hacked from encrypted phone services and sampled from asylum seekers never involved in any crime. Sometimes we need to be reminded that authorities illegally amassing huge troves of data on unsuspecting and innocent people is not something that only happens in the US. But it is also worth noticing how in EU we at least have institutions that are trying curb these blind mass surveillance tendencies. If that fight will have measurable effects in the long run is something that we can’t foresee.

Pluton is not (currently) a threat to software freedom

At CES this week, Lenovo announced that their new Z-series laptops would ship with AMD processors that incorporate Microsoft’s Pluton security chip. There’s a fair degree of cynicism around whether Microsoft have the interests of the industry as a whole at heart or not, so unsurprisingly people have voiced concerns about Pluton allowing for platform lock-in and future devices no longer booting non-Windows operating systems. Based on what we currently know, I think those concerns are understandable but misplaced. As usual, Matthew Garrett does an excellent job explaining complex topics like this.

My first impressions of web3

Moxie Marlinspike takes a look at “web3”. Despite considering myself a cryptographer, I have not found myself particularly drawn to “crypto.” I don’t think I’ve ever actually said the words “get off my lawn,” but I’m much more likely to click on Pepperidge Farm Remembers flavored memes about how “crypto” used to mean “cryptography” than I am the latest NFT drop. Also – cards on the table here – I don’t share the same generational excitement for moving all aspects of life into an instrumented economy. Even strictly on the technological level, though, I haven’t yet managed to become a believer. So given all of the recent attention into what is now being called web3, I decided to explore some of what has been happening in that space more thoroughly to see what I may be missing. Cryptocurrencies are the MLMs and pyramid schemes for nerdbros. They are a complete waste of effort, hardware, and electricity, and literally do not serve any purpose other than drawing in more unfortunate suckers to broaden the base of the pyramid at the expense of the environment. And NFTs are even worse. There is definitely interesting technology behind these concepts, but for now, they’re being used for scams, pyramid schemes, and MLMs. Don get suckered into this dumpster fire.

Simplicity of IRC

During discussions with my friends and colleagues, whenever the topic of chat protocols comes up, I often remark how simple the Internet Relay Chat (IRC) protocol is and how this simplicity has fostered creativity in the lives of many young computer hobbyists growing up in the late 1990s and early 2000s. For many of us who were introduced to the Internet during that time, writing an IRC bot turned out to be one of our first few non-trivial hobby programming projects that involved network sockets, did something meaningful, and served actual users. It’s a big loss we let IRC kind of fall by the wayside as the world moved to things like Slack, Discord, and Teams. It turns out people want features like audio and video chat, emoji, images, videos, and so on – all things a slow-moving, classic standard like IRC will never properly support.

Unidentified PC DOS 1.1 boot sector junk identified

Anyone trying to disassemble the PC DOS 1.1 boot sector soon notices that at offsets 1A3h through 1BEh there is a byte sequence that just does not belong. It appears to be a fragment of code, but it has no purpose in the boot sector and is never executed. So why is the sequence of junk bytes there, and where did it come from? The immediate answer is “it came from FORMAT.COM”. The junk is copied verbatim from FORMAT.COM to the boot sector. But those junk bytes are not part of FORMAT.COM, either. So the question merely shifts to “why are the junk bytes in FORMAT.COM, and where did they come from?” It is not known if anyone answered the question in the past, but the answer has been found now, almost 40 years later—twice independently. This kind of digital archeology is deeply fascinating.

AmigaOS 3.2.1 released

AmigaOS 3.2.1 fixes several bugs and additionally comes with new features. The team of developers and testers have worked ever since the release of AmigaOS 3.2 fixing bugs and implementing new features. They have read social platforms for user anecdotes, videos and reviews, and are excited by the positive reception and feedback. The Amiga will never die.

Filling in some gaps in the story of Space Cadet Pinball on 64-bit Windows

Space Cadet Pinball has a special place in the hearts of many Windows enthusiasts. A customer used their support contract to ask how to change among the three levels of play in Space Cadet Pinball. My proudest achievement of Windows XP was fixing the game so it didn’t consume 100% CPU. People keep asking if it can be brought back. One point of contention is over my claim that I removed Pinball from Windows because I couldn’t get the 64-bit version to work. Retrocomputing enthusiast NCommander even undertook a Zapruder-level analysis of all of the 64-bit versions of Windows he could find to prove or disprove my story. I was amazed at the level of thoroughness (and the fortitude it required to get those Itanium systems up and running, much less debug them), but there’s one version of 64-bit Windows that NCommander didn’t try out, and that’s the one that’s relevant to the story. This story and investigation into Space Cadet Pinball is wild. At this point we seem to have a pretty complete picture of its entire history, but it too some serious digging to get there.

The most important computer you’ve never heard of

It’s not unusual to hear that a particular military technology has found its way into other applications, which then revolutionized our lives. From the imaging sensors that were refined to fly on spy satellites to advanced aerodynamics used on every modern jetliner, many of these ideas initially sounded like bad science fiction. So did this one. I had never heard of this.

Windows 11 Sun Valley 2 to be finalized by summer

Windows 11 is going to be a year old in July 2022 and Microsoft will be giving users an anniversary present – a new feature update with a long list of much-needed improvements. The update is apparently codenamed “Sun Valley 2” internally and it is going to be similar to the anniversary update for Windows 10. Sun Valley 2 or version 22H2 would be a version of Windows 11 with some important improvements to make it faster, smoother and more modern, and to integrate WinUI more closely with the rest of the operating system. For example, a new Windows Run with dark mode could show up in this release. We’re also expecting new native apps. Considering Windows 11’s modern desktop context menu has its own classic Win32 context menu, I think they still got some work to do.

Intel, AMD, Nvidia announce tons of new products

So, AMD, Intel, and Nvidis all decided to announce their latest products all on the same day yesterday. Let’s start with Intel, who announced the laptop version of their latest generation of processors, and if the performance claims hold up, they’re some damn good chips – but as always, we’ll have to await proper benchmarks. These laptop chips use Intel’s new hybrid processor architecture, which combines larger, faster performance cores with smaller, more efficient cores (P-cores and E-cores, respectively). How many P-cores and E-cores you get depends on the processor you’re buying, and you’ll need an operating system that supports Intel’s “Thread Director” technology to get the most performance out of the chips. Windows 11 supports it now, Linux support is in the works, and Windows 10 doesn’t have it and won’t be getting it. AMD, not wanting to be outdone, introduced its Ryzen 6000 series of mobile processors, which finally move their integrated graphics to RDNA 2m, and are the first to include Microsoft’s Pluton security chip. Yesterday AMD disclosed that they would be launching the new Ryzen 6000 Mobile series today – updated cores, better graphics, more features, all in a single monolithic package a little over 200 mm2. There will be 10 new processors, ranging from the traditional portable 15 W and 28 W hardware, up to 35 W and 45 W plus for the high-end gaming machines. AMD is expecting 200+ premium systems in the market with Ryzen Mobile in 2022. Finally, we have NVIDIA, with the smallest announcement of new high and low-end mobile GPUs.

Wine gets ported to Haiku

Haiku continues to be on its roll, this time making tons of progress porting Wine to run on Haiku. Rockstar Haiku developer X512 has managed to not just start porting Wine to Haiku, but also to get so far as to run actual Windows applications on the platform. The screenshots in the Haiku forum thread speak for themselves. This is amazing work, and I can’t even begin to imagine how so much progress can be made in such short time. That being said – and the reason I’m late with this story – I’m not entirely sure porting things like Qt, X.org, and Wine are the best way forward for Haiku. As an old BeOS nerd, what I want are fully native, platform-optimised Haiku applications that make use of all the unique features the operating system has to offer. I’m not interested in yet another platform to run Qt applications, LibreOffice, and a small handful of Windows applications. I really don’t like being a grumpy old man when it comes to relatively small, alternative projects whose members code for free, but none of the recent amazing news coming out of Haiku has made me more interested in Haiku – in fact, it has only made me less interested, and less enthusiastic. Haiku and BeOS occupy a special place in my heart, and the focus shift from focusing on Haiku as an API-compatible clone of BeOS to yet another platform that runs Qt, X, and a few Windows applications worse than Linux or BSD do is not something I’m particularly thrilled with. But here’s the cool thing – what I think is, and should be, entirely irrelevant, and these developers need to keep doing what they want to do, whether randos like me want them to or not. That’s the nature of open source.

Libadwaita 1.0 released

Libadwaita 1.0 has been released, just at the end of the year. Libadwaita is a GTK 4 library implementing the GNOME HIG, complementing GTK. For GTK 3 this role has increasingly been played by Libhandy, and so Libadwaita is a direct Libhandy successor. Libadwaita is quite controversial, as aside from dark mode and a (promised) colour API, applications that use Libadwaita cannot be themed. It’s all the result of developers being unhappy us pesky users get to decide what our computers look like, so they decided to prevent users from theming their systems at all. GNOME’s own applications will surely transition to it, and it remains to be seen if the wider Gtk developer community will opt for it as well. Libadwaita hjas already led to two major departures from GNOME, and other Gtk-based desktop environments, such as Cinnamon and Mate, may follow.

Unicode normalization forms: when ö != ö

Some time ago, a very weird issue was reported to me about a Nextcloud system. The user uploaded a file with an “ö” on a SMB share that was configured as an external storage in the Nextcloud server. But when accessing the folder containing the file over WebDAV, it did not appear (no matter which WebDAV client was used). After ruling out the usual causes (wrong permissions, etc…), I analyzed the network traffic between the WebDAV client and the server and saw that the file name is indeed not returned after issuing a PROPFIND. So I set some breakpoints in the Nextcloud source code to analyze if it is also not returned by the SMB server. It was returned by the SMB server, but when the Nextcloud system requested more metadata for the file (with the path in the request), the SMB server returned a “file not found” error, which lead Nextcloud to discard the file. How can it happen that the file is first returned by the SMB server when listing files but then the server suddenly reports an error when requesting more metadata? Special characters must be second only to time, dates, and timezones when it comes to weird behaviour in code.