* always use http for apt repos
* pass possible proxy arguments to docker
* populate lower-case env variables with upper-case ones if not set otherwise
The current script can overwrite drivers which are set as built-in in
the board-specific config. This is not desirable.
Add a check to ensure we do not convert built-in stuff into modules.
Signed-off-by: Ayush Singh <ayush@beagleboard.org>
This was introduced in 6.2 but was removed from the kernel code
in 6.15.
We are currently building cores for sunxi starting from 6.6.
Therefore, a simple replacement without conditions.
If the array exists in this location, initializing an empty array
will destroy all the data that was stored in it.
Do not initialize an empty KERNEL_DRIVERS_SKIP array if it exists.
This allows us to create an array anywhere in the script,
including the user configuration, in a secure way.
- we've too much logic in `chroot_sdcard_apt_get()` we need to re-use
for eg debfoster or any extensions that need to manipulate the apt
cache (which is handled via mounts in that function)
- `chroot_sdcard_apt_get()` now accepts a `chroot_command` env var,
defaulting to `apt-get`
- `chroot_sdcard_custom_with_apt_logic()` splits the params and calls
`chroot_command=... chroot_sdcard_apt_get ...` allowing for custom
calls
Use all parameters to display_alert()
```
[🐳|🌱] Running in container [ Adding provisions for container building ]
[🐳|🌱] Adding package to 'host_dependencies' [ python3-setuptools ]
[🐳|🌱] Python2 not available on host release 'noble' [ ancient u-boot versions might/will fail to build ]
```
- aimed at nanopi-r2s and nanopineo3
- impacts:
- boards (re)using 'nanopi-r2s-rk3328_defconfig' (rk3328)
and:
- boards using U-Boot v2022.04 or
- boards using U-Boot v2022.07
- added explicit dependency on python3-setuptools as (at least) U-Boot
v2022.04 and v2022.07 fail building due to missing 'distutils' for
boards that use U-Boot v2022.04 or v2022.07
- 7s+ -> 3s
- by using `enable_extensions_with_hostdeps_builtin_and_user "add_host_dependencies" "host_dependencies_known"` instead of `enable_all_extensions_builtin_and_user`
I don't know. This doesn't feel right. The package exists in Jammy, Noble and Bookworm in both amd64 and arm64 variants so should be good...though it is probably not needed in all constellations.
Still it is part of the toolchain and not generic packages. If this gets merged as it is this should be revisited.
- we might want to have different welcome colors for stable and nightly images
- this adds another branding option alongside with VENDOR, VENDORURL, VENDORSUPPORT, ...
- Replace `armbian.list` with `armbian.sources`. This holds the same
information in a newer format, deb822.
- Replace HTTP with HTTPS for Armbian repositories.
- python3-pip implies a very old setuptools (which is system-wide and takes precedence)
- python3-dev implies python3-distutils (which is long deprecated)
- get-pip.py allows us to version pip in requirements.txt just like everything else
- in the end this fixes the conundrum with pylibfdt / dtschema on Jammy
- and, finally, the setuptools we specify in requirements.txt will be actually used
- turns out `pahole` for `vmlinux` can take multiple gigabytes of RAM to run successfully
- I can't simply decide based on available RAM, as that would make .config hashes mismatch
- thus, introduce:
- default is to enable BTF; if on low-ram host, error out unless KERNEL_BTF=yes is passed
- if KERNEL_BTF=no is passed, the BTF debug info is always disabled
- if KERNEL_BTF=yes is passed, then a warning is produced, but BTF is still enabled
- the magic number "6451 MiB" was determined empirically (and is probably bs)
- Replace creation of `armbian-config.list` with
`armbian-config.sources`. This holds the same information in a newer
format, deb822. This does not affect `armbian.list`.
See also: https://github.com/armbian/configng/pull/407
- we need to run the hooks _before_ running oldconfig, otherwise it is too late
- drop `kernel_config_check_and_repair()` since it won't ever detect anything now
* Refactor armbian-config into install as external package
- https://github.armbian.com/configng repository is always present
- package can still be removed from the install list
Since this tool will have deeper integration with Armbian, we should probably drop possibility to remove the tool from the list.
* Enable armbian-config as extension
- `post_repo_customize_image`: runs after repos have been enabled
- `post_armbian_repo_customize_image`: same, but only if Armbian repo is enabled
- both run after apt update, so packages can be directly installed from repos
- with DEBUG=yes, allows us to see what is leftover in directory during builds
- with new cleaning in separate commit, there shouldn't be any leftovers _at all_
- with this, every u-boot build will be a full rebuild.
- still, building u-boot is pretty fast
- and it is better to be a bit slower and actually produce correct results
- incl some indicative fdt/extlinux/gpt info
- include full config and defconfig for each target
- mark the old .config file as legacy (it was always the last-target's config)
- fix: savedefconfig after build, not before (as target_map might change it)
- fix: some very old u-boots (2011, odroidc1) do not have `savedefconfig` at all, so make it optional
- fix: same for `.config` -- very old u-boots worked different (`boards.cfg`?)