Skip to content

Instantly share code, notes, and snippets.

@ayoubelmhamdi
Forked from psygo/artix.md
Created July 10, 2021 11:26
Show Gist options
  • Select an option

  • Save ayoubelmhamdi/ee3dd4e6fc45d4056b0f077717b6a07e to your computer and use it in GitHub Desktop.

Select an option

Save ayoubelmhamdi/ee3dd4e6fc45d4056b0f077717b6a07e to your computer and use it in GitHub Desktop.

Revisions

  1. @psygo psygo created this gist Feb 26, 2021.
    231 changes: 231 additions & 0 deletions artix.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,231 @@
    # Artix Base Install

    Created: Feb 25, 2021 10:12 AM
    Tags: ArchLinux, Artix
    URL: https://youtu.be/nCc_4fSYzRA
    Updated: Feb 26, 2021 11:08 AM

    ## Base Install

    [Wiki | Main / Installation](https://wiki.artixlinux.org/Main/Installation)

    [Installing Artix Linux (Like Arch, but better)](https://youtu.be/nCc_4fSYzRA)

    > `Ctrl` `Alt` `F2` / `F10` / `F9` usually goes back into the system TTY if there's ever any problem.
    ```bash
    # 1. Verifying if UEFI
    ls /sys/firmware/efi/efivars

    # 2. Verify that you have internet (you might need to install `wifi-menu`)
    ping <any-website>

    # 3. Start witht the disk partitioning

    # 3.1. Get root access
    sudo su

    # 3.2. Enter the `fdisk` utility
    lsblk
    fdisk /dev/sda
    # Press `d` to delete a partition, if you have one.
    # `p` lists the partitions.

    # 3.3. Start creating your partitions
    n

    # 3.4. Boot Partition
    # Press n twice and then (Last Sector) select +1G for the size of the boot partition.

    # 3.5. Root Partition
    # The recommended size is 30G

    # 3.6. Home Partition
    # Just press enter for everything so it takes the rest of the space.

    # 3.7. Write Your Partitions
    # `fdisk` only writes the partitions once you use the `w` command.
    w

    # 4. Verify your partitions
    lsblk

    # 5. Start creating filesystems

    # 5.1. Home
    mkfs.ext4 /dev/sda3
    # If using UEFI, change `ext4` to `fat`: `mkfs.fat -F32 /dev/sda1

    # 5.2. Root
    mkfs.ext4 /dev/sda2

    # 5.1. Boot
    mkfs.ext4 /dev/sda1

    # Now we have all of our partitions with filesystems on them

    # 6. Mounting

    # 6.1. Mount your root to wherever
    mount /dev/sda2 /mnt

    # 6.2. Create 2 useful directories
    mkdir /mnt/home
    mkdir /mnt/boot

    # 6.3. Mount the Root Partition into the new /mnt/boot, and do the same for the home
    mount /dev/sda1 /mnt/boot
    mount /dev/sda3 /mnt/home
    # Run `lsblk` to see that everything is mounted where it's supposed to be

    # 7. Install the Operating System

    # The Artix Wiki tells you which command for which distribution you need to apply
    basestrap /mnt base base-devel openrc # pacstrap in ArchLinux
    basestrap /mnt linux linux-firmware # this could be done on the command above

    # 8. Setting up for reboot

    # We need to tell the system how to boot the correct partitions when it reboots.
    fstabgen -U /mnt >> /mnt/etc/fstab # genfstab in ArchLinux
    # -U makes it so the PC uses the UUID of the partition, instead of its alias, which might conflict with something else.

    # 9. Configs on the newly installed OS

    artix-chroot /mnt # this accesses the installed OS
    sh-5.0\# bash

    [art /]\# vim /etc/pacman.d/mirrorlist # Optional
    [art /]\# ln -sf /usr/share/zoneinfo/ # Creating a symbolic link for your timezone
    [art /]\# **ln -sf /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime**
    [art /]\# ls -l /etc/localtime # should link to America/Sao_Paulo
    [art /]\# hwclock --systohc # updates the hardware clock
    [art /]\# sudo pacman -Syu vim
    [art /]\# vim /etc/locale.gen # Uncomment `en_US`'s UTF and ISO
    [art /]\# locale-gen
    [art /]\# vim /etc/locale.conf # new file
    LANG=en_US.UTF-8
    [art /]\# pacman -S networkmanager networkmanager-openrc
    [art /]\# ln -s /etc/runit/sv/NetworkManager/ /etc/runit/runsvdir/current # autostarts networkmanager
    # OpenRC has a different command for what's above. See the wiki for more. (pacman -S connman-openrc) (rc-update add connmand)
    [art /]\# vim /etc/hostname
    desktop
    [art /]\# vim /etc/hosts
    127.0.0.1 localhost
    ::1 localhost
    127.0.1.1 desktop.localdomain desktop
    [art /]\# vim /etc/conf.d/hostname
    hostname='desktop'
    [art /]\# pacman -S dhcpcd
    [art /]\# pacman -S grub <for dual-boot: os-prober> <for UEFI: efibootmgr>
    [art /]\# grub-install --target=i386-pc /dev/sda (UEFI: grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB)
    [art /]\# grub-mkconfig -o /boot/grub/grub.cfg
    [art /]\# passwd

    # 10. Entering the Machine

    # 10.1. Reboot
    # Reboot the machine and enter the username as root and the password you set up above.

    exit
    umount -R /mnt
    reboot

    # 10.2. Add a new user:
    useradd -mg wheel philippe
    passwd philippe
    ```

    ## GUI

    [After a Minimal Linux Install: Graphical Envionment and Users](https://youtu.be/nSHOb8YU9Gw)

    ```bash
    # 1. User setup

    useradd -m -g wheel luke
    # Other commands useradd, userdel, groupadd, groupdel
    # `getent group` lists all groups
    # `groups philippe` lists all groups philipe is a part of

    vim /etc/sudoers # base-devel should have installed sudo
    # Uncomment line 82 or 85
    # Minute 6:34 mentions a more custom configuration

    # 2. Graphical Desktops

    # Two Options: Desktop Environments and Window Managers

    # At any rate, install:
    sudo pacman -S xf86-video-<intel/amd> xorg-server xorg-xinit xorg-xrandr
    sudo pacman -S <xterm/konsole> git
    # Start the server via `xinit` or `startx`, which will read `~/.xinitrc to know what to start

    # Install YAY
    git clone https://aur.archlinux.org/yay-git.git
    cd yay-git
    makepkg -si
    (yay -S brave-bin)
    (yay -S nerd-fonts-mononoki)

    sudo pacman -S brave-bin
    sudo pacman -S xmonad xmonad-contrib
    sudo pacman -S xterm dmenu

    # Once you've installed all that
    vim .xinitrc
    #!/bin/sh
    xinitrc
    startx

    # 3. Configuring XMonad

    sudo pacman -S ttf-fira-code xorg-xmodmap

    # You can also use the configuration I have on Github to cut most of the following steps down.
    # !!! This will probably too much of a configuration change. Don't do it unless you do it step by step.
    cd ~
    git init
    git remote add origin https://github.com/psygo/unix_config.git
    git pull origin master
    # Edit your ~/.xinitrc
    #!/bin/sh

    exec xmonad &
    xinit

    # 3.1. Open your browser and search for: xmonad default config.
    ## Download the: latest darcs template xmonad.hs

    # 3.2.
    ```

    [Getting Started With Xmonad](https://youtu.be/3noK4GTmyMw)

    ## GTK

    GTK is a toolset for UI on Linux. Many applications use it. Customizing it will affect all of them.

    There are tons of themes on the AUR:

    ```bash
    sudo pacman -Syu lxappearance
    yay -S gtk-blah-blah-blah
    ```

    ## Dual Boot

    [Arch Linux Install and Dual Boot with Windows 10 (UEFI) | Step by Step w/ Networking | 2021 Tutorial](https://youtu.be/LGhifbn6088)

    Install Windows 10 first, not after Linux. Linux is capable of intelligently managing partitions of all systems, unlike Windows.

    1. Go to Disk Management on Windows 10
    2. Right-click on the C disk and shrink its volume. Enter the amount to shrink by in MB.
    3. Download Arch/Artix
    4. Go to Balena Etcher and put the image on a drive.
    5. Search for "boot" on the startup options.
    - Use the advanced startup to boot into your ISO.
    6. Continue with the typical Artix installation.
    - Just be careful not to partition the wrong partitions.
    - And don't forget to check for UEFI.
    - And to install `os-prober` if it does exist.