The script manjaro-arm-installer should work in any linux environment - but as you already know - WSL is unsupported by Manjaro Linux.
Please look at the dependencies and ensure they are all installed - and yes - packages may have other names.
Clone the latest release from gitlab (bug fix release 1.5.4)
git clone https://gitlab.manjaro.org/manjaro-arm/applications/manjaro-arm-installer.git
The Ubuntu package qemu-user-static should provide the necessary files.
Upon verifying on a WSL Ubuntu 20.04 it appears the package lacks the content of /usr/lib/binfmt.d. Why that is so I don’t know - missing a package likely. A second search suggested the package binfmt-support but I have not tested.
On Arch based distribution - several configuration files is provided.
$ ls -l /usr/lib/binfmt.d/
total 124
-rw-r--r-- 1 root root 208 13 dec 10:34 qemu-aarch64_be-static.conf
-rw-r--r-- 1 root root 202 13 dec 10:34 qemu-aarch64-static.conf
-rw-r--r-- 1 root root 198 13 dec 10:34 qemu-alpha-static.conf
-rw-r--r-- 1 root root 198 13 dec 10:34 qemu-armeb-static.conf
-rw-r--r-- 1 root root 194 13 dec 10:34 qemu-arm-static.conf
-rw-r--r-- 1 root root 202 13 dec 10:34 qemu-hexagon-static.conf
-rw-r--r-- 1 root root 205 13 dec 10:34 qemu-hppa-static.conf
-rw-r--r-- 1 root root 210 13 dec 10:34 qemu-loongarch64-static.conf
-rw-r--r-- 1 root root 196 13 dec 10:34 qemu-m68k-static.conf
-rw-r--r-- 1 root root 212 13 dec 10:34 qemu-microblazeel-static.conf
-rw-r--r-- 1 root root 208 13 dec 10:34 qemu-microblaze-static.conf
-rw-r--r-- 1 root root 204 13 dec 10:34 qemu-mips64el-static.conf
-rw-r--r-- 1 root root 200 13 dec 10:34 qemu-mips64-static.conf
-rw-r--r-- 1 root root 360 13 dec 10:34 qemu-mipsel-static.conf
-rw-r--r-- 1 root root 366 13 dec 10:34 qemu-mipsn32el-static.conf
-rw-r--r-- 1 root root 362 13 dec 10:34 qemu-mipsn32-static.conf
-rw-r--r-- 1 root root 356 13 dec 10:34 qemu-mips-static.conf
-rw-r--r-- 1 root root 196 13 dec 10:34 qemu-or1k-static.conf
-rw-r--r-- 1 root root 202 13 dec 10:34 qemu-ppc64le-static.conf
-rw-r--r-- 1 root root 198 13 dec 10:34 qemu-ppc64-static.conf
-rw-r--r-- 1 root root 194 13 dec 10:34 qemu-ppc-static.conf
-rw-r--r-- 1 root root 202 13 dec 10:34 qemu-riscv32-static.conf
-rw-r--r-- 1 root root 202 13 dec 10:34 qemu-riscv64-static.conf
-rw-r--r-- 1 root root 198 13 dec 10:34 qemu-s390x-static.conf
-rw-r--r-- 1 root root 198 13 dec 10:34 qemu-sh4eb-static.conf
-rw-r--r-- 1 root root 194 13 dec 10:34 qemu-sh4-static.conf
-rw-r--r-- 1 root root 210 13 dec 10:34 qemu-sparc32plus-static.conf
-rw-r--r-- 1 root root 202 13 dec 10:34 qemu-sparc64-static.conf
-rw-r--r-- 1 root root 198 13 dec 10:34 qemu-sparc-static.conf
-rw-r--r-- 1 root root 204 13 dec 10:34 qemu-xtensaeb-static.conf
-rw-r--r-- 1 root root 200 13 dec 10:34 qemu-xtensa-static.conf
//EDIT:
After scuba-diving in the Ubuntu filetree, I discoverd a folder /usr/share/binfmts which may be equivalent on Ubuntu - but I know very little on how this is handled on other distributions so - I am guessing
UNTESTED: You may be able to work around this by symlinking the format
sudo ln -s /usr/share/binfmts/qemu-aarch /usr/lib/binfmt.d/qemu-aarch64-static.conf
Tested with Ubuntu 24.04
I have now checked a new install of Ubuntu 24.04 and installing the necessary packages now populated /usr/lib/binfmt.d BUT the filenames do not have -static in them.
So your issue is caused by and incompatible installation - create a new wsl with ubuntu 24.04
wsl --install Ubuntu-24.04
Install the necessary dependencies - as a courtesy I have noted which packages I installed on Ubuntu to make the script work
- libarchive-tools
- f2fs-tools
- systemd-container
- dialog
- qemu-efi-aarch64
- qemu-system
- qemu-system-arm
- qemu-user
- qemu-user-static
Then symlink
sudo ln -s /usr/lib/binfmt.d/qemu-aarch.conf /usr/lib/binfmt.d/qemu-aarch64-static.conf
Discovered another odditiy with Ubuntu.
The script uses localectl list-keymaps
but there is no keymaps to list and therefore setting a console keymap is not possible.
A bit of research and I found this
→ How to fix the missing keymaps in Debian and Ubuntu (localectl: Failed to read list of keymaps)
It’s a known Debian bug
A couple of minutes of research revealed an existing Debian Bug #790955, which was reported a long time ago (in July 2015). The reporter noticed the same findings as I did with no keymaps showing up using localectl.
I have been speculating if it is worth the effort to add quirks to the script to accomodate for these issues - but then I would have to rewrite when/if Debian/Ubuntu fixes their systemd implementation.
The Manjaro Team had a fulltime maintainer for ARM but due to circumstances not known to me the maintainer quit around February 2023 and therefore the Manjaro Arm section is suffering from lack of manpower.
I think your best shot is a Manjaro system to be sure everything works as expected.
Technically you use the steps outline as follows