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

  • diaphragmwp@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    0
    ·
    13 hours ago

    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