Lemmings.world
  • Communities
  • Create Post
  • Create Community
  • heart
    Support Lemmy
  • search
    Search
  • Login
  • Sign Up
boredsquirrel@slrpnk.net to linux4noobs@programming.dev · 13 天前

How To choose the best Linux Distro for you

slrpnk.net

external-link
message-square
6
link
fedilink
12
external-link

How To choose the best Linux Distro for you

slrpnk.net

boredsquirrel@slrpnk.net to linux4noobs@programming.dev · 13 天前
message-square
6
link
fedilink
How To choose the best Linux Distro for you - SLRPNK
slrpnk.net
external-link
It is not easy to recommend a distro (i.e. a combination of stuff including Linux). There are maany factors, and balancing between them is the only way to get the right distro After having tried a lot of them, these are the main factors I would think of, when looking for the right one for you. ## 1. Desktop Environment ::: spoiler expand The software that you use should be the same on every distro. But the desktop environments that you use to interact with the PC are less or more supported, or even available. Generally, KDE Plasma [https://kde.org/] and GNOME [https://www.gnome.org/] are the best, most modern, biggest communities, quickest maintenance, most features etc. Some distros have specific support for an environment. GNOME had the reputation of being more stable than KDE Plasma, but this improved a lot. Due to this reason (and because GNOME is simpler) many distros have GNOME as “main variant” - Ubuntu - Fedora - RedHat Enterprise Linux, CentOS Stream, AlmaLinux There are distros with KDE Plasma as main too - Manjaro - OpenSUSE (kinda) - TuxedoOS (Ubuntu based) - SteamOS - Bazzite, Nobara (Fedora based) KDE and GNOME are generally well supported on all bigger distros. Other desktops might differ. Fedora has a Cinnamon variant, but Linux Mint likely has better integration, presets etc. So as a beginner, decide between GNOME and KDE, they are both nice but different. | GNOME | KDE Plasma | | — | — | | screenshot of gnome desktop [https://slrpnk.net/pictrs/image/c31fbd32-8332-4b39-be5c-7fc3129f0785.webp] | screenshot of kde desktop [https://slrpnk.net/pictrs/image/b9a2e001-c939-43fa-982b-e4e53de739d6.png] | ::: ## 2. Release cadence ::: spoiler expand This is a big difference. On Windows you have each software release on it’s own, and the desktop and OS being extremely stable, barely releasing any changes. On Linux, traditionally you install your software from the same repositories as your kernel, core tools and desktop environment. ### Quick Updates So if you want up-to-date software, you often need to choose a distro with fast or rolling releases. These typically have a shorter support span, so version upgrades every 6 months or year are common. Downsides are potentially more bugs, as the software you use is newer and less tested. But if bugs are fixed, you get those fixes faster too! You get way quicker features and many security updates not arriving in “stable/stale” distros. Examples: - Arch - NixOS unstable - OpenSUSE Tumbleweed - Gentoo - Debian testing Semi-fast: - Ubuntu - Fedora - OpenSUSE Slowroll ### Slow, “Stable” Updates If you prefer stability and reliable software (so that you dont need to update often, or change scripts or tools if software changes features), you should use something with long support and slow upgrades. Note that stability is not natural to most software. Most is released when it is ready and shipped. - Only very few projects release on tight schedules (like GNOME, Firefox, Thunderbird). - Way fewer developers “backport” all security fixes to old versions. This means they apply only the security changes to older versions, while leaving out feature changes (which could break compatibility). The issue is that most devs dont care, dont introduce these random version freezes (Debian, RHEL, Ubuntu LTS often use different versions too). So you have potentially broken software until there is a distro upgrade Examples: - Debian stable - Ubuntu LTS - OpenSUSE Leap - RHEL, AlmaLinux, CentOS Stream ::: ## 3. Project Size And Structure ::: spoiler expand ### Size The Project size often implicates 2 things 1. Bigger projects (Ubuntu, Debian, Fedora, Arch, OpenSUSE, Gentoo, NixOS) have the most software support. This becomes less relevant through technologies like Flatpak (a unified packaging format for all distros) 2. Smaller projects (while nearly always being based on bigger ones) will add more quality-of-life changes, cool features and innovations. Take Nobara, CachyOS, Garuda, Pop!_OS or Bazzite, which have more or less fundamental improvements for gaming (more or less at the cost of stability). Bigger projects are mostly more conservative, with a focus on stability. ### Structure Most Linux Distros come from a “community”. This is fundamentally different from Windows, MacOS, ChromeOS or Android. But there are also corporations: - RedHat does their stable distro RHEL. - The “upstream” (the newer stuff that is not as tested and arrives later in RHEL) is CentOS Stream, which technically is already a community project, together with Oracle, AlmaLinux and RockyLinux contributors. - The upstream of that is Fedora, which is a known, free and up-to-date “community” distro. But also Fedora is built and maintained in part by RedHat employees, so this is a mix. Other examples - Canonical - Ubuntu - SUSE - OpenSUSE, SUSE enterprise Linux - System76 - Pop!_OS - ZorinOS, EndlessOS: payment models The projects differ in how you interact with developers, contributors and how people in the community help each other. The “communty” is not as simple, as often the developers communicate in some Matrix, IRC or even mailing lists, and users might interact with them through bug reports. Meanwhile, forums are often users helping other users. ::: ## 4. Software Modifications and Additions ::: spoiler expand Distros differ in how the projects modify the software they ship, and if they add additional stuff on top. Some may focus on fast updates and little modifications, like Fedora, Arch or others. Others like Ubuntu might add a completely custom theme, font, iconset and other extensions (they do that to the main Ubuntu variant, but Kubuntu, Xubuntu, Lubuntu are also all customized). Some distros might change software, like Fedora or Debian who only ship free software. Debian also modified Firefox in the past, to remove antifeatures, which resulted in a ban to use the name, they used “Icecat” instead. The Linux Desktop is only somewhat standardized through organizations like Freedesktop.org [http://Freedesktop.org], who host - (flatpak](https://flatpak.org/ [https://flatpak.org/]), a technology to ship apps to all distros, while also using an Android-like sandboxing system. - portals that allow applications to access system components while asking users - Wayland, a display and input/output technology that all modern desktops and toolkits use Examples of differences - Fedora and Ubuntu use different tools for power management. - Most distros use systemd, a component that does a lot of useful things nowadays, but is criticised for being too centralized. Very few do not use it, at the cost of doing many things nonstandard, missing features and requiring more experienced users. - Ubuntu uses Snap for their packages, most other distros use Flatpaks. All distros have their own native packages, but there are a ton of different ways to do those. ::: ## 5. Deployment Model ::: spoiler expand This describes how you get the stuff. ### Installation Distros are mostly installed in the same way, you flash a .iso to a pendrive, run a graphical installer, select between more or less options, and get the thing. Some may not have a GUI installer but a terminal based one. Many advanced distros like Arch, Gentoo or NixOS (which also has a GUI though) direct you to a wiki, where you learn the steps you need to setup the system you want. This is a great learning opportunity, but without guidance it is easy to break things. So not recommended for beginners, for the main system. ### Software installs and updates. Keywords: - learning curve - stability over time Unlike Windows, these are nearly all done through package managers. Do not go in the browser and get random installers. These might exist, and there is an abomination called “Appimage” that pretends that this is fine, but dont. There is the mentioned release cadence, but also how the software is placed and managed on the system. Most distros are “chaotic” and imperative. You write sudo apt install libreoffice And the package manager searches the repo, gets the files and places them somewhere. Over time, “state” builds up, which describes the amount of custom stuff that differentiates your system from what Ubuntu would present you. This graph from this master thesis [https://github.com/drupol/master-thesis] describes this process, called “Divergent”. [https://slrpnk.net/pictrs/image/d4b0642b-ab8d-4614-959f-9c4850d795be.jpeg] You enter that command, and the package manager not only installs Libreoffice but a ton of more stuff. There are many tools that try to tackle this resulting “chaos”, that would make you panic if your PC break down, or you needed to setup that system on 10 different laptops. The most common one is Ansible, and it is described as “Convergent”. The system is a chaos, but the more you configure and “fixate” you through Ansible, the easier it gets to reproduce. There is a wave of new “immutable” distros, that try to solve this issue: > Oh when you open the app it crashes? > Well, it works on my machine… They do that by either preventing you to change the core system at all, or making it pretty tedious to do so. This model somewhat works, and with Flatpak, Homebrew and other fun stuff you can get most stuff working normally, while not worrying about the base system not being able to upgrade, or crash if you open the wrong app (hyperbolic). Systems like NixOS are deterministic instead of imperative. To install software, you write down what you want into a file, and the management tool reads it, checks it for errors and builds the system that way. Coming from regular chaotic distros and then an “immutable” distro (Fedora Kinoite and uBlue Aurora), this is honestly pretty great. This is “congruent” as the graph describes. While the learning curve might be a little bigger (I will make a repo soon to make it easier, and there are a bunch of nerds willing to help), your system complexity grows steadily, and all is configured in a single – or a few – files. You can taks these and recreate your system anywhere, so you see a bunch of NixOS configs on Github and elsewhere. If your PC breaks, and you have your data, it takes a few minutes and you have your system back! ::: ## Conclusions Done! So these are the points you need to keep in mind when choosing a distro. Do not just go to distrowatch of other random places and install what is hyped the most. Examples for logical fallacies of “this distro is the best for beginners” - Ubuntu has a big community, good software support and is easy to install. But personally I had maany issues with it over time and upgrading it. They also to biased choices and modifications. Their snap store is not what everyone else uses (but they have flatpak support). - Fedora also has a big community (and a nice one!), an easy installation and stays with standards more. Their model of “immutable” (i.e. managed) systems is among the best. Meanwhile the traditional variants usinf the dnf package manager are a total mess. I had many extremely complicated and undocumented issues when upgrading and having issues. Also, if you want a congruent, long-time-stable system, it is kinda annoying. - NixOS is unconventional and may be more difficult to setup. Their community is big though, and they produce a ton of guides every day! They have a bunch of packages, support flatpak, all (?) Desktop environments and much more. So personally, if you want a very cool distro that might take some learning to setup, but is extremely rewarding and… organized to maintain, I recommend NixOS! I will upload my configs soon, stay tuned. [https://codeberg.org/boredsquirrel/Nixos-Config]
  • DeltaWingDragon@sh.itjust.works
    link
    fedilink
    arrow-up
    9
    arrow-down
    1
    ·
    edit-2
    13 天前

    Holy crap, that is a lot of text.

    Next time, try crossposting.

    On my instance, it is this button:

    • boredsquirrel@slrpnk.netOP
      link
      fedilink
      arrow-up
      3
      ·
      13 天前

      I only use Lemmy through Jerboa, where this seems to not be available?

      • asudox@lemmy.asudox.dev
        link
        fedilink
        arrow-up
        3
        ·
        13 天前

        yep, jerboa still does not have the cross posting functionality. you can try other clients like Thunder.

        • boredsquirrel@slrpnk.netOP
          link
          fedilink
          arrow-up
          3
          ·
          12 天前

          Jerboa is the only stable one I tried, but I will try Thunder. I like the simple design of Jerboa, tried Raccon but it was a bit too flashy. I like markdown preview tho

linux4noobs@programming.dev

linux4noobs@programming.dev

Subscribe from Remote Instance

Create a post
You are not logged in. However you can subscribe from another Fediverse account, for example Lemmy or Mastodon. To do this, paste the following into the search field of your instance: !linux4noobs@programming.dev

linux4noobs


Noob Friendly, Expert Enabling

Whether you’re a seasoned pro or the noobiest of noobs, you’ve found the right place for Linux support and information. With a dedication to supporting free and open source software, this community aims to ensure Linux fits your needs and works for you. From troubleshooting to tutorials, practical tips, news and more, all aspects of Linux are warmly welcomed. Join a community of like-minded enthusiasts and professionals driving Linux’s ongoing evolution.


Seeking Support?
  • Mention your Linux distro and relevant system details.
  • Describe what you’ve tried so far.
  • Share your solution even if you found it yourself.
  • Do not delete your post. This allows other people to see possible solutions if they have a similar problem.
  • Properly format any scripts, code, logs, or error messages.
  • Be mindful to omit any sensitive information such as usernames, passwords, IP addresses, etc.

Community Rules

  • Keep discussions respectful and amiable. This community is a space where individuals may freely inquire, exchange thoughts, express viewpoints, and extend help without encountering belittlement. We were all a noob at one point. Differing opinions and ideas is a normal part of discourse, but it must remain civil. Offenders will be warned and/or removed.
  • Posts must be Linux oriented
  • Spam or affiliate links will not be tolerated.
Visibility: Public
globe

This community can be federated to other instances and be posted/commented in by their users.

  • 2 users / day
  • 47 users / week
  • 156 users / month
  • 579 users / 6 months
  • 7 local subscribers
  • 2.01K subscribers
  • 183 Posts
  • 1.25K Comments
  • Modlog
  • mods:
  • PlutoParty@programming.dev
  • BE: 0.19.11
  • Modlog
  • Instances
  • Docs
  • Code
  • join-lemmy.org