GNOME OS is switching from OSTree to systemd-sysupdate

I’m pretty sure most of you are familiar with KDE Neon, the distribution KDE maintains to provide easy access to the latest KDE technologies. However, did you know GNOME has something similar, called GNOME OS? It’s been around for a while, but has a far lower profile than KDE Neon does, and it seems they want to change that and put more of a spotlight on GNOME OS.

GNOME OS is an immutable distribution using OSTree, the same technology used by the various popular immutable versions from the Fedora family. It seems GNOME OS is working to leave OSTree behind, and move to systemd-sysupdate instead, which has been available since systemd 251, released in May 2022. The developers claim this will bring the following benefits:

  • Provide a trust chain from the bootloader, all the way up, both online and offline;
  • Achieve a closer integration with systemd;
  • Advance our support for image-based design and its benefits, e.g., immutability, auto-updating, adaptability, factory reset, uniformity and other modernised security properties around image-based OSes.
↫ Martín Abente Lahaye, Sam Thursfield

To complete the move from OSTree to systemd-sysupdate, a few things need to be completed. First, the boot process and root filesystem had to be migrated, which was done last year. Second, sysupdate needs to integrated into GNOME, as for now, you can only use it via the command line. This work is ongoing, and requires a new D-Bus service and polkit integration to allow GNOME Software to manage the update process. Of course, there’s more work that needs to be done to complete this migration, but these are the main tasks.

All of this work is part of the project’s goal to make GNOME OS nightlies viable for daily-driving for quality assurance purposes, and I’m sure all this work will also make GNOME OS more attractive to people outside of the developer community. It’s basically GNOME/systemd taken to the extreme, and while that will surely make quite a few people groan, I personally find it great that this will make GNOME OS a more capable choice for everyone.

That’s what open source is all about, in the end.

Google now offers ‘web’ search — and an “AI” opt-out button

This is not a joke: Google will now let you perform a “web” search. It’s rolling out “web” searches now, and in my early tests on desktop, it’s looking like it could be an incredibly popular change to Google’s search engine.

The optional setting filters out almost all the other blocks of content that Google crams into a search results page, leaving you with links and text — and Google confirms to The Verge that it will block the company’s new AI Overviews as well.

↫ Sean Hollister at The Verge

I hate what the web has become.

The new APT 3.0 solver

A crucial but often entirely transparent feature of a modern package management system like Debian’s APT is its solver – basically the set of rules and instruction on how to handle dependencies when installing a package. APT is currently in the process of radically changing its solver, the first bits of which can be found in APT 2.9.3, referred to as solver3. Many of the changes and improvements get a little into the weeds and will mostly be transparent to users, but there is one feature the new solver will enable that many of you will be incredibly excited about.

One of the core new capabilities of solver3 is the implication graph.

As part of the solving phase, we also construct an implication graph, albeit a partial one: The first package installing another package is marked as the reason (A -> B), the same thing for conflicts (not A -> not B).

↫ Julian Andres Klode

Seems rather innocuous at first sight, but here’s what the implication graph will make possible:

The implication graph building allows us to implement an apt why command, that while not as nicely detailed as aptitude, at least tells you the exact reason why a package is installed. It will only show the strongest dependency chain at first of course, since that is what we record.

↫ Julian Andres Klode

If you’ve ever dealt with packaging issues – probably when running -testing or similar unstable distributions that use APT, a command that tells you exactly why a package is installed is an absolute godsend. Sure, aptitude exists, but aptitude takes you out of your current CLI workflow, whereas this will be much easier to quickly run.

There’s more features solver3 will enable, but this one is definitely one of my favourite low-level additions to APT in a long, long time.

Google details some of the “AI” features coming to Android

Google I/O, the company’s developer conference, started today, but for the first time since I can remember, Android and Chrome OS have been relegated to day two of the conference. The first day was all about “AI”, most of which I’m not even remotely interested in, except of course where it related to Google’s operating system offerings.

And the company did have a few things to say about “AI” on Android, and the general gist is that yeah, they’re going to be stuffing it into every corner of the operating system. Google’s “AI” tool Gemini will be integrated deeply into Android, and you’ll be able to call up an overlay wherever you are in the operating system, and do things like summarise a PDF that’s on screen, summarise a YouTube video, generate images on the fly and drop them into emails and conversations, and so on.

A more interesting and helpful “AI” addition is using it to improve TalkBack, so that people with impaired vision can let the device describe images on the screen for them. Google claims TalkBack users come across about 90 images without description every day (!), so this is a massive improvement for people with impaired vision, and a genuinely helpful and worthwhile “AI” feature.

Creepier is that Google’s “AI” will also be able to listen along with your phone calls, and warn you if an ongoing conversation is a scamming attempt. If the person on the other end of the line claiming to be your bank asks you to move a bunch of money around to keep it safe, Gemini will pop up and warn you it’s a scam, since banks don’t ask you such things. Clever, sure, but also absolutely terrifying and definitely not something I’ll be turning on.

Google claims all of these features take place on-device, so privacy should be respected, but I’m always a bit unsure about such things staying that way in the future. Regardless, “AI” is coming to Android in a big way, but I’m just here wondering how much of it I’ll be able to turn off.

VMware Workstation Pro and Fusion pro go free for personal use

After Broadcom acquired VMware, there’s been a steady stream of worrying or outright bad news for people using VMware products at home, for personal use, as enthusiasts. The biggest blow to the enthusiast market was the end of perpetual licensing, forcing people into subscriptions instead. Finally, though it seems we’re getting some good news.

The most exciting part is that Fusion Pro and Workstation Pro will now have two license models. We now provide a Free Personal Use or a Paid Commercial Use subscription for our Pro apps. Users will decide based on their use case whether a commercial subscription is required.

This means that everyday users who want a virtual lab on their Mac, Windows or Linux computer can do so for free simply by registering and downloading the bits from the new download portal located at support.broadcom.com.

↫ Michael Roy on the VMware blog

This is definitely good news for us enthusiasts, and it means I won’t have to buy a cheap VMware license off eBay every few years anymore, so I’m quite satisfied here. However, with VMware under Broadcom focusing more and more on the enterprise and squeezing every last penny out of those customers, one has to wonder if this ‘free for personal use’ is just a prelude to winding down the development of enthusiasts’ tools altogether.

It wouldn’t be the first time that a product going free for personal use was a harbinger of worse things yet to come.

Google is experimenting with running Chrome OS on Android

Now that Android – since version 13 – ships with the Android Virtualisation Framework, Google can start doing interesting things with it. It turns out the first interesting thing Google wants do with it is run Chrome OS inside of it.

Even though AVF was initially designed around running small workloads in a highly stripped-down build of Android loaded in an isolated virtual machine, there’s technically no reason it can’t be used to run other operating systems. As a matter of fact, this was demonstrated already when developer Danny Lin got Windows 11 running on an Android phone back in 2022. Google itself never officially provided support for running anything other than its custom build of Android called “microdroid” in AVF, but that’s no longer the case. The company has started to offer official support for running Chromium OS, the open-source version of Chrome OS, on Android phones through AVF, and it has even been privately demoing this to other companies.

At a privately held event, Google recently demonstrated a special build of Chromium OS — code-named “ferrochrome” — running in a virtual machine on a Pixel 8. However, Chromium OS wasn’t shown running on the phone’s screen itself. Rather, it was projected to an external display, which is possible because Google recently enabled display output on its Pixel 8 series. Time will tell if Google is thinking of positioning Chrome OS as a platform for its desktop mode ambitions and Samsung DeX rival.

↫ Mishaal Rahman at Android Authority

It seems that Google is in the phase of exploring if there are any OEMs interested in allowing users to plug their Android phone into an external display and input devices and run Chrome OS on it. This sounds like an interesting approach to the longstanding dream of convergence – one device for all your computing needs – but at the same time, it feels quite convoluted to have your Android device emulate an entire Chrome OS installation.

What a damning condemnation of Android as a platform that despite years of trying, Google just can’t seem to make Android and its applications work in a desktop form factor. I’ve tried to shoehorn Android into a desktop workflow, and it’s quite hard, despite third parties having made some interesting tools to help you along. It really seems Android just does not want to be anywhere else but on a mobile touch display.

Nintendo Switch hacked to run Windows 11 on Arm

As Nintendo Switch unlocks and homebrew software develops, people are inclined to explore the possibilities and whether or not they actually provide a good experience. Our new prime example seems to be a full install of Windows 11 Arm on the Switch. As noted by @PatRyk on Twitter, who actually set this up, the experience is pretty grueling! The initial installation took three hours, and even basic system tasks were unresponsive.

↫ Christopher Harper at Tom’s Hardware

Silly, sure, but efforts like these all contribute to emulation efforts, which will eventually be important once Nintendo drops support for this machine and they become increasingly harder to get. Give it a decade or so and we’ll need the Switch emulators to keep playing Switch games.

EA is prototyping in-game ads even as we speak

Electronic Arts has a long, storied history of trying to wring more money out of gamers after they’ve purchased a game — now, it appears, the company’s hard at work on its next generation of in-game ads.

EA CEO Andrew Wilson admitted as much on the company’s Q4 earnings call: when an analyst asked about “the market opportunity for more dynamic ad insertion across more traditional AAA games,” he said the company’s already working on it.

“We have teams internally in the company right now looking at how do we do very thoughtful implementations inside of our game experiences,” said Wilson.

↫ Sean Hollister at The Verge

Ads in games are definitely not new – we’ve seen countless games built entirely around brands, like Tapper for Budweiser, Pepsiman, or Cool Spot for 7-Up – and banner ads and product placement in various games has been a thing for decades, too. It seems like EA wants to take this several steps further and use things like dynamic ad insertion in games, so that when you’re playing some racing game, you’ll get an ad for your local Hyundai dealer, or an ad for a gun store when you’re playing GTA in the US.

Either way, it’s going to make games worse, which is perfectly in line with EA’s mission.

Thanks to our outgoing sponsor: Snikket

Snikket is a FOSS project for creating private chat spaces for small groups, such as families, friends, or clubs. It doesn’t depend on a phone number, doesn’t upload address books anywhere, and doesn’t sell data to advertisers. It supports all the features you expect, including media and voice messages, audio and video calls, end-to-end encryption, group messaging, and more. Use it from multiple devices at once with the official apps, or even with unofficial, third-party apps. Snikket is easy to self-host, and professional managed hosting is also available.

Our previous sponsor, JMP, opted to donate a free week’s sponsorship to Snikket, which any paying OSNews sponsor can opt to do. This is our very small way of giving something back to the countless open source and/or smaller projects out there. Thank you Snikket for sponsoring OSNews!

IBM introduces entry-level Power10 server and tower

Each S1012 node has a single Power10 processor, which can have 1, 4, or 8 cores activated, which suggests that it is the same single chip module (SCM) implementation of the Power10 processor that was used in the Power S1022s entry machine. The Power S1012 node has four ISDIMM memory slots (using the differential signaling created by Big Blue for its Power10 memory) with a maximum capacity of 256 GB. The node has four half-height, half-length PCI-Express 5.0 slots and room for four NVM-Express U.2 drive bays that come in a maximum 1.6 TB capacity each for a total of 6.4 TB of storage.

[…]

The eight-core version of the Power10 SCM is only available in the rack configuration, while the one-core and four-core versions are available in rack or tower configurations. The four-core and eight-core versions can run IBM i, AIX, or Linux, but the one-core version can only run IBM i and it has its main memory capped at the same 64 GB that other single-core Power Systems machines have been subjected to. We have suggested that 128 GB or even 256 GB is more appropriate given modern workloads, but Big Blue is standing its ground here. If you need more memory than 64 GB, then this machine is not for you.

↫ Timothy Prickett Morgan at IT Jungle

I understand full well that these machines are by no means meant for people like you and I, sitting at home playing with our toys. That being said, I still wish there was some way for IBM to offer unique hardware like this – perhaps in a more standard, paired-down configuration – so more people than just enterprises could explore and use them.

It wouldn’t make any economic sense for IBM to do so, and even in a more standard, paired-down configuration they’d probably still be ungodly expensive, but when I look at this unique tower, with its POWER10 hardware and the ability to run AIX, desires are stirred within me that are banned in at least 46 countries. Such a machine would surely be wasted on someone like me, who would just be shoehorning whatever desktop tasks he could into it, but what a grand ol’ time we would have.

There is absolutely, positively, unequivocally zero percent chance IBM would ever send one of these over for review to someone like me, but I wonder if I should try anyway. I’ve got nothing to lose. Does anyone here work at IBM? Perhaps IBM wants to sponsor OSNews? How about like 12 weeks of free sponsorships in exchange for a tower model of the Power S1012? I also have two POWER9 machines to compare it to!

It’s the only way you’ll ever get a Power S1012 screenfetch screenshot go viral on nerd social media, and we all know that deep down, that’s all you IBM folks really want.

iOS 17.5 and other Apple updates arrive with Bluetooth tracker notifications and more

Apple has released the latest updates for virtually all of its actively supported devices today. Most include a couple handfuls of security updates, some new features for Apple News+ subscribers, and something called Cross-Platform Tracking Protection for Bluetooth devices.

The iOS 17.5, iPadOS 17.5, macOS 4.5, watchOS 10.5, tvOS 17.5, and HomePod Software 17.5 updates are all available to download now.

↫ Andrew Cunningham at Ars Technica

You know where to get them.

MacRelix: a Unix-like environment that runs in classic Mac OS

MacRelix is a Unix-like environment that runs in classic Mac OS.

MacRelix natively supports classic 68K and PPC Mac OS, as well as Mac OS X on PPC via Carbon.

↫ MacRelix website

The creator of MacRelix, Josh Juran, published an article in 2019 detailing the origins of the project. As a Mac OS developer, he was so unhappy with both CodeWarrior and Apple’s Macintosh Programmer’s Workshop (MPW), that he set out to create what would become MacRelix in 1999. Reading through the limitations and roadblocks he experienced with CodeWarrior and MPW, it’s not hard to see why he got frustrated – CodeWarrior’s targets were apparently a mess and a half to deal with.

Then came target multiplication. Whereas the initial CodeWarrior developer releases shipped with each combination of language (C and Pascal) and architecture (68K and PPC) supported in a separate application, a later version of the IDE unified these, allowing the developer to have a single project file per project. To allow the same project to be built for both 68K and PPC architectures, the project data model included targets: One target would compile for 68K and link against 68K libraries, another would do the same for PPC. Targets could also be used to select an optimized build versus one for debugging. Combining both dichotomies yields four targets: 68K debug, 68K optimized, PPC debug, and PPC optimized. Then if your project involves multiple executables, like a code resource or shared library in addition to an application, you now have eight targets. Or, if you support one of, say, 68020 optimization, profiling, or a third executable, make that twelve. Or, for all of them, twenty-seven.

↫ Josh Juran

Changing an option in your application required you to change it in every single target, too, which I can easily see is incredibly frustrating. MPW, for its part, was a massive improvement, he argues, but while it was clearly inspired by UNIX, it didn’t seem to actually implement any of the features and characteristics of UNIX.

However, very much unlike Unix, the MPW Shell had only a single thread of execution — only one program could be running at once. Not only that, but there was no way for MPW’s compiled plugins (called tools) to invoke other tools or scripts — not even via system() (which blocks the calling program until the called program exits). Therefore, Make couldn’t actually do anything, but only printed out the commands for the user to run manually. You could code in Perl instead of the built-in language, but then your scripts couldn’t run other programs — only MPW shell scripts could do that.

↫ Josh Juran

The limitations Juran was experiencing with these two tools pushed him to create his own solution, which went well beyond what MPW offered, even in 2019 when this article was published.

Nowadays, MacRelix has pipes, signals, system calls, TCP sockets, and more. It works on both 68K and PowerPC Mac systems and builds as Carbon to run natively in OS X. It can be used on any Mac OS version from System 7 to Mac OS X 10.6 “Snow Leopard” (after which Apple removed the Rosetta PowerPC emulator). I haven’t implemented fork() yet, but I know how to do it. In addition to a Unix-like file system interface (which even handles long names by storing them in Desktop database comment fields)), MacRelix has a /proc filesystem (with human readable stack crawls) and also maps various parts of Mac OS (e.g. the ROM image in /sys/mac/rom).

↫ Josh Juran

I had never heard of MacRelix, but it seems like an amazing tool Juran put a lot of thought, effort, and love into. Sadly, with the number of PowerPC Mac OS X users being vanishingly small, and the number of classic Mac OS users even smaller so, the future of MacRelix seems uncertain. I wonder what parts of it can be salvaged and upgraded to work on ARM macOS or even Intel macOS, because I think the ideas and concepts are incredibly cool.

A related project by Juran is something called FORGE, a portable windowing API that used a virtual file system, meaning that instead of using functions as objects, it uses files. Juran mentions the example of a window title – which is a file, and if you want to change the title of that window you just change the file, which will be instantly reflected in the GUI. Here’s a Hello World example:

cd $FORGE/gui/port/hello        # select a window port named "hello"
exec 9> lock                    # exclusively retain the port for our use
ln new/caption view             # add a caption as the window’s view
echo Hello world > v/text       # set the caption text
touch window                    # create the window

Even though I’m not a programmer, this little tidbit of code makes perfect sense to me, and I understood it instantly. Of course, anything more complex will quickly leave my wheelhouse, but intuitively, I really like this. FORGE exists as a prototype inside MacRelix, so you can play with this concept while using MacRelix.

Apple Vision Pro has the same effective resolution as Quest 3… Sometimes?

This article is a partial-rebuttal/partial-confirmation to KGOnTech’s Apple Vision Pro’s Optics Blurrier & Lower Contrast than Meta Quest 3, prompted by RoadToVR’s Quest 3 Has Higher Effective Resolution, So Why Does Everyone Think Vision Pro Looks Best? which cites KGOnTech. I suppose it’s a bit late, but it’s taken me a while to really get a good intuition for how visionOS renders frames, because there is a metric shitton of nuance and it’s unfortunately very, very easy to make mistakes when trying to quantify things.

This post is divided into two parts: Variable Rasterization Rate (VRR) and how visionOS renders frames (including hard numbers for internal render resolutions and such), and a testbench demonstrating why photographing the visual clarity of Vision Pro (and probably future eye tracked headsets) may be more difficult than a DSLR pointed into the lenses (and how to detect the pitfalls if you try!).

↫ Shiny Quagsire

I did it. I think I managed to find an article that isn’t just over my head, but also over most of your heads.

How’s that feel?

The Emacs window management almanac

Window management in Emacs gets a bad rap.

Some of this is deserved, but mostly this is a consequence of combining a very flexible and granular layout system with rather coarse controls. This leaves the door open to creating and using tools for handling windows that employ and provide better metaphors and affordances.

As someone who’s spent an unnecessary amount of time trying different approaches to window management in Emacs over the decades, I decided to summarize them here. Almanac might be overstating it a bit – this is a primer to and a collection of window management resources and tips.

↫ Karthik Chikmagalur

I honestly had no idea Emacs was this… Advanced, complex, and feature-laden. I mean, I thought Emacs’ complexity was just a meme, but reading this article it seems the memes don’t do it justice.

Apple II DeskTop currently testing 1.4 alpha releases

Disassembly and enhancements for Apple II DeskTop (a.k.a. Mouse Desk), a “Finder”-like GUI application for 8-bit Apples and clones with 128k of memory, utilizing double hi-res monochrome graphics (560×192), an optional mouse, and the ProDOS 8 operating system.

↫ Apple II DeskTop GitHub page

The goal of this project is to reverse-engineer Apple II DeskTop, and fix bugs and enhance it in the process. I didn’t actually know that the Apple IIgs initially shipped with this instead of the 16 bit GS/OS, which is the operating system I personally associate with the IIgs. Apple II DeskTop was largely 8 bit, and built on top of ProDOS 16, and didn’t really take full advantage of the IIgs hardware. It wasn’t until version 4.0 of the system software that the IIgs switched over to GS/OS.

The latest release is v1.4-alpha9, released a few days ago. Apple II DeskTop is still entirely compatible with Apple II machines and clones from before the IIgs, as well, and it runs in emulators, too. We actually already covered this project a few years ago, but a reminder that this exists never hurt anyone.

Obsolete, but not gone: the people who won’t give up floppy disks

If you remember a time when using floppy disks didn’t seem weird, you’re probably at least 30 years old. Floppy disks or diskettes emerged around 1970 and, for a good three decades or so, they were the main way many people stored and backed up their computer data. All the software and programmes they bought came loaded onto clusters of these disks. They are a technology from a different era of computing, but for various reasons floppy disks have an enduring appeal for some which mean they are from dead.

↫ Chris Baraniuk at the BBC

Articles such as these in more mainstream media are always incredibly odd to me. Nobody bats an eye at someone lovingly maintaining a classic car, or restoring an old house, or a group of people petitioning a local government to not demolish a beloved old building or whatever, but as soon as computer technology is involved, so many people find it incredibly weird that classic computer technology, too, can be worth saving.

It highlights how society views technology – disposable, replaceable, worthless, to be dumped and forgotten about as soon as something newer comes along. Even after at least two decades of articles like this, they keep being essentially republished with the same words, the same storylines about these weird people who keep using – get this! Look at these idiots! – older technology when faster, newer, shinier stuff is readily available.

I’m glad the retrocomputing community seems to be growing by the day, and there’s now definitely a large enough internationally connected group of people and organisations to maintain our old computers and related hardware and software.

Haiku isn’t a BeOS successor anymore

So I got accepted into GSoC again! I’m going to be working on WebKit2. But what is WebKit2, or even WebKit, for that matter? Well, WebPositive uses WebKit to render its web pages. Currently, we use the WebKitLegacy API to communicate with WebKit. It would be nice to switch to the newer version: WebKit2. However, our port of WebKit2 still needs work. At present, it has lost its ability to even render any webpage at all! So, getting WebKit2 to work will be the primary goal of my GSoC project. If there’s time left, I might be able to integrate it into WebPositive.

The advantages WebKit2 has for WebPositive will be mostly invisible to end-users. The code will hopefully be more maintainable than the deprecated WebKitLegacy and we’ll get access to several newer APIs such as the ad-blocking API. Perhaps the most visible change: problems in one part of the code should be less likely to crash the whole browser.

↫ Zardshard on the Haiku website

The current state of WebPositive, the only native Haiku web browser, is emblematic of why I have personally lost all interest in the successor to what is still my favourite operating system of all time. Haiku OS supports several browsers, and if you read any forum post about which browser to use, or watch any of the enthusiastic Haiku videos by the insanely awesome Action Retro, they’ll all advise you to use any of the non-native Qt or GTK browsers instead – because WebPositive just can’t compete with the ported, non-native browsers.

Since everybody using Haiku is opting to use the better ported browsers, WebPositive has fallen even more by the wayside; now it has to play catch-up, and by the time WebKit2 has been properly ported and bug-tested, and has been integrated into WebPositive, which then has to be bug-tested as well, we’re going to be months, if not years, down the line. In the meantime, the ported browsers will have been regularly updated with newer, better versions. Unless the focus for the single most important application of any general purpose desktop operating system is placed solely on WebPositive, it simply won’t be able to keep up with the ported browsers. Why even work on WebPositive at all at that point? It’s not like anyone is using it, so why bother?

And this highlights a problem for people like me, who prefer to have native Haiku applications instead of ports of software I can already run elsewhere. As a former BeOS user, I am not interested in a vessel for running Qt applications that I can, in all likelihood, run better on Linux. Why would I go through the trouble of assembling a machine with hardware Haiku supports, only to then run the same applications I’m already running on Fedora or OpenBSD, but worse?

If you browse through Haiku Depot today, it feels like the vast majority of modern, maintained, and working software are ports of Qt (and GTK) software we already know and love from other, more mature, more stable, more usable, and more feature-rich platforms. Haiku has chosen to pour a lot of energy and manpower into becoming an operating system designed to run ported, often Qt, applications, but the downside to that is that new and maintained native Haiku applications, that play to the strengths of the platform, are few and far between.

A Haiku developer once told me that real people use Haiku every day, and they need real applications, and ported applications make it possible for not only Haiku developers themselves, but also normal users, to run and use Haiku every day. This is a valid argument that I fully understand and agree with – it just means Haiku isn’t for me. And while that’s sad for me, it’s entirely fine. Haiku’s developers have chosen to focus on building a daily-drivable operating system with tons of ported applications, instead of an ideologically pure operating system you can’t really use because it only has like 4 native applications and nothing else.

And that’s a valid, smart, and practical choice that I fully respect and understand, even if it means Haiku isn’t really a BeOS successor anymore.

COSMIC improves its application store, display mirroring, and more

As its first alpha release is closing in, we have another monthly update about COSMIC, System76’s new Linux desktop environment written in Rust. This month, they’ve further polished and shored up their application store, imaginatively named COSMIC App Store, and it’s supposedly incredibly fast – something I can’t say for its GNOME and KDE counterparts, which tend to be so slow I’ve always just defaulted to updating through the command line, mostly.

The file manager now has support for GVfs (GNOME Virtual file system) for making external storage like USB drives work properly, and Greeter login screen, Edit text editor, drag and drop, and copy/paste have been improved in various ways as well. Theming has seen a lot of work this month, with support for icon themes added to the App Library, fixed applet sizes, and more tweaks, while light themes have been disabled for now to fix a number of issues with colour selection being too dark.

There’s also display mirroring now, which even works when the individual displays have different resolutions, orientations, and refresh rates. Pop!_OS is now also being built for ARM64, which makes sense because System76 is now also selling ARM servers. There’s also a bunch of work being done by the community as the alpha release nears.

Opening windows in Linux with sockets, bare hands and 200 lines of C

X Server is slowly being deprecated in the Linux world and being replaced Wayland. Still X11 is an interesting protocol to look at from the perspective of binary communication and management of resource which require fast speeds.

In this post I tried to cover basic information and create a simple but working app that is simple, defined in single file and easily compiles. No external code except libc was used. I find it fascinating when you can open black boxes and see how gears move each other.

↫ Hereket

As much as the time of X has come and is now finally in the process of going, it’s still an incredibly powerful set of tools that even in a bare state can do way, way more than you think. X has come with its own window manager – twm – for decades, and it includes several basic applications like xedit, xclock, xterm, xeyes. Twm is actually pretty cool, and includes some features, like iconify to desktop, that I wish still existed in modern desktop environments. It’s quite bare-bones, though, and I doubt there’s anyone out there unironically using it today.

As the linked article notes, even without advanced, complex libraries, toolkits, desktop environments, and so on, it’s entirely possible to create fully functional windows and applications with X. Of course, this makes perfect sense and shouldn’t be surprising – it’s the X Window System, after all – but you so rarely hear or read about it that you’d almost forget and just assume something like GNOME or KDE is an absolute requirement to use X.