this post was submitted on 21 Mar 2024
102 points (85.9% liked)
Linux
48340 readers
383 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Mint is easy mode, but has no secure boot shim implemented. It makes gaming accessible.
Pop is made for System76 and does some stuff funny IMO, and is like Mint with no secure boot if you are not running 76's proprietary bootloader on their hardware
Ubuntu is easy but has its quirks (most are fixed by Mint which is based on Debian/Ubuntu)
Debian is hard mode and is an advanced distro. There are a ton of tools that are unique to Debian. It is used mostly for people running their own servers and custom purpose machines from home or work. It is also the primary distro for hacking hardware and reverse engineering stuff that has no other way to create Linux kernel support.
Every distro has some things that they are specialized for. You can do almost anything with any of them, but it will depend on your skill level. Something to keep in mind here is that Linux is not a consumerism branding contest. We are not choosing our frivolous teams. This is the place where everyone can learn. While beginners and users are welcome, you will find many aspects of Linux are the study and thesis projects for many computer science students. All levels are present here. This is why so many options exist.
Afaik, Mint does support secure boot nowadays.
All distros "support" SB because SB is not part of Linux and it requires setting your own SB keys. That is outside of easy scope. The question is if they support the m$ signed shim and what system is used to achieve this. Fed uses Anaconda (unrelated to Python container system). It is something unique to Fedora as far as I know. Linux refuses to support SB because SB is a scheme to steal hardware ownership. The standard implementation is only a suggestion and bootloaders are not required to give you access to the custom keys implementation in the specification. Microsoft controls the shim for SB. It is extremely decisive and controversial.
"Linux" doesn't support secure boot because it's distributed as source rather than binaries. As far as I'm aware Linux actually has special handling for secure boot (there's a kernel mode where it refuses to load unsigned drivers).
Also, I think as part of the secure boot spec, implementations are required to let you enroll your own keys. Whether that's still true or if it even works on many motherboards is another question.
Anyway Unbuntu (and thus Mint) should take care of the signing for you. Although when I tried it didn't work, but that could have because I use a fancy gamer kernel rather than the default.
The mechanism for not loading signed drivers is outside of the kernel. In Fedora, this is handled by Anaconda.
The last time I checked a few months ago, only Fedora and Ubuntu participate in the Microsoft 3rd party key signing arrangement. This shim signed aspect is done at the final stage of distro packaging. There is no upstream so it is not a Debian or downstream thing.
There can only be the one kernel they sign. This is a problem for Nvidia because Nvidia modules are unsigned upstream. They only do their binary BS and supply kernel source code that is different from that binary. We must build that source to make a module but this is unsigned. The only way to have Nvidia drivers under a shim is to build a system that can shim into the gap between boot and kernel init. This must build the Nvidia module from source in a way that is totally secure so that it may never be modified inside Linux or used as an entry point to add a root kit to the UEFI bootloader. Once the Nvidia module is built, then Linux is initialized. This is the only way to have secure boot functioning unless the user manually adds custom keys to the bootloader and signs their own kernel modules. Most distros leave this aspect of the system entirely up to the end user because it is not part of Linux. Most distros tell you to turn off secure boot. The bootloader is the largest attack surface in modern computers.
The secure boot specification is only a set of guidelines and not a required implementation. Indeed, my laptop does not have the functionality implemented to enable this, thus the reason I know all of this so well. There is still another way that I have not explored, but it is generally less known and lesser documented. There is a tool called Keytool that can boot directly into UEFI. Supposedly it can manually alter the keys outside of the bootloader implemented features set. The only documentation I have ever come across for Keytool is in the gentoo handbook, but gentoo documentation assumes a very high level of competence.
While I get it I don't agree with the first part. If you install Debian out of the box with GNOME it will work out just fine for the majority of people, usually it will work out better than Mint, Arch and whatnot because it is a finished and very reliable OS, not something targeted for experimentation.
I wouldn't recommend Debian to a noob if they're installing themselves and have no-one to help, because depending ln their hardware, wifi might not work out of the box, and maybe even not ethernet either. Of course it can all be worked out, but I don't think having to solve that would make a good first Linux experience. If it's the iso version with the proprietary firmware already in it's maybe...
I never experienced this with tons of machines, besides Debian now comes with proprietary blobs for that kind of hardware out of the box as well.
That ISO no longer exists. It's all now on the base image.
Strange, because I installed Debian on a laptop just about a month ago, and the ethernet worked, but not the wifi. I had to follow the advice from this thread to get it working. So either this specific driver is too rare for Debian to have bothered putting it in their default non-free repo, or I somehow downloaded an outdated iso by mistake...
Yeah, it is also full or DEB GNOME stuff and has no podman, distrobox or flatpak support.
Debian is nice but "neutral"
Wtf are you even talking about? Setup Debian with all the defaults, it's easier than Windows and you'll get GNOME out of the box. Ugly?
Running 2 commands to get all the flatpak software into the GNOME GUI store is very hard :P
Debian provides a solid out of the box experience, a system that won't break and will be compatible with most of the decent hardware out there. It won't complain and bitch, it won't be an half finished product like Arch. If it's too complicated just get Ubuntu and enjoy it's mangled kernel.
Arch / Gentoo are the real "base installs" here, nobody can run those things out of the box without tweaks. Arch doesn't even have an installer, just a bunch of scripts and 3rd party attempts and making something usable and you're recommending over Debian that has a full GUI with sane defaults?
Very well put.