this post was submitted on 19 Aug 2024
9 points (84.6% liked)

Linux Questions

982 readers
1 users here now

Linux questions Rules (in addition of the Lemmy.zip rules)

Tips for giving and receiving help

Any rule violations will result in disciplinary actions

founded 1 year ago
MODERATORS
 

As a Linux newbie, all I know about Arch Linux is that it is a DIY distro where you assemble the entirely of the OS by scratch. Somehow it feels like it is too easy than it needs to be, even if it is primarily meant for experienced users. I imagine it to be less like building your PC from parts bought from the market and more like building each and every component of the PC by scratch along with building the PC, which I assume to be much harder for the average consumer. It seems absurd how it is possible for a single person to incorporate the innumerable components required for functionality in a personal system that does not crash 100% of the time due to countless incompatibility errors that come with doing something like this.

I would like someone to elaborate on how it feels to 'build' a system software by yourself with Arch and how it is reasonable to actually do so in a simple language. I do have some experience in programming, mainly in webdev, so it's not like I need a baby-like explanation in how this works but it would be nice to get to know about this from someone who could understand where this confusion/curiosity is coming from.

top 6 comments
sorted by: hot top controversial new old
[–] CaptDust@sh.itjust.works 5 points 3 weeks ago* (last edited 3 weeks ago)

To use a web dev analogy, Arch is like node, pacman is like npm. You can install node and it'll do basic functions - just like you can install arch and have basic functions with the base package. Then you need to just install additional packages to include the functionality and libraries you want to use.

Following the installation guide highlights many packages needed for a "fully functional" desktop, and there's a lot of choices to make along the way. It's not considered good for a novice because most users don't know (or care) about the difference between pipewire or alsa, i3 or gnome, network-manager or systemd-networkd - they just want a GUI, sound and a network connection.

[–] fraksken@infosec.pub 4 points 3 weeks ago

What you ask is somebody writing a book that has already been written. I'm expecting the downvotes on this one, but I'm confident this is the right answer.

https://wiki.archlinux.org/title/Main_page

[–] we_avoid_temptation@lemmy.zip 4 points 3 weeks ago

I've installed Arch a dozen times at least over the years on various machines.

First off, some advice. People will tell you to watch videos or read some specific guide, and by all means do so to get an overview of the process, but I'd highly recommend double-checking everything against the official install guide. It's fairly terse but contains everything you need to do, and if you research the topics you don't understand you'll learn a lot quickly. This is best done in a virtual machine the first time unless you have a spare machine laying around.

Overall, it amounts to creating the install medium, booting it, any post boot configuration (including networking), partitioning and mounting your disk(s), writing some config files and installing the base packages and a bootloader, plus anything else you may need or want. I'm glossing over a lot of individual steps and "anything you may need or want" is essentially endless, but you get the point.

Overall it's involved but not terribly difficult. Like I think others have said, fairly similar to building a desktop from parts. Gentoo is a step up, and installing Linux From Scratch another few steps above that.

[–] Telorand@reddthat.com 2 points 3 weeks ago

I would like someone to elaborate on how it feels to 'build' a system software by yourself with Arch and how it is reasonable to actually do so in a simple language.

It's not for everyone. I did it in a VM to practice and decided it's not for me. There's options like Archcraft and EndeavorOS that get you up and running with varying minimum installs, but you are correct that it's very minimal (on purpose). You get to decide what software goes on your system, and that's the core of the philosophy; you should know what you did, so when a problem occurs, you know what parts might be broken and what to research.

The Arch wiki is vital for anyone who wants a modern Desktop experience, and there's guides for pretty much everything, even down to switching to an immutable ostree setup. I have no idea how anyone might do it blind from scratch.

The setup is just a lot of sudo pacman -S <package name> and sudoedit /path/to/config. It's not that different from making changes in other distros.

[–] Veraxis@lemmy.world 1 points 3 weeks ago* (last edited 3 weeks ago)

Daily Arch user here. The process of configuring an Arch install is perhaps not as difficult or mystical as you are imagining. I would say it is more like your first analogy: picking what off-the-shelf parts you want for a system and then putting them into a case. I think what you are describing is more like Linux from Scratch.

Installing Arch is effectively taking the steps performed by the installer .iso disks which every distro uses and instead doing it manually with CLI commands. You use CLI commands to partition the drive, create a filesystem, install a basic set of packages, then chroot into your system and use the package manager to install the rest of the packages you want. Aside from editing a couple config files, there is zero coding involved. The exact steps vary from guide to guide, but a basic outline of what I do is as follows:

  • First, I download the Arch iso and write it to a USB.

  • Once I boot up the install USB, I use iwctl to connect to my wifi for the packages I will need to download,

  • then I use fdisk to partition the drive I want to install to with an EFI and linux filesystem partition (You might also make a swap partition at this step but I typically use a swap file on my filesystem partition).

  • then you use mkfs to create filesystems on the EFI and linux filesystem partitions.

  • Then I use genfstab to make the /etc/fstab file

  • Then, I use pacstrap to install the base packages like pacman. Then I mount the filesystem and chroot into the new partition.

  • From there, I basically use pacman to install all the packages I need, including the linux kernel (I use linux-zen), the DE (I use KDE), the boot manager (I use Refind), and everything else. There are a few cleanup steps like setting the locales and time zones, etc. but that is about it.

I suggest watching a guide on youtube, which was how I learned, or installing something like Arcolinux or Endeavour, which simplifies the installer into a series of checkboxes to select what DE you want, etc.

[–] possiblylinux127@lemmy.zip 0 points 3 weeks ago* (last edited 3 weeks ago)

So what are you wanting?

You can install a base Debian system and go from there. (Don't select extra packages in the installer)