Meanwhile I managed to get Manjaro working for my raspi5. But I had to adapt the installation script in three places.
In line 148 of manjaro-arm-installer I had to replace
sed -i 's|^Branch.*|Branch = '${BRANCH}'|' $TMPDIR/root/etc/pacman-mirrors.conf
with
sed -i 's|^..Branch.*|Branch = '${BRANCH}'|' $TMPDIR/root/etc/pacman-mirrors.conf
Because the pacman-mirrors.conf extracted from Manjaro-ARM-aarch64-latest.tar.gz looks like:
#Branch Pacman should use (stable, testing, unstable)
# Branch = stable
And “^Branch” just doesn’t match that. But “^…Branch” does.
In line 144 of manjaro-arm-installer “pacman-key” complained about not being able to access the mirrorlist file. As Manjaro-ARM-aarch64-latest.tar.gz doesn’t contain an at least empty mirror list and the mirror list is only being generated later on in the script.
Which apparently did lead to some follow-on errors during keyring setup. Adding
touch $TMPDIR/root/etc/pacman.d/mirrorlist
before line 144 did fix that.
In line 150 “pacman-mirrors” complained about missing certificates and hence was not able to generate the mirror list. At least not a mirror list with working, reasonable fast mirrors based on fasttrack option. Just the default mirror list. And some of these were so slow that later on download of the packages did fail.
Rootcause was, that while Manjaro-ARM-aarch64-latest.tar.gz contains the /etc/ssl/certs/ca-certificates.crt link the target to which it links /etc/ca-certificates/extracted/tls-ca-bundle.pem does not exist in this rootfs archive.
My fix for that was to add
cp /etc/ca-certificates/extracted/* $TMPDIR/root/etc/ca-certificates/extracted/
also before line 144 to the script. So copying certificates from the host machine. A more elegant solution would probably have been to re-create the certificate store, but well, it worked…
I still don’t understand, why the manjaro-arm-installer script apparently works for others, but I need to apply these changes.
Edit:
I double checked with an older build (20241118) of Manjaro-ARM-aarch64-latest.tar.gz
from Releases · manjaro-arm/rootfs · GitHub and
- there pacman-mirrors.conf looks different, maching the original sed command in the script
- it contains a default mirrorlist
- /etc/ca-certificates/extracted/tls-ca-bundle.pem exists
Hence my changes to the script would not have been neccessary.
So it seems there is something wrong with recent/latest Manjaro-ARM-aarch64-latest.tar.gz builds.
After re-routing all output and errors that the script sends to /dev/null to a log file, I saw also some other error messages further down in the installation process. Probably not important, as otherwise the rsulting installation wouldn’t have been functional. But I will double check these, too sometime this week.