linux

This magazine is from a federated server and may be incomplete. Browse more on the original instance.

nuclide, (edited ) in What are your opinions of Guix?

I love it! I went all in on it about a year ago and haven’t looked back ever since

uzay, in Thoughts on this?

As an enduser my only noticeable issue with Wayland is that Auto-Type with KeepassXC doesn’t work.

jw13,

Yeah, that one is annoying.

Deebster,
@Deebster@programming.dev avatar

Yeah, that one is annoying.

What one?

jw13,

Auto-type not working.

Deebster,
@Deebster@programming.dev avatar

Huh, that’s weird: when I posted, I saw your your comment as a top-level comment but I now I see it as a reply. Maybe it’s a Lemmy bug; I’ll keep an eye out in future.

Telodzrum,

Auto-Type will be disabled when run with a Wayland compositor on Linux. To use Auto-Type in this environment, you must set QT_QPA_PLATFORM=xcb or start KeePassXC with the -platform xcb command-line flag.

keepassxc.org/docs/KeePassXC_UserGuide#_auto_type

This works for me.

uzay,

I tried that, but neither option seems to work. At least not in Wayland programs, like Firefox. It works in Chromium because iirc that runs in Xwayland. That doesn’t solve my issue with Wayland though.

frankfurt_schoolgirl, in Thoughts on this?

I’ve been using Wayland for 5 years. There were a few bugs in the beggining, but now it works great. These threads are such a waste of time.

I have over 100 confirms X11 developments

That’s great dude. Why don’t you go maintain it then, apparently nobody else wants to: www.phoronix.com/news/RHEL10-Removing-X.Org

Wayland took too long

Look up how long btrfs has been in development, or at audio subsystem churn. These things take time, because it’s mostly volunteers working on them.

Systemic complexity has doubled in the last two years

What does this even mean?

Mir was better

It turns out the Canonical dumping random stuff over the wall is not the same as creating a legitimate open source community around a project.

Unfixable amount of race conditions

As if there’s never been a synchronization bug in X… But also System76 and others are writing Wayland compositors on Rust anyway.

blotz, (edited ) in Thoughts on this?
@blotz@lemmy.world avatar

My thoughts on this? I think people should care less about what software other people use.

Man, display servers look hard to develop and I’m glad we have two amazing/successful projects to choose between! I think the devs who work on X are doing an amazing job and it’s amazing to see how passionate the devs/users are for Wayland.

If bobby tables likes to use x because they know how it works and are comfortable with it, let them work with x! If you think it’s okay to judge/pester/shame people because some software they choose to use, shame on you! In the end, does it really matter what you use.

flubba86, (edited )

The Devs who work on X are doing an amazing job

There aren’t any Devs working on X. That’s the whole problem. Xorg is the most modern and most popular implementation of X, was started in 2004, it no longer has any permanent maintainers, and it hasn’t been updated since 2018. Nobody alive fully understands the whole codebase, it is an unholy mess of multiple forks and multiple versions of many different projects all smushed together. There is no more room for innovation on Xorg because any time anybody fixes a bug or adds a feature, it breaks something totally unrelated. All of the big players who used to pay developers to maintain it, no longer do. Partly because they can’t find anyone willing to do it.

I’m not saying Wayland is the answer to the problem. Building a new display server protocol does not fix the problems with Xorg, and it has its own slew of problems. It really is a “rock and a hard place” situation. You’re a future-hating troglodyte who shuns innovation if you continue to use Xorg, and you’re a risk-taking early-adopter who forfeits functionality for shiny new toys, if you use Wayland.

blotz,
@blotz@lemmy.world avatar

aren’t any devs working on X.

Didn’t know about that! Good for them. I would still argue it’s a very popular and successful software despite it’s unholy codebase.

It really is a “rock and a hard place” …

Yeah. I hope it’s just a vocal minority but it’s depressing when you see people act like this in the wild.

Bitrot, (edited )
@Bitrot@lemmy.sdf.org avatar

Most recent Stable release was December 13, fixing a CVE. Someone is working on it (Red Hat still pays a few to do so, at the very least).

boomzilla, (edited )

Don’t know anything avout xorg development although I’m profitting for years off it now. Just wanted to chime in and say that the Arch maintainers put out updates pretty constantly. If the code isn’t worked on anymore then what’s happening there?

Edit: There is definitely happening stuff with the xorg-server code.

Edit: Removed chit-chat

rizoid, in Thoughts on this?
@rizoid@lemmy.dbzer0.com avatar

Most people don’t give a shit and just want a system that works. As a lot of distros switch to / have switched to Wayland I have never noticed any issues in daily usage of any of my devices, in fact my surface laptop 4 can’t do external displays if I’m running x11 but that feels like a surface issue not a display manager issue. Point being that the switch is happening and a majority of users do not care as long as their systems keep running, and in my experience there’s no reason to believe they won’t.

Lettuceeatlettuce, in Thoughts on this?
@Lettuceeatlettuce@lemmy.ml avatar

This has Systemd vs Runit vibes. No matter how many anti-systemd folks scream to me about how horrible it is for XYZ technical reasons, every Linux distro I’ve ever used for years, desktop and server, has used systemd and I’ve never experienced single problem that those users claim I will.

Same here with Wayland. All the major desktop environments and distros have or are implementing Wayland support and are phasing out X. The only reason I’m not on Wayland on my main computer already is because of a few minor bugs that should be ironed out in the next 6-12 months with the newest release of plasma.

It’s not because Wayland is unusable. I try switching to Wayland about every 6-9 months, and every time there have been fewer bugs and the bugs that exist are less and less intrusive.

Any time you get hardcore enthusiasts and technical people together in large community, this will happen. The mechanical keyboard community is the same way, people arguing about what specific formula of dielectric grease is optimal to lube your switches with and what specific method of applying it is best.

At a certain point, it becomes fundamentalism, like comic book enthusiasts arguing about timeline forks between series or theology majors fighting about some minutia in a 4th century manuscript fragment. Neither person is going to change their views, they are just practicing their arguments back and forth in ever-narrowing scopes of pros and cons, technical jargon, and the like.

Meanwhile the vast majority of users couldn’t care less, and just want to play games, browse the web, and chat with friends, all of which is completely functional in Wayland and has been for a while.

corsicanguppy,

This has Systemd vs Runit vibes. No matter how many anti-systemd folks scream to me about how horrible it is for XYZ technical reasons, every Linux distro I’ve ever used for years, desktop and server, has used systemd

You’ll one day learn the difference between Popular and Correct.

Trump is popular, for instance.

and I’ve never experienced single problem that those users claim I will.

This is a “everyone tells me to get smoke detectors and I’ve never had a fire in all my 23 years of life” comment.

There’s a reason we have building codes, seat belts, traffic lights, emergency brakes, FDIC, and pilots’ licenses.

Lettuceeatlettuce,
@Lettuceeatlettuce@lemmy.ml avatar

Systemd isn’t “correct” what does that even mean? If you don’t agree with the standards and practices of the systemd project, that’s fine, but don’t act like there is some golden tablet of divine standards for system process management frameworks.

I wasn’t making an argument that systemd is perfect or that other frameworks like runit are inferrior. My argument was that I’ve been running a lot of Linux servers and desktop systems for years and I’ve never experienced the “huge stability problems and nightmare daemon management” that multiple systemd haters claim I will inevitably experience.

Maybe I’m incredibly lucky, maybe I’m not actually getting deep enough into the guts of Linux for it to matter, or maybe systemd isn’t the devil incarnate that some people make it out to be.

And also, free software is a thing. So I absolutely support and encourage alternatives like runit to exist. If you want your distros and servers to only use runit, that’s totally fine. If it makes you happy, or you have some super niche edge-case that makes systemd a bad solution, go for something else, you have my blessing, not that you need it.

caseyweederman,

All of the technically-minded posts I’ve read about systemd have been positive. The only detractors seem to be the ones with less technical knowledge, complaining about “the Unix philosophy” and parroting half-understood ideas, or worse, claiming that it’s bad because they have to learn it.

I know xorg has problems, but it was good to get some insight into why Wayland is falling short. Every argument I’ve seen in favor of Wayland has been “xorg bad”.

kunaltyagi,

X code is convoluted, so much so that the maintainers didn’t want to continue. AFAIK, no commercial entity has put any significant money behind Xorg and friends. Potentially unmaintained code with known bugs, unknown CVEs and demands for permission system for privacy made continuing with Xorg a near impossibility.

If you don’t want new features and don’t care about CVEs that will be discovered in future as well as the bugs (present and future), then you can continue using Xorg, and ignore all this. If not, then you need to find an alternative, which doesn’t need to be Wayland

Oh, and you might need to manage Xorg while other people and software including your distro move onto something else.

So yeah, “xorg bad” is literally the short summary for creating Mir and Wayland

caseyweederman,

I get it.
But as far as I can tell, there are just two xorgs now, one of them is just spelled “Wayland”.

meekah,
@meekah@lemmy.world avatar

yeah that’s that’s the impression I got so far as well.

voidMainVoid,

Meanwhile the vast majority of users couldn’t care less, and just want to play games, browse the web, and chat with friends, all of which is completely functional in Wayland and has been for a while.

The last couple of times I tried Wayland, it broke my desktop so badly that I couldn’t even use it.

Granted, that was “a while” ago, so my experience might be better now, but it’s made me very wary of it.

bennieandthez,
@bennieandthez@lemmygrad.ml avatar

What does “broke my desktop so badly that i coudlnt even use it” even mean? Such an over the top statement lol, makes it seem as if wayland is malware or smt.

meekah, (edited )
@meekah@lemmy.world avatar

I think the vast majority of users won’t change their display server without doing a fresh install, so I’m not sure if that’s a fair comparison to the average use case. That being said, you experiencing that issue is a fair reason for staying wary.

wewbull,

Why would I ever do a fresh install?

meekah,
@meekah@lemmy.world avatar

To avoid issues like misconfiguring your display server.

frazorth,

Been using Wayland through Fedora for years on multiple systems and its all been transparent. I’m not even sure what “it broke my desktop” could even mean except that you were using KDE, and that has been a buggy mess for a while when using their Wayland fork. That’s not Wayland, that’s KDE as Sway and Gnome have been stable for me for a very long time.

NeoNachtwaechter,

every Linux distro I’ve ever used for years, desktop and server, has used systemd and I’ve never experienced single problem that those users claim I will.

That means simply that you have never used systemd. You have only used a linux distro.

When you use a car only from the backseat and have some driver driving it for you, then you aren’t going to have any complaint about the engine.

Systemd becomes the more horrible, the closer you get to it.

yyyesss,

ha, you beautifully illustrated their point.

i’m not saying you’re wrong, it’s just funny how on-the-nose you got it.

Lettuceeatlettuce,
@Lettuceeatlettuce@lemmy.ml avatar

I run a bunch of Linux servers, multiple desktop instances, manage multiple IT clients, and took my first Linux certs working with Systemd management, all for years now.

But I’ll be sure to switch away from systemd when it becomes an issue…

chaorace, (edited ) in Thoughts on this?
@chaorace@lemmy.sdf.org avatar

I am of two minds:

  1. He’s not wrong
  2. It doesn’t matter at this point

It’s a mess, but honestly so are a lot of critical FOSS projects (e.g.: OpenSSH, GNUPG, sudo). Curmudgeons gonna curmudgeon. There was a point of no return and that was years ago – now that Wayland’s finally becoming useable despite itself it’s probably time to come to terms with the fact that better alternatives would have arisen had anyone thought they could truly manage it.

bear,

it’s probably time to come to terms with the fact that better alternatives would have arisen had anyone thought they could truly manage it.

This is the most important takeaway. There’s a lot of people whining about Wayland, but Wayland devs are currently the only people actually willing to put in the work. Nobody wants to work on X and nobody wants to make an alternative to Wayland, so why do we keep wasting time on this topic?

someacnt_,

Maybe the one who wrote the criticism is putting the work into an alternative, and complaining that it is not going afloat?

ExLisper, in Thoughts on this?

I took wayland a decade to become usable. It tells me all I need to know about it simplicity and usefulness.

xor, (edited )

You took longer than that to be a useful human, don’t hear anyone saying that about you though

folkrav,

How do you define “usable”, and how long did it take X to get to that same point?

ExLisper,

2 years from the original release to multiple ports, commercial applications, licencing to external groups and people actually asking to use it.

LemmyIsFantastic, (edited ) in Thoughts on this?

I’m going to post this thread anytime I get some random screaming about how Linux is soooo much easier than Windows.

On a more serious note, Wayland is a dumpster fire, and has been for many years now. I have up after spending a few hours dicking around in xdotool trying to get mouse gestures to work only to find out I should have been using the new ydotool…

Fuck all of that. Linux desktop really could use a benevolent dictator that has some vision and understanding what the average user wants.

This bullshit is the number 1 detractor of adoption.

r00ty,
@r00ty@kbin.life avatar

Fuck all of that. Linux desktop really could use a benevolent dictator that has some vision and understanding what the average user wants.

It already has these. They're called Linux Distros. They decide the combination of packages that make up the end to end experience. And they're all aimed at different types of user.

Why are none explicitly aimed at the average Windows user? I suspect there's one major reason. The average Windows user is incapable of installing an operating system at all, and new PCs invariably come with Windows pre-installed. This isn't a sleight on them by the way, it's just that most computer users don't want or need to know how anything works. They just want to turn it on, and post some crap on Twitter/X then watch cat videos. They don't have an interest in learning how to install another operating system.

Also, a distro aimed at an average Windows user would need to be locked down hard. No choice of window manager, no choice of X11/Wayland. No ability to install applications not in the distro's carefully curated repository, plus MAYBE independently installed flatpak/other pre-packaged things. The risk of allowing otherwise creates a real risk of the system breaking on the next big upgrade. I don't think most existing Linux users would want to use such a limiting distro.

Unless Microsoft really cross a line to the extent that normal users actually don't want anything to do with windows, I cannot imagine things changing too much.

LemmyIsFantastic, (edited )

Your entire paragraph is correct in most ways and really games the issues when Linux desktop in a nutshell. None of that will work for the average user.

My point was, the next time I see someone scream just use Linux, it’s easy, I will post this.

It’s not easy, and it’s somewhat baked in due to the design goals. IMO it would be better if that were accepted instead of bashing windows and osx. I realize I’m off topic by the end there but I felt the need to elaborate.

Stewbs, (edited )
@Stewbs@lemmy.world avatar

I understand where you’re coming from but the point you make is fundamentally wrong. I consider myself to be a Linux newbie and I’ve never ever seen ANYONE suggest Linux as an “easier” alternative to Windows. Never. I’ve always seen people put clear warnings when recommending Linux and always making sure the person, who is the beginner, knows and is aware about all the shortcomings Linux has in certain areas and challenges one might face when trying to use Linux. Maybe there are some out there but you cannot take them as the caricature of majority of people who recommend Linux to beginners.

The comparison you make is not even apples-to-apples, maybe oranges-to-apples. Sure they’re both OSes but everything else about them is very different. Trying to use Linux as Windows ensures that you will have a bad/subpar experience. Now that last one is kind of becoming irrelevant (or less common) as more and more Distros try to be more beginner friendly but the notion still stands.

People bash Windows and OSX because of their clear shortcomings and failings in many areas and yes there are many who just think Linux is plain superior (they wouldn’t be wrong but they wouldn’t be right either) but I’ve not seen one person call Linux perfect. All those that use it know where Linux falls short and wholeheartedly accept it. I understand that you’re trying to make the general user more aware of the issues Linux has but your way to do so only generates fear mongering, not awareness. I’d argue most popular distros “Just work” for most use cases except (like you mentioned) gaming. All this X.org vs Wayland stuff is for those who wish to dig deeper into Linux, the average user will simply not care about it. All they care about is using their system without any hitches.

voidMainVoid, (edited )

I’m going to post this thread anytime I get some random screaming about how Linux is soooo much easier than Windows.

What a ridiculous straw man. I don’t think I’ve ever heard anybody promote Linux but claiming that it’s easier than Windows.

This bullshit is the number 1 detractor of adoption.

That’s a trend I’ve noticed from Linux critics: they had some bad experience due to a use case that they didn’t feel was properly catered to, and because they had a bad experience, that’s the reason why more people aren’t choosing Linux.

I’ve never used mouse gestures. I’m willing to bet most users don’t. People aren’t picking up Linux and going “Aaarrrgghhh! This sucks, because I can’t program my mouse gestures!” This sounds like a power user feature. Catering to power users so that they don’t badmouth you online is not a good UX design strategy.

LemmyIsFantastic,

The fact that you don’t think people use gestures is enough for me to believe you don’t have interactions with normal users. People love their touch pads.

AMDIsOurLord, in Thoughts on this?

Sounds like a heap of crap. X.Org developers moved to Wayland, they were the ones who made it happen. Now, I wonder where this dude with his XOrg Forks and PhD and shit was during all that 15 years it took to conceptualize wayland.

You all need a lesson in taking everything people say, including and most importantly their qualifications with a huge grain of salt.

Wayland has been working perfectly for years now. Many of the supposedly “impossible to implement” functions of the old hunk of junk Xorg were either found to be bogus anyways or have been made available on Wayland.

Sincerely– Someone who’s been using wayland since 2016

520,

X.Org developers moved to Wayland, they were the ones who made it happen.

But did they bring the same mistakes with them?

AMDIsOurLord,

They made Wayland the way it is precisely to NOT make the same mistake.

vzq, (edited )

Most of the xorg “mistakes” are design choices in the x11 protocol and have been there since some MIT undergrad smoked too much ganja over Christmas break 1986 and wrote the implementation that became the de facto standard.

kuneho, (edited )
@kuneho@lemmy.world avatar

only thing keeping me back to switch to Wayland is Barrier. I need that for my work machine 🤷🏻‍♂️

barkingspiders,
@barkingspiders@infosec.pub avatar

Legit, used Wayland for a whole two hours before realizing barrier wouldn’t work and had to drop back to x. Workflow gotta workflow.

LinuxSBC,

Maybe try Input Leap. It’s an actively maintained fork of Barrier (Barrier isn’t maintained), and it has Wayland support.

barkingspiders,
@barkingspiders@infosec.pub avatar

Thanks for the recommendation! I’ll check it out.

AMDIsOurLord,

Apparently their devs are aware of Wayland. Maybe someone even makes a Wayland-aware alternative like some apps had.

LinuxSBC,

Actually, the primary dev is no longer active. The other developers have moved to a fork called Input Leap that has Wayland support.

AMDIsOurLord,

Interesting, I saw they mentioned Wayland in their repo.

LinuxSBC,

Maybe try Input Leap. It’s an actively maintained fork of Barrier (Barrier isn’t maintained), and it has Wayland support.

MyNameIsRichard, (edited )
@MyNameIsRichard@lemmy.ml avatar

Wayland has been working perfectly for years now.

Not for every one. For example, I still get random black screens with only mouse trails, windows disappearing, and videos not playing properly. Why yes, I do have an Nvidia card, thank you for asking.

BlanK0,

I have nvidia and its been working for me

MyNameIsRichard,
@MyNameIsRichard@lemmy.ml avatar

Are you using the proprietary drivers and KDE?

AMDIsOurLord,

After finally realizing nobody is interested in EGLstreams, Nvidia seems to be on track to make their drivers less of a disaster for Wayland support, so thankfully it is bound to become better

I just want you to know, this isn’t a failure on anything other than Nvidia trying to force their own crap on everyone and failing

DarkThoughts,

I'm on AMD and had so many issues with Wayland. A lot of games were straight up unplayable due to the amount of issues and some other applications straight up not compatible while scaling is also still a freaking mess. Saying Wayland has been working perfectly for years just feels like clownery and is kinda insulting to everyone who experiences those problems.

turbowafflz,

Interesting, what model is your GPU? I’ve been using Wayland for months on an RX 6650 XT and for about a year before that on an RX 570 and I’ve had so many less problems than I used to on X. Maybe I’m just lucky with my GPU choices?

AMDIsOurLord, (edited )

This also depends on the desktop you use. GNOME is by far the most stable [In My Experience], and KDE spent the whole 5.x series getting their Wayland support into shape. What you’re describing could be XWayland failures (games don’t run on Wayland lol) and desktop environment bugs.

Depending on how long ago you’re talking about, your hardware, and your desktop of choice, things might’ve been improved a lot since the last time you used a Wayland session.

DarkThoughts,

I made a post about my Gnome experiences already, which were just terrible due to how unstable the apps were and how it lacked a ton of even very basic features that I needed. So if their Wayland support is better, it's completely overshadowed by how shitty everything else is.

Most of the issues were a year or two ago, but I every now and then switched to Wayland to see if things got better and returned to X within like hours due to issues just around the "desktop".

someacnt_,

There would be a reason why they did not support it so well, wouldn’t it?

AMDIsOurLord,

They tried to force their own EGLstreams system on everyone and people wouldn’t have it

someacnt_,

How does the forcing work? How is wayland involved in this

AMDIsOurLord,

www.phoronix.com/news/XDC2016-Device-Memory-API

From this, follow the chain of articles about it

Basically, everyone used (and uses) GBM, while Nvidia went and fucked around for a while trying to force EGLstreams, by not supporting GBM.

Well, people resisted this and finally Nvidia had to start adopting GBM in their drivers.

If Nvidia wasn’t such a fucking dick Wayland would be ahead by years now

MyNameIsRichard,
@MyNameIsRichard@lemmy.ml avatar

I recently found out it was Nvidia’s fault for not following the standard every one else agreed on.

CrypticCoffee,

Very good point. Mr x11 expert maybe seems pissed he’s gotta learn a new tech and refuses to, so will bash it and hope it goes away. But if they were an expert, they’d probably know the things you mentioned.

jw13, in Thoughts on this?

Most of the post is an “argument from authority”: Trust me, I have a PhD and maintain my own X server, and I assure you that Wayland is a pile of shit!

OP claims that “actually nothing will actually run” because the stable Wayland protocols lack so much important functionality. In reality, many people use Wayland every day, and multiple large distributions use it as the default display server. This doesn’t inspire confidence in OP’s knowledge.

Admittedly, the first bug they linked is a real issue and it should be fixed, but it’s not a Wayland design flaw. It’s an (arguably important) feature that hasn’t been implemented by all compositors yet. With the second bug OP laments that Wayland compositors are implemented in C, an unsafe language. This is true about X.org too, so I don’t really see the point. Arguably Wayland improves on X11 here, because someone could develop a new Wayland compositor in Rust, while in X11 this is a core part of the display server.

GenderNeutralBro,

OP claims that “actually nothing will actually run” because the stable Wayland protocols lack so much important functionality. In reality, many people use Wayland every day

Are the Wayland compositors people are using every day exclusively using “stable” Wayland interfaces? Honest question, because I have absolutely no idea.

drwho,

Neither do I. I’ve had a sensor net watching for Wayland news (because sooner or later I’m going to have to migrate to it, just want to know when) but so far there hasn’t been any executive summary.

520,

There is no such thing as a 'stable' Wayland interface. Each compositor is responsible for their own interfaces, the Wayland protocol is there to make sure that applications written for Wayland play nicely with them.

CrypticCoffee, (edited )

It does give anti-SystemD “why make new when what we got now is good vibes”.

Their Java bashing was more a criticism of design patterns than Java, but fell into the meme bashing of tech based on one example. Find an old bug and say tech is dreadful as a result.

lemmyvore, (edited )

With the second bug OP laments that Wayland compositors are implemented in C, an unsafe language.

That’s not what they’re saying. They’re saying wlroots is full of race conditions, which will be very hard to fix because they’re part of a fundamental design problem.

jw13,

That is a serious problem, but advocating X11 will not solve anything. Wayland is being improved every day, while X.org is in deep maintenance mode.

And let’s not pretend that X.org is perfect. Race conditions at least can be fixed, even if it takes a lot of time and effort. Worst case, someone will rewrite wlroots in Rust. But in X11 any application can kill other applications, install a key logger, pin itself to the foreground, etcetera. This is by design: it’s what makes window managers, xkill and xeyes work. It’s also a huge security flaw that can never be fixed.

lemmyvore,

That security argument is like advocating wearing a motorcycle helmet when walking down the street. It sounds like a great idea and super safe, but it’s also super impractical and the things it’s supposed to protect against are extremely unlikely.

But ok, more security isn’t a bad thing. But why not make it an option, like SELinux for example? That way users can choose a degree on a scale between security and convenience that suits their use case and circumstances. Why make it all or nothing?

jw13,

It’s a valid concern IMO. Any application on X11 can install a key logger, record your screen, and influence other applications in a myriad of ways. With open source software from a trusted repository, this is not an issue, but an increasing number of people run random binary blobs from Steam, the Snap Store and Flathub. I am 100% certain that some less-conscientious publishers are already using X11 features to build ad profiles of their users; it’s a matter of time before the first ransomware will appear. The only sensible way to prevent this, is to confine applications to their own space.

But ok, more security isn’t a bad thing. But why not make it an option, like SELinux for example? That way users can choose a degree on a scale between security and convenience that suits their use case and circumstances. Why make it all or nothing?

Wayland simply doesn’t have protocols for most of this stuff. (Applications are supposed to use D-Bus and portals.) Developing new protocols that offer X11-like functionality is a large investment and will also need changes in the toolkits and apps to make it work.

ngn, (edited )
@ngn@lemy.lol avatar

xorg letting a malicious program to record keys is not a security issue, its a weakness

having that malicious program on the system, thats the security issue

if you are implementing a display protocol that aims to replace the xorg, the focus should be compatibility not fixing security weaknesses especially if you dont have any better solutions, and wayland does not have a better solution for global keys, compositors are just implenting it on their own hacky way

teawrecks,

No one is advocating X11. It’s hard to have a constructive conversation about the shortcomings of Wayland when every apologist seems to immediately go off topic.

“I don’t want to listen because you don’t know the technical challenges. Oh, you have a long list of credentials? I don’t want to listen to an argument from authority. X11 bad, therefore Wayland good.”

OP even brings up Mir, but you never see Wayland proponents talk about why they think Wayland is better.

amju_wolf,
@amju_wolf@pawb.social avatar

In the end this is also a pointless argument though. Like, sure: “Wayland is shit”, but also, “Xorg is even worse and ‘noone is advocating for it’”. And when there is no third alternative I guess we have to deal with (and improve) Wayland then?

OP’s expertise would then be better spent by contributing to Wayland.

Patch,

Most of the post is an “argument from authority”: Trust me, I have a PhD and maintain my own X server, and I assure you that Wayland is a pile of shit!

It’s amazing that he’s so well qualified, even runs his own X fork, but isn’t volunteering to do any actual work to maintain the project.

Because that’s what this ultimately boils down to, isn’t it. Nobody’s forcing anyone to use Wayland or drop X. But, all the X.org developers have moved on to Wayland and aren’t coming back, and all the major DEs are also migrating to Wayland. So if you want to keep using X, you’re going to need to do the work that other people used to do for you.

For most users that’s a fairly empty statement, as most users don’t have the expertise to maintain X and window managers even if they wanted to. But apparently this guy is hot stuff; a highly qualified, highly experienced king of the display server world. So when are we going to see his X.org fork?

NeoNachtwaechter, in Thoughts on this?

try and squeeze in a Java-90ies-OO style of factoryinstancemanagerfactoryfactory

This one made me laugh out loud :-)

CrypticCoffee,

It just turned legitimate points into meme bashing. Makes me doubt it. Comes across more like the anti-SystemD folk.

wolf, in Happy new year of the Linux Desktop!

It will be a pleasure, like every other year of the Linux Desktop™ for more than 20 years now! :-)

Aria, (edited ) in New Linux user here. Is this really how I'm supposed to install apps on Linux?

Yes. I’m genuinely unsure how it could be any easier. It’s just add the repo and install.

But I suppose it’s a lot if you don’t know what anything means, so I’ll try to explain it at a super basic level. Sorry if this is patronising, I can’t ascertain your experience level so I have to make an assumption.

The first thing it asks you to do is:

sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc

Hm. Okay so I guess before even deciphering the command, you have to know how Linux works. So on Linux, the first word is the name of the application you want to use, and everything afterwards is stuff that you pass along to the application. It’s up to the application to program in the behaviour for interpreting the words that come after the first word. So “sudo” is the name of the application you’re using, and all that other stuff is stuff you’re telling Linux to tell that other application.

Okay, so what is sudo? sudo is short for Super User Do. It’s an application that does something (sudo) as the super user (sudo). Super User is like admin on Windows. So it’s for when you want to make system level changes or want to override permission limitations. In the past, or at a basic level, you would switch user, make the change, then switch back to your personal user. But with sudo you can borrow the permissions of the super user for the purposes of that one command and everything works smoother that way.

The way you use sudo is you run the application by typing sudo, then you type in a second application and what you want that application to do, then sudo starts that other application and gives it the instructions you asked to be passed on. The second application in this case is curl.

For example, on Windows you might do sudo photoshop open C:userswinuserdocumentsrestrictedfile.psd to open a file in Photoshop that the Windows admin decided you aren’t allowed to open.

Let’s look at the command again.

sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc

Sudo is to get super permissions and doesn’t actually tell you what the command does. The application that is actually being run in this command is curl. curl goes to a url and sees it. So it basically just means download whatever is at this URL. Here the URL is https://repository.mullvad.net/deb/mullvad-keyring.ascAll that other stuff in this command is technically curl specific, so you have to check how curl works to know what it does. But it does follow Linux conventions very closely, therefore a normal Linux user who has never used curl could still guess what it does with 100% accuracy and would probably use it correctly for the first time without checking how to use it. If you want to learn how to use it, you can use the included manual program man, by typing man curl, and as a convention, almost every Linux application will tell you how to use it if you use the -h or --help flags by typing curl -h or curl --help.

In this case, curl takes flags, these are -fsSLo, that’s 5 different flags. A flag is like a mode switch for an application, it’s specified with adding a hyphen and the trigger word. The hyphen is useful because an application like curl might want a file path /usr/share/keyrings/mullvad-keyring.asc and a URL https://repository.mullvad.net/deb/mullvad-keyring.asc, so by adding the hyphen, the application knows that fsSLO is not part of the file path, but is instead specific instructions you’re giving the application. This is a normal convention on Linux, similar to how Windows applications normally program the X button in the corner to close the window.

For curl specifically, by default curl doesn’t save the file, it just displays it in the terminal. So the most basic version of the command would be curl https://repository.mullvad.net/deb/mullvad-keyring.asc and nothing else. Let’s look at what the flags do.
-f is for fail.
-s is for silent. Both of these just change the behaviour of curl to give you less feedback and information. Mullvad probably chose to do this to make it more beginner friendly, ironically.
-S is for show error. There’s a difference between lower and upper case. Show error means that even though curl was asked to be quiet and not show what it’s doing, it should still let you know if there’s an error.
-L is for location, it’s to allow redirects. Mullvad chose to include this option so that the old instructions still work if the URL changes in the future or perhaps if you have a common typo in your command.
-o (output) writes the downloaded file to disk at the specific location. /usr/share/keyrings/mullvad-keyring.asc. The -o flag is the only one in this list that actually matters and changes what the application does. The rest is just there to be beginner friendly, but I think Mullvad made a mistake in including them personally, as I think they add to the confusion instead.

As a standard Linux convention, flags can either be a single hyphen and a letter or two hyphens and a word or a hyphenated sentence. These are conventions and up to the application, but for curl and most applications you’ll use, both work. Similarly, curl and most applications let you use a single hyphen and then all your flags in a row, or separate them with spaces and new starting-hyphens. curl -f --silent -S -L --output file.txt https://lemmy.ml for example.

Okay, so hopefully now you can read it a bit better. Let’s look at it again.

sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc

Wtf is that file and why do you need it in that folder? It’s downloading their encryption key to the folder where apt (a different application we haven’t encountered yet) looks for encryption keys. You need this for cryptographic verification. It’s a safety measure, and more important for security software like Mullvad. It’s not mandatory for adding repositories.

So with this command, you borrow the super user’s permissions and you download a file and put it in a folder.

Okay, next part.

echo “deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main” | sudo tee /etc/apt/sources.list.d/mullvad.list

Okay, this one is actually pretty complicated! Similar to above, how they added all those superfluous flags that make curl quieter, this is another case of the mullvad help-article-writers choosing to make the experience of copy/pasting the commands more seamless by sacrificing legibility.

But let’s go through it anyway. It’ll be a super quick crash course in how to use Linux.

echo “deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main” | sudo tee /etc/apt/sources.list.d/mullvad.list

Echo is an application that repeats whatever you type at it. If you run echo hi it’ll output hi into the terminal. Deb is an application that installs .deb packages. These are like .msi files on Windows. It’s specific to Ubuntu and certain other Linux distros. The stuff that follows echo is a command. deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main, if you run it on its own, it does something. But because you wrote echo first, it’s only words that are being printed in the terminal. We’ll look at what it’s supposed to do in a minute. After that part, comes a pipe |, this is very important, then a second command. sudo tee /etc/apt/sources.list.d/mullvad.list.

Okay, we’ll break this down backwards. sudo you already know. It’s just an application that starts another application. In this case tee. tee is an application that takes whatever you give it and writes it to a file. It’s called tee because it’s like a t-split, it both writes to a file and to the terminal at the same time, so you can monitor what’s being written. It’s specifically designed to be used with a pipe.

Wtf is a pipe? A pipe | is a built in Linux function that let’s you take the output from one application and feed it to another. In this case, the stuff you had before the pipe was a echo command. So the output is what you asked echo to echo back to you. deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main". That means that tee is writing this command (without the echo part in front of it, because that’s your command, not the output from an application) into the file located at /etc/apt/sources.list.d/mullvad.list. Tee by default overwrites whatever was already in the file, and in this case, a mode-switch flag wasn’t used to ask it to not do that. So if that file already existed (which it doesn’t), it would now be deleted and replaced with what you echo’d into it. deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main".

What is /etc/apt/sources.list.d/mullvad.list? That’s a file that belongs to apt. apt is your package manager, we’ll loop back to that. The /etc folder is somewhere applications put their files, rather than where the user is supposed to put their files. Having the user’s files separately like that helps with knowing which files you care about when it comes to backups and system migrations and things like that. So inside /etc, apt gets it’s own folder, and inside that folder it created sources.list.d, and inside that folder, you’re now creating a file for mullvad. In this file is the definition of the new repository you’re adding.

[Cutting this up to two parts because API limit]

Aria, (edited )

[Part two]

Two questions:

What is a repository?
What’s the stuff that goes in the file? Why is it a command and why is it so long?

I started answering the second question, so we’ll continue with that and loop back to what apt and repositories are for the next and final command.

echo “deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable $(lsb_release -cs) main” | sudo tee /etc/apt/sources.list.d/mullvad.list

So echo just means “repeat what you’re given”. Then deb is the Ubuntu equivalent to msi. Then you’re telling the deb application where to find the encryption key you installed earlier, and you’re telling it which arch (short for architecture, it’s the hardware configuration of your computer) you’re interested in. When it says $ and then stuff in parenthesis like that, that stuff gets computed and substituted. So you’re not literally asking for the architecture $( dpkg --print-architecture ), but instead something like arch=amd64. dpkg is an application that keeps track of what .deb packages you have installed. With the flag --print-architecture, it’s switched to a different mode where instead of it’s primary purpose, it’s telling you what system architecture you’re using. Then it’s the URL for the repository. The URL is also variable, part of the URL will get replaced later. $(lsb_release -cs). lsb stands for linux standard base, and lsb_release is just an application that says which Linux distro you’re using. The reason this ‘standard base’ is used rather than the specific distro and version, is because it’s meant to simplify the very large diversity of Linux distributions and versions down to the minimal number of possible versions that actually have some level of incompatibility with each other. So it would say your specific major version of Ubuntu, but it wouldn’t say exactly which patch you’re on. Someone who’s not using Ubuntu, but using something that from a compatibility standpoint is fully Ubuntu compatible, might also report as a Ubuntu version when using this application. The output from this program is added to the URL. The computed result is something like https://repository.mullvad.net/deb/stable mantic minotaur main. Main just means the main branch of the application, as opposed to a special branch, like a beta-branch.

If you notice, you’re not computing these things first and then putting the result into the file, but instead you’re inserting it with variables. This will allow your system configuration to change without the need to update the repository definition.

All in all, this is a very complicated way to add a repository. On most systems, and indeed on Ubuntu, you can do this with a single application or a flag for the package manager and then a single URL. For Ubuntu it would be apt-add-repository https://repository.mullvad.net/deb/stable mantic minotaur main. But they chose to do it like this to make it easier to do once and forget.

And then finally, what is a repository? What is apt? A repository is a place that hosts software. It’s like the Play store on Android. You can use the Ubuntu repository that is standard for your Linux distribution and guaranteed to work, guaranteed to be safe, guaranteed to be respectful towards you as the user, but you can also add third party repositories. Third party developers can add their applications to the official repository, but doing so means they have to go through a quality assurance step, and that they are limited in the ways they are allowed to abuse you. For security software, this might add too much delay between when it’s critical that they provide an update, and when that update is approved for distribution to Ubuntu users. Instead they have opted to host their application on their own repository.

Apt is your package manager. It keeps track of everything you have installed, every library and component used and required by every application, and for some package managers, every file created by every application. It checks all repositories you’ve specified for updates and automatically updates all your applications. It also deals with requirements and conflicts, ensuring that you don’t have superfluous old libraries taking space, and that when you want to install something with requirements, you don’t need to manually hunt down all the prerequisites. Some package managers available on other systems will even compile applications and deal with build files for you.

A library is a set of application features that doesn’t necessarily belong to a specific application. They do common things and are used my many applications. For a Windows equivalent, you can think of the Microsoft Visual C++ Redistributable or Direct X.

And that’s everything.

sudo apt update

Sudo is to get super user permissions, and then run the application apt, apt is your package manager, and the command you’re giving to the apt application is to update it’s internal knowledge of available packages and versions. It needs to do this because it didn’t previously have the Mullvad repository.

sudo apt install mullvad-vpn

Sudo is to borrow the super user’s permissions, apt is your package manager, and you’re telling it to install, and then the name of the application you want to install is mullvad-vpn. This final step sudo apt install mullvad-vpn, sudo apt install firefox is how you install applications on Ubuntu typically. Everything before this was because you needed to add a third party source.

Phew, that’s a lot of text! So in hind-sight, it could be easier after all lol. Feel free to ask if you have any questions. It’s a lot of text, but I assure you that if I was going to explain anything about how to use Windows at this level of detail, it would be pages upon pages longer! I hope the explanation wasn’t too condescending. Good luck with learning how to use Linux.

_
Pedantic clarifications:

  • Technically, sudo is a command and not an application, but it’s made to be treated like an application. Also technically it doesn’t stand for superuser do, but all the stuff I told you is assumptions they want you to make to make it easier to use, but because it’s such a core part of Linux, it works differently on a technical level.
  • | is actually part of bash, not Linux, but most shells have | with identical behaviour.
Xer0,

Lmao, i’m sure this is just going to make OP run a mile.

MrOzwaldMan,

you’d do it too so people don’t break their system case-in-point Linus.

ulterno,
@ulterno@lemmy.kde.social avatar

A bit of physical exercise shouldn’t be too bad.

ulterno,
@ulterno@lemmy.kde.social avatar

Great stuff This is going to be useful even to someone who easily understood the commands.

AbsoluteChicagoDog,

Genuinely sure it couldn’t be easier

Instructions so long it takes up two comments

Aria,

These aren’t instructions. The instructions are 3 lines and provided by the vendor.

some_guy,

Yes. I’m genuinely unsure how it could be any easier.

I was gonna laugh, but then you included a lot of information, and thinking back to the days when I would write super long instructions for people with lotsa explaining. This is a good effort to impart knowledge and I commend you for it.

bjwest,

Yes. I’m genuinely unsure how it could be any easier. It’s just add the repo and install.

It can be much easier to install a PPA than using the command line to do so. I think it’s high time it was as easy as clicking on a (verified) “install this repo” type button on a page, and confirming, entering your sudo password from the launchpad website. I’d even be OK with building it into Discover.

Aria,

If you’re going to verify repos then you might as well just verify the packages.

Olap, in Thoughts on this?

He ain’t wrong. Replacing X11 wasn’t a great idea and not invented here was all over Wayland, especially with the Mir proposals. SystemD also gets this accusation but people seem to like working in it/with it, and so doesn’t get the level of criticism now.

It will be really interesting to see if Wayland maintains momentum over the next few years, or if it’s own tech debt will cripple it. Ideally we want to see if we can bridge the Android divide in the GUI space imo, which Wayland may have more potential to do

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux@lemmy.ml
  • localhost
  • All magazines
  • Loading…
    Loading the web debug toolbar…
    Attempt #

    Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 18878464 bytes) in /var/www/kbin/kbin/vendor/symfony/http-kernel/Profiler/FileProfilerStorage.php on line 171

    Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 2097152 bytes) in /var/www/kbin/kbin/vendor/symfony/error-handler/Resources/views/logs.html.php on line 38