ARM bootloader installation in Guix
Hi, I've been thinking of ways to generalize the bootloader installation for ARM boards. One of the most annoying parts of u-boot is that the u-boot project does NOT include bootloader installers (something like grub-install does not exist in u-boot). A possible upstream project that builds ARM images is Buildroot (it's basically a Linux distribution). First, it would [probably] be possible to use Buildroot directly, but they have different policies like using *specific* u-boot versions, toolchain and compiler versions etc--also it takes a LOT of time and space to do that, and for something as tiny as u-boot that would be kinda silly. A second way would be to use the buildroot config files and "genimage.cfg"s in order to extract (1) which u-boot configuration to use and (2) have genimage build the bootloader parts of the image (or the entire image just with empty rootfs). For that, we would (for example): * Read configs/orangepi_zero_defconfig to find: BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_zero" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_FORMAT_CUSTOM=y BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-sunxi-with-spl.bin" BR2_TARGET_UBOOT_BOOT_SCRIPT=y BR2_TARGET_UBOOT_BOOT_SCRIPT_SOURCE="board/orangepi/orangepi-zero/boot.cmd" BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y BR2_PACKAGE_HOST_UBOOT_TOOLS=y BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/orangepi/orangepi-zero/genimage.cfg" * Then read board/orangepi/orangepi-zero/genimage.cfg to find: image boot.vfat { ... which files to put there } image sdcard.img { ... which files and partitions to put there } We could reimplement genimage ourselves, but I suggest we just use genimage instead (I've packaged it in guix master). The rootfs size would need to be dynamically adjusted (the "genimage.cfg"s usually specify a fixed size)--not sure how annoying that would be. That way we could generalize u-boot bootloader installation without undue maintenance effort on our side. A possible way forward could be to implement an importer to figure out all the boards to put into gnu/bootloader/u-boot.scm, including an installer that uses genimage in order to install the bootloader (and, really, ideally partitions everything else--so it should run much earlier or else we'd have to do extra modifications that could be avoided). I've started branch "wip-buildroot" in order to do that. To try it out: * Invoke: guix import buildroot sheevaplug_defconfig * Stick the result into gnu/bootloader/u-boot.scm (with appropriate "define") * Build system image using it. (It's not finished yet but it should provide a basis for discussion...) pgpC22_0LTll3.pgp Description: OpenPGP digital signature
New Brazilian Portuguese PO file for 'guix' (version 1.0.1-pre1)
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'guix' has been submitted by the Brazilian Portuguese team of translators. The file is available at: https://translationproject.org/latest/guix/pt_BR.po (We can arrange things so that in the future such files are automatically e-mailed to you when they arrive. Ask at the address below if you want this.) All other PO files for your package are available in: https://translationproject.org/latest/guix/ Please consider including all of these in your next release, whether official or a pretest. Whenever you have a new distribution with a new version number ready, containing a newer POT file, please send the URL of that distribution tarball to the address below. The tarball may be just a pretest or a snapshot, it does not even have to compile. It is just used by the translators when they need some extra translation context. The following HTML page has been updated: https://translationproject.org/domain/guix.html If any question arises, please contact the translation coordinator. Thank you for all your work, The Translation Project robot, in the name of your translation coordinator.
New Brazilian Portuguese PO file for 'guix' (version 1.0.1-pre1)
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'guix' has been submitted by the Brazilian Portuguese team of translators. The file is available at: https://translationproject.org/latest/guix/pt_BR.po (We can arrange things so that in the future such files are automatically e-mailed to you when they arrive. Ask at the address below if you want this.) All other PO files for your package are available in: https://translationproject.org/latest/guix/ Please consider including all of these in your next release, whether official or a pretest. Whenever you have a new distribution with a new version number ready, containing a newer POT file, please send the URL of that distribution tarball to the address below. The tarball may be just a pretest or a snapshot, it does not even have to compile. It is just used by the translators when they need some extra translation context. The following HTML page has been updated: https://translationproject.org/domain/guix.html If any question arises, please contact the translation coordinator. Thank you for all your work, The Translation Project robot, in the name of your translation coordinator.
Re: Using CLISP instead of CCL to bootstrap SBCL
Hmmm, after some reading it seems that CMUCL suffers from the same issue as CCL: https://gitlab.common-lisp.net/cmucl/cmucl/wikis/InstallingCmucl I'd need to test to make sure though. -- Pierre Neidhardt https://ambrevar.xyz/ signature.asc Description: PGP signature
Re: Using CLISP instead of CCL to bootstrap SBCL
So CCL might be a lost cause. I've asked SBCL if it's OK to use CLISP 2.49 or ECL: https://bugs.launchpad.net/sbcl/+bug/1842319 Note that we could also try with CMUCL, which we need to package. Cheers! -- Pierre Neidhardt https://ambrevar.xyz/ signature.asc Description: PGP signature
Re: Using CLISP instead of CCL to bootstrap SBCL
I had a look into this, and it seems that CCL cannot currently be built without itself :( I've opened an issue on GitHub: https://github.com/Clozure/ccl/issues/222 -- Pierre Neidhardt https://ambrevar.xyz/ signature.asc Description: PGP signature