The Linux Thread - The Autist's OS of Choice

Arch is the new trick to play on people just savvy enough to know "Install Gentoo" is a troll.
It worked on me. I also figured using one of the 'harder' distros would mean I would actually have to learn how stuff works instead of relying on the 'easy' methods. At least its just a spare PC that I can re-install if stuff breaks, I kinda want to try and get Arch working, but I probably won't do anything serious on it
 
I have fully "broken" Gentoo once. Once because I forgot about updating the system until I tried to go from kernel 2.x to 6.x because several packages literally no longer existed to complete the upgrade.

I love Gentoo, but it breaks ridiculously easily if you leave it more than about six months without doing an update.
 
I love Gentoo, but it breaks ridiculously easily if you leave it more than about six months without doing an update.
I've never had that issue, but that's just my personal experience because I very rarely update my embedded devices and on my main device I just never had that issue unless it was me not reading kernel changelogs.
 
Arch is the new trick to play on people just savvy enough to know "Install Gentoo" is a troll.

Kinda yeah. It's not as much of a meme as Gentoo but it can be close, especially if you aren't already somewhat savvy.

I recommend using a Arch Distro first and only then going into pure Arch itself. Endevour has been quite good.
 
EndeavourOS's Calamares setup is better for managing partitions since the Archinstall script needs work still. Stephen's Tech Talks ( a Linux youtube channel) had pointed out that if you want to use BTRFS, you might as well manually do it because the script doesn't set the compression right. It's a good thing I've kept my Arch bullshitting to VMs before knowing this.
 
Last edited:
There are a lot of distros, and I wonder if some of the variants are better in different cultures and languages then others.

Like for here if someone isn't a Linux enthusiast I'd recommend only Ubuntu, Linux Mint, or Zorin OS.
Linux Mint is among the most well supported with a huge development community so it's very stable and user friendly, while still getting access to most of the core Linux features. Zorin OS is going a step further to make things user friendly with a seamless interface, but that means some of the more obscure Linux features are difficult to find and change. Ubuntu is the current origin OS for any Debian based work and is often the target platform used by companies that only barely support Linux - Ubuntu has LTS versions that are promised to be supported for five years with little dramatic changes under the hood - you can heavily customize it with things like KDE or xcfe window environments as it's more easily modified then the other two.

Fedora and it's derivatives seems to be more popular in corporations that need powerful specialized tools. I'll admit I don't know much about arch Linux and Gentoo but those seem like they are more suited for advanced Linux users that can account for their system being unstable sometimes.
 
Solved Steam not opening, apparently its some issue with audio recording inputs or something, unplugging my headset makes it open normally, incredible.

Still need to figure out the HIP support in Blender, it crashes when compiling the kernals when you enable GPU rendering.
Edit: The Steam version of Blender works, of course.
 
Last edited:
That and the retards (Just knowledgeable enough to be dumb) don't read the fucking warning telling them to commit X manual mitigation step.
In the retards’ defence, it’s not made clear that you need to sign up to an rss feed and check that before each pacman -Syu. The wiki guide they all followed doesn’t mention it at all.
 
I installed Arch on a spare machine after finding it quite nice on my Steam Deck, I know SteamOS is made simpler but I figured I could manage. After trying to get Blender to run with HIP support on my Vega56 by installing the relevant driver described on the Arch wiki and Blender documentation it now crashes when I render, and now Steam wont even open. Year of the Linux desktop my ass, I'm convinced Linux is like this so that autists/retards can spend all day fixing a mundane problem and it looks like they are doing work instead of actually doing work. Call me retarded or whatever, I'm following the wiki, using AUR, and googling every issue.

Just a little vent, at least its not my actual PC.
If you really want to use anything Arch based but still use Arch, the core, you're better off with Artix Linux, which is a far better experience in a way that's basically Arch, but better. Especally since it doesn't use the absolute bloatware that is Systemd.
 
If you really want to use anything Arch based but still use Arch, the core, you're better off with Artix Linux, which is a far better experience in a way that's basically Arch, but better. Especally since it doesn't use the absolute bloatware that is Systemd.
That or EndeavourOS.
 
Runit has to be one of my favorite SystemD alternatives, I can't say for sure if there are any drawbacks, if experts can fill me in, but I can't even see it pass by on boot it's crazy.
 
Runit has to be one of my favorite SystemD alternatives, I can't say for sure if there are any drawbacks, if experts can fill me in, but I can't even see it pass by on boot it's crazy.
Maybe I'm wrong but I don't think even 10% of what systemd does is anything the vast majority of people even need.
 
Runit has to be one of my favorite SystemD alternatives, I can't say for sure if there are any drawbacks, if experts can fill me in, but I can't even see it pass by on boot it's crazy.
You would probably see the difference in a huge server cluster where nodes are constantly being restarted or created. Single machine for a desktop Linux user? Not only does it make no practical difference, runit is easier to understand. In this use case, the only advantage systemD might have is its abstraction of cgroups and namespaces under the hood.
 
  • Informative
Reactions: AnOminous
Runit has to be one of my favorite SystemD alternatives, I can't say for sure if there are any drawbacks, if experts can fill me in, but I can't even see it pass by on boot it's crazy.
I would actually say in the case of Artix that Dinit is a very promising alternative if you ever get around to using it. It also offers dependency management unlike Runit and from my experience it even ran noticeably faster on my machine.
 
Am I really the only one who likes systemd? I love how easy it is to write service units and timers, and how powerful all the tools are.
I'm basically neutral on the systemd question. It's useful, it's convenient, it has downsides. It's also the most widely used Linux init system so there are far fewer resources (documentation, etc.) if you go your own way with runit, etc.

For a pro-systemd view, this posting by an Arch developer (from 2012 when Arch adopted it) is fairly detailed:
Benefits:

I have spent too much time arguing against the perceived deficiencies of systemd (such as: "it is not written in bash", "it was started by Lennart Poettering", "I don't like the (optional) on-disk format of the journal", "it uses dbus", "systemd's PID1 does more and is bigger than sysvinit's PID1", "I think there might be this other project that possibly is doing something similar. I don't really know anything about it, but I'm pretty sure it is better than systemd" and I'm sure there are many more). I strongly believe that 1) all of these perceived deficiencies are not deficiencies, but are actually benefits 2) even if I'm wrong, these things are not hugely important. So, with that out of the way: let's ignore all of those old boring arguments and I'll outline a few things that I find awesome about systemd, and why I think we should all be very excited about soon being able to use it. In no particular order:

0) it is hotplug capable: systemd assumes that all resources may appear and dissapear at any time. If you plug in your external harddrive after systemd has booted, it will be fsck'ed and mounted correctly. This is unlike initscripts which relies on all disks being enumerated and ready when it starts fsck, and then it relies on fsck of all disks being finished before it starts mounting any of them. Hotplug is important, not only because it is convenient to be able to insert/remove hardware while the system is running, but also because that's how the linux kernel does boot: every device appears to be "hotplugged" as the kernel becomes aware of it, so with a very fast boot we can no longer assume that all devices are ready and waiting for us when we need them (even if they were plugged in when the computer started). In reality this is often not a problem, but if you ever had your rootfs on an external USB harddrive you might have experienced problems (and as things become faster and faster more problems like this will crop up).

1) we can know the state of the system: systemd keeps track of all daemons, and all processes that are started, and who owns what, and when something fails, etc. Also, using the (awesome) journal all syslog() entries and writes to stdout/stderr by all processes are captured by systemd. These are stored with enough meta-data so that you can very easily retrieve say "all entries from a certain service/binary/pid" or "all entries written by the kernel regarding a given device", etc. In addition to logging this information, and showing it to you, systemd will allow you to specify (easily) what to do in a wide range of possible error-scenarios: "a service shuts down normally/with an error/ on a signa" or "a service has not sent its watchdog signal in the designated time" or "a service has shutdown with an error 10 times in the last half hour". The recent addition of hardware watchdog support also allows you to say "restart the machine if systemd itself is not responding".

2) it is modular: all of what is now rc.sysinit is split out into many independent services, each of which is well documented and easy to understand. I.e., if you don't like how systemd e.g. does it's fstab handling, then you can write your own little helper (in bash if you wish) to replace the official one. Doing this in the old initscripts is much harder because 1) it is not so clear which parts of rc.sysinit are dependent on eachother 2) any changes you do you'll have to merge on every update.

3) it allows dbus/udev to go back to doing the task they are meant to do: both udev and dbus are currently (mis)-used to start daemons/long-running services on demand. In the case of dbus this is by design, but in the case of udev it is not. Either way, it is not what those daemons were built to do, so in keeping with the UNIX principle of one task per daemon, it is great that we can now let systemd (whose job it is to manage daemons) take this over. That is, udev and dbus can both signal systemd to start a certain daemon, and it will behave like if it was started in any other way (you have the logs, status etc). One problem that this solves is the inherent race-condition in some daemons (I think bluetoothd was guilty of this at some point) allowing both being started as soon as possible on boot (say by putting it in DAEMONS), and to be started on-demand by dbus. Systemd makes sure that both these things can happen, and if they do happen at the same time you will only end up with one instance of the daemon as expected.

4) we can reduce the number of explicit ordering dependencies between daemons (this might require changes to the daemons in question): using socket activation, automounting and dbus activation we are able to forget about stuff like "dbus must be running before we start avahi" or "yp-bind must be started after networkmanager". systemd can create sockets early on, before any daemons are started, and then pass the socket to the relevant daemon when it gets around to starting it. This means that anything can connect to anything else, without caring about whether or not the other daemon has finished starting yet. The kernel will simply buffer the requests whilst we wait and deliver them when it can. Notice that this does not actually remove any dependencies (so if there are circular deps, they will still be there), but it means we no longer have to specify them, nor worry about races between them.

5) we get a lot of security/sandboxing features for free: you can simply add some configuration options to the unit files in question to isolate them from the system in various ways. This was of course also possible before, but it required you to write lots of boilerplate code in every rc script, and this kind of things are very error prone, and best reviewed by people who know about this stuff.

6) systemd service files can (and hopefully will!) be written and distributed upstream: rather than every distro writing their own rc script (with their own set of trivial bugs and misunderstandings) the people who know the software the best (upstream) possibly with some input from the people who know the init system the best (systemd devs) can write "perfect" services that should just work everywhere. We have seen some of this already, and I think it is hugely benefitial. Even for distros who don't pick up systemd yet, this will allow them to at least have an idea oh how the software is meant to be initialized.

7) systemd is a cross-distro project: every major and many, many minor distros have had people contributing to systemd. last i heard even two debian devs have commit access to the repo, among many others. systemd upstream is very accommodating of different needs and different use-cases (as long as they are presented on technical grounds) and have been a pleasure to work with so far. We are getting the joint experience of a lot of people/projects who have worked on different init systems for a long time, I think this is one of the most important "features" one could have.

8) logind will finally deliver on what consolekit was supposed to do: we can now track user sessions and seats, assign permissions to resources on-the-fly etc. This should be the topic of a separate message, as it is too much to get into. Suffice it to say that I'm very happy that we are finally getting these features working as they should.

9) systemd is fast: Or is it really? Some claim there is no difference compared with initscripts, a very few claim it is slower, the vast majority claim it is a lot faster. I claim that I really don't care. The above points (which is just what I could think of at the top of my head, so not exhaustive by any means) would hopefully convince you that systemd is the right choice irrespective of its speed, and once you try it out you might be in for a pleasant surprise ;)
 
Back