# SLUG Meetup - Arch Linux

<br>

## Introduction to Arch Linux. What is it? What are its pros/cons?

> Speaker: Calvin Kim

\ <br>

### 1. Intro

#### Distro

: A Linux Distribution

<br>

#### Package Manager

: manages the packages

​ == app store

\ <br>

### 2. Arch Linux's Philosophy

* guides you little
* gives you (very well) build system only

  <br>

#### History

* CRUX
* No GUI installation
* Minimalist
* does not hide anything cause abstraction and hiding is never a good thing

  -> No handling

<br>

#### Design

* Everything is customizable (beside the kernel..haha)
* There is no default setting for Arch
* ABS -Arch Build System
* Collection of different things for arch

\ <br>

### 3. Four things base for Arch

#### 1) `PKGBUILD`

: Bash script -> literally a script

1. Link to source code
2. How to build the code

-> used as a guide for other package managers

<br>

#### 2) `makepkg`

: build system -> reads PKGBUILD

<br>

​ ----> *those two are the fundamentals*

<br>

#### 3) `pacman` == apt

: package manager

* manages all the programs on your Arch

<br>

#### 4) `AUR (Arch User Repository)`

​ : a repository maintained by Arch User group

* no official support tho
* has every open source software

\ <br>

#### `+` Arch Wiki

* the most complete wiki!!!!
* the most up-to-date
* specific laptop quirks
* driver configuration
* linux hacking

  \ <br>

### 4. Why do we have to use Arch Linux?

1. Bleeding edge

   : you'll have the latest one because it stays as close to the upstream
2. AUR

   : most complete package manager out there
3. Community Support

   : support by community equals that of Ubuntu

\ <br>

### 5. Tips/Tricks

1. Use `manjaro`

   : Arch based distro with GUI installation
2. sudo pacman `-Syu` a lot

   : updates are REALLY fast so....
3. Bug the community!

\
\ <br>

#### `+` looked up after the meetup

<br>

1. `mosh`

* Remote terminal application that allows **roaming**, supports **intermittent connectivity**, and provides intelligent **local echo** and line editing of user keystrokes.
* Mosh is a replacement for interactive SSH terminals. It's more robust and responsive, especially over Wi-Fi, cellular, and long-distance links.
* Mosh is free software, available for GNU/Linux, BSD, macOS, Solaris, Android, Chrome, and iOS.

<br>

2. `tmux`

* **tmux** is a [terminal multiplexer](https://en.wikipedia.org/wiki/Terminal_multiplexer) for [Unix-like](https://en.wikipedia.org/wiki/Unix-like) [operating systems](https://en.wikipedia.org/wiki/Operating_system).
* allows multiple [terminal](https://en.wikipedia.org/wiki/Computer_terminal) sessions to be accessed simultaneously in a single window.
* useful for running more than one [command-line](https://en.wikipedia.org/wiki/Command-line_interface) program at the same time.
* It can also be used to detach [processes](https://en.wikipedia.org/wiki/Process_\(computing\)) from their controlling terminals, allowing [SSH](https://en.wikipedia.org/wiki/Secure_Shell) sessions to remain active without being visible.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://chloe-codes1.gitbook.io/til/linux/arch-linux/slug_meetup_arch_linux.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
