this post was submitted on 07 Sep 2023
43 points (95.7% liked)

Linux

48323 readers
616 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

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Hello community!

I come to you for advice. Using an m1 macbook air since 2020, I installed popos on my old 2013 macbook pro and I was quite happy with it but... I bought a steamdeck two weeks ago and exploring its desktop mode made me reconsider some choices. Using distros based on different systems, with different commands, desktop environment, etc. gets a little confusing for someone like me, who doesn't use linux as my main machine. Do you have any advice for me? From what I understand, steamos is debian-based while popos is ubuntu-based: is that the biggest part of how a distribution works, ie commands, etc.? Good ui/ux is important for me so i should maybe use nitrux or deepin, that are debian-based, or is it a bad idea to choose a less common distro for a amateur like me?

Thanks in advance, I'm a bit lost.

you are viewing a single comment's thread
view the rest of the comments
[–] throwawayish@lemmy.ml 25 points 1 year ago* (last edited 1 year ago) (2 children)

steamos is debian-based

This used to be the case until the launch of the Steam Deck, on which SteamOS (3) is actually based on Arch instead. However, SteamOS is a very special distro based on Arch due to 'immutability', how it achieves said 'immutability', the implications thereof, 'freezing' of packages, inability to install packages persistently without some hacking etc. So, SteamOS is not representative of how Arch works in general.

while popos is ubuntu-based

And Ubuntu is based on Debian.

is that the biggest part of how a distribution works, ie commands, etc.?

If we take your average (popular) distro, so the likes of Gentoo, NixOS etc are dismissed as they are very unique compared to the others, then arguably the most important differentiators would be: Model for updates, package manager and available packages. One might delve deeper into this and with the advent of stuff like Distrobox this becomes a lot more blurred, but traditionally speaking the aforementioned three things used to be the main differentiators. Beyond those, the end-user has the freedom to do whatever with their system. For example, Pop!_OS comes with GNOME + their own touches by default. However, the desktop mode of SteamOS comes with KDE. But you can install KDE on Pop!_OS and even customize it very closely to how it's done over at SteamOS. This is not a special quality of Pop!_OS, but of Linux in general.

Good ui/ux is important for me so i should maybe use nitrux or deepin

It's important to note that both of these are not unique in what they offer in terms of UI/UX. You can recreate 99% of it yourself, simply by installing the appropriate desktop environment; which constitutes most of the UI/UX. Nitrux has KDE as its desktop environment (with a touch of Maui), while deepin uses the Deepin desktop environment. Personally, I wouldn't recommend any desktop environment beyond Cinnamon, GNOME, KDE and Xfce. Don't be discouraged by this though, feel free to put Nitrux and deepin on a Live USB to get a feel for them. Regarding good UI/UX, your best bets are probs Kubuntu, Linux Mint, openSUSE and Pop!_OS. Honourable mention would be MX Linux, but I don't recommend systemd-less distros to newer users.

that are debian-based

Sure, Nitrux is based on Debian. But it's immutable, systemd-less and favors AppImages over Flatpak/Snap. It's a cool project, but I find it hard to recommend to a newer user. While deepin is less unique by comparison, it's far from a distro that's known for its polish. I'd argue it's mostly just eye-candy instead 😅.

or is it a bad idea to choose a less common distro for a amateur like me?

Bullseye! This isn't a hard rule though. I started venturing into Linux through a somewhat obscure distro as well 😅. But, at the time, I researched for about a week which distro to install and why. Afterwards I spent another week on how I should install it and what should be considered for install. And then I installed it, after which I spent almost two weeks getting the system to a working state. It still wasn't quite there yet, but after spending a month on it from start to finish I wanted to move on to something else 😅. I kept the install, don't get me wrong. And it became my daily-driver. After some time I even 'fell in love with it'. But like, I know that I can be stubborn about things like this and persevere where others might have preferred to hit their heads to the wall instead. So your mileage may vary...

Do you have any advice for me?

As you've correctly assessed, you are indeed lost 😅 . That's fine, I think almost all of us have been lost at some point in time. Uhmm..., but honestly, I think you're conflating two very distinct things. Pop!_OS is a general-use distro on which you can do whatever. And most distros that people talk about and engage with are similarly general-use distros. SteamOS, on the other hand, isn't quite like that. Sure, you may hack your way and achieve some things with it. But it's false to believe that you can find any distro that qualifies as SteamOS but on your laptop. Before giving you any recommendations, would you be so kind to answer the following:

  • Your post is written in a way that implies that you want to forego Pop!_OS for another distro that's more like SteamOS. Therefore my question would be:
    • What things from SteamOS did you prefer over Pop!_OS? Please be specific and elaborate*.
[–] thethirdobject@lemmy.world 3 points 1 year ago (1 children)

Thank you for taking the time to explain my muddied understanding of linux and its various distros! You're completely right about the stuff around packages and updates being the important differentiators, and it's really hard to grasp without using linux and testing different things. Coming from popos and typing apt-get in steamos, but wait I should use pacman and oh what are those AppImage I keep hearing about: that was really confusing because I didn't know what knowledge I lacked and how to look it up. reason was and some information about it was just contradictory. I think the steamos thing changing from debian to arch actually confused me a lot too, plus contradictory information and command lines, etc.

From what I gather, and thinking back on my short and past, while appreciated, incursion into the linux world:

  • I prefer KDE over gnome (I think that's what's bothering me about my install of popos at the moment)
  • Typing command line doesn't bother me (on the opposite: I feel like I understand what is going on better if I can actually type in commands), but I don't fully understand the difference and advantages/disadvantages between pacman, apt, yum, etc. I'm more used to apt and I feel like there's more information available, but that's it.

Thank you also for the info about nitrux and the others, there is a lot of confusion between prettiness (or eye-candiness ;) ) and actually good ui/ux, and you were on the point.

[–] throwawayish@lemmy.ml 2 points 1 year ago

Glad to hear that I was able to contribute 🙂 ! And thank you for your great reply!

I prefer KDE over gnome (I think that’s what’s bothering me about my install of popos at the moment)

That could definitely be it. No worries, even the community is somewhat polarized on GNOME; with a big chunk of the community favoring it over all the other desktop environments, while another big chunk doesn't tolerate it at all. However, the reason that everyone has an outspoken opinion on it comes primarily from the fact that a lot of distros come with GNOME by default; with both Ubuntu and Fedora being the big ones (sure; both have flavors/spins with other desktop environments, but their main ISO defaults to GNOME). Regarding recommendations; while any major (independent) distro should technically suffice, I would argue that Kubuntu and openSUSE (contrary to the others; openSUSE actually defaults to KDE) are both excellent choices, with both Fedora's KDE Spin and Debian (on which you can pick KDE during first install) are very good choices as well if you lean more towards minimalism. While Arch deserves a mention regardless, I don't think you're ready (yet).

Typing command line doesn’t bother me (on the opposite: I feel like I understand what is going on better if I can actually type in commands)

That's great to hear!

but I don’t fully understand the difference and advantages/disadvantages between pacman, apt, yum, etc. I’m more used to apt and I feel like there’s more information available, but that’s it.

I won't be able to be exhaustive on this, so I instead I'll lean more towards being somewhat oversimplistic for the sake of brevity.

  • pacman is the package manager on Arch(-based distros)
  • apt is the package manager on Debian(-based distros)
  • yum used to be the package manager on Fedora(-based distros), but has since been replaced by dnf. You can still install packages using yum on these distros, however it's just an alias for dnf.

These are not the only package managers out there, as almost all independent distros come with their own package manager; apk (on Alpine), eopkg (on Solus), xbps (on Void) and zypper (on openSUSE) etc. The tasks of the package manager are varied, but all of them are to be interacted with when installing, upgrading and removing software. As the feature-set is different, so too are their performances. A rolling release distro like Arch will receive a constant stream of updates, thus having access to a package manager that's very fast is beneficial. Thus we find that pacman is very optimized for speed. To perhaps illustrate how much difference this can make, I compared Alpine's apk with openSUSE's zypper. Note that Alpine is one of the most minimalist distros out there, and its apk might be the fastest package manager that's in active use. So here are the results:

  • sudo apk add firefox 0.01s user 0.02s system 0% cpu 8.216 total
  • sudo zypper install -y firefox 0.02s user 0.06s system 0% cpu 33.727 total

On which the number before total reveals how much time it took in seconds. These tests were done in distrobox containers btw*.

Speed is not the only important metric, however as ultimately one can not engage with packages without waiting for them to be installed/updated/removed, a lot of the discourse is about how fast the package managers are at installing, updating and removing packages.

[–] Rustmilian@lemmy.world -3 points 1 year ago (1 children)

"hacking" ಠ⁠_⁠ಠ you mean tinkering.

[–] CaptDust@sh.itjust.works 16 points 1 year ago* (last edited 1 year ago) (2 children)

I realize this is a lost battle at this point, but I hate how the media hijacked "hacking" as a catch all for malicious purposes and crime. Hackers built Unix and the Internet. Hackers hack together solutions with the resources available to serve a purpose or solve a problem. Tinkerers play for hobby and education.

Crackers and script kiddies are responsible for ruining lives and businesses.

/rant

[–] atlasraven31@lemm.ee 2 points 1 year ago

Depends on how the cracks and scripts are used. Tools are just tools.

[–] Rustmilian@lemmy.world 2 points 1 year ago* (last edited 1 year ago) (1 children)

Typing a command in the terminal is not hacking , just because you made a change to the system doesn't mean you "hacked it", it's basic functionality of Linux; being no different from changing a setting, it's just using an interactive user interface that's text based. Additionally, Valve doesn't put anything to block the changes; They even encourage those whom want to make these changes. There is no problem to solve.

I'm sick of people assuming Terminal = Hacking, it's a blatantly false stereotype that only serves to scare monger people into thinking the terminal is "1337 Haxers only".

Crackers and script kiddies are responsible for ruining lives and businesses.

Script kiddies & Crackers aren't even hackers; Hackers build their own tools; Script kiddies & Crackers are at most a customer or plagiarist.

I hate how the media hijacked "hacking" as a catch all for malicious purposes and crime.

Hacking is the practice of extending or exploiting a system to do something it wasn't originally designed to do.
This could mean modifying source code, injecting mods, exploiting a vulnerability, etc.
Contrary to popular belief this doesn't automatically make any of the examples ”malicious”, because if you're using your own property or have permission it's completely legal.

[–] iHUNTcriminals@lemm.ee 3 points 1 year ago (1 children)

I thought hacking "originally" just meant figuring things out? ....like short for hacking away at figuring out how to do things.

[–] Rustmilian@lemmy.world 1 points 1 year ago* (last edited 1 year ago) (2 children)

Why did you quote "originally" when you're using it in a completely different context?
No, not in the context of computer hacking. if that was the definition then there'd be no difference between a "hacker" & a programmer who builds consumer applications. Finding solutions to a problem is just every programmer ever.

[–] iHUNTcriminals@lemm.ee 1 points 1 year ago* (last edited 1 year ago) (1 children)

I used quotes because I wasn't sure if that was the real original use. (Also because I don't pay attention to or know proper grammar rules).

[–] Rustmilian@lemmy.world 2 points 1 year ago* (last edited 9 months ago)

Ah, ok. It's just that it reads like you're quoting me.

[–] priapus@sh.itjust.works 1 points 1 year ago* (last edited 1 year ago) (1 children)

That is not entirely correct, the definition of hacking you are using is much newer. In the past, hacking was a much more broad term, like those above you were stating.

A hacker is a person skilled in information technology who uses their technical knowledge to achieve a goal or overcome an obstacle, within a computerized system by non-standard means. Though the term hacker has become associated in popular culture with a security hacker – someone who utilizes their technical know-how of bugs or exploits to break into computer systems and access data which would otherwise be inaccessible to them – hacking can also be utilized by legitimate figures in legal situations.

  • Wikipedia entry for Hacker

It is still common in the open source community for people to use the original meaning of hacker. The hackers you are referring to are security hackers or crackers.

[–] Rustmilian@lemmy.world 2 points 1 year ago* (last edited 1 year ago)

It is still common in the open source community for people to use the original meaning of hacker.

Actually the Open Source use of the term is already incapsulated in the extending portion of the definition I provided. Along with the modifying source code example.

Additional example : Kernel Hacking; Linux.
You're a 3rd party extending it beyond it's original design by modifying the source code to add additional or new functionality under the legal protection of the GPL, regardless if you do or don't make a PR that gets accepted.

The hackers you are referring to are security hackers or crackers.

Actually no. The definition provided is far broader as already shown.
The key in the definition is beyond it's original design , say for example I take source code from Grub and I extend it by adding additional functionality that allows me to play pacman directly inside it. This modification goes beyond the authors original design and doesn't just change a pre-existing feature from it's default setting like running a terminal command does.

Anyway, none of this is the point.
The point is that there's a hard distinction between a Hacker and your Average Terminal User running a command in a shell interface. Shell interfaces like that of ZSH, BASH, etc. only serves as a way for the user to interact with the pre-existing features of the system.