linux

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

sparr, in Happy new year of the Linux Desktop!

I just did an OS reinstall for the first time in about 4 years. Moving from Manjaro back to Arch. Happy New Year!

people_are_cute, (edited ) in Happy new year of the Linux Desktop!
@people_are_cute@lemmy.sdf.org avatar

Have you guys fixed your graphics stack to keep up with current High-DPI and HDR displays yet? No? LOL happy new year of the eyesore desktop to you too

finestnothing,

What are you even going on about? Proprietary Nvidia graphics drivers updates are released at basically the same time as the windows version, and amd has always worked flawlessly. I have 2 2k 144hz monitors with HDR and both work and look just as good on Linux as on Windows.

The only issues with high dpi monitors is that some apps don’t both detecting the monitor dpi and need to be adjusted manually… but there are very few that that is still an issue for, and windows has the same problem because it’s an app problem not an OS problem

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

Some apps? “Very few” apps? Buddy, you either aren’t running much software at all or are delusional. Entire Desktop Environments to this day have ass fractional scaling that can’t render things correctly without eating up resources and making them look horribly blurry. Fonts look terrible and have bad kerning even with all anti-aliasing settings correctly set. Even colors are dull across the board by default. Not to mention there will always be random glitches and your graphics card fan will always be on full power unless you turn it off because of shit throttling even with official Nvidia drivers.

Just try using browsers and file managers between Linux distros and Windows on default settings on medium-tier, 5-year-old machines side-by-side, the difference will be starkly visible - from responsiveness and animations to general look quality.

princessnorah, (edited )
@princessnorah@lemmy.blahaj.zone avatar

Why come into the Linux community just to start an argument? It’s not 2010 anymore, the brand faction internet tribalism is so bloody tiring these days.

people_are_cute,
@people_are_cute@lemmy.sdf.org avatar

It’s not just to start an argument. I have tried so, so hard to shift to Linux. Nuked perfectly working setups just to take the jump to the “free” side (including Arch, btw).

It all only ended in frustration and disappointment. So everytime people toot “year of the Linux desktop” it only makes me laugh.

princessnorah, (edited )
@princessnorah@lemmy.blahaj.zone avatar

Then don’t use it 👍

priapus,

Stating problems you’ve had as if they are things that will effect everybody makes you looks very silly. I could do the same thing by stating that Windows is garbage because it doesn’t boot with rebar enabled and it bluescreens non stop. It’s also consistently slower to boot, open any software, and less responsive overall. The default file manager is also pathetic, and the software management is frustrating.

It sounds like you had some significant problems with your setup, but the way you’re describing it, it sounds like you didn’t properly troubleshoot it.

GNOME and Plasma both have great fractional scaling support with Wayland. I have never had whatever problems you’re describing with font rendering. On my machine it looks slightly better than windows, and slightly worse than MacOS. I used an Nvidia GPU with Linux for 4 years and never had any performance problems with the official driver.

Please realize your experience isn’t the be-all and end-all that decides whether using Linux can be a good experience.

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

I don’t want to sound arrogant but is reading a few paragraphs then copying and pasting 3 different commands into a terminal really that difficult?

It will make life easier in the long run as having a repo added will update the software with sudo apt upgrade in the future.

princessnorah, (edited )
@princessnorah@lemmy.blahaj.zone avatar

And if you read a few paragraphs more, there’s a Download and install the app section too, rather than add their repos. Which is what the OP wanted anyway…

Edit: Here’s the link for the package download: mullvad.net/en/download/vpn/linux

hemko,

Doesn’t sound like this sailor is much into reading

Critical_Insight, (edited )

It’s not difficult. I’ve installed several apps that way already. I just don’t like blindly following instructions while having zero understanding of what I’m actually doing here. Also, in this case the instructions are unhelpful because nowhere it tells me to install curl first and because of me not having it the first command just comes back with an error.

avidamoeba, (edited )
@avidamoeba@lemmy.ca avatar

The way to solve that problem is to read the commands and look up what they do. The installation method they describe is pretty standard and inoffensive. And provides automatic updates. The commands used aren’t complicated and they’re some of the system fundamentals for Debian/Ubuntu systems so it’s a good idea being familiar with them.

Coreidan,

In the time it took you to write this shit post and respond to all the comments you could have spent a couple of minutes reading and educating yourself on the process. It’s legit pretty simple especially if you’re willing to do a little research.

Kids these days i swear.

Shihali,

cURL is a very commonly used program to download individual files from the command line and worth installing to have it around in the future.

sudo apt update
sudo apt install curl

The first command tells your package manager to update its list so you ask for the latest version. You can skip it if you’ve already updated today. The second command tells your package manager to install cURL.

This will happen every now and then, especially when building a package from source. You won’t have some common utility that the documentation writer assumed you had, and you will need to find what package provides it and install the package.

lefixxx,

Yes people would assume you have curl. Curl is often used to install programs. And curl is definitely one of the things that can do malicius things this way. So you are right to be hesitant to use commands that you don’t understand. Most Linux users have forgotten how hard it is to learn the first stuff with no preaquired knowledge.

If you have googled “what is curl and how is it used” you may have found some relevant info.

I have given up on Linux because installing was hard in the past

There are some tools that make installing software easier. Like “appimage” files that are single files that (after you make executable) are completely self contained.

Flatpacks and snaps have an “store” like experience.

.deb files are also sometimes simple (also need to be made executable) (depends on the distro)

Unfortunately there is no .exe file experience.

ikidd, in Is anyone using awk?
@ikidd@lemmy.world avatar

Just had to use it today to turn a key file into a single string with line breaks:

awk ‘NF {sub(/r/, “”); printf “%s\n”,$0;}’ id_rsa

danielfgom, in New Linux user here. Is this really how I'm supposed to install apps on Linux?
@danielfgom@lemmy.world avatar

This is not the only way to install apps but as a Linux user there will be times when you will need to use the terminal. Might as well know that from now.

The instructions they gave are really simple and straightforward. If you struggle with that, you may want to learn a bit about the terminal.

But since you’re on Ubuntu there is a much easier way: go to Mullvad downloads page and download the deb file. Double click it and the Ubuntu App Store should open and install it. If not, open the App Store and search for gdebi and install it. Now right click the deb you downloaded, and click “open with…” and choose gdebi from the list.

It should check dependencies and give you an “install” button. Click that and wait for it to finish. Then simply launch Mullvad as normal.

In general on Linux you install apps by looking in the distro repo: either by searching the App Store or by using the terminal.

To do it from the terminal type:

  1. ‘sudo apt update’. Enter your password.
  2. After it’s updated type 'apt search [name of app] and press enter. It will give you a list of apps with that name. Eg apt search lollypop (a music player). Then if you see it listed, you know it’s in the repo.
  3. To install it type ‘sudo apt install lollypop’ and press enter. It will tell you how large it is and if you want to install it. Type “y” and press enter. It will finish it in a few seconds.

Done. Launch the app as normal.

There is also something called Flatpak’s which you can get from flathub.com You will also find instructions there on how to install flatpak on your system but typing a few commands.

Welcome to Linux. You’ll either embrace and love it or abandon it.

ILikeBoobies,

You will have to use the terminal less often than people on Windows do

It’s a personal choice

danielfgom,
@danielfgom@lemmy.world avatar

The average Windows user doesn’t know what a terminal is, let alone use it. Whereas in Linux every user knows what a terminal is and has used it at least a handful of times.

Some distros don’t have an app store, just the terminal.

ILikeBoobies,

The average Windows user knows that command prompt exists

The average Linux user comes from Android and has no clue about terminal

danielfgom,
@danielfgom@lemmy.world avatar

Bro, I’m an IT Support Technician and Sysadmin by profession. Trust me when I tell you the average user has never seen the command line.

Move a shortcut on their desktop and they freak out because they think the pc deleted all their work. No way in hell they would touch a terminal.

ILikeBoobies, (edited )

I’m aware, someone asked how to download a video so i told them just paste the url in command prompt (yt-dlp) and they said it’s not worth it

But no one I know even knows how to get to CLI on Android

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

Yeah no, generally you just copypaste the software website’s instructions. Many programs can be installed through the app store (or equivalent install commands) but a lot of aoftware you just gotta copypaste the code. Many also just provide an inataller.
The meme about linux software being much easier to install is true in some cases, but mostly bullshit. even if its just sudo apt install vlc you generally still want to check the website to make sure its the best way, or you end ip with an out of date version.

Updating software on linux is better pretty much automatic without annoying popups most of the time though.

neonred,

This was terrifying to read 😨

quackers,

Yeah, well, linux is great, but people seem to rarely give the full disclaimer. So people end up disappointed, go back to windows and end up thinking you need to be hackerman to be able to use it. Or they do end up learning everything, think they’re hackerman and tell everyone in the world how linux is just sooo much better and easier because theyve been using it since 1969 or whatever.

My view: Your grandma could comfortably work on linux. It’s when you need stuff beyond the most basic aoftware that there’s a much steeper learning curve than windows. You fuck up, your system implodes. Once you’re balls deep into computers, lets say software development, linux becomes easier and more useful again. Its that middle group of average users who have the hardest time.

juli, (edited ) in Thoughts on this?

Copy paste?

PhoenixTwoFive, in Thoughts on this?
@PhoenixTwoFive@iusearchlinux.fyi avatar

(Probable) Source for those who prefer actual text: lobste.rs/s/…/wayland_is_pretty_good_actually#c_b…

lemmyvore, (edited ) in Thoughts on this?

I remember reading through that thread when it came out and those are extremely worrying points. Wayland has extremely deep core issues. #2 there alone is horrible.

There are and were alarm bells ringing all around btw with Wayland. From a software developing perspective the approach is terrible. You cannot solve super complex problems by throwing away 30 years worth of code and redoing everything from scratch. You’ll just run into the exact same issues again. Which no, haven’t gone away as the technology advanced as many people would like to believe, we’re still using displays and networking and keyboards and mice.

There is a lot of legacy in X but there’s also a lot of accumulated experience and battle-hardened code. The obvious path would have been to keep the good and remove the bad.

Wayland will eventually since those issues but it will take just as long as it took X, because that’s what happens when you start everything from scratch again.

This is filling me with deja vu because it’s exactly what some of us went through with X, trying to piece together a working desktop out of dozens of pieces. But when you point that out you get “ha ha grandpa that’s old stuff, this new stuff won’t have that problem because [insert magic here]!”

Keep in mind that when Wayland started it was supposed to be a mini-server, to be used for the login screen only. Then the idea came to make it usable for stable, controlled and simple devices where there isn’t a lot of user configuration or hardware variation.

How it got from there to “let’s use it for everything on the Linux desktop and ditch X” I’ll never understand.

AMDIsOurLord,

Which no, haven’t gone away as the technology advanced as many people would like to believe, we’re still using displays and networking and keyboards and mice.

Which X.Org was not designed to support.

Muehe, (edited )

Do you mean not initially designed to support? Because at least for displays and networking (in the sense of being able to send X events over the network) that seems wrong, a network capable display server is basically X’s entire purpose? And for keyboards and mice there are extensions now, so x.org as a standard now very much supports those by design. Actually to my knowledge Wayland basically just forked their keyboard standard, the X Keyboard Extension.

AMDIsOurLord,

XOrg is designed so a central server (mainframe) sends and receives data from smaller terminals, and that not only includes a heap of devices that haven’t been in use since the 90s it also has a ton of features that nobody uses. (See: X native fonts, X native widgets, X driver model…)

X’s way of handling events and sending draws to clients as such is somewhat convoluted. Once you start to really dig into it, it’s amazing how much people managed to stack on top of it until today.

Besides, modern day X over Network is a somewhat niche and possibly broken function

frankfurt_schoolgirl,

I mean xwayland is the best supported X implementation today, and will only get better. You’re not ditching everything when you maintain backwards compatibility.

NeoNachtwaechter,

How it got from there to “let’s use it for everything on the Linux desktop and ditch X” I’ll never understand.

Just because they wanted it so badly… They had 2 fundamental problems with X:

1 - Everybody except the super nerdy nerds confused the ‘X client’ and the ‘X server’ all the time, and thought the naming were wrong.

2 - The networking was hard to set up / troubleshoot.

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

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.

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! :-)

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.

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?

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.

  • 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 20975616 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 4210688 bytes) in /var/www/kbin/kbin/vendor/symfony/error-handler/Resources/views/logs.html.php on line 25