summaryrefslogtreecommitdiff
path: root/libre/uboot4extlinux-sunxi/PKGBUILD
AgeCommit message (Collapse)Author
2022-03-31treewide: clarify the maintainer situation on packages lacking oneDenis 'GNUtoo' Carikli
The status quo is that any Parabola hacker is expected to (be able to) modify any packages, and having a single maintainer of a package discourages that practice as people would typically send a patch to the maintainer instead of pushing it directly. So for a start we can add common maintainership on package lacking any "Maintainer: " header for packages in repositories that are supposed to be maintained. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-03-24libre: uboot4extlinux-sunxi: switch upstream to not redistribute any nonfree ↵Denis 'GNUtoo' Carikli
software If we use prepare() instead of mksource(), we end up redistributing nonfree software inside the package source, and it would be better not to have to do that as this could potentially create licensing issues. The standard solution to avoid that in Parabola is to use mksource(), however while this worked fine with other packages, I didn't manage to make it work with this package, probably because the package code is complex and that we don't fit into simpler cases handled by mksource(). The complexity here comes from the need to lower the maintenance cost of supporting multiple ARM computers and setups: the automation enables to more easily add new computers, make testing way faster, and simplify the installation instructions. Since at the end of the day the goal was to share this deblobing work with other FSDG compliant distributions, I looked for a distro neutral project that could be interested in deblobing u-boot and which has also some infrastructure that we could reuse for that (this avoids costs in time and money of setting up new infrastructure and of maintaining it). As Libreboot planned to add support for u-boot anyway and that its build system is distribution neutral, it was a good fit. As for the ability to have patches merged in Libreboot for u-boot-libre, the initial discussions were complicated: - Libreboot releases sources and binaries of bootloaders targeting specific computers. So it would be natural to deblob u-boot and on top of that, add support for specific computers in Libreboot in the exact same way it is done for the computers that are supported through deblobed versions of Coreboot. However here we want the various distributions (like Parabola and Guix) to be able to use deblobed u-boot source tarballs that follow very closely upstream u-boot releases, and that only have changes related to deblobing. Linux-libre does the latter and this makes it very easy for FSDG compliant distributions to reuse it as-is. When adding support for specific computers through u-boot, Libreboot would instead be more interested in having specific configuration through u-boot environment and/or by combining u-boot with other bootloaders like GRUB. It would also be interested in having the ability to choose specific u-boot versions and specific extra patches to support specific computers. As distributions and Libreboot requirements are very similar (they both need to deblob u-boot) and also slightly different, it was not easy to get that point across, and I hope that people reading this commit also get the point across. - Once I managed to get an agreement that doing that was a good idea and that I would be able to get my code merged (provided that the code quality was good) and have Libreboot release the files needed, I started to implement the code, but I found out week(s) later that the agreement was gone. The fix for that was simply to restart explaining it all from scratch and get an agreement again. Beside the initial complications, getting the code reviewed and merged was really fast (each patch serie review took 1 week or less) and we can now just ping the Libreboot maintainer on IRC to get files released. According to the Libreboot maintainer I'm the de-facto maintainer of the u-boot related code in Libreboot, so I'll probably have to be involved somehow in reviewing the code, and then we need to ping her to get the code merged. The discussions were done in #libreboot on liberachat, and the merge requests were sent against Libreboot repositories (both lbmk and lbwww) in notabug, so following a similar method will probably result in future patches being merged rapidely if we hope/assume that I will manage to review the patches as fast as the Libreboot maintainer did. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2021-12-16uboot4extlinux-sunxi: Fix u-boot FSDG complianceDenis 'GNUtoo' Carikli
U-boot contains some nonfree software, for instance nonfree microcode in arch/x86/dts/microcode/, so this commit removes that. This commit also removes instructions to install nonfree software. While these instructions were not shipped in any of the binary pakcages generated by this PKGBUILD, it's still a good idea to also clean that up in the long run: - Parabola has also PKGBUILDs for other SOCs, and ideally we could expand to cover as many computers as possible if the computers are supported in upstream projects (like u-boot) and that they don't require too much extra maintenance. Having already a cleaned up u-boot to base the PKGBUILDs on could help factorizing the code and sharing the work on the u-boot code review process. - Other FSDG compliant distributions already have u-boot (like Guix) or might be interested in shipping u-boot (like Replicant), so it would be a good idea not to duplicate the work again and again. In the future the code that removes the nonfree software and the problematic documentation should be moved in a reusable script (that could still be run in mksource), possibly in its own package, in order to be reusable accross different distributions and u-boot PKGBUILDs. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2021-07-06libre: uboot4extlinux-sunxi: fix missing python-setuptoolsDenis 'GNUtoo' Carikli
When building uboot4extlinux-sunxi with libremakepkg we have the following error: | BINMAN all | Traceback (most recent call last): | File "/build/uboot4extlinux-sunxi/src/u-boot-2021.07/./tools/binman/binman", line 39, in <module> | from binman import control | File "/build/uboot4extlinux-sunxi/src/u-boot-2021.07/tools/binman/../binman/control.py", line 11, in <module> | import pkg_resources | ModuleNotFoundError: No module named 'pkg_resources' | make: *** [Makefile:1084: all] Error 1 | ==> ERROR: A failure occurred in build(). In u-boot 2021.07 in tools/binman/control.py, line 11 we have: import pkg_resources To find the package having pkg_resources we can use python to find the files implementing it: $ python Python 3.9.5 (default, May 27 2021, 07:33:37) [GCC 11.1.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import pkg_resources >>> help(pkg_resources) At the end of the help we see the following: FILE /usr/lib/python3.9/site-packages/pkg_resources/__init__.py And we can finally use pacman to find the package having that file: $ pacman -Q -o /usr/lib/python3.9/site-packages/pkg_resources/__init__.py /usr/lib/python3.9/site-packages/pkg_resources/__init__.py is owned by python-setuptools 1:52.0.0-1.0 Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2021-07-06libre: uboot4extlinux-sunxi: workaround linter issues on ppc64leDenis 'GNUtoo' Carikli
When running parabola-repolint[1] for ppc64le, there is the following error or warning: unhandled SRCINFO key: "makedepends_ppc64le" (makedepends_ppc64le = arm-none-eabi-gcc) As ppc64le is still experimental, we can safely remove it from the supported architectures in this PKGBUILD to avoid creating too much noise for the people working on the ppc64le port of Parabola. This is a real concern as oaken-source, who run this parabola-repolint had that issue and discussed with me about it on the #parabola IRC channel on liberachat. [1]https://git.parabola.nu/~oaken-source/parabola-repolint.git/ Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2021-07-06libre: uboot4extlinux-sunxi: fix pkgdesc for the C.H.I.PDenis 'GNUtoo' Carikli
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2021-07-06libre: uboot4extlinux-sunxi: update to 2021.07Denis 'GNUtoo' Carikli
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2021-07-05libre: uboot4extlinux-sunxi: lower maintenance costsDenis 'GNUtoo' Carikli
- We can now do cross builds of u-boot: - We can now more easily work on the package as we don't need an ARM computer for that anymore. - It also enable people already using Parabola on x86 to more easily install, test, or repair u-boot for an ARM computer as users can simply install it on microSD cards without needing to use ARM chroots. - There is now an install script to install u-boot: - It makes things easier for users as it is more similar to grub-install than dd commands. - It also does many checks at the same time to avoid data loss. - The commands to split packages are now shared between all package_ functions. This lower maintenance. - How to add a new board has been made more clear. Comparison with other distributions (for consistency): - u-boot doesn't have anything to handle the installation and update of u-boot binaries if UEFI is not used. - Debian has an u-boot-install-sunxi script which handles way more cases than what I wrote (it even handles GPT and so on and even has a manual), but there seems to be no tools to update u-boot. - Openembedded doesn't seem to have anything special in the u-boot recipe in openembedded-core Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2021-02-03Revert "[WIP] Enable cross build of u-boot"Denis 'GNUtoo' Carikli
This commit was accidentally pushed to master instead of a branch. This reverts commit 0a65e2a74db2ccc00dbf2c18f80f147ea29a99e6.
2021-02-03[WIP] Enable cross build of u-bootDenis 'GNUtoo' Carikli
TODO: - Create a hook script - Finish the u-boot-sunxi-install script - Add dependencies for the install script (utils-linux) - Test on real hardware (lime2, pcduino-lite) Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2020-06-14uboot4extlinux-sunxi: Update to 2020.04, Fix extlinux.confDenis 'GNUtoo' Carikli
There is some documentation in board/sunxi/README.sunxi64, however we don't have packages for 64bit versions of u-boot yet. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2019-11-11libre: uboot4extlinux-sunxi: update to 2019.10Denis 'GNUtoo' Carikli
Other changes - extlinux.conf: - Added the initramfs in the example configuration - Added rootwait parameter in case the rootfs takes time to appear Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2019-03-05libre: uboot4extlinux-sunxi: fix images pathDenis 'GNUtoo' Carikli
All packages built fine. This was also tested on a Lime2-EMMC: - Booting worked fine with a extliux.conf tailored for the configuration of the device being tested. - An external display was connected to it and it worked in u-boot, during boot and showed a console at the end. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2019-02-27libre: uboot4extlinux-sunxi: improve build and package in /boot/u-boot/imagesDenis 'GNUtoo' Carikli
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2019-02-27libre: uboot4extlinux-sunxi: drop patch and useless sedDenis 'GNUtoo' Carikli
0001-parabola-arm-modifications.patch should not be necessary anymore as u-boot configuration are now setup to support configuration options for common GNU/Linux distributions. More details are available in doc/README.distro in the u-boot source code. As for the sed command in prepare, the binman files already have #!/usr/bin/env python2 in the current u-boot version. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2019-02-27libre: uboot4extlinux-sunxi: sync with uboot4extlinux-am335xDenis 'GNUtoo' Carikli
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2019-02-21libre: uboot4extlinux-sunxi: update to 2019.01Denis 'GNUtoo' Carikli
After reflashing it (in the postinstall) on a lime2 A20 with EMMC, and rebooting, it booted fine. Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2019-02-21libre: uboot4extlinux-sunxi: Add support for the eMMC version of the Lime2Denis 'GNUtoo' Carikli
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2017-10-30uboot4extlinux-*: updpkgsumsIsaac David
2017-10-30uboot4extlinux-*: get in sync with current kernelsIsaac David
2017-09-12Updated Emulatorman's and Coadde's email addressesDavid P
2017-07-11mv libre{-testing,}/uboot4extlinux-sunxiIsaac David
2017-06-09libre-testing/uboot4extlinux-*: new versions and configsIsaac David
also patch old u-boot tarballs to build with gcc7
2017-06-04uboot4extlinux-*: minor fix (updpkgsums)Isaac David
2017-06-04uboot4extlinux-*: track current kernel images, pkgrel bumpIsaac David
2017-03-06uboot4extlinux-sunxi: move package to [libre]André Fabian Silva Delgado
2016-03-02move uboot4extlinux packages to [libre-testing] since it aren't stable yetAndré Fabian Silva Delgado
2016-02-26uboot4extlinux-sunxi: add new package to [libre]André Fabian Silva Delgado