Xorg is about to released.

And it's a release without Xwayland.

And... wait, what? Let's unwind this a bit, and ideally you should come away with a better understanding of Xorg vs Xwayland, and possibly even Wayland itself.

Heads up: if you are familiar with X, the below is simplified to the point it hurts. Sorry about that, but as an X developer you're probably good at coping with pain.

Let's go back to the 1980s, when fashion was weird and there were still reasons to be optimistic about the future. Because this is a thought exercise, we go back with full hindsight 20/20 vision and, ideally, the winning Lotto numbers in case we have some time for some self-indulgence.

If we were to implement an X server from scratch, we'd come away with a set of components. libxprotocol that handles the actual protocol wire format parsing and provides a C api to access that (quite like libxcb, actually). That one will just be the protocol-to-code conversion layer.

We'd have a libxserver component which handles all the state management required for an X server to actually behave like an X server (nothing in the X protocol require an X server to display anything). That library has a few entry points for abstract input events (pointer and keyboard, because this is the 80s after all) and a few exit points for rendered output.

libxserver uses libxprotocol but that's an implementation detail, we can ignore the protocol for the rest of the post.

Let's create a github organisation and host those two libraries. We now have: http://github.com/x/libxserver and http://github.com/x/libxprotocol [1].

Now, to actually implement a working functional X server, our new project would link against libxserver hook into this library's API points. For input, you'd use libinput and pass those events through, for output you'd use the modesetting driver that knows how to scream at the hardware until something finally shows up. This is somewhere between outrageously simplified and unacceptably wrong but it'll do for this post.

Your X server has to handle a lot of the hardware-specifics but other than that it's a wrapper around libxserver which does the work of ... well, being an X server.

Our stack looks like this:


+------------------------+
| xserver [libxserver]|--------[ X client ]
| |
|[libinput] [modesetting]|
+------------------------+
| kernel |
+------------------------+
Hooray, we have re-implemented Xorg. Or rather, XFree86 because we're 20 years from all the pent-up frustratrion that caused the Xorg fork. Let's host this project on http://github.com/x/xorg

Now, let's say instead of physical display devices, we want to render into an framebuffer, and we have no input devices.


+------------------------+
| xserver [libxserver]|--------[ X client ]
| |
| [write()] |
+------------------------+
| some buffer |
+------------------------+
This is basically Xvfb or, if you are writing out PostScript, Xprint. Let's host those on github too, we're accumulating quite a set of projects here.

Now, let's say those buffers are allocated elsewhere and we're just rendering to them. And those buffer are passed to us via an IPC protocol, like... Wayland!


+------------------------+
| xserver [libxserver]|--------[ X client ]
| |
|input events [render]|
+------------------------+
| |
+------------------------+
| Wayland compositor |
+------------------------+
And voila, we have Xwayland. If you swap out the protocol you can have Xquartz (X on Macos) or Xwin (X on Windows) or Xnext/Xephyr (X on X) or Xvnc (X over VNC). The principle is always the same.

Fun fact: the Wayland compositor doesn't need to run on the hardware, you can play display server babushka until you run out of turtles.

In our glorious revisioned past all these are distinct projects, re-using libxserver and some external libraries where needed. Depending on the projects things may be very simple or get very complex, it depends on how we render things.

But in the end, we have several independent projects all providing us with an X server process - the specific X bits are done in libxserver though. We can release Xwayland without having to release Xorg or Xvfb.

libxserver won't need a lot of releases, the behaviour is largely specified by the protocol requirements and once you're done implementing it, it'll be quite a slow-moving project.

Ok, now, fast forward to 2021, lose some hindsight, hope, and attitude and - oh, we have exactly the above structure. Except that it's not spread across multiple independent repos on github, it's all sitting in the same git directory: our Xorg, Xwayland, Xvfb, etc. are all sitting in hw/$name, and libxserver is basically the rest of the repo.

A traditional X server release was a tag in that git directory. An XWayland-only release is basically an rm -rf hw/*-but-not-xwayland followed by a tag, an Xorg-only release is basically an rm -rf hw/*-but-not-xfree86 [2].

In theory, we could've moved all these out into separate projects a while ago but the benefits are small and no-one has the time for that anyway.

So there you have it - you can have Xorg-only or XWayland-only releases without the world coming to an end.

Now, for the "Xorg is dead" claims - it's very likely that the current release will be the last Xorg release. [3] There is little interest in an X server that runs on hardware, or rather: there's little interest in the effort required to push out releases. Povilas did a great job in getting this one out but again, it's likely this is the last release. [4]

Xwayland - very different, it'll hang around for a long time because it's "just" a protocol translation layer. And of course the interest is there, so we have volunteers to do the releases.

So basically: expecting Xwayland releases, be surprised (but not confused) by Xorg releases.

[1] Github of course doesn't exist yet because we're in the 80s. Time-travelling is complicated.
[2] Historical directory name, just accept it.
[3] Just like the previous release...
[4] At least until the next volunteer steps ups. Turns out the problem "no-one wants to work on this" is easily fixed by "me! me! I want to work on this". A concept that is apparently quite hard to understand in the peanut gallery.

Posted Wed Sep 22 03:16:00 2021 Tags:
A year without live music has been a disaster. So has corporate power in streaming, recording, and ticketing. Antitrust may be the only solution.

Three major record labels produce two-thirds of all music consumed in America. They are the most powerful buyer of music and talent, and they use that power to prioritize a handful of mega-stars and pop hits. They pitch music into massive radio conglomerates and streaming platforms that control how music is consumed, and they collect an ever-growing share of industry revenue.

Concerts, a crucial space where independent venues and artists have largely sidestepped corporate gatekeepers, are increasingly threatened by Covid shutdowns and the prospect that Live Nation and other Wall Street-backed giants will either buy them out or put them out of business. [...]

The broad middle class of independent artists, record labels, venues, and other small businesses must now rely on -- and increasingly pay -- monopolists for access to bands and fans. For some, the pandemic made a difficult situation impossible. [...]

Van Arman offered a simple litmus test for whether music is "independent," a shapeshifting term applied to everything from punk bands playing basement gigs to the cash-flush "indie" subsidiaries of major labels. "You are independent if you are pro-competitive," he said. [...] If you're independent, you're "not looking to reduce competition by acquiring rivals" or for other unfair advantages that tilt the industry toward corporate dominance.

Previously, previously, previously, previously, previously.

Posted Wed Sep 22 01:25:52 2021 Tags:

(satire) *Relieved Ecologists Announce Rising Sea Levels Were Due To Clump Of Hair Clogging Drain At Bottom of Ocean.*

Posted Wed Sep 22 00:00:00 2021 Tags:

*Big tech's pro-climate rhetoric is not matched by policy action, report finds.*

Posted Wed Sep 22 00:00:00 2021 Tags:

The US has used its influence to prevent other countries from banning the toxic pesticide dechlorane. Biden could put a stop to this.

Posted Wed Sep 22 00:00:00 2021 Tags:

The EU has condemned the execution of Yemenis tried by the Houthis and convicted of spying.

I join the EU in condemning the death penalty, and I'm entirely ready to believe that the Houthis can hold unfair trials in death penalty cases. After all, the US has often done so.

Salafi Arabia carries out many official executions. I expect that the EU condemns them, too, but does that get the same amount of press coverage?

Posted Wed Sep 22 00:00:00 2021 Tags:

Three Democrats in the House have blocked giving Medicare the power to negotiate bulk purchases of medicines. They all have close ties to Big Pharma.

Posted Wed Sep 22 00:00:00 2021 Tags:

*Political gestures can be inspiring. But let’s not mistake them for victory.*

Black Lives Matter has brought about scattered examples of real change, but not much -- not yet -- compared to the magnitude of systemic racism.

Posted Wed Sep 22 00:00:00 2021 Tags:

Using Google and Microsoft software Minneapolis schools came with intense 24/7 surveillance and monitoring of all kinds of communication.

Posted Wed Sep 22 00:00:00 2021 Tags:

The Taliban say they will let girls go to school some day -- after they institute a "secure transportation system" for female students.

Posted Wed Sep 22 00:00:00 2021 Tags:
Posted Wed Sep 22 00:00:00 2021 Tags:

Arguing for a wealth tax in the UK on the wealthiest 1%.

And a windfall profits tax for businesses that profited from Covid-19 and lockdowns.

Posted Wed Sep 22 00:00:00 2021 Tags:
RIP Richard H. Kirk of Cabaret Voltaire, possibly my favorite band of all time. Mute's statement, and Mallinder's.

Please enjoy some excellent music videos spanning several decades:

SD</A>" POSTER="" ALLOW="autoplay; fullscreen" GESTURE="media" DELEGATESTICKYUSERACTIVATION ALLOWFULLSCREEN>

HQ Audio</A>" POSTER="" ALLOW="autoplay; fullscreen" GESTURE="media" DELEGATESTICKYUSERACTIVATION ALLOWFULLSCREEN>

HQ Audio</A>" POSTER="" ALLOW="autoplay; fullscreen" GESTURE="media" DELEGATESTICKYUSERACTIVATION ALLOWFULLSCREEN>

And here are the complete Doublevision and Gasoline In Your Eye VHS albums:

Bonus material: Billie Ray Martin's excellent cover of Crackdown:

Posted Tue Sep 21 21:30:46 2021 Tags:
I swear, 10% of the car traffic on SOMA streets these days is composed of single occupancy "self-driving" cars, plastered with their performatively-spinning greeblies and logos, testing this week's git pull of the new "let's see if we know how to not swerve into the bike lane yet" code on me without my consent.

I'm getting used to seeing the bored, dead-eyed stare of the hourly contractors sitting in these murder boxes, wasting fuel by driving in endless loops around my neighborhood, all day and all night long. It's disgusting.

Here's a clip from a video of some asshole "testing" his self-driving car by putting strangers into mortal danger. He starts his video by saying, "I just want to keep doing it for science, and see how it reacts, let's just roll." Fuck you entirely, you monstrously irresponsible piece of shit. After his murderbot almost mows down a crosswalk full of people, he says, "Not perfect! A big improvement, though."

I'm not linking to the original source because you shouldn't give this deadly troll his ad views. Don't reward the kind of person who never saw a Trolley Problem lever he didn't want to wildly yank back and forth.

Also apparently the Musk Defense Crew keep doing DMCA take-downs on Twitter of anyone who reposts it: "This media has been disabled in response to a report by the copyright owner."

Previously, previously, previously, previously, previously.

Posted Thu Sep 16 18:16:21 2021 Tags:
Any other state that is interested in deploying a digital vaccine record system should be able to use our free code to connect their own immunization registry back end and launch a similar portal to California's.

Every state in the United States operates their own immunization registry. If a state is interested in offering a service similar to what we launched in California, they can take our code, connect it to their own back end, and generate digital vaccine records for their residents. This won't be plug-and-play, exactly -- it will still require some work to make the connection between the middle tier and the state's back end -- but we hope it will save states some time.

Previously, previously, previously.

Posted Fri Sep 10 23:34:30 2021 Tags:
CAPTCHA images are never joyful vistas of human activity, full of Whitmanesque vigor. No, they're blurry, anonymous landscapes that possess a positively Soviet anomie.

Each cube here is a tone poem in melancholia. Looking at these leaden vistas of America makes you, slightly but noticeably, feel worse than you did before. [...]

These pictures! My god. They're simply ashudder with suspense and dread. That taxi in the middle frame: What dread cargo does it carry, to what wretched appointment? The bottom right photo looks like something you'd see plastered on a WANTED poster. And good grief, in the bottom left: What looming terror is casting that fuzzy, Lovecraftian shadow? [...]

This is why CAPTCHA photos are a nonstop brutalist slideshow of metal and concrete. It is as if someone took you on a tour of a lovely scenic town, but strapped you into horse blinders and forced you to stare only at fire hydrants. [...]

They weren't taken by humans, and they weren't taken for humans. They are by AI, for AI. They thus lack any sense of human composition or human audience. They are creations of utterly bloodless industrial logic. Google's CAPTCHA images demand you to look at the world the way an AI does.

Previously, previously, previously, previously, previously, previously, previously.

Posted Fri Sep 10 01:24:27 2021 Tags:
Ok, first of all, please vote NO on the stupid Republican recall of Newsom. I am no Newsom fan, but if the recall succeeds we're going to have a batshit insane horse-paste MAGA radio host who doesn't believe in vaccines in charge of the world's 5th largest economy. And that would be bad, mmmkay?

Apparently only 24% of the mailed ballots have been returned. It's sitting right there on your desk. Vote NO, mail it. The ballot only has two questions on it, and the second one doesn't matter.

Second!

It's Best of the Bay time again. Vote for us! Categories for your consideration:

  • Best Takeout: DNA Pizza
  • Best Pizza: DNA Pizza
  • Best Overall Bar: DNA Lounge
  • Best Dance Company: Hubba Hubba Revue
  • Best Theatre Company: Hubba Hubba Revue
  • Best Performance Space: DNA Lounge
  • Best Live Music Venue: DNA Lounge
  • Best Nightclub: DNA Lounge
  • Best Dance Party: Bootie SF, Turbo Drive, Cyberdelia, So Stoked, Wasted, Sequence, Death Guild...
  • Best Burlesque: Hubba Hubba Revue
and
  • Nightclub trying hardest to keep you alive during a global pandemic: DNA Lounge

Ok, that last one isn't a real category, but it should be.

Posted Thu Sep 9 19:26:29 2021 Tags:
Kathryn Baecht:

You know what I do trust? My own body to protect me. I'm young and fit, and my childhood rickets has almost entirely cleared up. And as far as I can tell, nothing bad has ever happened to a young and fit sailor with just a touch of rickets who heads recklessly off to fight pirates and ghost ships for months on end with nothing for nourishment except barrels of stale, rat-infested biscuits.

So, no, I'm not "afraid" of scurvy. What's the worst that could happen? My teeth will fall out? My bowels will bleed? I'll die at sea, and my body will be cast into the murky depths by my equally moribund shipmates, who won't even have the energy to say a blessing as octopuses and sea monsters feast upon my corpse? That doesn't sound any worse than a little seasickness, and it definitely sounds better than occasionally sucking on a lime. [...]

And while I may be fine, what I am not fine with is the Capitan's new mandate that we must all take this so-called citrus cure. He claims that it's necessary in order to hang onto our already extremely low chance of surviving this harrowing journey through uncharted waters. He says we must do it for our fellow seaman who truly are our brothers. He says we must do it for the common good. He says it is our noble duty. And to that, I say: Screw. Everybody. I'm in it for me and me only.

Listen, if you want to hide below deck licking limes and then later come above deck to enjoy the sunshine and your lack of jaundice and intact teeth and gums that aren't leaking putrid black blood, then be my guest. But not even the Captain has the right to make me eat a nutritious and lifesaving fruit if I don't want to.

Previously, previously, previously, previously, previously, previously, previously.

Posted Thu Sep 9 02:17:43 2021 Tags:

Planet Debian upstream is hosted by Branchable.