Ade Malsasa Akbar contact
Senior author, Open Source enthusiast.
Sunday, September 20, 2020 at 15:05

Continuing my business shipping computer installation media in Indonesia, recently I shipped Arch 2020 to South Sumatra the southern province in Sumatra Island along with other GNU/Linux operating systems. Apparently, nowadays Arch is a little bit different to earlier versions back in 2019 in which the ISO file contents changed by merely a character. Default GLIM configuration won't work anymore. Thus we need a change in the configurations so new Arch will work with GLIM once again. This tutorial brings you my custom change so Arch boots in multiboot way straight from the flash drive. 

 
 (Testing a thirty two gigabyte Toshiba flash drive with Arch among other GNU distros)
Subscribe to UbuntuBuzz Telegram Channel to get article updates.



Download Arch GNU/Linux


Go to the website https://archlinux.org.

ISO Contents


The difference to old Arch iso contents is very subtle that is now it uses dash (-) rather than underscore (_) to name its initrd files. In picture below, pay attention to three files namely vmlinuz-linux, amd-ucode.img, and intel-ucode.img. This article takes example from image file archlinux-2020.09.01-x86_64.iso.


inc-arch.cfg


Create a new file with mentioned name and contents below under boot/grub/ directory. If you are new to GLIM, learn it here.
# Arch
for isofile in $isopath/arch/archlinux-*.iso; do
  if [ ! -e "$isofile" ]; then break; fi
  regexp \
    --set 1:isoname \
    --set 2:version \
    --set 3:arch \
    "^${isopath}/arch/(archlinux-([^-]+)-([^-]+)\.iso)\$" "${isofile}"
  menuentry "Arch Linux ${version} ${arch}" "${isofile}" "${isoname}" --class arch {
    set isofile=$2
    set isoname=$3
    echo "Using ${isoname}..."
    loopback loop $isofile
    linux (loop)/arch/boot/x86_64/vmlinuz-linux img_dev=/dev/disk/by-uuid/${rootuuid} img_loop=${isofile}
    initrd (loop)/arch/boot/intel-ucode.img (loop)/arch/boot/amd-ucode.img (loop)/arch/boot/x86_64/archiso.img
  }
done

grub.cfg


Edit the grub.cfg file existed in the same directory by making sure "Arch Linux" entry looks exactly like below.
for isofile in ${isopath}/arch/archlinux-*.iso; do
  if [ -e "$isofile" ]; then
    menuentry "Arch Linux >" --class arch {
      configfile "${prefix}/inc-arch.cfg"
    }
    break
  fi
done

Icon




Download the logo file archlinux.png and place it in boot/grub/themes/invader/icons/.

Final Setup


Everything should looks like screenshot below showing where to place the codes, the files, and the icon.



Booting




Once successfully made, now your bootable flash drive should run Arch GNU/Linux properly. Arch is a command line oriented LiveCD operating system. So don't get surprised when you see no graphical user interface at all except only a command prompt shell like picture above. See you later on the next distro I will make multibootable. Congratulations!


This article is licensed under CC BY-SA 3.0.