We’ve long stopped living in a world where you should need to fully trust every piece software that you run as your user on your computer. And even probably trustworthy software can go bad at an update due to supply-chain attacks.
We’ve long stopped living in a world where you should need to fully trust every piece software that you run as your user on your computer. And even probably trustworthy software can go bad at an update due to supply-chain attacks.
No, that is something you don't want. I and many others, do want this functionality.
I mean, would you like VSCode tracking your mouse movements across the entire desktop and your keypresses and then sending them off to Microsoft? Probably not, so we're all in agreement.
The days where you downloaded your software from the sunsite or tsx11.ai.mit.edu FTP servers and could be confident that it and all its dependencies were trustworthy are unfortunately gone for a very long time.
It's an example, demonstrating that the mentality of "I don't use bad software" doesn't really work.
> giving up their computing freedom for "security" might as well have been the goal of the operation
How could you possibly reasonably argue that you're losing "computing freedom" because now you have the power to deny or allow applications from doing things? You're literally gaining freedom - that's not something you were able to do before. Now, you have the freedom to deny applications accessing something you don't think they need.
What I'm trying to get across is that the need for that kind of intense security model, every process a threat, is not intrinsic to modern computing.
The most popular operating systems all do that (ios and android), and they have carved out safe APIs for all of that to work. You can’t patch up a Swiss cheese after the fact.
Is it hard to create standard APIs in a bazaar style of development? Yeah. But that doesn’t mean that it’s not the correct approach.
Sure Android and iOS are secure but in practice they kind of suck for making anything non-standard which limits creativity and freedom.
Can we have both a secure and extendable system? Maybe but none of them exist yet. I'm really worrying that Linux mainstream distros will become like Android or iOS.
You would be surprised how many content creator gets by with a single ipad.
But requiring user permissions for apps to do shady shit is a good thing. Cannot fathom why people are against that.
> But requiring user permissions for apps to do shady shit is a good thing.
Because it’s a mobile OS and every single spent CPU cycle is a detriment to battery life? There is absolutely nothing in the security model that would prevent it from running - but it is essential that processes have a “structured” lifetime.
E.g. compare how much more graceful android is in low-memory situations, asking apps to serialize their state and then stopping the last used one. Linux oomkiller will just reap my whole display manager for some reason.
Nobody is turning Linux into iOS. But iOS DOES have some good ideas. It's good, for example, that for an app to access your photos library they have to ask. I know for a fact you prefer that to the app just opening your photos without your knowledge and doing whatever they want with them.
Similarly, I see no reason why Chrome should be able to read the display output and keyboard inputs of my graphical password manager. It should ask me.
Can you name one professional software developer?
Probably, you can. But I don't want to limit myself to that sub standard environment. I love my iPad for some activities, for others iOS is just impractical.
What use is a safe API when it makes the entire system impossible to use by a significant fraction of the population (ie wayland and the visually disabled)? It's been a decade+ and none of the waylands have managed to support screen readers yet.
Are we to just throw out that whole class of people and tell them, "You don't get to use linux desktop computers anymore when X11 support is dropped". As someone with retinas that are progressively tearing apart, who already uses text to speech for many things, this is incredibly disheartening. I really don't want to have to switch to the Apple ecosystem.
This has absolutely nothing to do with the technology, it’s just that there is no standard protocol for one more thing simply because accessibility experts don’t happen to do some free work that will be de facto accepted by multiple different vendors. Comparatively, apple or google can just declare that this new API is the way to go, and support it natively from the de facto frameworks of the platform (and probably paid for accessibility experts along the way).
The thing about xeyes isn't that its privacy invasive, is that it shows that xeyes knows what you're doing in other clients.
Got a gnome terminal root shell open? That's a privilege escalation method for any other client running on the desktop under Xorg. This itself, isn't really a problem, but chained with other attacks could be (e.g. browser escape).
Unless you're sandboxed up the ass, Wayland won't save you when that browser escape happens. Something I did 20 years ago to a friend as a prank that still works today on a typical Linux desktop with Wayland; wrap sudo to log the users password the next time they use it. I didn't use a browser exploit for that, but it can easily be done if you have write access to the user's environment however that happened. Wayland won't protect you from that sort of thing unless you're willing to commit to extensive sandboxing.
Relatedly, now random apps can't record the whole screen. This is a good thing, now they get explicit user permission and go through xdg. I don't know how anyone could be opposed to this - it's objectively more empowering for you, the user.
But if you wanna argue Chrome should be able to read all your keyboard inputs whenever it wants be my guest. I can't fathom why people want that type of setup.
I won't expect stdlib.h to provide me a magical get_cursor_pos() function in any way.
GUI toolkits? (This includes the Win32 GUI.) Maybe.
It's not a universal thing though -- for example, you may receive mouse position _only_ when the cursor is in your window.
I did a quick google before I asked you that question, and it looks like wayland is one of the few exceptions to completely exposing current cursor position. Most "stdlibs" do expose it.
Are you referring to the native GUI toolkit of a platform (e.g. Winforms, Cocoa) or something else?
Just google it. You are incorrect and you're not pumped about it, I get it. The horse is fully beat to death. If you want to discuss further, my responses will probably just be lmgtfy links.
> In computer programming, a standard library is the library made available across implementations of a programming language.
You should show me that, among the mainstream programming languages, their standard library will provide get_cursor_pos().
I do agree that probably no-one was confused, though.
Not that it makes a huge difference in the discussion, but if you want to be smug about it then at least make sure you're right first.
It's an exception, not the rule. Even Python, well known for its batteries-included std, do not provide this magical get_cursor_pos() function that you insist is found in stdlibs.
Like, your pdf reader is surely not evil, but do you trust every single pdf file you open?
And unless you fully sandbox your PDF reader then an exploit is going to have access to your user directory without any display server involvement anyway. X11 vs. Wayland doesn't even come into the picture.
And they should simply not have access to my home folder, it should be given access to a specific file only it is about to read.