Archlinux on Rock5b

I think so. Except that epiphany isnt launching on wayland. The system may randomly freeze or not waking up after sleep / some time of inactivity. But this is only noticeable when I was using Radxa U-boot with NVMe. I think it works much better on Armbian bootloader.

I have some pre-compiled here that I use in both my rockchip and mediatek script. Manually updated (used as backup):

Automatically updated one here:

ftp://ftp.woudstra.mywire.org/repo/aarch64

My linux for mt7622 / mt7986 bananpi boards follows linux-rolling-stable fully automated, just as any -git aur package will do. Once linux is more complete for rk3588 then I will do the same thereā€¦

I haventā€™t touched this system for over 2 months, packages are pre-built up to date :wink:

Let me know if there are any more interesting packages that I could addā€¦

thats also very nice,
i think it would be better to combine everything to 1 single repo to prevent forking and github is more generous on the bandwidth, how are you serving those files? do you have bandwidth limitations?

over 2 months, packages are pre-built up to date

some of those -git packages are meant to be auto updated with --needed flag so that pkgver will automatically be computed whenever there is a new commit: ie, gl4es-git, i have never updated it since 6 months, each commit to git repo would give a new version.

some of them i manually control the version, ie: ffmpeg-mpp. in either case your packages are kinda old :slight_smile:

2 Likes

@boogiepop,

I am trying to extract the boot partition from the pkg.tar.xz package for the installation script. To create a bootable system, we still need vmlinuz and initramfs.img, vmlinuz can be copied from /usr/lib/modules but initramfs has to be generated by dracut or mkinitcpio. I tried sudo mkinitcpio -k ā€œ$(ls $tmp_dir/usr/lib/modules/)ā€ -p ā€œ$(ls $tmp_dir/etc/mkinitcpio.d/linux-radxa-rkbsp5.preset)ā€ -g $tmp_dir/boot/initramfs.img but doesnt work. Is there anything else I need to add/modify or it cant work this way?

This is done automatically on installation by pacman. It uses the linux.preset file, which is changed during installation.

The installation script is meant to be able to run on a secondary device with an image or drive mounted, and the system can be other distro like Debian instead of Arch. So pacman isnt seem to be an option. Arch-chroot may be an option for arch, but dont seems to be a method for debian or other distros.

Thats actually right, how does the script work now? I mean i have booted an sdcard with this script already :slight_smile:
I would assume kminitcpio would have a way to do it but i need to dig in. Currently i am trying to update the linux git, bin packages and 2 new dkms packages + 1 extra patch of an existing pkg, so kinda busy, i will dig deeper when i have time.

Big kernel updates are on the wayā€¦

1 Like

I am making a workaround to this. I wrote a GitHub workflow to build initramfs.img.

Of course it isā€¦ I used this for some time:

tokland/arch-bootstrap: Bootstrap a base Arch Linux system (github.com)

But I found it does not fit in my script so well, as I want some steps different half way through. It manually installs pacman and all libraries it is linked to, so pacman can be run from a chroot.

But I now have a prebuilt version of pacman-static, which does not need the libraries, only one executable. It can run from chroot and install archlinuxarm. I have it scripted here:

2 Likes

It is always a good idea to have pacman-static installed. It can help recover when something is wrong with the installation of the basic libraries, for example glibc and such and then the normal version of pacman cannot run.

Are any distroā€™s doing mainline ready images for the Rock5 now that kernel 6.5 contains so many rk3588 updates?

https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/log/?h=next-20230831&qt=grep&q=rk3588

@stuartiannaylor

Howā€™s the mainline status? I tried monkaā€™s armbian 6.5 image last week, but it doesnt have PD support and I did not get any display output (none of the ports works).

both linux-radxa-rkbsp5-git and linux-radxa-rkbsp5-bin packages are updated with the latest config from radxa.

One onther important case is -bin kernel package has restarted the version from 1 in radxa repo, so we are also following those numbering. If you have already a -bin rkbsp package you need to reinstall the package to get updates because the current new version (-14) is lower than the previous version (-37)

This config no more uses in place kernel modules but uses dkms modules. For this reason to have a working network card and wifi/bt dongle you can install 8852bu-dkms-git, 8852be-dkms-git, r8125-dkms-git packages whihc i have newly introduced to AUR.

1 Like

@Eric_Woudstra
I am trying to run your script, on archlinux aarch64, I got failed to open /dev/btrfs-control no such device error.

and on Ubuntu WSL, it is trying to get qemu and got :

qemu-arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/local/bin/qemu-arm-static:CF
:qemu-aarch64:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\xb7:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/local/bin/qemu-aarch64-static:CF
System has not been booted with systemd as init system (PID 1). Canā€™t operate.

Where exactly? I think it is about determining the root device, so the script makes sure it wonā€™t use it. Nothing else I believe. So you can comment

[ -z $rootdev ] && exit
and
[ -z $pkroot ] && exit

But be careful what you choose.

Maybe you can help me test a few things, so that it can run nicely on your system also. Then open an issue on the github repo, and I will ask you to try some things (somewhere this week)

This is only from a tee instruction so is normal output.

Never tested on WSL, but it needs to restart the systemd-binfmt.service , but a total restart will do also.
I do not know how systemd-binfmt.service will run on WSL.
Also the rest of the script runs in a chroot, and I guess WSL does too. I think running a chroot from chroot will be at least troublesomeā€¦

@Eric_Woudstra
As I am trying to chroot on x86_64 on my script, I looked into your script and modified it like :

    S1=':qemu-aarch64:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\xb7'
    S2=':\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-aarch64-static:CF'
    echo -n $S1$S2| sudo tee /lib/binfmt.d/05-local-qemu-aarch64-static.conf
    echo
    sudo systemctl restart systemd-binfmt.service

    sudo cp /usr/bin/qemu-aarch64-static $root_mount_dir/usr/bin

I replaced /usr/local/bin with /usr/bin as I installed qemu-user-static from package manager instead.
But that means it should works.

I see that on WSL it will show some error to ask you to check systemctl status / journalctl. But you can ignore them, as it just worked.

I chose to install a version that is known to work. If using some old distribution on the host, or perhaps very new distribution, some versions of qemu-user-static give unexpected errors.

If using from standard package, then you should also use the /lib/binfmt.d/xxx.conf file that is supplied by some standard package, but that depends on which linux distribution is being usedā€¦

Note the last character F flag, check it is there. It means you donā€™t need to copy over the binary into the chrooted folder.

I will be releasing images to download using GitHub workflow, so normal users will less likely to use the script. And using latest ubuntu or arch linux, it should works well.

yes @boogiepop, Iā€™ve noticed that the phrase ā€œDoing slow software conversionā€ highlighted in yellow appears frequently in the output. There is no mention of ā€œUnable to convertā€ anywhere. I have the 16GB board, and Iā€™ve made the decision to install KDE instead of GNOME, which could be relevant information. I apologize for the delay in my response. Unfortunately, I have to balance eating, sleeping, and getting up early for work in the mornings.

Guten apetit. Make sure you have the latest version of ffmpeg-mpp. It has been verified to be fixed in 2:6.0-9 and the latest mpp-git package