Skip to content

Instantly share code, notes, and snippets.

@loifarn
Forked from mattiaslundberg/arch-linux-install
Last active February 13, 2018 15:30
Show Gist options
  • Select an option

  • Save loifarn/6812b7de62772f21058815f82763538f to your computer and use it in GitHub Desktop.

Select an option

Save loifarn/6812b7de62772f21058815f82763538f to your computer and use it in GitHub Desktop.

Revisions

  1. loifarn revised this gist Feb 13, 2018. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch-linux-install
    Original file line number Diff line number Diff line change
    @@ -55,7 +55,7 @@ mount /dev/sdX1 /mnt/boot/efi

    # Install the system also includes stuff needed for starting wifi when first booting into the newly installed system
    # Unless vim and zsh are desired these can be removed from the command
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh nano git efibootmgr dialog wpa_supplicant sudo net-tools
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh nano git efibootmgr dialog wpa_supplicant sudo net-tools networkmanager network-manager-applet-indicator

    ## GUI
    pacstrap /mnt gnome xorg-server xorg-xinit xterm ttf-dejavu alsa-utils
  2. loifarn revised this gist Feb 13, 2018. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch-linux-install
    Original file line number Diff line number Diff line change
    @@ -55,7 +55,7 @@ mount /dev/sdX1 /mnt/boot/efi

    # Install the system also includes stuff needed for starting wifi when first booting into the newly installed system
    # Unless vim and zsh are desired these can be removed from the command
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh nano git efibootmgr dialog wpa_supplicant sudo
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh nano git efibootmgr dialog wpa_supplicant sudo net-tools

    ## GUI
    pacstrap /mnt gnome xorg-server xorg-xinit xterm ttf-dejavu alsa-utils
  3. loifarn revised this gist Feb 13, 2018. 1 changed file with 22 additions and 6 deletions.
    28 changes: 22 additions & 6 deletions arch-linux-install
    Original file line number Diff line number Diff line change
    @@ -55,10 +55,10 @@ mount /dev/sdX1 /mnt/boot/efi

    # Install the system also includes stuff needed for starting wifi when first booting into the newly installed system
    # Unless vim and zsh are desired these can be removed from the command
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh nano git efibootmgr dialog wpa_supplicant
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh nano git efibootmgr dialog wpa_supplicant sudo

    ## GUI
    pacstrap /mnt gnome xorg-server xorg-xinit xterm ttf-dejavu alsa-utils
    pacstrap /mnt gnome xorg-server xorg-xinit xterm ttf-dejavu alsa-utils

    # 'install' fstab
    genfstab -pU /mnt >> /mnt/etc/fstab
    @@ -84,9 +84,9 @@ echo LC_ALL=C >> /etc/locale.conf
    # Set password for root
    passwd

    # Add real user remove -s flag if you don't whish to use zsh
    # useradd -m -g users -G wheel -s /bin/zsh MYUSERNAME
    # passwd MYUSERNAME
    # Add real
    useradd -m -g users -G wheel,storage,power -s /bin/bash johndoe
    passwd johndoe

    # Configure mkinitcpio with modules needed for the initrd image
    nano /etc/mkinitcpio.conf
    @@ -113,4 +113,20 @@ reboot

    # Enable gnome
    systemctl enable gdm.service
    reboot
    reboot

    ## AFTER WORK
    # Give sudo perms
    EDITOR=nano visudo
    # Scroll down until you find this line and uncomment it:
    %wheel ALL=(ALL) ALL


    git clone https://aur.archlinux.org/package-query.git
    cd package-query
    makepkg -si
    cd ..
    git clone https://aur.archlinux.org/yaourt.git
    cd yaourt
    makepkg -si
    cd ..
  4. loifarn revised this gist Feb 13, 2018. 1 changed file with 19 additions and 4 deletions.
    23 changes: 19 additions & 4 deletions arch-linux-install
    Original file line number Diff line number Diff line change
    @@ -7,12 +7,20 @@ dd if=archlinux.img of=/dev/sdX bs=16M && sync # on linux

    # Boot from the usb. If the usb fails to boot, make sure that secure boot is disabled in the BIOS configuration.

    # Set swedish keymap
    loadkeys sv-latin1
    # Set preferred keymap
    loadkeys no-latin1 #example

    # Select preferred mirror (move to top in list)
    nano /etc/pacman.d/mirrorlist

    # This assumes a wifi only system...
    wifi-menu

    # Locate disk
    lsblk
    # OR
    fdisk -l

    # Create partitions
    cgdisk /dev/sdX
    1 100MB EFI partition # Hex code ef00
    @@ -47,7 +55,10 @@ mount /dev/sdX1 /mnt/boot/efi

    # Install the system also includes stuff needed for starting wifi when first booting into the newly installed system
    # Unless vim and zsh are desired these can be removed from the command
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh vim git efibootmgr dialog wpa_supplicant
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh nano git efibootmgr dialog wpa_supplicant

    ## GUI
    pacstrap /mnt gnome xorg-server xorg-xinit xterm ttf-dejavu alsa-utils

    # 'install' fstab
    genfstab -pU /mnt >> /mnt/etc/fstab
    @@ -78,7 +89,7 @@ passwd
    # passwd MYUSERNAME

    # Configure mkinitcpio with modules needed for the initrd image
    vim /etc/mkinitcpio.conf
    nano /etc/mkinitcpio.conf
    # Add 'ext4' to MODULES
    # Add 'encrypt' and 'lvm2' to HOOKS before filesystems

    @@ -99,3 +110,7 @@ swapoff -a

    # Reboot into the new system, don't forget to remove the cd/usb
    reboot

    # Enable gnome
    systemctl enable gdm.service
    reboot
  5. @mattiaslundberg mattiaslundberg revised this gist Aug 21, 2016. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch-linux-install
    Original file line number Diff line number Diff line change
    @@ -74,7 +74,7 @@ echo LC_ALL=C >> /etc/locale.conf
    passwd

    # Add real user remove -s flag if you don't whish to use zsh
    # useradd -m -g users -G wheel,storage,power -s /bin/zsh MYUSERNAME
    # useradd -m -g users -G wheel -s /bin/zsh MYUSERNAME
    # passwd MYUSERNAME

    # Configure mkinitcpio with modules needed for the initrd image
  6. @mattiaslundberg mattiaslundberg revised this gist Jan 7, 2016. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions arch-linux-install
    Original file line number Diff line number Diff line change
    @@ -66,9 +66,9 @@ hwclock --systohc --utc
    echo MYHOSTNAME > /etc/hostname

    # Update locale
    echo LANG=en_US.UTF-8 > /etc/locale.conf
    echo LANGUAGE=en_US > /etc/locale.conf
    echo LC_ALL=C > /etc/locale.conf
    echo LANG=en_US.UTF-8 >> /etc/locale.conf
    echo LANGUAGE=en_US >> /etc/locale.conf
    echo LC_ALL=C >> /etc/locale.conf

    # Set password for root
    passwd
  7. @mattiaslundberg mattiaslundberg revised this gist Sep 3, 2015. 1 changed file with 14 additions and 8 deletions.
    22 changes: 14 additions & 8 deletions arch-linux-install
    Original file line number Diff line number Diff line change
    @@ -3,21 +3,21 @@

    # Download the archiso image from https://www.archlinux.org/
    # Copy to a usb-drive
    dd if=archlinux.img of=/dev/sdX bs=16M # on linux
    dd if=archlinux.img of=/dev/sdX bs=16M && sync # on linux

    # Boot from the usb. If the usb fails to boot, make sure that secure boot is disabeled in the BIOS configuration.
    # Boot from the usb. If the usb fails to boot, make sure that secure boot is disabled in the BIOS configuration.

    # Set swedish keymap
    loadkeys sv-latin1

    # This assumes a wifi system...
    wifi-menu wlo1 # wlo1 is the device name, use ip link to find your actual name
    # This assumes a wifi only system...
    wifi-menu

    # Create partitions
    cgdisk /dev/sdX
    1 100MB EFI partition
    2 250MB Boot partition
    3 100% size partiton # (to be encrypted)
    1 100MB EFI partition # Hex code ef00
    2 250MB Boot partition # Hex code 8300
    3 100% size partiton # (to be encrypted) Hex code 8300

    mkfs.vfat -F32 /dev/sdX1
    mkfs.ext2 /dev/sdX2
    @@ -47,12 +47,13 @@ mount /dev/sdX1 /mnt/boot/efi

    # Install the system also includes stuff needed for starting wifi when first booting into the newly installed system
    # Unless vim and zsh are desired these can be removed from the command
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh vim efibootmgr dialog wpa_supplicant
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh vim git efibootmgr dialog wpa_supplicant

    # 'install' fstab
    genfstab -pU /mnt >> /mnt/etc/fstab
    # Make /tmp a ramdisk (add the following line to /mnt/etc/fstab)
    tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
    # Change relatime on all non-boot partitions to noatime (reduces wear if using an SSD)

    # Enter the new system
    arch-chroot /mnt /bin/bash
    @@ -64,6 +65,11 @@ hwclock --systohc --utc
    # Set the hostname
    echo MYHOSTNAME > /etc/hostname

    # Update locale
    echo LANG=en_US.UTF-8 > /etc/locale.conf
    echo LANGUAGE=en_US > /etc/locale.conf
    echo LC_ALL=C > /etc/locale.conf

    # Set password for root
    passwd

  8. @mattiaslundberg mattiaslundberg revised this gist Jan 26, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion arch-linux-install
    Original file line number Diff line number Diff line change
    @@ -81,7 +81,7 @@ mkinitcpio -p linux

    # Setup grub
    grub-install
    In /etc/default/grub edit the line GRUB_CMDLINE_LINUX to GRUB_CMDLINE_LINUX="cryptdevice=/dev/sdX3:luks" then run:
    In /etc/default/grub edit the line GRUB_CMDLINE_LINUX to GRUB_CMDLINE_LINUX="cryptdevice=/dev/sdX3:luks:allow-discards" then run:
    grub-mkconfig -o /boot/grub/grub.cfg

    # Exit new system and go into the cd shell
  9. @mattiaslundberg mattiaslundberg created this gist Jan 25, 2014.
    95 changes: 95 additions & 0 deletions arch-linux-install
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,95 @@
    # Install ARCH Linux with encrypted file-system and UEFI
    # The official installation guide (https://wiki.archlinux.org/index.php/Installation_Guide) contains a more verbose description.

    # Download the archiso image from https://www.archlinux.org/
    # Copy to a usb-drive
    dd if=archlinux.img of=/dev/sdX bs=16M # on linux

    # Boot from the usb. If the usb fails to boot, make sure that secure boot is disabeled in the BIOS configuration.

    # Set swedish keymap
    loadkeys sv-latin1

    # This assumes a wifi system...
    wifi-menu wlo1 # wlo1 is the device name, use ip link to find your actual name

    # Create partitions
    cgdisk /dev/sdX
    1 100MB EFI partition
    2 250MB Boot partition
    3 100% size partiton # (to be encrypted)

    mkfs.vfat -F32 /dev/sdX1
    mkfs.ext2 /dev/sdX2

    # Setup the encryption of the system
    cryptsetup -c aes-xts-plain64 -y --use-random luksFormat /dev/sdX3
    cryptsetup luksOpen /dev/sdX3 luks

    # Create encrypted partitions
    # This creates one partions for root, modify if /home or other partitions should be on separate partitions
    pvcreate /dev/mapper/luks
    vgcreate vg0 /dev/mapper/luks
    lvcreate --size 8G vg0 --name swap
    lvcreate -l +100%FREE vg0 --name root

    # Create filesystems on encrypted partitions
    mkfs.ext4 /dev/mapper/vg0-root
    mkswap /dev/mapper/vg0-swap

    # Mount the new system
    mount /dev/mapper/vg0-root /mnt # /mnt is the installed system
    swapon /dev/mapper/vg0-swap # Not needed but a good thing to test
    mkdir /mnt/boot
    mount /dev/sdX2 /mnt/boot
    mkdir /mnt/boot/efi
    mount /dev/sdX1 /mnt/boot/efi

    # Install the system also includes stuff needed for starting wifi when first booting into the newly installed system
    # Unless vim and zsh are desired these can be removed from the command
    pacstrap /mnt base base-devel grub-efi-x86_64 zsh vim efibootmgr dialog wpa_supplicant

    # 'install' fstab
    genfstab -pU /mnt >> /mnt/etc/fstab
    # Make /tmp a ramdisk (add the following line to /mnt/etc/fstab)
    tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0

    # Enter the new system
    arch-chroot /mnt /bin/bash

    # Setup system clock
    ln -s /usr/share/zoneinfo/Europe/Stockholm /etc/localtime
    hwclock --systohc --utc

    # Set the hostname
    echo MYHOSTNAME > /etc/hostname

    # Set password for root
    passwd

    # Add real user remove -s flag if you don't whish to use zsh
    # useradd -m -g users -G wheel,storage,power -s /bin/zsh MYUSERNAME
    # passwd MYUSERNAME

    # Configure mkinitcpio with modules needed for the initrd image
    vim /etc/mkinitcpio.conf
    # Add 'ext4' to MODULES
    # Add 'encrypt' and 'lvm2' to HOOKS before filesystems

    # Regenerate initrd image
    mkinitcpio -p linux

    # Setup grub
    grub-install
    In /etc/default/grub edit the line GRUB_CMDLINE_LINUX to GRUB_CMDLINE_LINUX="cryptdevice=/dev/sdX3:luks" then run:
    grub-mkconfig -o /boot/grub/grub.cfg

    # Exit new system and go into the cd shell
    exit

    # Unmount all partitions
    umount -R /mnt
    swapoff -a

    # Reboot into the new system, don't forget to remove the cd/usb
    reboot