Personally, I don’t see the need for this with NixOS. Setting aside the fact that Omarchy is way too opinionated (Basecamp installed by default?), NixOS is already quite composable, so you can easily build a well-formed experience out of isolated NixOS modules.
If the Python 2 to 3 migration took a decade, isn’t it reasonable for a display server migration to take even more time to stabilize?
Especially given:
(1) The (relatively) fragmented reality of Linux distros and desktop managers. I am sure that such a migration could have been executed faster had the Linux desktop world been more centralized like Windows or macOS.
The python 2 to 3 situation was a similar colossal mistake of honestly incompetent developers who really enjoy programming in their free time who don't understand that time is money for most people.
By comparison, Rust with its edition system understands this.
But this is the major issue. They don't understand that even if Wayland had feature-parity with X11. The simple fact that it works differently means that if I am to migrate I would have to rewrite a tonne of scripts that hook into X11 that just organically grew over time that I've now become dependent on for my workflow. It has to be substantially better and have killer features for me to switch and yes, fractional scaling per-monitor is that killer feature for many, but not for me, and the simple fact that XMonad runs on X11 and not on Wayland is a killer feature for others.
Not to mention that p3 on its own was prettymuch functional and p2 quite stable and the major issue was migrating/porting all the legacy over to p3 .Hence bridges like six and 2-to-3 that at least attempted to smooth the transition over by allowing bot to coexist for a time.
With wayland they seem not to be even entertaing this optionality - with wayland itself being not yet feature complete to standalone.And the attempts to bridge like xwayland coming way after the fact and pushing a oneway path with no coexisting situation.
As a result introducinga whole lot of friction and surprises in UI functionality. So yeah at a time when the presentation layer should be a boring afterthough, it is too timeconsuming in part of a Linux setup and daily usage.
> The python 2 to 3 situation was a similar colossal mistake of honestly incompetent developers who really enjoy programming in their free time who don't understand that time is money for most people.
It’s been years but even then, this sincerely cannot be repeated enough.
Indeed. And what many seem to fail to notice is that at it's core it's exactly the same mistake being made all over again. A mistake that I've seen so many times over and over again, increasingly commonly in recent years, which can be summed up thusly:
"I want to make some incompatible changes in my thing that is being widely used by (say) thousands or millions of people. I could spend a bunch of time ensuring I'm backwards compatible as much as possible, or doing a compatibility layer which would make the transition seamless for most, but that's not sexy work, and it would be something I would have to maintain (also not sexy), and it would take me (let's say) 1000 hours to do. Instead, I'll just insist that each and every one of those thousands/millions of people put (say) 100 hours each into adapting to what I want to do"
It's disrespectful of your users. It devalues their time. It says that your (say) 1000 hours is more valuable than (say) a million people putting in (say) 100 hours each. And it's inefficient - wasting the time of many to save the time of a few.
It also undermines their trust in you: if you're willing to force them to spend a bunch of time re-writing something that already works just to suit your whims, what's to say you won't do it again next year when you have a newer and even shinier whim?
Now someone will jump in to argue about how "FOSS developers are volunteers, they do it for free, you can't expect them to do the boring stuff". Which is false, false, and false: You'll find that for a large number of these projects (like say gnome and wayland) the core developers are indeed professionals who are paid (by e.g redhat) to work on it, even if they started off as volunteers. And the boring stuff is part of the job, too, otherwise don't call yourself a software engineer.
If you're working on a widely-used piece of software, then the users should be your god.
> They don't understand that even if Wayland had feature-parity with X11
See, I don't think you're giving them enough credit. Or is it too much credit? These are not stupid people. I say they do understand this, they just don't care about your time enough to do anything about it.
> Indeed. And what many seem to fail to notice is that at it's core it's exactly the same mistake being made all over again. A mistake that I've seen so many times over and over again, increasingly commonly in recent years, which can be summed up thusly:
Yes, just as the idea of “We will start anew because the codebase is a mess and this time we'll make it clean.”. 10 years ago, whenever I saw something like that I would've said that person has zero actual experience working as a programmer. I've seen teams go through this multiple times but at the end, the new codebase when all the features are added is just as much of a mess as the old, at best a slight improvement. People who say this just underestimate the scope. But these people have experience. They're just optimistic and full of wishful thinking maybe?
> See, I don't think you're giving them enough credit. Or is it too much credit? These are not stupid people. I say they do understand this, they just don't care about your time enough to do anything about it.
I disagree. I've talked with many of those people both online and in real life who don't understand that for most people time has value. They really just don't get it. They're not stupid; they just don't really think about it that way and don't have much to do in their lives aside from this one specific hobby.
> 10 years ago, whenever I saw something like that I would've said that person has zero actual experience working as a programmer
That, or maybe they've just never really tried the whole "I'll start from scratch and get it right this time" thing and discovered for themselves how misguided it is.
It's also really easy to tell yourself "but this time I'll get it right!". I'm still guilty of believing it sometimes.
> But these people have experience. They're just optimistic and full of wishful thinking maybe?
Or perhaps simple myopia and lack of long term planning? I don't know.
I feel like it's probably easy in a project like this to lose sight of what regular users want, or to feel like you know better and so should be able to dictate to them what they should want. And because you've had your head buried in the project for a decade, dealing only with team members who share all the same opinions, you're shocked when people don't find "but if you ever get a HDR monitor it might be marginally better" to be a compelling reason to have to re-write all the scripts they've been building and relying on for 20 years.
> I disagree. I've talked with many of those people both online and in real life who don't understand that for most people time has value. They really just don't get it. They're not stupid; they just don't really think about it that way and don't have much to do in their lives aside from this one specific hobby.
Yeah you might be right. I don't have anything to back up my opinion, I was really just trying not to assume they're stupid. And I feel like I have run into people like this.
Sure, let’s throw some monke- I mean agents in a room and see if they can make something better than X11 and Wayland - each of which has had 10s of thousands of man hours put into them.
I stated no conclusions. I have not tried COSMIC, and I said that it’s COSMIC and Wayland seem to be problematic for people who have tried Pop_OS 24.04. (The one fact I do know is that Synergy, which I rely on, is still working on Wayland support.)
My only “conclusion” is that Pop_OS 24.04 seems to be incompatible with having a desktop that just works.
I have been thoroughly enjoying Wayland with Niri. It is snappy, looks beautiful on my 4K monitor, and handles X11 emulation perfectly (via xwayland-satellite). I have not seen any major issues with OBS, clipboard handling, or any application I have had to run.
So as an end user, I don’t get all the hubbub. Reminds me a bit of the whole systemd craze from some time ago.
Was an individual mind responsible for us as humanity landing on the moon? No. Could an individual mind have achieved this feat? Also no.
Put differently, we should be comparing the compressed blob of human knowledge against humanity as a collective rather than as individuals.
Of course, if my individual mind could be scaled such that it could learn and retain all of human knowledge in a few years, then sure, that would be a fair comparison.
> I would love to see a modern competitive game with optional anticheat that, when enabled, allows you to queue for a separate matchmaking pool that is exclusive to other anticheat users. For players in the no-anticheat pool, there could be "community moderation" that anti-anticheat players advocate for.
This is roughly what Valve does for CS2. But, as far as I understand, it's not very effective and unfortunately still results in higher cheating rates than e.g. Valorant.
Huh. When you say that "it's not very effective" do you mean the segmentation between the pools, or the actual anticheat isn't very good? (I'm assuming the latter - I've heard that VAC is pretty bad as far as anticheat goes)
Oh sorry - I misread your suggestion! I thought you were talking about separate matchmaking logic for known cheaters, but you're asking about opt-in matchmaking for those willing to use invasive anticheat.
The example still kind of applies. In the CS world, serious players use Faceit for matchmaking, which requires you to install a kernel-level anticheat. This is basically what you're suggesting, but operated by a 3rd party.
Hmm, I guess that since VAC is not a kernel-level anticheat, the comparison between it and Faceit for CS is pretty close to my idea. Thanks for pointing that out.
VAC is actually an AI based anticheat. I guess IF (a big if) it ever gets good enough it will be better than any kernel level AC, because it analyzes the gameplay, not the inputs, meaning a DMA cheat would also be caught.
"VAC" is a catch-all term for all of Valve's anti-cheating mechanisms.
The primary one is a standard user-mode software module, that does traditional scanning.
The AI mechanism you're referring to is these days referred to as "VAC Live" (previously, VACNet). The primary game it is deployed on is Counter-Strike 2. From what we understand, it is a very game-dependent stack, so it is not universally deploy-able.
I don't think that's what VAC is. I think VAC just looks for known cheat patterns in memory and such, and if it finds indisputable proof of cheating it marks a player for banning in the next wave. Maybe there is some ML involved in finding these patterns but I think it's very strictly controlled by humans to prevent fase positives. That's why VAC bans are irreversible, false positives are supposed to be impossible.
Valve has some AI detection stuff for CS2, but it’s remarkably ineffective. VAC itself delivers small DLLs that get manual mapped by Steam service, do some analysis and send that to Valve (at least to the best of my knowledge, there may be more logic implemented in Valve’s games or in Steam/Steam service).
Wait, so the "community alternative" is also kernel-level anticheat? I think that's different from what I'm proposing - I'm suggesting a comparison between an anticheat and no anticheat (with community policing of lobbies and handing out of penalties).
It was terrible as it required the community to conclude beyond reasonable doubt the suspect was cheating, and cheats today are sophisticated enough to make that conclusion very difficult to make
Because their (or their friend's) computer can't run the anticheat, but they're interested in playing with friends? My sister and mom wanted me to play Valorant with them a free years back, but apparently it needs kernel anticheat, so I just can't run it. I'm not going to buy a new computer for a game.
And the way community policing worked in the past is that the "police" (refs) could just kick or ban you. They don't need a trial system if the community doesn't want that.
> Why would a player knowingly choose to play on matchmaking that is advertising no anti-cheat?
I guess I didn't exactly make that clear...
A few of the arguments advanced by the "anti-anticheat" crowd that inevitably pops up in these threads are "anticheat is ineffective so there's no point to using it" and "anticheat is immoral because players aren't given a choice to use it or not and most of them would choose to not use it".
I don't believe that either of these are true (and given the choice I would almost never pick the no-anticheat queue), but there's not a lot of good high-quality data to back that up. Hence, the proposal for a dual-queue system to try to gather that data.
Putting in the community review of the no-anticheat pool is just to head off the inevitable goalpost-moving of "well of course no system would be worse than a crappy system (anticheat), you need to compare the best available alternative (community moderation)".
> Why would a player knowingly choose to play on matchmaking that is advertising no anti-cheat?
My understanding of the proposal is that it advertises no invasive anticheat (meaning mostly rootkit/kernel anticheat). So, the value proposition is anyone who doesn't want a rootkit on their computer. This could be due to anything from security concerns to desiring (more) meaningful ownership of one's devices.
It might be, although trust factor has a major outcome of match quality.
I have over 10,000 hours in the game, majority played on official servers with quite a low % of matches impacted by cheaters. The match quality does deteriorate with Premier rating. I noticed a decent jump in cheaters after about 25k rating, although the number is not as much as people like to make it out to be.
Personally, I don’t see the need for this with NixOS. Setting aside the fact that Omarchy is way too opinionated (Basecamp installed by default?), NixOS is already quite composable, so you can easily build a well-formed experience out of isolated NixOS modules.
reply