Skip to content

Instantly share code, notes, and snippets.

@x3ps
Forked from orhun/arch_linux_installation.md
Created January 13, 2025 19:33
Show Gist options
  • Select an option

  • Save x3ps/ad30d148c7f0b7f502f7226b71ac44f0 to your computer and use it in GitHub Desktop.

Select an option

Save x3ps/ad30d148c7f0b7f502f7226b71ac44f0 to your computer and use it in GitHub Desktop.

Revisions

  1. @orhun orhun revised this gist Feb 26, 2024. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -50,8 +50,8 @@

    * **Lenovo ThinkPad E15G2** (20T8001UTX)
    * AMD Ryzen 7 4700U
    * 8GB RAM
    * 512GB SSD
    * 8GB RAM (+16GB)
    * 512GB SSD (+1 TB)
    * 15.6" FHD
    * Freedos

  2. @orhun orhun revised this gist Jun 16, 2023. 1 changed file with 13 additions and 3 deletions.
    16 changes: 13 additions & 3 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -24,6 +24,7 @@
    - [Configure the system](#configure-the-system)
    - [Install network manager](#install-network-manager)
    - [Regenerate initramfs](#regenerate-initramfs)
    - [Select the CPU architecture](#select-the-cpu-architecture)
    - [Install microcode](#install-microcode)
    - [Install systemd-boot](#install-systemd-boot)
    - [Configure systemd-boot](#configure-systemd-boot)
    @@ -265,14 +266,20 @@ Regenerate:
    mkinitcpio -p linux
    ```

    ## Select the CPU architecture

    ```sh
    export CPU_ARCH=amd # amd or intel
    ```

    ## Install microcode

    > Processor manufacturers release stability and security updates to the processor microcode. These updates provide bug fixes that can be critical to the stability of your system. Without them, you may experience spurious crashes or unexpected system halts that can be difficult to track down.
    > All users with an AMD or Intel CPU should install the microcode updates to ensure system stability.
    ```sh
    pacman -S amd-ucode
    pacman -S $CPU_ARCH-ucode
    ```

    ## Install systemd-boot
    @@ -321,13 +328,14 @@ console-mode auto
    ```
    title Arch Linux
    linux /vmlinuz-linux
    initrd /amd-ucode.img
    initrd /<CPU-ARCHITECTURE>-ucode.img
    initrd /initramfs-linux.img
    options rd.luks.name=<ROOT-PARTITION-UUID>=system root=/dev/mapper/system rd.luks.name=<SWAP-PARTITION-UUID>=swap resume=/dev/mapper/swap rw
    ```

    * `<ROOT-PARTITION-UUID>`: `lsblk -o NAME,UUID | grep nvme0n1p3 | awk '{print $NF}'`
    * `<SWAP-PARTITION-UUID>`: `lsblk -o NAME,UUID | grep nvme0n1p2 | awk '{print $NF}'`
    * `<CPU-ARCHITECTURE>`: value of `$CPU_ARCH`

    ## Update kernel parameters

    @@ -478,9 +486,11 @@ makepkg -si
    ## Install display server

    ```sh
    pacman -S xorg-server xorg-xinit xterm xf86-video-amdgpu
    pacman -S xorg-server xorg-xinit xterm
    ```

    Also, install `xf86-video-amdgpu` or `xf86-video-intel` based on CPU architecture respectively.

    ## Install window manager

    ```sh
  3. @orhun orhun revised this gist Jun 13, 2023. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -124,7 +124,7 @@ mkfs.fat -F32 -n EFI /dev/disk/by-partlabel/EFI
    ### Encrypt system partition

    ```sh
    cryptsetup luksFormat --align-payload=8192 /dev/disk/by-partlabel/cryptsystem
    cryptsetup luksFormat /dev/disk/by-partlabel/cryptsystem
    ```

    ### Add an additional LUKS key
  4. @orhun orhun revised this gist Mar 1, 2023. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -332,7 +332,7 @@ options rd.luks.name=<ROOT-PARTITION-UUID>=system root=/dev/mapper/system rd.luk
    ## Update kernel parameters

    * `audit=0`: disable audit logs
    * `acpi_backlight=vendor`: prefer vendor specific driver for backlight
    * `acpi_backlight=vendor`: prefer vendor specific driver for backlight (see the [other options](https://wiki.archlinux.org/title/Backlight#Kernel_command-line_options))
    * `splash`: show splash during boot
    * `quiet`: enable non-verbose mode

  5. @orhun orhun revised this gist Feb 19, 2023. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -492,7 +492,7 @@ Configure i3 and run it with [xinit](https://wiki.archlinux.org/title/Xinit).
    ## Install code editor

    ```sh
    paru -S vscodium-bin vscodium-bin-marketplace
    pacman -S neovim
    ```

    ## Install web browser
  6. @orhun orhun revised this gist Feb 19, 2023. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -484,7 +484,7 @@ pacman -S xorg-server xorg-xinit xterm xf86-video-amdgpu
    ## Install window manager

    ```sh
    pacman -S i3-gaps
    pacman -S i3
    ```

    Configure i3 and run it with [xinit](https://wiki.archlinux.org/title/Xinit).
  7. @orhun orhun revised this gist Dec 12, 2022. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -250,7 +250,7 @@ pacman -S netctl wpa_supplicant dhcpcd dialog
    Create a backup of the original config:

    ```sh
    mv /etc/mkinitcpio.conf /etc/mkinitcpio.conf.orig
    cp /etc/mkinitcpio.conf /etc/mkinitcpio.conf.orig
    ```

    Update `HOOKS` in `/etc/mkinitcpio.conf` as follows:
  8. @orhun orhun revised this gist Nov 13, 2022. 1 changed file with 2 additions and 0 deletions.
    2 changes: 2 additions & 0 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -338,6 +338,8 @@ options rd.luks.name=<ROOT-PARTITION-UUID>=system root=/dev/mapper/system rd.luk

    ## Installing Secure Boot

    \* You need to boot in the freshly installed OS (without chroot) before following these steps.

    Before you proceed, beware of [this](https://www.reddit.com/r/archlinux/comments/pec41w/secure_boot_selfsigned_keys_nvidia_gpu_bricked/).

    > Secure Boot is a security feature found in the UEFI standard, designed to add a layer of protection to the pre-boot process: by maintaining a cryptographically signed list of binaries authorized or forbidden to run at boot, it helps in improving the confidence that the machine core boot components (boot manager, kernel, initramfs) haven't been tampered with.
  9. @orhun orhun revised this gist Nov 12, 2022. 1 changed file with 47 additions and 0 deletions.
    47 changes: 47 additions & 0 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -1,3 +1,50 @@
    # Notes on my Arch Linux installation

    - [Notes on my Arch Linux installation](#notes-on-my-arch-linux-installation)
    - [Hardware](#hardware)
    - [Known Issues](#known-issues)
    - [Preparation](#preparation)
    - [Pre-installation](#pre-installation)
    - [Select the drive](#select-the-drive)
    - [Zap the disk](#zap-the-disk)
    - [Create the partitions](#create-the-partitions)
    - [Check the partitions](#check-the-partitions)
    - [Format EFI partition](#format-efi-partition)
    - [Encrypt system partition](#encrypt-system-partition)
    - [Add an additional LUKS key](#add-an-additional-luks-key)
    - [Backup LUKS header](#backup-luks-header)
    - [Open the encrypted system partition](#open-the-encrypted-system-partition)
    - [Encrypt swap partition](#encrypt-swap-partition)
    - [Create and mount XFS filesystem](#create-and-mount-xfs-filesystem)
    - [Mount EFI partition](#mount-efi-partition)
    - [Installation](#installation)
    - [Install essential packages](#install-essential-packages)
    - [Generate fstab](#generate-fstab)
    - [Boot into the system](#boot-into-the-system)
    - [Configure the system](#configure-the-system)
    - [Install network manager](#install-network-manager)
    - [Regenerate initramfs](#regenerate-initramfs)
    - [Install microcode](#install-microcode)
    - [Install systemd-boot](#install-systemd-boot)
    - [Configure systemd-boot](#configure-systemd-boot)
    - [Update kernel parameters](#update-kernel-parameters)
    - [Installing Secure Boot](#installing-secure-boot)
    - [Using TPM 2.0](#using-tpm-20)
    - [Post-installation](#post-installation)
    - [Set up a wireless netwok](#set-up-a-wireless-netwok)
    - [Create an user](#create-an-user)
    - [Update pacman mirrors](#update-pacman-mirrors)
    - [Install an AUR helper](#install-an-aur-helper)
    - [Install display server](#install-display-server)
    - [Install window manager](#install-window-manager)
    - [Install code editor](#install-code-editor)
    - [Install web browser](#install-web-browser)
    - [Install docker](#install-docker)
    - [Set up screen locker](#set-up-screen-locker)
    - [Set up audio](#set-up-audio)
    - [Change TrackPoint sensitivity](#change-trackpoint-sensitivity)
    - [References](#references)

    ## Hardware

    * **Lenovo ThinkPad E15G2** (20T8001UTX)
  10. @orhun orhun revised this gist Nov 12, 2022. No changes.
  11. @orhun orhun revised this gist Oct 2, 2021. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -662,7 +662,7 @@ libinput Accel Profiles Available (318): 1, 1
    [...]
    ```

    Override the `Accel Speed` property in `/etc/X11/xorg.conf.d/20-thinkpad.conf`:
    Override the `libinput Accel Speed` property in `/etc/X11/xorg.conf.d/20-thinkpad.conf`:

    ```conf
    Section "InputClass"
  12. @orhun orhun revised this gist Oct 2, 2021. 1 changed file with 3 additions and 5 deletions.
    8 changes: 3 additions & 5 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -636,7 +636,7 @@ load-module module-switch-on-connect
    Install `xinput` for configuring devices:

    ```sh
    pacman -S xorg-xinput
    pacman -S xorg-xinput xf86-input-libinput
    ```

    List the available devices by running `xinput` command:
    @@ -666,11 +666,9 @@ Override the `Accel Speed` property in `/etc/X11/xorg.conf.d/20-thinkpad.conf`:

    ```conf
    Section "InputClass"
    Identifier "Trackpoint Wheel Emulation"
    Driver "evdev"
    Identifier "TrackPoint Configuration"
    MatchProduct "ETPS/2 Elantech TrackPoint"
    MatchDevicePath "/dev/input/event*"
    Option "AccelSpeed" "-0.65"
    Option "AccelSpeed" "-0.65"
    EndSection
    ```

  13. @orhun orhun revised this gist Oct 2, 2021. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -631,7 +631,7 @@ Update `/etc/pulse/default.pa` for auto connecting to the bluetooth headset:
    load-module module-switch-on-connect
    ```

    ## Configure TrackPoint sensitivity
    ## Change TrackPoint sensitivity

    Install `xinput` for configuring devices:

  14. @orhun orhun revised this gist Oct 2, 2021. 1 changed file with 44 additions and 0 deletions.
    44 changes: 44 additions & 0 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -631,6 +631,49 @@ Update `/etc/pulse/default.pa` for auto connecting to the bluetooth headset:
    load-module module-switch-on-connect
    ```

    ## Configure TrackPoint sensitivity

    Install `xinput` for configuring devices:

    ```sh
    pacman -S xorg-xinput
    ```

    List the available devices by running `xinput` command:

    ```
    ⎡ Virtual core pointer id=2 [master pointer (3)]
    ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
    ⎜ ↳ ETPS/2 Elantech Touchpad id=12 [slave pointer (2)]
    ⎜ ↳ ETPS/2 Elantech TrackPoint id=13 [slave pointer (2)]
    ```

    List the properties of the TrackPoint:

    ```sh
    xinput list-props "ETPS/2 Elantech TrackPoint"
    ```

    ```
    [...]
    libinput Accel Speed (316): 0.000000
    libinput Accel Speed Default (317): 0.000000
    libinput Accel Profiles Available (318): 1, 1
    [...]
    ```

    Override the `Accel Speed` property in `/etc/X11/xorg.conf.d/20-thinkpad.conf`:

    ```conf
    Section "InputClass"
    Identifier "Trackpoint Wheel Emulation"
    Driver "evdev"
    MatchProduct "ETPS/2 Elantech TrackPoint"
    MatchDevicePath "/dev/input/event*"
    Option "AccelSpeed" "-0.65"
    EndSection
    ```

    ## References

    - https://wiki.archlinux.org/title/Installation_guide
    @@ -655,3 +698,4 @@ load-module module-switch-on-connect
    - https://wiki.archlinux.org/title/Bluetooth#Auto_power-on_after_boot
    - https://wiki.archlinux.org/title/Session_lock
    - https://wiki.archlinux.org/title/docker
    - https://wiki.archlinux.org/title/TrackPoint
  15. @orhun orhun revised this gist Sep 5, 2021. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -435,7 +435,7 @@ pacman -S xorg-server xorg-xinit xterm xf86-video-amdgpu
    ## Install window manager

    ```sh
    pacman -S i3-gaps polkit
    pacman -S i3-gaps
    ```

    Configure i3 and run it with [xinit](https://wiki.archlinux.org/title/Xinit).
  16. @orhun orhun revised this gist Sep 5, 2021. 1 changed file with 2 additions and 0 deletions.
    2 changes: 2 additions & 0 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -456,6 +456,7 @@ pacman -S firefox-developer-edition

    ```sh
    pacman -S docker
    usermod -a -G docker orhun
    systemctl enable --now docker.service
    ```

    @@ -653,3 +654,4 @@ load-module module-switch-on-connect
    - https://wiki.archlinux.org/title/bluetooth_headset
    - https://wiki.archlinux.org/title/Bluetooth#Auto_power-on_after_boot
    - https://wiki.archlinux.org/title/Session_lock
    - https://wiki.archlinux.org/title/docker
  17. @orhun orhun revised this gist Sep 5, 2021. 1 changed file with 7 additions and 0 deletions.
    7 changes: 7 additions & 0 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -452,6 +452,13 @@ paru -S vscodium-bin vscodium-bin-marketplace
    pacman -S firefox-developer-edition
    ```

    ## Install docker

    ```sh
    pacman -S docker
    systemctl enable --now docker.service
    ```

    ## Set up screen locker

    Install i3lock:
  18. @orhun orhun revised this gist Sep 5, 2021. 1 changed file with 3 additions and 2 deletions.
    5 changes: 3 additions & 2 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -521,7 +521,8 @@ WantedBy=sleep.target
    ```

    2. Keep the lock screen from flashing the desktop:
    2.1. Create `/lib/systemd/system-sleep/blank`:

    2.a. Create `/lib/systemd/system-sleep/blank`:

    ```sh
    #!/usr/bin/env bash
    @@ -531,7 +532,7 @@ if [ "$1" == "pre" ]; then
    fi
    ```

    2.2. `chmod +x /lib/systemd/system-sleep/blank`
    2.b. `chmod +x /lib/systemd/system-sleep/blank`

    Lastly, start/enable both services:

  19. @orhun orhun revised this gist Sep 5, 2021. 1 changed file with 5 additions and 3 deletions.
    8 changes: 5 additions & 3 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -476,7 +476,7 @@ i3lock-fancy -g -t "" -- menyoki -q cap --root png -c fast save 2>/dev/null

    Lock the screen after 5 minutes of inactivity:

    1.
    1. Install the screen locker:

    ```sh
    pacman -S xautolock
    @@ -521,15 +521,17 @@ WantedBy=sleep.target
    ```

    2. Keep the lock screen from flashing the desktop:
    1. Create `/lib/systemd/system-sleep/blank`:
    2.1. Create `/lib/systemd/system-sleep/blank`:

    ```sh
    #!/usr/bin/env bash

    if [ "$1" == "pre" ]; then
    sleep 2
    fi
    ```
    2. `chmod +x /lib/systemd/system-sleep/blank`

    2.2. `chmod +x /lib/systemd/system-sleep/blank`

    Lastly, start/enable both services:

  20. @orhun orhun revised this gist Sep 5, 2021. 1 changed file with 83 additions and 3 deletions.
    86 changes: 83 additions & 3 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -435,7 +435,7 @@ pacman -S xorg-server xorg-xinit xterm xf86-video-amdgpu
    ## Install window manager

    ```sh
    pacman -S i3-gaps
    pacman -S i3-gaps polkit
    ```

    Configure i3 and run it with [xinit](https://wiki.archlinux.org/title/Xinit).
    @@ -454,8 +454,88 @@ pacman -S firefox-developer-edition

    ## Set up screen locker

    Install i3lock:

    ```sh
    paru i3lock-fancy
    ```

    Install screenshot utility:

    ```sh
    pacman -S menyoki
    ```

    Create a script at `~/scripts/lock.sh` for locking the screen:

    ```sh
    #!/usr/bin/env bash

    i3lock-fancy -g -t "" -- menyoki -q cap --root png -c fast save 2>/dev/null
    ```

    Lock the screen after 5 minutes of inactivity:

    1.

    ```sh
    pacman -S xautolock
    ```

    2. Create `/etc/systemd/system/screen-locker.service`:

    ```
    [Unit]
    Description=Lock the screen automatically after a timeout
    [Service]
    Type=simple
    User=orhun
    Environment=DISPLAY=:0
    ExecStart=/usr/bin/xautolock -time 5 -locker /home/orhun/scripts/lock.sh -detectsleep
    Restart=on-failure
    RestartSec=5m
    [Install]
    WantedBy=graphical.target
    ```

    Lock the screen after suspend:

    1. Create `/etc/systemd/system/resume-locker.service`:

    ```
    [Unit]
    Description=Lock the screen on resume from suspend
    Before=suspend.target
    [Service]
    Type=forking
    User=orhun
    Environment=DISPLAY=":0"
    ExecStart=/usr/bin/bash /home/orhun/scripts/lock.sh
    [Install]
    WantedBy=suspend.target
    WantedBy=sleep.target
    ```

    2. Keep the lock screen from flashing the desktop:
    1. Create `/lib/systemd/system-sleep/blank`:
    ```sh
    #!/usr/bin/env bash

    if [ "$1" == "pre" ]; then
    sleep 2
    fi
    ```
    2. `chmod +x /lib/systemd/system-sleep/blank`

    Lastly, start/enable both services:

    ```sh
    pacman -S polkit
    systemctl enable --now screen-locker.service
    systemctl enable --now resume-locker.service
    ```

    ## Set up audio
    @@ -562,4 +642,4 @@ load-module module-switch-on-connect
    - https://wiki.archlinux.org/title/PipeWire
    - https://wiki.archlinux.org/title/bluetooth_headset
    - https://wiki.archlinux.org/title/Bluetooth#Auto_power-on_after_boot
    -
    - https://wiki.archlinux.org/title/Session_lock
  21. @orhun orhun revised this gist Sep 5, 2021. 1 changed file with 11 additions and 2 deletions.
    13 changes: 11 additions & 2 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -477,10 +477,17 @@ pactl info
    Set up bluetooth:

    ```sh
    rfkill unblock all
    pacman -S bluez bluez-utils
    systemctl start bluetooth.service
    systemctl enable bluetooth.service
    rfkill unblock all
    ```

    Update `/etc/bluetooth/main.conf` to auto power-on the bluetooth device after boot:

    ```
    [Policy]
    AutoEnable=true
    ```

    Configure bluetooth headset:
    @@ -526,7 +533,7 @@ Changing E8:D0:3C:8B:7B:48 trust succeeded
    [JBL TUNE500BT]# exit
    ```

    Update `/etc/pulse/default.pa` for the bluetooth headset:
    Update `/etc/pulse/default.pa` for auto connecting to the bluetooth headset:

    ```
    ### Automatically switch to newly-connected devices
    @@ -554,3 +561,5 @@ load-module module-switch-on-connect
    - https://wiki.archlinux.org/title/Advanced_Linux_Sound_Architecture
    - https://wiki.archlinux.org/title/PipeWire
    - https://wiki.archlinux.org/title/bluetooth_headset
    - https://wiki.archlinux.org/title/Bluetooth#Auto_power-on_after_boot
    -
  22. @orhun orhun revised this gist Sep 5, 2021. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -458,7 +458,7 @@ pacman -S firefox-developer-edition
    pacman -S polkit
    ```

    ## Bring up audio
    ## Set up audio

    Check the audio device:

    @@ -476,7 +476,7 @@ pactl info

    Set up bluetooth:

    ```
    ```sh
    pacman -S bluez bluez-utils
    systemctl start bluetooth.service
    systemctl enable bluetooth.service
    @@ -485,7 +485,7 @@ rfkill unblock all

    Configure bluetooth headset:

    ```sh
    ```
    bluetoothctl
    [bluetooth]# power on
  23. @orhun orhun revised this gist Sep 5, 2021. 1 changed file with 61 additions and 1 deletion.
    62 changes: 61 additions & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -466,11 +466,71 @@ Check the audio device:
    lspci | grep -i audio
    ```

    Install pipewire:
    Install pipewire/pulse:

    ```sh
    pacman -S alsa-utils pipewire pipewire-pulse
    systemctl start --user pipewire-pulse.service
    pactl info
    ```

    Set up bluetooth:

    ```
    pacman -S bluez bluez-utils
    systemctl start bluetooth.service
    systemctl enable bluetooth.service
    rfkill unblock all
    ```

    Configure bluetooth headset:

    ```sh
    bluetoothctl

    [bluetooth]# power on
    [CHG] Controller XX:XX:XX:XX:XX:XX Class: 0x006c010c
    Changing power on succeeded
    [CHG] Controller XX:XX:XX:XX:XX:XX Powered: yes

    [bluetooth]# agent on
    Agent is already registered
    [bluetooth]# default-agent
    Default agent request successful

    [bluetooth]# scan on
    Discovery started
    [CHG] Controller XX:XX:XX:XX:XX:XX Discovering: yes
    [NEW] Device E8:D0:3C:8B:7B:48 JBL TUNE500BT

    [bluetooth]# pair E8:D0:3C:8B:7B:48
    Attempting to pair with E8:D0:3C:8B:7B:48
    [CHG] Device E8:D0:3C:8B:7B:48 Connected: yes
    [CHG] Device E8:D0:3C:8B:7B:48 ServicesResolved: yes
    [CHG] Device E8:D0:3C:8B:7B:48 Paired: yes
    Pairing successful
    [CHG] Device E8:D0:3C:8B:7B:48 ServicesResolved: no
    [CHG] Device E8:D0:3C:8B:7B:48 Connected: no

    [bluetooth]# connect E8:D0:3C:8B:7B:48
    Attempting to connect to E8:D0:3C:8B:7B:48
    [CHG] Device E8:D0:3C:8B:7B:48 Connected: yes
    Connection successful
    [CHG] Device E8:D0:3C:8B:7B:48 ServicesResolved: yes

    [JBL TUNE500BT]# trust E8:D0:3C:8B:7B:48
    [CHG] Device E8:D0:3C:8B:7B:48 Trusted: yes
    Changing E8:D0:3C:8B:7B:48 trust succeeded

    [JBL TUNE500BT]# scan off
    [JBL TUNE500BT]# exit
    ```

    Update `/etc/pulse/default.pa` for the bluetooth headset:

    ```
    ### Automatically switch to newly-connected devices
    load-module module-switch-on-connect
    ```

    ## References
  24. @orhun orhun revised this gist Sep 4, 2021. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -469,7 +469,7 @@ lspci | grep -i audio
    Install pipewire:

    ```sh
    pacman -S alsa-utils pipewire pipewire-alsa pipewire-pulse
    pacman -S alsa-utils pipewire pipewire-pulse
    systemctl start --user pipewire-pulse.service
    ```

  25. @orhun orhun revised this gist Sep 4, 2021. 1 changed file with 8 additions and 0 deletions.
    8 changes: 8 additions & 0 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -460,6 +460,14 @@ pacman -S polkit

    ## Bring up audio

    Check the audio device:

    ```sh
    lspci | grep -i audio
    ```

    Install pipewire:

    ```sh
    pacman -S alsa-utils pipewire pipewire-alsa pipewire-pulse
    systemctl start --user pipewire-pulse.service
  26. @orhun orhun revised this gist Sep 4, 2021. 1 changed file with 10 additions and 0 deletions.
    10 changes: 10 additions & 0 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -458,6 +458,13 @@ pacman -S firefox-developer-edition
    pacman -S polkit
    ```

    ## Bring up audio

    ```sh
    pacman -S alsa-utils pipewire pipewire-alsa pipewire-pulse
    systemctl start --user pipewire-pulse.service
    ```

    ## References

    - https://wiki.archlinux.org/title/Installation_guide
    @@ -476,3 +483,6 @@ pacman -S polkit
    - https://wiki.archlinux.org/title/Xorg
    - https://man.archlinux.org/man/reflector.1#EXAMPLES
    - https://wiki.archlinux.org/title/Allow_users_to_shutdown
    - https://wiki.archlinux.org/title/Advanced_Linux_Sound_Architecture
    - https://wiki.archlinux.org/title/PipeWire
    - https://wiki.archlinux.org/title/bluetooth_headset
  27. @orhun orhun revised this gist Sep 4, 2021. 1 changed file with 3 additions and 1 deletion.
    4 changes: 3 additions & 1 deletion arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -407,8 +407,10 @@ visudo # uncomment "%wheel ALL=(ALL) ALL"

    ## Update pacman mirrors

    _(this section needs review)_

    ```sh
    pacman -S reflector
    sudo pacman -S reflector
    reflector --country Germany --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist
    curl "https://archlinux.org/mirrorlist/?country=TR&protocol=http&protocol=https&ip_version=4" | sudo tee -a /etc/pacman.d/mirrorlist
    sudo vim /etc/pacman.d/mirrorlist
  28. @orhun orhun revised this gist Sep 1, 2021. 1 changed file with 9 additions and 3 deletions.
    12 changes: 9 additions & 3 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -424,26 +424,32 @@ cd paru/
    makepkg -si
    ```

    ## Set up display server
    ## Install display server

    ```sh
    pacman -S xorg-server xorg-xinit xterm xf86-video-amdgpu
    ```

    ## Set up window manager
    ## Install window manager

    ```sh
    pacman -S i3-gaps
    ```

    Configure i3 and run it with [xinit](https://wiki.archlinux.org/title/Xinit).

    ## Set up code editor
    ## Install code editor

    ```sh
    paru -S vscodium-bin vscodium-bin-marketplace
    ```

    ## Install web browser

    ```sh
    pacman -S firefox-developer-edition
    ```

    ## Set up screen locker

    ```sh
  29. @orhun orhun revised this gist Sep 1, 2021. 1 changed file with 6 additions and 0 deletions.
    6 changes: 6 additions & 0 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -438,6 +438,12 @@ pacman -S i3-gaps

    Configure i3 and run it with [xinit](https://wiki.archlinux.org/title/Xinit).

    ## Set up code editor

    ```sh
    paru -S vscodium-bin vscodium-bin-marketplace
    ```

    ## Set up screen locker

    ```sh
  30. @orhun orhun revised this gist Aug 31, 2021. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions arch_linux_installation.md
    Original file line number Diff line number Diff line change
    @@ -407,7 +407,7 @@ visudo # uncomment "%wheel ALL=(ALL) ALL"

    ## Update pacman mirrors

    ```
    ```sh
    pacman -S reflector
    reflector --country Germany --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist
    curl "https://archlinux.org/mirrorlist/?country=TR&protocol=http&protocol=https&ip_version=4" | sudo tee -a /etc/pacman.d/mirrorlist
    @@ -416,7 +416,7 @@ sudo vim /etc/pacman.d/mirrorlist

    ## Install an AUR helper

    ```
    ```sh
    pacman -S git wget rust base-devel
    rustup install stable
    git clone https://aur.archlinux.org/paru
    @@ -440,7 +440,7 @@ Configure i3 and run it with [xinit](https://wiki.archlinux.org/title/Xinit).

    ## Set up screen locker

    ```
    ```sh
    pacman -S polkit
    ```