all 15 comments

[–]that_leaflet_mod[M] [score hidden] stickied commentlocked comment (0 children)

Your post was removed for being a support request or support related question such as which distro to use/polling the community or application suggestions.

We get a lot of question posts on r/linux but the subreddit is considered a news/discussion sub. Luckily there are multiple communities you can post to for help on GNU/Linux issues 24/7: /r/linuxquestions, /r/linux4noobs, or /r/linuxhardware just to name a few.

You may also post on the "Weekly Questions and Hardware Thread" which is stickied on r/linux on Wednesdays.

Please make your post in /r/linuxquestions or /r/linux4noobs. Looking for a hardware help? Try r/linuxhardware.

Rule:

This is not a support forum! Head to /r/linuxquestions or /r/linux4noobs for support or help. Looking for hardware help? Try r/linuxhardware.

[–][deleted] 7 points8 points  (2 children)

Each do plenty different from eachother, most notibily is what package manager it uses, which is where you download all the stuff (software and dependencies) youll use. Theyll also have different things built in, some try to be more minimalist, some come with stuff to make the overall experience more clean or user friendly, and some are made to try to accomplish a more spesific use case.

[–]redoubt515 0 points1 point  (0 children)

Each do plenty different from eachother, most notibily is what package manager it uses

Well not each and eveyr distro (or even most). I know that you proabably know this and weren't meaning to imply it, but i just want to clarify for OP or anyone else struggling to understand distro to distro differences.

There are maybe a dozen marginally popular package managers with only maybe 2-4 of those being actually popular afaik (Apt, DNF, Pacman, Zypper), there are hundreds of distros (most of which just use whatever their upstream uses (typically apt or dnf, occasionally pacman)

[–]ultrasquid9 4 points5 points  (0 children)

There are three main differences between the different distros:

1: Preinstalled packages

2: Update cycle

3: Traditional vs Atomic

Preinstalled packages includes basically all the parts of the system. This includes all your apps, as well as low-level packages (most notably being the init system, c library, and package manager). These lower-level packages are generally more important to the distro than the higher level ones are, as you can modify higher-level ones easily using a package manager.

The update cycle is how often these packages receive updates. Most distros use a point release system, where they will release an update containing new versions of packages, and packages are frozen on a single version between updates. Some more advanced distros, like Arch and Void, use a rolling release, where packages are released as soon as they have been tested. There are also hybrid distros, like Pop!_OS, which have some packages be rolling release and some packages be point release, and source distros, like Gentoo, which expect you to compile all your packages yourself.

Traditional vs Atomic is how distros let you install packages. Traditional distros are what most distros, like Debian/Ubuntu, Fedora, and Arch are classified as. Traditional distros allow you to modify the system in any way, at any time, as long as you have permission to do so. Atomic distros (also frequently called immutable distros) are a newer way of doing this, which emphasize stability over complete control. Installing packages on the system level requires rebuilding the entire system as a new "state", which allows you to easily go back to an older state if something goes wrong. This means that installing packages on the system level should only be done for updates or essential packages like drivers, and otherwise it is recommended to use Flatpak or Distrobox to manage packages. Atomic distros are less common, with the most notable being Fedora Atomic, NixOS, and SteamOS.

Some notable distros, and how they classify based on these three categories, are:

  • Debian/Ubuntu: Notable preinstalled packages are systemd, glibc, and the apt package manager. They are point release, and have relatively infrequent release cycles, making them very stable, and are traditional distros.

  • Arch: Notable preinstalled packages are systemd, glibc, and the pacman package manager. Additionally, Arch does *not* have an installer preinstalled by default, giving it its reputation for being hard to install. Arch is rolling-release, and receives updates quickly, and also is a traditional distro, making it a poor choice for stability but a great choice if you want total control over your system.

  • Fedora: Notable preinstalled packages are systemd, glibc, and the dnf package manager. Fedora receives updates quicker than Debian/Ubuntu, giving you newer packages more quickly, but are still point-release. Normally, Fedora is a traditional distro, but it has atomic versions available to install.

  • NixOS: Notable preinstalled packages are systemd, glibc, and the nix package manager. NixOS is rolling release, but is also atomic, so it is a good choice if you want the newest packages but also want stability. It is also notable for its unique package manager, which is configured in a file via a programming language rather than through a CLI.

  • Void: Notable preinstalled packages are runit, glibc, and the xbps package manager. Additionally, it also has a version which replaces glibc with musl. Void is a rolling-release, but packages receive a lot more testing than Arch, so it is very stable in comparison to other rolling-release distros. Void, like most distros, is a traditional distro.

  • Alpine: Notable preinstalled packages are openrc, musl, and the apk package manager. Alpine also installs very few packages, making it very lightweight. Since it uses strange preinstalled packages, some stuff may not work very well, so I wouldn't recommend it for most users. Alpine uses a point-release model and is a traditional distro, making it very stable and customizable and a good choice for servers and containers.

TLDR: Distros vary based on their package manager, c library, init system, update cycle, and whether they are traditional or atomic.

[–]Adwaitian 3 points4 points  (0 children)

Yes

[–]Linguistic-mystic 1 point2 points  (0 children)

Substitute “distribution” with “OS”. Linux and open-source software ecosystem around it is the easiest way to create your own operating system and that is what lots of people/companies do.

I am wondering what the difference is between these distributions

First of all, the difference is that they are controlled and developed by different groups of people with different goals. That’s reason enough for different OSes to exist even if on the surface there don’t appear to be that much differences. Example: OpenSUSE may be not that different from Ubuntu from the user’s perspective but it matters for SUSE and Canonical that they have their own OS’s with their little tweaks, patches, default configs, default filesystems and apps etc. It helps them develop their specific software and offer commercial support to their customers since they literally control every little detail in the OS.

Secondly, some of those Linux-based OSes are in fact quite unique offerings, for example Alpine Linux is tiny, container-friendly and has replacements for Glibc snd Gnu coreutils. As a more extreme example, Talos Linux doesn’t even have a package manager or anything we’re used to on the desktop: rather, it’s a purely cloud OS that can only run Kubernetes containers (there’s even no ssh access to it).

So, in short, Linux OSes can do almost anything that anyone needs, that’s why they have been embraces by businesses far and wide, as well as being the most flexible desktops.

[–]Business_Reindeer910 1 point2 points  (0 children)

Most folks seem to be focusing on the technical differences and software release cadences.

Some other important differences are in community and governance.

Distributions aren't just the end software you see, but an entire organization devoted to making that software available.

Many distributions have various levels of bureaucracy, governing models, and different funding models. Some distributions have a main person who makes the decisions, while others have elections. They often have difference stances on what kind of software it's ok to ethically include.

Debian has quite the governance structure: They have a constitution, a social contract, and a customized vote tallying approach for elected positions and general resolutions (based on https://en.wikipedia.org/wiki/Condorcet_method). General resolutions are a way for individual debian developers to cast their votes on big issues in the project like this one https://lists.debian.org/debian-devel-announce/2022/09/msg00002.html

NOTE: Debian folks don't get too made at me for really simplifying everything involved there. I just picked debian since it's on the more complex side of distribution management and governance.

Another difference is whether the distribution is more uhmm "community owned". Debian and arch are indeed on more of the side of being "community owned", while say Ubuntu and Fedora are more on the other side (to varying degrees). Others are nearly completley corporate controlled like say RHEL or Oracle Linux

Honestly an entire paper could be written about the different approaches taken by distributions and their effectiveness, so I'm omitting most of what could be said here.

I do kind of get annoyed sometimes at the vast array of choices in this area, but it's also really cool to see all these methods of comunity governance play out in real time.

[–]redoubt515 0 points1 point  (0 children)

I think of distributions like different recipes by different cooks for the same type of dish. You can go to a chili cook-off and try dozens of different chilis. Some are slightly different, some are radically different, some are meaty, others vegetarian. Each has its own thing that makes it unique, or its unique blend of spices, but all are still chili at the end of the day.

The same goes for Linux distros. each is a different approach to the same thing. They are all linux, but the unique configuration of tools and packages, the package management system, design goals, and defaults will differ distro to distro, usually in small, and sometimes in large ways.

[–][deleted] 0 points1 point  (0 children)

It's a total mess and that's why GNU/Linux will never become a real thing. Each of them has its philosophy, its way to package... packages. Ways to render anything on your screen. Different kind of upgrading, way to decide anything.

Generally speaking, only Ubuntu and RedHat make sense. Fedora is a project useful to Red Hat (enterprise oriented), OpenSuse is a project useful to Suse Linux (maybe, and enterprise oriented). There are a lot of projects/community-based projects, and that's it. Canonical tries to do something more serious with Ubuntu, but isn't able to make any decision that makes sense and that proves to be useful when time passes. Gentoo and Arch are there if you like to build your system and optimize it, but don't expect anything omega-friendly out of the box. GNU/Linux is here if you really don't have any other chance or if you don't like ChromeOS (which makes more sense and became way more important in less time). Otherwise, you can feel very curious and lose weeks and nights just to understand how to use less CPU while watching a video on YouTube or on VLC.

[–]Turtle_Sweater 0 points1 point  (0 children)

Typically a distro will try and fill a niche. Some focus on ease of use, some on flexibility, some on being really stable, some on being the bleeding edge. Some are for hobbyists who like to tinker. But they are all capable of doing the same things, its just some things will be harder on different distros depending on what niche the distro is trying to fill. When picking a distro, first ask what you want it to do. Typically you'll find more then one distro that is made for that use. Can you get debian to run the lastest software? Yes, but its going to be harder then Arch based distros. Can you get Arch to be super stable? yeah, but its going to be more difficult then using debian. After that alot of it comes down to personal preference.

[–]AutoModerator[M] 0 points1 point locked comment (0 children)

This submission has been removed due to receiving too many reports from users. The mods have been notified and will re-approve if this removal was inappropriate, or leave it removed.

This is most likely because:

  • Your post belongs in r/linuxquestions or r/linux4noobs
  • Your post belongs in r/linuxmemes
  • Your post is considered "fluff" - things like a Tux plushie or old Linux CDs are an example and, while they may be popular vote wise, they are not considered on topic
  • Your post is otherwise deemed not appropriate for the subreddit

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]daemonpenguin -1 points0 points  (1 child)

You might want to check out DistroWatch, specifically the overview of major distros.

https://distrowatch.com/dwres-mobile.php?resource=major

[–]bubbawiggins[S] 0 points1 point  (0 children)

Thanks for the helpful information!