On Wed, 5 Dec 2018 03:38:59 +0000 Luke Kenneth Casson Leighton lkcl@lkcl.net wrote:
it was quite hilarious to get up and running. https://wiki.parabola.nu/MIPS_Installation - oh. discontinued. that's not going to help *sigh*.
You also have an ARM installation guide[1], however in your case that's probably not the easiest way to deal with it.
There is a way to use LXC to do a cross-pacstrap, however it's a bit tricky.
If you don't have Parabola installed already, install it on your GNU/Linux distribution. It should be something like that (I didn't test that though): 1) First install and setup virt-manager 2) Create a disk image that you can mount externally: # cd /var/lib/libvirt/images/ # qemu-img create -f raw parabola.raw 1G 3) Run the installation with the install media 4) boot the installed rootfs and run # pacstrap /mnt 5) power off the vm and copy the /mnt outside of the vm, then setup a loop device # udisksctl loop-setup \ -f /var/lib/libvirt/images/parabola.raw 6) Copy the /mnt outside of the rootfs 7) Setup LXC through virt-manager to be able to use systemd 8) Install and setup the OpenSSH server inside the LXC system vm 9) Install the required packages: # pacman -S qemu-user-static-binfmt libretools
Then trick is to: 1) export the /proc/sys/fs/binfmt_misc/ from the host to the /proc/sys/fs/binfmt_misc/ from the target in virt-manager. 2) run /usr/lib/systemd/systemd-binfmt by hand (I didn't manage to make the binfmt systemd service start)
Once that is done you can then create a chroot for building packages[2]: $ sudo librechroot -A armv7h -n parabola-armv7h make # arch-chroot /var/lib/archbuild/parabola-armv7h
Or you could create an installation rootfs: # mkdir parabola-armv7h # pacstrap -C /usr/share/pacman/defaults/pacman.conf.armv7h \ parabola-armv7h/ # arch-chroot /var/lib/archbuild/parabola-armv7h
If you want to use a different kernel (like a deblobbed Allwinner Linux kernel) that is way older it would be best to: 1) Make a PKGBUILD for it. That can be integrated in Parabola very easily 2) libremakepkg is an abstraction on top of makepkg which enables you to build in a chroot, including chroot of different architectures. $ cd /path/to/directory/that/has/a/PKGBUILD $ sudo libremakepkg -n parabola-armv7h 3) You will need to use OpenRC if systemd doesn't support your old kernel version
I've verified that with librechroot under a Parabola LXC under a Parabola host and I got: # file[...]/usr/bin/bash [...]/usr/bin/bash: ELF 32-bit LSB shared object, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 3.2.0, BuildID[sha1]=2ed90c858f8b750764b9ef6ebf6e23499640e3c9, stripped
If you need serial console with OpenRC, I've written some documentation for it with another device in mind here: https://libreplanet.org/wiki/Group:Hardware/Freest/e-readers/Aura_H2O_Editio...
I hope that it's still useful, especially if you need to build things. Also note that I'm new to Parabola development, so there might be even easier ways that I don't know of yet.
References: ----------- [1]https://wiki.parabola.nu/ARM_Installation_Guide [2]There is no Linux image in it. You can use libremakepkg to build packages in this chroot[3] [3]https://wiki.parabola.nu/Package_maintainer_guide
Denis.