[Guide] Install manjaro ARM minimal headless on RPI4 with WiFi

This post will Guide you on how to install Manjaro ARM minimal headless on a RaspberryPi using wifi. Many people don’t have ethernet and using a monitor to setup is PITA.

This will work on Any RPI version with wifi (3b, 3b+, zero w etc). Heck it may also work with any SBC with wifi.

There is an old post in manjaro archived forums which worked fine till manjaro ARM switched to iwd for network from wpa_supplicant. So here is the new tutorial which works with latest ARM images.

In case this helps someone, here are the steps I used to write a minimal RPI4 (headless with WiFi) on a Linux/Windows system.

You will need:

  • A PC with Linux/windows
  • Internet or WiFi connection
  • SD card to write Manjaro ARM RPI4 minimal
  • USB Stick/Thumbdrive if you use Method 2 (will be used to boot live X64 Manjaro on your PC, if you are already using manjaro then you don’t need this)
  • A brain (must)

Method 1 (Recommended). Create Manjaro ARM minimal bootable USB-Stick using BalenaEtcher

Method 2. Create Manjaro ARM minimal bootable USB-Stick using manjaro-arm-installer

This method will require you to have a manjaro live environment using Live USB or by installing manjaro. I see no use of this method and is but its still there for documentation.

If you have manjaro installed into your PC then skip to step 5.

  1. Download Manjaro PC ISO from manjaro.org (Download any edition which works for you. For beginners i recommend the KDE or GNOME edition)

  2. Create a bootable USB-Stick. (You can also use BalenaEtcher or Ventoy to create USB stick. I use Ventoy to have multiple ISO in single stick)

  3. Boot your PC from the USB-Stick

    • Note: you may have to configure your system to allow booting from the USB-Stick instead of Windows.
    • This is explained here in ‘Booting into the Live-System’ section.
    • Select item “Boot: Manjaro…” from the “Welcome to Manjaro” menu:
      • Choose “proprietary” if you use a Nvidia graphics card or need wireless.
      • Choose “free” if you are using an Intel or AMD GPU or know that everything will work without proprietary drivers.
    • Use the arrow keys and carriage return to select
  4. After booting into the desktop, If you don’t have wired Internet access, connect to your WiFi.

  5. Install the manjaro-arm-installer package. Open terminal and type:
    sudo pacman -Syy manjaro-arm-installer

  6. Insert the destination SD card/SSD into your PC

  7. Determine the device name of the SD card
    lsblk -f

    WARNING: be sure to note the correct name of your SD card/SSD, as other accessible devices may include your Windows drive(s)! In my case it was ‘sdb’, your case may be different.

  8. Run manjaro-arm-installer from terminal
    sudo manjaro-arm-installer

  9. Answer all the prompts for: Device, Edition, User, SDCard, Timezone, Locale, Hostname, etc.
    After some minutes (depending on your network and PC speed) your SD card will have a minimal destribution on it.

Setup WiFi on the RPI4 minimal SD card from your PC

  1. Your new SD card will have two paritions, with labels ‘BOOT_MNJRO’ and ‘ROOT_MNJRO’. Find your SD card and look for ‘ROOT_MNJRO’ partition via lsblk -f.
    Mine SD-card was sdb and mine ‘ROOT_MNJRO’ partition was sdb2, yours may be different.

  2. You want to access the ROOT_MNJRO partition by mounting it to a new directory:

    • sudo mkdir -p /mnt
    • sudo mount -o rw /dev/sdb2 /mnt . Replace sdb2 with your ROOT_MNJRO partition location
  3. Manjaro ARM switched to iwd for managing networking. so we will create iwd config file and fill it with our wifi’s SSID and password.

    • Create Wifi settings file. Replace ‘Wifi_name’ with your wifi SSID
      sudo mkdir -p /mnt/var/lib/iwd
      sudo touch /mnt/var/lib/iwd/Wifi_name.psk
    • Add wifi details. Replace ‘Wifi_name’ with your wifi SSID and ‘Password’ with your wifi password in below 2 lines also.
    echo "[Security]" | sudo tee -a /mnt/var/lib/iwd/Wifi_name.psk
    echo "Passphrase=Password" | sudo tee -a /mnt/var/lib/iwd/Wifi_name.psk
  4. Finally Unmount the sd card/ssd (use sudo umount /mnt)

  5. Plug the sd-card/ssd to RPI and boot.

  6. If you used Method 1, make sure to ssh using root@<ip-addr> and you will be asked to complete the setup.
    If you used Method 2, ssh using <username>@<ip-addr> where <username> is the one you setup while installing.

Some Links to tuts that i used.

Thanks to chman from whom post i took most content.

Reserved for 2nd post

Reserved for 3rd post