What are some things you wish you had known when switching to Linux?

elfahor@lemmy.blahaj.zone to Linux@lemmy.ml – 195 points –

I start: the most important thing is not the desktop, it's the package manager.

176

That after getting used to Linux I will hate to be forced to use less free operating systems.

This so much. I absolutely cannot stand Windows anymore.

I could but I always get a feeling like I'm being monitored constantly. Like imagine being at work and if you don't move your mouse for a few minutes you'd get a warning or something. Or remember using a computer at school where the teacher could literally see the screen of every student, yeah like that.

How to quit vim.

Used to use gedit, the found nano and it was awesome. Then found Vim... I RAN back to nano haha

I hear you ๐Ÿ˜. For whatever reason I stuck with the Vim tutorial and did it a few times over the years. Now I'm using the IdeaVIM extension in IntelliJ - that mode system is just sooo powerful. It has a horrible learning curve, yes, but if you manage to stick with it, it pays huge dividends. I probably know, like, 18% of all commands, and it completely changed how I edit files (mostly for coding, but also text).

Alright alright. You win haha seriously, you've convinced me to give vim another chance.

Use vimtutor. It comes with vim and teaches you to the basic vim commands from within vim.

And don't worry about exiting vim, that's lesson 1.2 :)

Hahaha!!! I actually know how to exit Vim. Had to learn it when setting up a server config on a server that only had Vim installed. Once set up, nano got installed.

This vimtutor looks pretty awesome, and I can't wait to get learning on it. In all honesty, vim does looks super helpful. It's just that I usually use text editors to quickly setup configs, when gui won't do or I'm just done with gui for the moment. During those times, my patience is usually low, and searching how to save or quit or open or do any other basic functionality, reduces that patience further. But vimtutor makes it a point to learn vim when I'm not trying to get in, get it done, and get out. This may work for me. I may actually learn vim!

I remember, back in the day, I asked on IRC how to edit a file in Linux. Someone said vi. Little did I know that in chat someone said, the next question is how do I quit. I asked that exact question. Yes chat erupted.

Either by making it segfault or you donโ€™t.

I got a whole software developer career going out of my attempts to exit vim.

For people who actually don't know this, yet: Type :x.
This means โ€œeXit, save any changesโ€

If you want to leave and discard your changes, type :q!
The :q means โ€œQuitโ€, without any other instructions. This will warn you if you changed anything, adding ! means โ€œforce this commandโ€.

1 more...

I guess the main things would be:

  • As a beginner, don't bother trying to dual boot -- If you still need a Windows box, get some cheap hardware to do your Linux work on. It's too easy to screw up both systems otherwise.
  • Don't get too hung up on a specific distro, the better you are at dealing with different configurations, the better prepared you will be for whatever comes. Once you've gotten one set up, don't be afraid to just try a different one.

I never had a problem dual booting, even as a beginner. I always kept everything on two separate drives, though, each with their own EFI partition.

I kept them on the same drive, different EFI partitions.

I've also always done dual boot on one drive, no real problems other than when I know I caused the problem.

Also... What's up with that user name?

I did the opposite, have always dual booted my laptops and had win on my PC until quite recently now that I'm comfortable enough not to need a safety net anymore

1 more...

That I could put /home on a different drive
That I would never boot into Windows again so having partitions for it was a waste of time
That mounting drives with their uuid as the mount location is insane

That mounting drives with their uuid as the mount location is insane

Why tho? Kernel sometimes can index drives in different order (if you have multiple drives), screwing your mount locations. But UUID is always the same

You can give your partitions labels and mount by label. Labels are persistent, like UUIDs, but are also easier to remember and copy.

But why would I even try to remember them? Just look them up. Nowadays I don't even see them since I use Gnome Disk Utility or KDE partition manager to automount them (they both just write to your /etc/fstab)

But why would I even try to remember them? Just look them up.

For me, I used labels when setting up those volumes manually. Creating a LUKS container, setting up LVM groups and volumes, configuring my bootloader to decrypt the correct encrypted disk, etc. It was just easier to remember which device label was my encrypted container, which was the group, and what the different volumes were. And once the labels were made, well, I just used them.

It's just really long is all. I wish I had given it something shorter but descriptive.

The 1:1 windows:Linux replacement is just a means to keep you on Windows. Once you learn Linux, you'll come to understand how much of a farce it is and how it's designed to keep you away

Linux is a farce and designed to keep you away? Could you elaborate?

No, i think he means the idea that Linux is supposed to substitute Windows 1:1

I learned to never settle. If you don't like the default workflow of Gnome, try some extensions, or even a different DE. Same with Package Managers. If you don't like the syntax, make an alias. Don't just "deal with it". Windows has brainwashed people into thinking that there is only one way to do a thing.

This is kinda funny to me because I hadn't realized how terrible the Windows workflow was for me until Gnome 3 came out.

Ever since, while I'll use extensions for stuff like alphabetical app grid and Caffeine, I never do anything that changes the Gnome workflow. It's not for everyone, but it absolutely is for me.

Its why I always find it funny when people complain about changes to the start bar, because surely there isnt a bunch of 3rd party options in existance that change it, and can mimic 7's start bar.

I have heard that shell replacements are often very buggy on Windows.

Ive been using classic(then open) shell since moving off of 7 for consistency. for the most part, there haven't been any serious bugs that im aware of. Because the app works between windows versions, start bar for me at least has been pretty much consistent since windows 7 existed, and the stuff id adjust to would be changes in some apps (e.g control panel > settings) that happened overtime.

The problem of some users is they want the vanilla experience to be what they want when there are options to not make something vanilla. Similar to debates on linux distros on whether you want a very specific UI design vs having a distro that is personalizable and customizable based on preference.

See I've run into an issue now where I like and am used to GNOME, but I also want to try a tiling WM and doesn't seem like there's really a good way to do that in gnome

You can install the tiling WM and try it seperately. Might even be possible to combine them too, but that might get pretty involved and hacky since Gnome doesn't like it when you stray from "the path" that they deem correct.

I'd probably just do one or the other, don't want to be using nonstandard stuff within my non-standard stuff

I know XFCE is a popular choice for people who want to add a tiling WM. That was a combo that I heard about quite a bit in the past if that's something you'd wanna try. XFCE + i3 might be nice.

Trying not to make it windows.

There's a lot of conveniences that Windows comes default with.

When I switched to Linux, my immediate goal was to find alternatives for EVERYTHING. That lead to being disappointed by a lot.

Understanding Linux and also recognizing there's a lot of shit I don't need (that windows was giving me for the sake of VALUE) was a game changer.

Understanding Linux and also recognizing there's a lot of shit I don't need (that windows was giving me for the sake of VALUE) was a game changer.

This 100%! After using Linux for the past few years I've realized a lot of the crap windows has by default is stuffed in there to have something to market.

Nowadays there's a lot of good alternatives for everything, including windows hello for any password prompt

It was free, I could not afford a Sun workstation and Minix had problems, so when this Finnish guy wrote in Usenet that he was working on a free kernel/OS, it was cool!

Same!

The biggest bonus to the democratic world stems from just one individual. And the rest of the world believing in his idea.

So never say that just you cannot make a difference in this world.

Because you can!

386BSD was a thing back then too, but there was the AT&T lawsuit that scared everyone away. That gave Linux an opportunity.

Linux is pretty easy to use nowadays. The only thing I would check before switching is driver compatibility.

"20 years from now, people are still discussing moving to Linux!"

People who wanted Linux on the desktop to be so user-friendly their grandma could use it are now grandparents.

And 20 more years there will still be people switching

There will be dozens more people switching. Dozens!

  • tab completion in bash
  • vim
  • zfs
  • git (though it didn't exist then)

I wouldn't use ZFS. Too risky. If a new kernel comes along and ZFS fails to build or something, my system will be unbootable.

Btrfs scratches my copy-on-write/checksum/integrated RAID itch well enough anyway.

Nix and ubuntu have in kernel support. Void's module build system also prevents this situation. I use nix and void, so have never faced this problem.

I've been fuckin with btrfs so far haven't tried zfs yet. Anything cool compared to btrfs?

I gave up on btrfs when Icouldn't recover from a full disk situation (years ago, may be better nwo). But zfs tooling is so good, reliable and intuitive, I'd not want to switch anyway.

In contrast to btrfs it doesn't break your data. Everyone learns the hard way not to use btrfs...

Btrfs was the best filesystem I had used up until it corrupted my data.

Distrobox exists, so one is not bound to use a specific distro just because it packages some of the apps/binaries they require.

Installed distrobox on NixOS because I was worried being limited to only nixpkgs and have not touched it once lol

Same goes for the windows VM except for the time I needed to run excel macros for work

Worried about being limited to only the biggest selection of packages available. Does not compute.

I'd never heard of nixpkgs before so thought it was some small niche thing

I did on my Nix, there was a package in Nixpkgs that was outdated, so I had the opportunity to use distrobox for that, at leqst temporarily until they update the package.

Thats been a fear of mine moving to nixos. Glad to know it'll cover most of my software needs.

Here's a graph, it should be fine for your package needs: Graph

This is not totally accurate because nixpkgs also packages some packages that wouldn't be in the system package manager like Python and Haskell packages. Excluding those it's pretty much the same as the AUR

Am I reading the readme correctly in that I can run apt-get within distrobox on Fedora, and not be limited to dnf packages?

You can install Distrobox on Fedora (or any of the distros that support it), create a Debian distrobox on your Fedora install, and within the Debian distrobox you can use apt-get to install whichever Debian package you like. Or..., you could make an Arch distrobox and even install stuff from the AUR. Or really any package from any of your favorite distros as long as it's supported.

Awesome! And it'll be segregated from the base system and from other containers, like toolbox installs are?

And itโ€™ll be segregated from the base system and from other containers, like toolbox installs are?

Exactly. It's even possible to segregate it beyond what Toolbx has been able to do (at least since the last time I checked) in that you can define another folder/directory as your HOME directory within the distrobox.

1 more...

Rasberry Pi or other NUC is a great way to begin.

By the time you've dressed out an Rpi to be halfway usable, you've spent about as much as a decent NUC. And all you have to show for it is a slow-as-mud sd card, hardly any video acceleration, a USB stack that only crashes sometimes, a busy OOM killer, and no software.

Get an N95 based nuc. A Beelink with 8/256 runs about $150, and it just works. (Well, you might need pcie_aspm=off).

I wish I'd known how much of a pain in the ass having an NVIDIA card would be. I would have gotten a different computer.

Same. I bought my GPU at like 170% of its MSRP. I regret it now, should have went the amd way

Unmounting removable drives after writing to then is crucially more important than on Windows

It's pretty important on Windows too, though. Always โ€œejectโ€ or โ€œsafely remove hardwareโ€ before unplugging!

Not in Windows 10/11. You can still "eject" if it makes you feel better, but it's basically redundant. They reworked the support for removable media so they are always ready to remove except during active read/write operations.

Read/write operations can happen in the background at any moment as long as the drive is mounted, so that's not terribly comforting.

Anyway, Windows has always avoided deferring writes on removable media, for as long as it's been capable of deferring writes at all. That's not new in Windows 10.

Linux has a mount option, sync, to do the same thing. Dunno if any desktop environments actually use it, but they could. Besides being slower, though, it has the downside of causing more write operations (since they can't be batched together into fewer, larger writes), so flash drives will wear out faster. I imagine Windows' behavior has the same problem, although with Windows users accustomed to pulling out their drives without unmounting, I suppose that's the lesser of two evils.

How so?

On Windows, I often simply took out the USB drive without "safely removing" it. The data was there 99% of the time. On Linux, if I'm not mistaken, unmounting the drive before disconnecting is what actually writes data to it.

I don't think Linux literally waits for you to unmount the drive before it decides to write to it. It looks like that because the buffering is completely hidden from the user.

For example say you want to transfer a few GB from your SSD to a slow USB drive. Let's say:

  • it takes about half a minute to read the data from the SSD
  • it takes ten minutes to write it to the USB
  • the data fits in the spare room you have in RAM at the moment

In this scenario, the kernel will take half a minute to read the data into the RAM and then report that the file transfer is complete. Whatever program is being used will also report to the user that the transfer is complete. The kernel should have already started writing to the drive as soon as the data started being read into the RAM, so it should take another nine and a half minutes to complete the transfer in the background.

So if you unmount at that point, you will have to wait nine and a half minutes. But if you leave it running and try to unmount ten minutes later it should be close to instant. That's because the kernel kept on writing in the background and was not waiting for you to unmount the drive in order to commit the writes.

I'm not sure but I think on Windows the file manager is aware of the buffering so this doesn't happen, at least not for so long. But I think you can still end up with corrupted files if you don't safely remove it.

Really? I've literally never done this but I suppose I really only use my USB for dd'ing a distro.

4 more...
4 more...
4 more...

It was ~20 years ago so my advice to myself then would be pretty irrelevant now. I messed up my laptop, and my advice then would have been don't start with a laptop (because laptop compatibility was lacking back then compared to desktop, different times).

Laptop compatibility still sucks at times, especially with weird configurations of amd apu and nvidia gpu laptops... or maybe it's just my skill issue.

NVIDIA's contempt for the Linux community is legendary. Definitely not a skill issue.

Skill issue

Nah but seriously Nvidia loves to make it difficult and Linux doesn't make it any easier. It's like an unstoppable force meets an unmoving object

Don't get an Nvidia gpu

Can confirm. Don't do it guys. Hardware acceleration for video decoding just doesn't work for me.

1 more...

When you're just trying to get work done: pick a solid, well-tested high-profile distribution like Fedora, Pop!_OS, or Debian (or Ubuntu). Don't look for the most beautiful, or most up-to-date, or most light-weight (e.g. low CPU usage, RAM, etc.). Don't distro hop just to see what you're missing.

Of course, do those things if you want to mess around, have fun, or learn! But not when you're trying to get work done.

Is Pop!_OS really that popular? I started using Linux about 10 years ago and it wasn't around then, so I never tried it in my distro hopping days. I see it's developed by System76 so I can see why you'd choose it on their hardware, but is there any point doing that on other hardware?

The System76 engineers are culturally very aligned with the core values of freedom of choice, customization, etc. They build software with the larger ecosystem in mind, and in fact, I've never seen them build something only for their own hardware (even things that could have been just for their own hardware, like the system76 power management system, has extensibility built in).

That said, they also balance this freedom with a set of "opinionated" good choices that they test and support. If you care a lot about stability, it's easy to go along with the "happy path" and get a solid, up-to-date system delivered frequently. Every time they upgrade new features or kernel, they go through a systematic quality assurance process on multiple machines--including machines not of their own brand. (I've contributed software/PRs to their codebase, and they've always sent it through a code review and QA process).

Idk, it seems to be picking up steam. It's what I use unless I'm trying to use something super lightweight.

For me it has the stability of Ubuntu without having to use Ubuntu.

Haven't tried Debian yet though.

I'm cirious about what you dislike about Ubuntu?

There's a small amount of telemetry going on.

Also, Pop_OS makes running an Nvidia GPU less painful.

Snaps are basically Ubuntu's private app store, and flatpaks (the supported method of app distribution by almost every other distro) are not supported; there's no tiling WM built-in for large monitors; the kernel is not kept up to date (i.e. improved hardware coverage and support); some things like streaming with OBS studio and Steam don't work out of the box (this may have changed, but it was the case for me about a year ago).

1 more...
1 more...

When you're just trying to get work done: pick Windows.

I've gone Arch for this year's linux adventure. It has been the most stable I've ever tried.

1 more...

After switching to Linux I wish I knew how to report bugs. I'm a qa tester and I notice so many little things that can be replicated and fixing them would polish the user experience. But there are so many layers I don't know who to report the issue to. My first thought wasto report it to the distro forum and have the more technical people there take a look at the issue then escalate it to the distro maintainers or the actual software devs.

Another thing I wish I knew, was how to get my 2nd hdd to mount automatically. I fucked to my system 4 times(and recovered it) trying and then had to get my sys admin friend to do it for me.

Reporting KDE bugs is still extremely inconvenient.

There should be a 1-click option just to submit an automatically collected data dump, maybe with an optional text field we can write. Just to help providing some data, without all the hassle of creating an account, answering N questions, and following up with answers - sometimes I do care about the issue, most times I don't, but still want to flag that something wrong happened so they're aware of it.

I have the impression that a lot of bugs and random crashes go unnoticed because users don't bother to go through the process of opening a bug report - and they shouldn't need to, nor know how to.

My first time I was presented with the bug reporter I thought it was cool, but then it said I had to have all the debug symbols installed so it could unwind the call stack. Ok I thought, and searched apt for a little. But I couldn't find them all as there is not a standard naming scheme, so that effort was wasted. I wish their bug reporter would auto download all debug symbols needed.

Always put your filesystems in an LVM volume (and in general, partition disks with LVM rather than partition tables)! You never know when you might need to combine multiple disks, make a snapshot, add redundancy, or transfer to another disk without unmounting. But it's very difficult to format a block device as LVM once you can't erase its contents.

Make your /boot partition at least 500MiB.

Leave at least 1GiB of free space at the beginning of every disk. You never know when you might need to add EFI and boot partitions to that disk. And again, it's very difficult to do after the fact.

1 more...

That even though you are running an LTS version of Ubuntu (e.g. Ubuntu 22.04), some packages that have arrived over a year ago on e.g. 23.10 will never arrive on 22.04.

Example: i3-wm 4.22 or up (https://packages.ubuntu.com/search?keywords=i3&searchon=names&suite=jammyยงion=all).

This is mine. This is fine for my server, where I want it to be mega stable and always up. I can always add other repos for the few packages that I need to be up to date for whatever reason (podman for me recently). But my daily driver needs quicker updates than that.

That's the whole point of an LTS distro. And it's why non-rolling distros for desktop OSes make no sense

Gnome is better on 1920 than in 1366. XFCE is better on 1366...

And Ubuntu sucks..

2 more...

Nothing, to be honest. It just worked and I loved it.

That just like windows and Mac if it doesn't support that platform prepare for headaches. Unlike windows and Mac you can get things that aren't supposed to run on Linux to run thanks to great tools like wine, proton, and even waydroid. But if you wanna avoid headaches just stick with what's supported for the most part.

Proper drive mounting process. When I finally learned, it was a life changer.

Please explain. You make me wonder if I'm doing it wrong.

Ctrl + R in the terminal. I never used it until I got a job using Linux, now it's probably my most used command at work and at home.

Though I enjoy and am currently using #LinuxMint, I wish I learned about #Wayland sooner. I didn't understand why game performance felt so off with my dual monitor setup for several months. I have since dabbled with an #Ubuntu #Gnome DE for some gaming, and Wayland support has alleviated those problems. However, I plan to look into other options when I've organized my data a bit more and establish proper backups. Learning #Bash, #scripting, #aliases, #workspaces and tweaking #hotkeys were also useful for making my workflow into what it is. Also, I wish I knew how bad #ProtonVPN and #ProtonDrive #Linux support would be. Despite getting used to their #CLI applications, the absence of feature parity is immensely disappointing.

I've learnt how to use Linux in preparation for the day when Windows finally goes to far.

Nothing of note, really. The openness of the whole system meant that I could learn whatever I needed to know as the need arose.

I started when I was a kid, though. I had plenty of time to explore and discover. It'd be harder as an adult in a hurry.

If you switch to Linux you'll probably have to learn at some point to use the terminal but with some recent developments (new fonts, ligatures etc..) console applications evolved to be more and more ... Graphical! And this is awesome: check out btop, neovim/nvchad, lsd etc...

Don't use linux with the expectation that it works like windows. If you want to use linux, be open to new ways of doing things, and you will likely have a great time, try the old methods and you will run into impassable walls.

I wish I'd known how to use node-based compositors like Natron to produce VFX so I don't have to keep going back to macOS to use After Effects.

how cool and sexy and irrestible i became

to the right people ^^

That everything you need will work out of the box and you wouldn't boot into windows for 2 months. Would have done a full installing instead of dual-booting. Windows did have a matrix backup I needed though.

There isn't a hardware panel nor a proper task manager nor a GUI registery editor.

There is no registry in Linux so there can't be a registry editor.

Hardware panels and task managers do exist (and they come in more windows-like distros), they're just different to Windows ones. I do concede that hardware management in Windows is much easier.

Task manager for Windows absolutely blows though. It doesn't show real data, just estimates that sometimes are wildly wrong.

Well Linux doesn't have a registry, so an editor would also not exist, to be fair.

dconf editor is kinda like regedit for GNOME apps ig?

In a hand wavy way, yes. You are just editing the settings of one suite of software, not really an OS "registry". Closest to that in Linux is editing /etc, but even then, not all software is configured there.

Not for long if Lennart has anything to say about it, I'm sure.

I disagree on the task manager. I like the KDE Plasma monitor application for instance. Very convenient way to sigterm or sigkill.

Agreed, and if you're not on KDE then htop will do just fine.

1 more...

@elfahor How I was fucked up by trade-based society. Linux is cheap( not free), but is fun and enjoyable. It us fun to interact, support and be brave to act.

That wine and proton are pieces of poo that i should have never bothered with, countless hours of diddling for next to no result

Really? They always worked very well for me, with a bit of fiddling around

i have no idea how, why or what is wrong it always feels like russian roulette but with 5 chambers filled im honestly envious to constantly hear hwo great proton and stuff is but for me it works like 1 out of 5 times, distro doesnt matter, all the results are the same

Do you check protondb?

my goodness what an idea! Why didnt i think of that!

Lol, so defensive.

So the games not running is a problem unique to your system then

thats the furthest from being defensive, more like aggressive against a piece of shit piece of software, but whatever dude

The people trying to help you that you're being so rude to are not the software you're upset with. You shouldn't be taking it out on others; especially not people being kind to you and just trying to help you. (Extra especially considering Beehaw's whole thing is to 'bee nice!')

(something is wrong with the replies, it shows me yours two times so idk whats happening right now, i also replied to the wrong thing just now) i dont see much kindness here, just something i have heard way too much about (not like anybody here knows), but ill stand by the point of the post, if id known the pain going through trying to make things work (and often failing) id have never bothered

1 more...

Sure.

What i don't follow is why you're having this experience, when for the average user is click to install and play out if the box for many many games.

If it's not the game, because you've checked protondb, and it's not the software, because you've installed multiple distros i feel like you've either got some super unique hardware challenge or you're making a unlikely mistake. Heaven forbid people ask you if you've done things that are obvious, we're just trying to help. Nothing sucks more than sinking time into getting a game to work for it to fail.

Regardless, based on highly emotional responses to many posts my guess is that you're the root cause of your own problems.

1 more...
1 more...

You are quite the cocky jerk for not getting software to run that complete noobs are using on their Steam Deck. I'd be more ashamed than anything in your shoes.

jerk? sure (cause i have heard that "advice just as often as things havent worked, to me its about the same as "have you tried turning it off and on again?", could i have been nicer about it? sure but at this point im so over it) but cocky? i know a dumb bitch and run of the mill advise, while good intentioned doesnโ€™t make it helpful, granted i also havent shared more than it just not working (which is really all there is to it)

1 more...
1 more...
3 more...
3 more...

I used to have this problem but not since the Steam Deck is out.

Before, I was always frustrated fiddling with Lutris, winetricks, etc. But now it's only been plug and play for me, just let Steam take care of it. Zero compatibility issues. In fact, recently I've had more issues with native games than Proton.

That or Bottles, that also takes care of a lot of the fiddly stuff.

i have a pc, im not about to buy a console again any time soon especially when its a handheld that isnt exactly suited for anything than games that need a controller

I'm not talking about buying a Steam Deck, I'm talking about the effect it has had on Linux gaming in general.

I mostly play on a laptop with a Radeon GPU and it's been absolutely issue free gaming wise.

3 more...