Page MenuHomeFreeBSD

arm: add a release conf for distribution files
ClosedPublic

Authored by mhorne on Apr 22 2021, 1:39 PM.

Details

Summary

We do not currently generate armv7 distribution sets, because we don't
build any installer images. However, having such sets available can be
useful for quickly installing a base system, particularly in the case
of creating an armv7 poudriere jail on arm64.

Add a configuration file for the generation of these distribution sets.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision is now accepted and ready to land.Apr 22 2021, 1:53 PM

I'd thought this was the plan for 13.

I think it might be a bit more complicated than this configuration file suggests, but please go ahead and commit it, and we'll work out the edge cases (if any) as they occur.

In D29923#671549, @gjb wrote:

I think it might be a bit more complicated than this configuration file suggests, but please go ahead and commit it, and we'll work out the edge cases (if any) as they occur.

Indeed, I have not seen any results appear at https://download.freebsd.org/ftp/snapshots/arm/armv7/ so maybe there is something else needed on the release builder side.

I also don't see any 14.0 snapshots for arm64, but there are present for other architectures. Is this a known issue?

In D29923#671549, @gjb wrote:

I think it might be a bit more complicated than this configuration file suggests, but please go ahead and commit it, and we'll work out the edge cases (if any) as they occur.

Indeed, I have not seen any results appear at https://download.freebsd.org/ftp/snapshots/arm/armv7/ so maybe there is something else needed on the release builder side.

This is related to below, I think.

I also don't see any 14.0 snapshots for arm64, but there are present for other architectures. Is this a known issue?

Yes. There was a missing change to use the git repository for ports. They should be available this week.

In D29923#678538, @gjb wrote:

Yes. There was a missing change to use the git repository for ports. They should be available this week.

Hi, just checking in again. I didn't see any output in the last two runs either, presumably there are still issues with the build?

In D29923#678538, @gjb wrote:

Yes. There was a missing change to use the git repository for ports. They should be available this week.

Hi, just checking in again. I didn't see any output in the last two runs either, presumably there are still issues with the build?

Yeah, I'm aware there haven't been any distribution sets produced.

I have an idea of what the problem is, but have been too busy the past few days to dig into it further. It is indeed on my todo list, however, and I haven't forgotten about it. Sorry for the delay. :(

In D29923#684550, @gjb wrote:
In D29923#678538, @gjb wrote:

Yes. There was a missing change to use the git repository for ports. They should be available this week.

Hi, just checking in again. I didn't see any output in the last two runs either, presumably there are still issues with the build?

Yeah, I'm aware there haven't been any distribution sets produced.

I have an idea of what the problem is, but have been too busy the past few days to dig into it further. It is indeed on my todo list, however, and I haven't forgotten about it. Sorry for the delay. :(

All good! Thank you for the update :)

Just ran into this again (while doing some investigation related to f90cd1ae30b5f49e9f6ea58a0628ce1c8d8822bc) - looking forward to when these get added.

Just ran into this again (while doing some investigation related to f90cd1ae30b5f49e9f6ea58a0628ce1c8d8822bc) - looking forward to when these get added.

Yeah, this has been on my todo list for some time, and I finally had some time to look into this over the past two or so weeks.

There are two simultaneous problems here:

  • There is no equivalent to 'make -C /usr/src/release ftp' for arm, only for "big iron" platforms (arm64 included to a point).
  • There is no way to easily differentiate some of the older stable branches u-boot version (i.e., sysutils/u-boot-rpi versus sysutils/rpi-firmware, and quite honestly, I have lost track of what gets installed where and on which branch at this point).

That said, it is not necessarily a 'release.conf' issue, but the issue that 'src/release/Makefile' does not have an 'ftp' equivalent target for creating the .txz distribution sets for armv6,armv7. And after poking around at release/Makefile*, I honestly cannot remember how the hell the arm64/aarch64 FTP (base.txz, kernel.txz, etc.) sets are created.

I may need some sleep and/or some liquid courage to back-track through the arm64/aarch64 FTP dist sets and into how to properly create them for armv6,armv7.

In D29923#786580, @gjb wrote:

Just ran into this again (while doing some investigation related to f90cd1ae30b5f49e9f6ea58a0628ce1c8d8822bc) - looking forward to when these get added.

Yeah, this has been on my todo list for some time, and I finally had some time to look into this over the past two or so weeks.

There are two simultaneous problems here:

  • There is no equivalent to 'make -C /usr/src/release ftp' for arm, only for "big iron" platforms (arm64 included to a point).
  • There is no way to easily differentiate some of the older stable branches u-boot version (i.e., sysutils/u-boot-rpi versus sysutils/rpi-firmware, and quite honestly, I have lost track of what gets installed where and on which branch at this point).

That said, it is not necessarily a 'release.conf' issue, but the issue that 'src/release/Makefile' does not have an 'ftp' equivalent target for creating the .txz distribution sets for armv6,armv7. And after poking around at release/Makefile*, I honestly cannot remember how the hell the arm64/aarch64 FTP (base.txz, kernel.txz, etc.) sets are created.

I may need some sleep and/or some liquid courage to back-track through the arm64/aarch64 FTP dist sets and into how to properly create them for armv6,armv7.

Ah, I just realized that the 'ftp' distribution sets are created as a part of the '{bootonly,disc1,dvd1}.iso' targets. So, that particular mystery is solved.

In any case, I will get back into adding similar functionality for armv6,armv7 very soon.