Way back in like 2006 when I was in middle school, a friend of mine pulled me aside to tell me there’s more than just Windows and Mac. His parents worked IT and they showed him a lot of stuff and he showed it to me. I installed Slackware on a laptop with him. I basically just did as he said.
In high school, I looked more into it and tried installing some other distros but landed on DSL as the laptop my parents got me was a piece of shit and it worked good enough. I moved onto Ubuntu later because DSL can only do so much and really struggled with it lol.
And then as the years went by and Ubuntu started to suck I moved onto a variety of other distros like Arch(which took me 2 days to install and I fucked it up), Void(which also took me 2 days to install), Mint, and when it finally came out I tried things like SteamOS, Bazzite, and Nobara.
This all as I was dualbooting with Windows. I never took any classes, I never read any books on it, I just figured it out by doing it, breaking my OS a bunch of times, chatting with friends and randos on forums and Reddit, and the man command, thank GOD for that. All that and I just come back to Mint which I adore for its ease of use.
So all my knowledge is muscle memory. What the actual fuck does a package manager do? Like I know generally, but there’s more to them than just downloading shit? What is the difference between Systemd and OpenRC? WHAT THE FUCK IS HYPRLAND OR WAYLAND!? I DON’T UNDERSTAND! 20 YEARS AND I LEARNED FUCKING NOTHING!
shoutouts to tux
Yes, there are classes, but it’s corporate Linux. Dockerfiles, AWS, shit like that.
Anyways:
What the actual fuck does a package manager do?
Well, it doesn’t matter much, actually.
If you actually wonder, it’s a database (can be sqlite, tho most write their own which involves it’s own set of quantum physics and mathematics for operations) of stuff that’s installed and stuff that’s available. “Updating repos” downloads the list of stuff and their dependencies. Actually installing involves it downloading an archive, extracting it, looking at some special file that describes it (list of files, version, hash…), doing verification stuff, checking if dependency constraints are met (again, involves database mathematics…), adding the info of the package to the “installed” database then just extracting the entire archive EXCEPT the describing/meta/special/whatever file(s) right into your root. Or whatever you told it is root.
You can make a tiny bootable Linux by literally extracting some critical packages from, for example, Alpine Linux, using your average GUI archive viewing tool.
OpenRC & SystemD
“Well, the difference being, one is a j*b and the other is mental sickness” - RED Sniper, Team Fortress 2
OpenRC is an init system. It’s a system that starts (inits) different programs meant to be ran all the time (daemons).
SystemD is a suite of software. It has a few fucktons of components. Although in the context of an init system they mean the init system SystemD comes with. It may not be that bad by itself, but the other components are often poor in quality and/or resource heavy. Most distributions ignore most of them by default. And yet, everything is relying on them to the point where people who don’t want the entirety of SystemD had to rewrite SystemD’s components for themselves, and not the other way around.
Wayland
Protocol with a few fucktons of extensions, like X11. For putting stuff on a screen.
Difference is that X11 has functions for drawing lines and circles and shit and everything kinda went around that, which is useful with 2D accelerated hardware (if you enable it in the driver) but everything really recent (2016?) isn’t so it’s pointless there. It’s also decades old. And window manager (and often compositor, thing doing transparency effects and stuff) is separate.
The very base of Wayland is basically a program asking for a new window and then it just has to draw stuff there itself, while extensions handle stuff like negotiating clipboard. (spoiler: if you don’t have a clipboard manager there is no “clipboard”, pasting something asks the program you copied from so if you closed that you don’t have it). It also has HDR. Shitty but HDR. Unfortunately the progress on that is slow, because it’s the @redhat.com email people dictating all the specs and making countless meetings about them of course, and everyone else just sits and listens to their bullshit. Oh, and server/compositor/wm is all one single program (although a project called “wlroots” provides most of the “server” part as a piece of code devs can copy paste). Anyways, KDE Plasma/kwin is the most feature complete server out there, although I personally “outgrowed” from it if that makes sense
Hyprland
Some kid made a Wayland server. Pretty ok quality (!!! relatively). Originally wlroots but later it’s own thing (“hyproot”). It’s meant for “eyecandy” shit setups, not a fan of that, ew gross, although to each their own kinks. BUT to get the stereotypical “”“eyecandy”“” one has to either (1) spend their entire free time on fucking with configuration files and installing everything or (2) get someone else’s giant ass script which compiles stuff from 16 guthib repos and then freshly extracts you a 2 gig .config directory. Lots of the time people end up turning their bar/desktop/whatever into a fucking web browser, like it’s MicroWin from SoftDows. Knowingly or from a dependency for some stupid AUR package that doesn’t read like it would do that by name, like “hyprpanel-git”. I am not going to link an example of the dependency, it’s aylur<dot>github<dot>io<slash>ags if you really want to look at that. I hope moss grows on walls of everyone who did that knowingly and actually liked it.
As for me personally, I used it for a while but just never installed a bar or anything. Turned off the shaders, the wallpaper, the splash, the rounding stuff, the borders, and… “Hey, get me a Hyprland with NOTHING”. So yeah. Later there was some really fucking annoying shrodenbug, I rage quit and switched to sway-git. It also has HDR nowadays, tho you gotta bind keys for turning it on/off because screensharing sucks. Just like at “home”, on WinSoft from MicroDows.
20 YEARS AND I LEARNED FUCKING NOTHING
Never too late I guess.
spoiler
was thinking BSD nowadays because I don’t exactly trust Torvalds with LLMs and shit, apart from bloat
not only i rawdogged linux, i used a rolling distro with a lot of questionable security decisions (eherm… Manjaro) during grad school.
… no idea how that laptop survived grad school but it did…
Ah yes the college of “Fuck it, we ball”.
You don’t need to read books, most stuff can be found in the Arch Wiki
Man pages are also something underrated and tldr is great if you need a quick look at a few basic parameters of a program.
Arch wiki is great
Well the first time I ran Linux was in 99-2000, before I had proper internet (one needed to buy these prepaid dialup cards and winmodems wouldn’t work on Linux), so actually had to buy a book ‘The Linux Bible’. Used that book a lot, especially in the early days to troubleshoot LILO (Before GRUB) bootloader and configure dual boot. Of course, once internet was readily available, online search / forums replaced those books. Last book I bought was about redhat/mandrake rpm packaging.
Linux almost needs continuing education courses. New shit comes out, and if you don’t try it in the next 5-7 years, you’ll end up getting it anyway.
DSL! Such a classic.
I was like 13 when I installed Red Hat and I totally needed to use the book it came with because I had no idea what I was doing.
You shouldn’t have to take a class for an operating system…
You can use it without learning additional skills, but to truly know what’s going on with any operating system that requires higher knowledge. I’m including windows, mac, android, linux, etc in this. If we could fully understand technology by touching it tech support wouldn’t need to exist. Nor would the insane number of overpriced certifications.
…So we should use android? Maybe chromeos?
I’ve had windows classes in school, I’ve later learned how to configure Windows and Linux servers. Windows starts simple and isn’t easy to customize away from the default configuration. Linux starts difficult but doesn’t grow as quick in complexity. Both shouldn’t be configured that far by most users though and the basic usage of both has similar complexity.
Why do you think an operating system shouldn’t have classes? From what I’m hearing around the workplace(though thats biased) more people should have basic computer knowledge and they even get training time allocated for in-house training courses.
Basic computer knowledge is the answer here. Concepts in OS’es and software are reused over and over and are common to most vendors/platforms. Partitions/Partitioning… etc. All basic knowledge. The fine details don’t make sense without it.
You shouldn’t have to take a class for an operating system…
…So we should use android? Maybe chromeos?
Invalid inference.
invalid reply?
Can you use more than two words to explain your point? The only operating system I know that can be used by most people without teaching them the usage is Android and Chromeos and some similar mobile platforms, maybe MacOS though I don’t see enough people starting on that platform to know if it’s intuitive or not.
Of course people can also figure out the usage over time but that’s more by trying out what works and seeing what does what and most people just give up before they get that far.
If you want to take a class on a system to get into the stuff under the hood, that’s fine, but you shouldn’t have to take a class for like, basic operations. Saying “this starts difficult and stays that way” isn’t a good selling point for people to use your system.
Saying “this starts difficult and stays that way” isn’t a good selling point for people to use your system.
Both shouldn’t be configured that far by most users though and the basic usage of both has similar complexity.
Edit: To be honest the actual difficulty of a system also depends on what you do with it. Windows at work and Linux at work both require only a basic understanding of how to use the OS to use effectively. Basic usage and restarting it if something isn’t working correctly. At home you’re more involved with actually installing the software that you use, the system settings and Updates/when they happen. Linux makes installing software safer due to the repos preventing the easy virus downloads and windows makes drivers for some windows only hardware work without complex setup. Assuming we’re buying a PC that ships with Linux drivers will work though that’s what I assume your average person using Linux would use (as in the average person uses a PC with the OS it is shipped with).
Thank you Microsoft for forcing me to learn how to use and maintain Linux.
Someone told me to RTFM. I later realized that was good advice. (I learned by reading documentation)
Plot twist: there’s books and classes on just about everything
You mean I can read books and take classes on eating ass!?
I mean, probably. But doing it seems more fun
No, people who refuse to read books or take a course from someone who might know what they’re doing are inferior!
It was either that or study the material for grad school.
Im just waiting till shit breaks and then panicking like a normal person
fake it 'til you
makebreak it.The fact that Linux is so easily reinstalled has really been a hinder in my journey towards learning to actually fix the problems that would prompt a reinstall.
Over decades I have come to love the dark crypt of arcane spells that is GRUB rescue env.
yeah EFI booting solved a lot of boot problems and made them fixable in a way they never were with legacy BIOS
It warms my heart that after your journey you realized there is still so much more to learn.
Many would leave it there and call themselves an expert









