Igor Posted February 1, 2023 Posted February 1, 2023 1. Checking the progress of Armbian-next Video: https://us06web.zoom.us/rec/share/vq04OFykxpw7nGp8wJxKME7w8uNf1kMrwHRLldQLTCLJCT-zsZY8KP76aCknhBfN.JyvzRmfR9qulexM2 Slides: https://github.com/rpardini/armbian-build/blob/extensions/README.armbian-next.slides.md#update-feb-1st-armbian-next---general-changes Armbian Next Jira: https://armbian.atlassian.net/browse/AR-1451 2. Moving development related topics to GitHub Summed here: https://armbian.atlassian.net/browse/AR-1529 3. Questions around upcoming release Today is the code freeze. Actions: notify maintainers and prepare them to be ready on testings in two weeks from now notify developers: their code gets into release log only if exists in Jira. Minimum requirement is Jira issue or Jira story with Name, short description and field "Fix versions" set to 23.02 that code freeze is a milestone when we change our focus into code stabilisation and fixing bugs. It is not expected to drop existing work in progress at once but gradually close it. in the code freeze period, there is additional restriction on code merge: pull requests approval from 1 person to 2 persons @Contributor/Maintainer 1
rpardini Posted February 1, 2023 Posted February 1, 2023 here's the git shortlog; as mentioned in the meeting, I've reworded quite a bit, so this a lot longer (goes back in time further) than for other meetings. Ricardo Pardini <ricardo@pardini.net> (441): armbian-next: `lib/tools` - python - config definitions capture and massaging armbian-next: `general-packaging`, `mkdebian` and `builddeb` are NO MORE armbian-next: update defaults and comments in config file armbian-next: atf: downgrade gcc errors to warnings, so ATF 2.5, 2.2 and others can be built on modern toolchains armbian-next: fix for .bin/.elf copy from atf to uboot dir armbian-next: kernel: config: `make olddefconfig` (not `oldconfig`, which is interactive) when `KERNEL_CONFIGURE=yes` armbian-next: kernel build: always add container (series/patch-dir) mtime as minimum mtime for patch results armbian-next: do not exclude 'CC' messages from kernel make armbian-next: remove warm/cold bundles from `fetch_from_repo`, replace with 2 invocation-specific hooks and `gitballs` (.tar of .git) armbian-next: try to parse `Source: linux-5.x.y-rcZ` correctly into `VER=5.x.y-rcZ` instead of `VER=5.x.y` armbian-next: allow overriding rkbins repo URL with `RKBIN_GIT_URL` armbian-next: u-boot: introduce `UBOOT_DEBUGGING=yes` which enables `CONFIG_LOG=y` and others armbian-next: atf: add `LOG_LEVEL=40` (up from default 20) and `BUILD_STRING="armbian"` to atf make invocation armbian-next: back to ANSI logs by default; HTML logs only by `EXPORT_HTML_LOG=yes` armbian-next: u-boot: extract into functions; add hooks - for more flexibility armbian-next: python: info: replace instances of ${SRC} with literal `${SRC}` so infos are more comparable armbian-next: `check_loop_device()` now uses `do_with_retries 5 ...` to give the OS time armbian-next: introduce `KERNEL_EXTRA_DIR` to suffix `LINUXSOURCEDIR` forcefully armbian-next: kernel-localmodconfig: update `kernel_config_mtime` after running `localmodconfig`, otherwise changes not detected armbian-next: traps: cleanups: run cleanups in the reverse order they were added; allow running one single cleanup and removing from list armbian-next: cleaning: fix shortcircuits, warn about unknown clean levels armbian-next: fix logging headers in HTML/ANSI log output armbian-next: WiP: u-boot: add fasthash to u-boot armbian-next: u-boot: add debug info when hacking `CONFIG_ENV_IS_IN_EXT4` in u-boot `.config` armbian-next: `write_image_to_device`: if `SKIP_VERIFY=no`, don't waste time checksumming the image, it won't be used armbian-next: logs: avoid errors by cwd'ing to SRC armbian-next: uboot: use CFLAGS/KCFLAGS everywhere; run make through `unbuffer` (from `expect` package) for full color logging armbian-next: kernel: run kernel's make through `unbuffer` as well armbian-next: cleaning: don't complain about 'none' `CLEAN_LEVEL` armbian-next: sources/families: meson64: gx: use `python2` explicitly for calling `acs_tool.pyc`; better logging armbian-next: prepare a bin dir inside WORKDIR with a `python` symlink to `/usr/bin/python2` and add it to `PATH` armbian-next: retry apt update & apt install family packages in addition to board packages armbian-next: fix for tests of `BOOTSCRIPT` and `BOOTCONFIG!=none` armbian-next: split `early_prepare_host_dependencies()` (run early, during config, before aggregation) from `prepare_host()` (run after aggregation) armbian-next: re-add dependency `fdisk` after juggling rebases armbian-next: introduce `ARMBIAN_LOGS_TO_JOURNAL` and `ARMBIAN_LOGS_JOURNAL_IDENTIFIER` (logs `display_alert` to journald) armbian-next: debugs about armbianEnv.txt overlays/fdtfile armbian-next: deploy bootscript even if BOOTCONFIG=none armbian-next: HACK: ROOTFSCACHE_VERSION is undefined and failing everytime armbian-next: fix "create list of installed packages for debug" armbian-next: many fixes after v29 rebase; mostly involving umount armbian-next: let all unmounting of `${MOUNT}` be done by `umount_chroot_recursive` armbian-next: less verbose umount_chroot(), except after first try, so we can know what is left mounted armbian-next: bye bye `$FAST_CREATE_IMAGE`: always use `truncate` for blank image armbian-next: normalize mount/umount `$target`s to have (or not) the trailing slash armbian-next: move `resolv.conf` symlink to systemd to post_debootstrap_tweaks so customize phase has working DNS armbian-next: grub: call `VER="generic" update_initramfs` when `"${DISTRO_GENERIC_KERNEL}" == "yes"` (so ddk builds work again) armbian-next: `umount_chroot_recursive`: don't try to `realpath` unless it's a dir to begin with armbian-next: don't break if parsing `BOOT_SOC` out of `BOOTCONFIG` fails; sanity checks for `BOOT_SOC`/`DDR_BLOB` armbian-next: export `CHOSEN_KERNEL_WITH_ARCH` again, for reporting only armbian-next: `kernel`: add hooks `fetch_sources_for_kernel_driver` and `patch_kernel_for_driver` to allow migrating EXTRAWIFI stuff to extensions armbian-next: logging: don't bomb due to lack of `git` or `zstdmt` armbian-next: traps: don't duplicate error message/stacktrace when error occurs in subshell; instead indicate clearly `SUBSHELL` armbian-next: show `mkfs` ext2/ext4 output (remove `-q`), it's being run under the logging manager already armbian-next: the great cli entrypoint (+docker) rewrite; introduce `USE_LOCAL_APT_DEB_CACHE` replacing `apt-cacher-ng` armbian-next: always include `libc6-amd64-cross` in hostdeps; `qemu` is a dummy package now, remove armbian-next: add `gcc-riscv64-linux-gnu` to hostdeps (`crossbuild-essential-riscv64` is Ubuntu-only) armbian-next: WiP/TODO: `extras/buildpkg.sh` code (eg: chroot_installpackages_local) has not been handled yet, warn and don't run it armbian-next: retry 3 times for loop device's size, then give up; introduce `RETRY_RUNS` in `do_with_retries()` armbian-next: back to including 'cli' `sources/apt` sources when building non-desktops (eg, nala etc) armbian-next: make sure we're running on Bash 5.x at least armbian-next: make sure we've coreutils armbian-next: don't force SHOW_LOG=yes during Dockerfile build; we're verbose enough without it armbian-next: docker: try support Rancher Desktop (in dockerd mode), experimental. armbian-next: docker: don't even try to to prepare Docker, if it's not available armbian-next: cleanup `extensions` logging, using `display_alert` new levels `extensions` (`SHOW_EXTENSIONS=yes`) and `extensionstrace` (`SHOW_EXTENSIONS_TRACE=yes`) armbian-next: cleanup logging in distro-agnostic.sh; don't use `install.log` or such armbian-next: `mountpoints.sh` with all bind/volume directories definitions and looping func; use it to determine best bind/volume combination for each host OS in Docker armbian-next: initial post-`kinetic` `resolved` debacle, for now just WARN don't break; missing resolved package in kinetic? armbian-next: `docker`: handle the case where we can't pull, and don't otherwise have, the base image; in this case use original debian/ubuntu image armbian-next: don't `uuidgen` twice for no reason armbian-next: `docker`: correctly show all Armbian Docker volumes; use bind, not volume, for `output/debs` armbian-next: correctly test for systemd `is-system-running --quiet` armbian-next: better handling for `binfmt_misc` woes; don't require it when native build & only complain if it really fails armbian-next: avoid git cramps when deciding to init repos armbian-next: show more complete gcc versions in logs armbian-next: `cli`: de-hardcode `build` and `docker`'s interdependence, via `DOCKER_CLI_CMD` armbian-next: `cli`: a bit more untangling of re-launching; introduce `ARMBIAN_CLI_RELAUNCH_COMMAND` and `cli_standard_relaunch_docker_or_sudo()` armbian-next: remove usage of `REQUIREMENTS_DEFS_ONLY`; initialize extensions for `requirements` cli command & docker pre-game deps armbian-next: rename `compile_plymouth-theme-armbian()` to `compile_plymouth_theme_armbian()` for consistency armbian-next: `json-info` command, wrapping up the Python tooling; running in Docker; fix config dump armbian-next: introduce hook `post_family_config_branch_<branch>()` as convenience after `post_family_config()` hook armbian-next: docker: locale-gen + enable all existing extensions before calculating docker hostdeps armbian-next: docker: disable showing Docker volume usage; fix syntax in test for `ARMBIAN_RUNNING_IN_CONTAINER` armbian-next: the great aggregation rewrite: pt 0: `SHOW_AGGREGATION` debug logging armbian-next: introduce `ARMBIAN_FIRMWARE_GIT_SOURCE` and `_BRANCH` to allow custom firmware repository coordinates armbian-next: git: do not delete working copies on remote origin mismatch; accept empty origins as valid armbian-next: u-boot: use `scripts/config` instead of `sed`ing into the `.config` (BOOTDELAY, CONFIG_LOGLEVEL=6, etc); v2022.10+ only armbian-next: `distcc`: optionally using `distcc` for kernel build armbian-next: `cli`: `distccd` launcher for build farm armbian-next: better `ccache` logs/stats/Docker-support/use in u-boot/kernel armbian-next: `call trace` analyzer and call-graph generator armbian-next: include `packages.external` and apt `sources` only in DESKTOP builds (pre-`aggregation.py`) armbian-next: `aggregation.py` rewrite; introduce `package-lists.sh`; usage in core lib armbian-next: `aggregation.py` and `package-lists.sh` usage in core grub-* extensions armbian-next: `grub`: fix/hack for grub deploy inside Docker/chroot when /dev/disk/by-uuid is not present; add sanity checks armbian-next: `vmware-vm` core extension: enables `image-output-ovf` and adds some cli and desktop packages to image list armbian-next: `image-output-utm` core extension: produces qcow2-based UTM ZIP image armbian-next: introduce `PREFER_DOCKER`, which acts the same as not-being-root: uses docker always armbian-next: `git`: add `origin` remote if it is empty armbian-next: REVERT: remove the BUILD_ONLY `build-tasks.sh` which makes no sense in armbian-next armbian-next: `qcow2`: introduce `QCOW2_KEEP_IMG=no`, which deletes the original .img after qcow2'ing it armbian-next: hostdeps: python2/3: add `setuptools` (required by some u-boot configs) armbian-next: `u-boot`: introduce hook `pre_config_uboot_target()` armbian-next: `qemu-uboot-arm64` and `qemu-uboot-x86` new boards armbian-next: fix for grub's `DISTRO_GENERIC_KERNEL` on Debian (not Ubuntu) during update-initramfs armbian-next: docker: implement `docker-purge` and `docker-shell` cli commands; deprecated mountpoints armbian-next: logging: helpers for handling special logging if stdout is a terminal (user-interactive) armbian-next: non-Docker cleaning of deprecated mountpoints (before general_cleaning) armbian-next: kernel: use `git worktree` & kernel.org clone bundles for kernel working copies armbian-next: u-boot: use `git worktree` for u-boot; full mainline clone for bare armbian-next: logging: add Markdown logging output armbian-next: git: `fetch_from_repo()`: determine, use for checkout, and set the SHA1 rev in `checked_out_revision` var armbian-next: introduce `INSTALL_HOST_TOOLS=no` to skip rkbin, fips, etc. for fast(er) development armbian-next: squash some `warn` loggings that were undue; remove `$SUDO_USER` handling in prepare-host.sh armbian-next: fix all `shellcheck` `errors` in `lib/` armbian-next: `shellcheck` downloader/runner; only for `lib/` armbian-next: disable `cpufrequtils` by default; to enable set `CPUFREQUTILS_ENABLE=true` [HIGHLY CONTENTIOUS CHANGE] armbian-next: fixes for interactive config; change wording of stuff and sort the list of boards in "expert" mode armbian-next: `docker`: fix when using `buildx`, always pass `--load` so produced image is actually available to Docker proper armbian-next: a few fixes (shortcircuits...) and enhancements for the GUI building; thanks NicoD armbian-next: introduce `SKIP_ARMBIAN_ROOTFS_CACHE` which is `=yes` by default armbian-next: introduce internal base tmp dir; check it early for sanity ref `noexec` and `nodev` mount options armbian-next: Python patching delusion, pt1 & pt2 & pt3 armbian-next: introduce ORAS-based kernel git bare tree seeding/bundles armbian-next: Python patching delusion, pt4: series & better markdown armbian-next: Python patching delusion pt 5 + EXTRAWIFI patch generator/harness + consistent patch mtime targets armbian-next: make sure at least one board config file is sourced, otherwise misspell `BOARD=` is hard to find armbian-next: `docker`: don't try to double init when recovering from failed pull armbian-next: bring `find_toolchain()` back from the dead; force `SKIP_EXTERNAL_TOOLCHAINS=no` to force use external toolchains armbian-next: fix `sunxi`/`sunxi64` using wrong KERNELPATCHDIR and incurring in old symlinks armbian-next: Revert "Fix issues 4589 (#4614)" (installing HEADERS dependencies manually) armbian-next: remove spurious `output.log` redirections in downloads.sh; `warn` that `download_and_verify()` is unhandled in armbian-next armbian-next: `git worktree`: forcefully fix the worktree's reference to the bare repo, and vice-versa armbian-next: ignore git errors due to missing 'origin' remote and/or revisions of `${SRC}/.git` during main-config armbian-next: git: setup the `worktree` first before trying to ensure safe armbian-next: drop old code for patching & fasthash armbian-next: better logging for `jethub`'s tweaks armbian-next: **regen library** after some 13 squashes (and repo.sh removal) armbian-next: aggregation: fix `PACKAGE_LIST_BOARD_REMOVE`/`PACKAGE_LIST_FAMILY_REMOVE`; also remove pkgs from DESKTOP aggregation armbian-next: `exec` into `sudo` when relaunching (AR-1452) armbian-next: validate cmdline params against malformed armbian-next: `reset_uid_owner` for the markdown log file too armbian-next: remove `@TODO` for stuff already done armbian-next: `git`: use `--recurse-submodules=no` for fetch; `fetch_from_repo()` handles submodules separately armbian-next: refactor `losetup -d ...` into `free_loop_device_insistent()` which retries 10 times armbian-next: `git`: mark submodule's dirs as safe before recursive `fetch_from_repo()` armbian-next: Python patching: pass `$HOME`/`$PATH` to Python, so git can find `.gitconfig` and Python can find `git` armbian-next: add (trap) cleanup handler to reset `./tmp` and `./output` to original pre-sudo UID before exiting, even with failure/abort armbian-next: `json-info`: do not replace ${SRC} armbian-next: fix: only aggregate packages if building images (AR-1471) armbian-next: only put `systemd-resolved`'s symlink in place if _not_ using NetworkManager armbian-next: Python tools (aggregation/patching): use separate pycache dir in ./cache; use unbuffered stdout/stderr armbian-next: tune logging in multiple places, there was a lot of redundant/un-needed info's armbian-next: better logging in `distro-agnostic.sh` armbian-next: remove very old extlinux killswitch armbian-next: happy new year, bump Igor's copyright armbian-next: `grub`: make `/usr/share/desktop-base/grub_background.sh` executable, otherwise does nothing armbian-next: `drivers-harness`: remove commit-date, do proper logging & escaping for git add/commit/format-patch armbian-next: `drivers-harness`: include the revert-IPX patch as a "driver" before all others armbian-next: `mvebu.conf::family_tweaks()`: small armbian-next'ify for better logging armbian-next: clearfog/cubox/odroidxu4: patching Makefile `armv5` to `armv7-a` so uboot compiles with modern gcc armbian-next: `rockchip-rk3588` `edge` bump & armbian-next'ify armbian-next: remove spurious debug logging with no useful info "Error-related files found" WiP: try for working armhf kernel-headers. leading nowhere. move to kernel-source / make modules_prepare later. WiP: kernel-headers via full source + `make modules_prepare` for 4.19 kernels. EXPERIMENTAL armbian-next: move compilation vars (chtreads, ccache stuff) from config to compile armbian-next: move var `HOSTRELEASE` from config to `prepare_host()` armbian-next: delete old aggregation code from config armbian-next: call hook `post_aggregate_packages()` only after actually aggregating armbian-next: avoid `linux-version` during configuration; `declare -g` instead of `export` armbian-next: config: reduce bash scope & remove some vars un-needed outside of config armbian-next: `cli`: `config-dump`: can now run on any bash/coreutils-enabled machine; remove some useless vars from dump armbian-next: `cli`: `json-info`: make errors clearer; don't include logs on success; small fixes armbian-next: `drivers-harness`: pass HOME/PATH explicitly to git commit/format-patch armbian-next: `drivers-harness`: make sure cached patch is valid; write it first to tmp file; redirect inside subshell armbian-next: split of `config-prepare` into multiple functions, allowing for logging of all non-interactive sections armbian-next: [focal-host] try to support `focal`-like host OS's again, via `python3.9` (and drop `buster` completely) armbian-next: [focal-host] try to support `focal`-like host OS's again, by avoiding git's `--no-auto-maintenance` armbian-next: [focal-host] remove usages of `declare -I`, not supported under focal's `bash` armbian-next: [focal-host] run `pip3` under the `python3_binary_path` (so coerce it to use 3.9 under focal) armbian-next: [focal-host] don't use git format-patch's `--no-encode-email-headers` which is not supported on focal's git armbian-next: [focal-host] don't use git's `--initial-branch` which is not supported on focal's git armbian-next: move aggregation to after prepare_host(), and thus out of config, and with correct Python deps armbian-next: patching: to-git: don't fail if is_autogen_dir; only change Subject if not rewriting in place armbian-next: patching: add sanity checks for magic markers matching mbox len & patch_contents not containing magic markers armbian-next: patching: go through parsing & splitting all patches before stopping if there are critical errors armbian-next: copy modified config + defconfig back from where it came from when `KERNEL_CONFIGURE=yes` armbian-next: uefi-common: `declare -g`, not `export` armbian-next: patching: don't gag if empty hexsha / no archeology possible armbian-next: patching: patches-to-git: don't eat newline between subject and message armbian-next: patching: grouping tryout, very basic by-dir: `SPLIT_PATCHES=yes` armbian-next: patching: use `--zero-commit` instead of find/replace for rewrite armbian-next: further split of `config-prepare()` and `do_main_configuration()` into `do_extra_configuration()` - fixes interactive desktop armbian-next: `SYNC_CLOCK`: don't attempt if `ntpd` is running; don't fail if `ntpdate` fails for any reason armbian-next: rootfs: don't stop if `df -h` fails armbian-next: `drivers-harness`: force `-c commit.gpgsign=false` during `git commit` Docs: slides Docs: slides (updated 28/Dec/2022) Docs: slides (updated 11/Jan/2023) armbian-next: `CLEAN_LEVEL=make-kernel` now does `git clean -xfd` instead, faster and 100% clean armbian-next: better logging for early apt installs during `prepare_host_basic()` armbian-oleg: handle error during host deps installation (Oleg has a mangled sources.list?) armbian-oleg: introduce `DOCKER_SIMULATE_CLEAN=yes` so I can pretend to be Oleg, but using Docker armbian-oleg: split hostdeps again, full of ifs, and reduce the minimum set of pkgs for Oleg-conditions while trying to keep Docker full armbian-next: `apt-cacher-ng` is now optional and activated via `MANAGE_ACNG=yes`; drop `NO_APT_CACHER` armbian-next: remove old template Dockerfile, -next does not use this at all armbian-oleg: `junk`: drastically reduce host-side dependencies / "remove junk" armbian-next: curb down wget logging for ORAS tooling download armbian-next: curb down `git fetch` logging; be verbose if user on terminal & not logging armbian-next: curb `aria2c`'s complaining a bit armbian-next: curb `free_loop_device_retried()`'s logging on first try armbian-next: long overdue split of `logging.sh` armbian-oleg: logging: new logfile format; `SHOW_LOG=yes` default; introduce `DEBUG=yes` armbian-next: fix quoting of retry var (cosmetic) armbian-oleg: better logs; only include non-empty .log files armbian-oleg: curb `apt-get`'s logging with `-q` / `-qq` armbian-oleg: curb Python launcher logs armbian-oleg: curb `rsync` logging during bsp armbian-oleg: drastically curb `update-initramfs` logging, unless SHOW_DEBUG=yes armbian-oleg: drastically curb `boot_logo()` logging armbian-oleg: drastically curb `apt-get` logging when running in chroot armbian-oleg: make `chroot_sdcard_apt_get_install_dry_run()` logging more useful by filtering the noise out armbian-oleg: if commands fail, write to log in bright red armbian-next: split `compilation/debs.sh`; `compile_xilinx_bootgen()` moved to family armbian-oleg: curb logging from building `armbian-firmware` armbian-oleg: curb logging from building `armbian-plymouth-theme`; do it in a logging section, like the others armbian-next: logging: reinit logging after processing cmdline parameters armbian-next: cli: half-assed, legacy based, `kernel` and `u-boot` cli commands armbian-next: `odroidxu4` vs kernel: move firmware hack to family using extension hook armbian-oleg: logging: drastically curb / make more useful kernel packaging logging armbian-oleg: logging: disable debugging (set -x) of generated postinst/etc kernel scripts (board-side, but also chroot logging) armbian-next: kernel: deterministic `.config` mtime handling; kernel build logging sections reorg armbian-next: remove `REPO_STORAGE` and `REPO_CONFIG` -- unused armbian-next: consider "Provided" installed packages when determining what is missing from host-side dependencies armbian-next: completely remove `acl` (which provided `getfacl`) and it's usages (basic deps) armbian-next: don't copy the host's `keyrings` to image armbian-next: Python tooling: use consolidated+hashed+cached pip base/pycache; don't pip during Dockerfile build, nor cli-requirements armbian-next: add core extension `c-plus-plus-compiler` which hostdeps on `g++-aarch64-linux-gnu` and enable it in JetHub family armbian-next: core extensions for `xfs` / `f2fs` / `brtfs` / `LUKS/cryptroot` hostdeps; enable in main-config armbian-next: Docker: abstract away and only run "docker info" once, it's very expensive armbian-next: `rootfs`: bunch'o'fixes, introduce `disable_systemd_service_sdcard()` to stop repeating incantantion armbian-next: don't warn about using extlinux armbian-next: a bunch of checks for Darwin; use brew's GNU coreutils first in PATH, so we get the correct utils; give instructions armbian-next: better logging for `kernel_prepare_bare_repo_from_oras_gitball()`; remove dead code armbian-next: fix re-launching of CLI commands under sudo (Docker was ok) armbian-next: `patching`: don't complain about missing files when the patch parsed OK and file was actually deleted armbian-next: `patching`: don't rewrite empty desc as "None" armbian-next: `patching`: remove quotes from author name during parsing armbian-next: `patching`: avoid mangling valid utf-8 from mbox'es armbian-next: `patching`: parse renamed source files, don't swallow them during rewrite armbian-next: optimize `config_source_board_file()`, now 600x faster by not reusing (slow) code from interactive armbian-next: optimize for `CONFIG_DEFS_ONLY=yes`, skipping stacktraces/git info armbian-next: introduce `POOR_MAN_PROFILER=yes` (under `ANSI_COLOR=none`) armbian-next: `docker`: fix Dockerfile output indentation & warning msgs about generation armbian-next: make sure temporary `kernel` and `u-boot` CLI commands always build a kernel/u-boot even if cached armbian-next: debug note about fstab with tmpfs in chroot armbian-next: mark Vagrant CLI as unimplemented armbian-next: `docker`: use dash-lines before/after launching docker; set `ARMBIAN_INSIDE_DOCKERFILE_BUILD=yes` when it is so armbian-next: `traps`: allow for cleanup handlers with arguments; unify around `run_one_cleanup_handler()` armbian-next: `ccache`: show more in ccache debugging armbian-next: make superglobals readonly (`DEST/WORKDIR/LOGDIR/SDCARD/MOUNT` and others) armbian-next: introduce `tmpfs-utils.sh`; put `LOGDIR` and `WORKDIR` under tmpfs; set `CCACHE_TEMPDIR` under `WORKDIR` armbian-next: split `prepare_host()`, fix `.tmp` reset trap armbian-next: do basic host checks before config if interactive, or during prepare-host if not armbian-next: tmpfs-utils: last-resort debugging, to stderr, of failed tmpfs unmount armbian-next: logging: squash nasty leaking file descriptor bug due to "tee" armbian-next: bring back `swig` hostdep -- needed for some u-boot's armbian-next: severe bug, countdown counted up armbian-next: kernel: cleanup bundle after patching succeeded, not after build success armbian-next: firmware: don't build `-full` firmware if not on CI/noninteractive and board's not going to use it armbian-next: `chroot_sdcard_apt_get_update()` to replace and better log `chroot_sdcard_apt_get update` armbian-next: extensions: rename `kernel-localmodconfig` to just `lsmod` armbian-next: docker: remove old code armbian-next: try harder to get `en_US.UTF-8` logging armbian-next: drop dead/duplicated code for bootsplash and mark kernel-drivers.sh (which includes bootsplash) as dead code armbian-next: extract `move_images_to_final_destination()` and optimize for fast-move when src/dst on same filesystem armbian-next: tune logging: unmounting, u-boot prep/source/install; traps; extensions armbian-next: don't leak `.raw` image if failure before move; show rootfs-tmpfs info armbian-next: `mktemp` and `tmpfs` related utility functions with automatic cleanup handlers armbian-next: small cleanups: squash typos / add function keyword / add types / mark dead code armbian-next: small cleanups: squash typos / add function keyword / add types / mark dead code armbian-next: add logging with size of actual built rootfs in MiB; debug tmpfs in trap & after pkgs done armbian-next: still fighting `tee` leaking under duress, and I think I won armbian-next: `compile_firmware()`: use new temp dir helpers (saves 2Gb+ in WORKDIR), fix typos armbian-next: severe bug, there was no prefix-emoji for Windows armbian-next: allow shortcut `EXT=` to the overly-long and plural `ENABLE_EXTENSIONS=` armbian-next: use retries for downloading ORAS tooling armbian-next: aggregation.py vs create-cache.sh: better hashing, much desktop armbian-next: patching.py vs decent logging: better, but not there yet Docs: slides (not-updated 18/Jan/2022) armbian-next: nextify "Re-enabling support for Rpi3" armbian-next: still fighting `tee` leaking under duress, turns out I _hadn't_ really won armbian-next: still fighting `tee` leaking: now I think I won, again armbian-next: somewhat-better handling/logging when using Docker (don't show two logfiles to inspect) armbian-next: rename too-long main function to `prep_conf_main_build_single()` armbian-next: hopefully improved error logging; avoid logging errors up to 3x; subdued red stacktraces armbian-next: `patching`: less horrible patching log, pt 37 armbian-next: fix missing `BOARD_TYPE` armbian-next: `git`: show "fetch completed" info, lest user thinks fetch is hanging while checking out armbian-next: `patching`: less horrible patching log, pt 38: downgrade utf-8 mbox to log warning, mark as problem armbian-next: fix ATF build under binutils 2.39+ via `TF_LDFLAGS=--no-warn-rwx-segment` armbian-next: add Debian Ports keyring hostdep to strap Debian riscv64 from ports armbian-next: `countdown`: split off file for countdown functions (countdown-to-abort and countdown-to-continue) armbian-next: `kernel`: `git`: split via-ORAS and via-Bundle tangle armbian-next: `kernel`: `git`: remove dead code, `GIT_PRE_FETCH_HOOK` / `checked_out_revision_mtime` armbian-next: replace bare `sync` invocations by introducing `wait_for_disk_sync()`; sync early at start of build armbian-next: adaptive shallow/full Kernel git bare git (3gb -> 300mb download) armbian-next: fix, don't try to get pid descendants on non-Linux (fixes Darwin cleanups) armbian-next: darwin: try to get rid of `.DS_Store` sneaky bastards before launching Docker armbian-next: back to cleaning downloaded bundles/gitballs after they've converted to bare tree & proven working armbian-next: git: detect, and stop, when git bare trees vs worktrees have been shuffled around and can't be recovered armbian-next: git: disallow forcing impossible shallow/full; warn if it's the case armbian-next: docker: archive logfiles again; warn & greet testers when archiving many old logfiles armbian-next: logging: new log file / summary nomenclature armbian-next: bsp: use `prepare_temp_dir_in_workdir_and_schedule_cleanup()`; bring back `PACKAGES_SEARCH_ROOT_ABSOLUTE_DIRS` armbian-next: firmware-deb.sh: prefix temp dir so it's "deb-firmware" armbian-next: extensions: move 'extensions.sh' into library; replace manual source with init function armbian-next: fix ANSI logs, use reset at strategic places armbian-next: `docker`: don't bomb if stdin is not a terminal (eg, in CI) armbian-next: `docker`: pass `CI` env down to Docker (for GHA etc) armbian-next: python/pip: solve crazy with `/usr/bin/pip3` by not using it (instead, `python3 -m pip`); don't mask errors armbian-next: `docker`: warn & countdown if we can't write to `cache/docker`; continue by using `.tmp/docker` if not aborted. armbian-next: countdown: if to test `-t 0` (0: stdin, 1:stdout) for interactive-ness; also test in if-not-aborted version armbian-next: interactive: info msg before (slow) gathering of all boards armbian-next: logging: (very, very early beta) for uploading/sharing of ANSI log file online armbian-next: kernel/logging: stop lying about LD/AR/INSTALL/SIGN/XZ make output armbian-next: patching: accept b4's magic marker `git@z Thu Jan 1 00:00:00 1970` for mbox validations armbian-next: mark `remove_all_trap_handlers()` deprecated, it never did anything armbian-next: downloads.sh: some cleanup and add debugging to `get_urls()` armbian-next: `logging`: validate where not already in a logging section when trying to start a new one armbian-next: `apt`: expand local caching to include package lists, as well as .deb's armbian-next: `main`: split `default-build` into `build-packages`, `start-end` armbian-next: `rootfs`: split `create-cache` into `rootfs-create` armbian-next: `rootfs`: new CLI command for rootfs cache building; further refactorings armbian-next: `rootfs`: adapt to new reality after huge refactor armbian-next: `aggregation`: dont' require or consider `BOARD` or `LINUXFAMILY` for aggregation anymore armbian-next: `rootfs`: build rootfs from CLI, sans-BOARD, sans-FAMILY, etc -- rootfs are meant to be shared armbian-next: `rootfs`: reset UID of produced rootfs tarball; announce what is doing and what has done armbian-next: `rootfs`: converge `rootfs-cache` and `rootfs` together; exchange BOARD for ARCH armbian-next: use unified methods for tmp dir handling all around (except ATF, which is special) armbian-next: extensions: `nomod`: for when you really don't care about modules armbian-next: we don't really need target `RELEASE` defined to install host deps (for now), don't freak out about it armbian-next: kernel-debs: re-enable postinst debugging; fix bad builddeb port for zImage armhf (image_name == NAME_KERNEL) armbian-next: cleanup, kill and add to-do's, remove dead code, turn down logging, squash future shortcircuit bugs armbian-next: extrawifi: include `driver_uwe5622_allwinner()` in harness armbian-next: extrawifi: include all `patch/misc/wireless*.patch` and `patch/misc/*wifi*.patch` in drivers hash calculation armbian-next: kernel-debs: force `arch/arm/boot/zImage` as vmlinuz for armhf armbian-next: kernel-debs: squash some warnings; add `KERNEL_SRC_ARCH` to arch configs; don't warn about `NAME_KERNEL` armbian-next: wait_for_disk_sync(): warn only if more than 30s fsync armbian-next: binfmt: make sure we have all `binfmt`'s setup & enabled for `rootfs` build (v2) armbian-next: `docker`: don't spew errors about sharing cache if cache doesn't even exist armbian-next: GHA & rootfs adventures, pt 1 armbian-next: aggregation: quick & dirty "potential paths" in Markdown armbian-next: cli: `kernel` cli forces `KERNEL_CONFIGURE=no`; @TODO this should only "default to", not force. for proper kernel cli, later armbian-next: logging: pure ASCII .log; included in Markdown for GHA armbian-next: docker/gha: pass down a bunch of GHA specific vars (list unconfirmed) armbian-next: rootfs: curb logging; GHA outputs `rootfs_cache_id_version`, `rootfs_cache_id` and `rootfs_out_filename_relative` armbian-next: ext: `grub-riscv64`: syncs with original version, fixes, nextify armbian-next: ext: `grub-sbc-media`: syncs with original version, fixes, nextify Docs: slides (1-slide update 25/Jan/2023) armbian-next: drop buildpkg code armbian-next: patching: rewrite: don't gag on bad "/dev/null.c" rename patches; archeology: `--find-copies-harder`; try to get GHA to run GH pages armbian-next: chroot_sdcard_apt_get_install_dry_run(): run again if first try fails, with more logging armbian-next: `docker`: passthrough of the SSH agent, via Docker magic on Darwin; enable for `docker-shell` and `kernel-patches-to-git` armbian-next: `docker`: include `${SRC}/.git` static via Dockerfile, for `kernel-patches-to-git` / archeology; use fast archeology armbian-next: all chroots: mount `/var/tmp` as tmpfs; create dir `/run/user/0` and mount as tmpfs @TODO cleanups armbian-next: docker: pass `ARMBIAN_ENABLE_CALL_TRACING=yes` via env, and only if `DOCKER_ARMBIAN_ENABLE_CALL_TRACING=yes` armbian-next: compress-checksum: move config to config-prepare; drop weight; kill warnings armbian-next: repeat build opts: fix missing BOARD, show both after config (for logfile) & after build armbian-next: bump logging archive greet to 14 files armbian-next: fix: kernel-git-oras: make sure `cache_git_bare_dir` exists before trying to decide which media it's on armbian-next: git: `fetch_from_repo()`: add fetched_revision(_ts) as well as checked_out_revision(_ts); introduce param `do_checkout=no` to only fetch, not checkout armbian-next: cli-build: don't show two `BOARD=` repeat option armbian-next: aggregate_packages out of `main_default_start_build()`; introduce `assert_requires_aggregation()` armbian-next: firmware-deb: reworked: Provides/Conflicts instead of Replaces; `cp` -> `git archive`; new firmware CLI; FULL version .deb out of tmpfs armbian-next: unify 2 methods for config: `prep_conf_main_minimal_ni()` (rootfs/firmware/kernel) and `prep_conf_main_build_single()` (full-build, possibly interactive) armbian-next: curb some logging for git non-checkouts armbian-next: prepare-host: don't manage ACNG in prepare if not asked to armbian-next: docker: fix: not all `find`'s are made equal, back to `-mtime +1` (full 24-hour period needed for match) armbian-next: interactive: review `-t 0` instead of `-t 1`; move non-interactive `check_basic_host()` from prepare-host to config-prepare, for consistency armbian-next: move aggregation-had-run check to more strategic places (pre-bsp, pre-rootfs) instead of at the beginning of full_build_packages_rootfs_and_image() armbian-next: docker: split `docker_cli_build_dockerfile()` into `docker_cli_prepare_dockerfile()`; introduce `FAST_DOCKER` armbian-next: git: refactor `git_parse_ref()` out of `fetch_from_repo()` for reuse armbian-next: config: twist `prep_conf_main_minimal_ni()` to receive `use_board=` armbian-next: do-not-fix docker-asking-for-docker error by adding a "tip" armbian-next: cli: *do not* allow running as root on terminal; make `PREFER_DOCKER=no` actually work armbian-next: cli: try (and fail, probably...) to be helpful with half-working Docker installs WiP: artifacts: kernel - pt1: versioning WiP: artifacts: kernel - pt2: memoizing git ref2info WiP: artifacts: kernel - pt3: drivers+patches+.config hashing WiP: artifacts: kernel - pt4: squash unrelated bugs that show up; move `prepare_compilation_vars()` to default build WiP: artifacts: kernel - pt5: tune kernel version, refactor WiP: artifacts: u-boot - pt6: add artifact for u-boot WiP: artifacts: u-boot/kernel - pt7 - adapt legacy/artifact versions; use common `capture_rename_legacy_debs_into_artifacts()` armbian-next: logging: detect `TERM=alacritty` and use normal instead of gray armbian-next: fix: for the 1000th time had broken `KERNEL_ONLY=yes`; curb some warnings armbian-next: introduce `assert_prepared_host()` and assert before using any Python, to un-mask any further fallacies armbian-next: take a breath: config might mark aggregation required; aggregation requires prepare_host, and thus runs in default-build armbian-next: logging: ansi-haste sharing beta 2 (now with URL) armbian-next: docker: fix Dockerfile generation; don't output logs info during Dockerfile build armbian-next: u-boot: downgrade more errors to warnings, so we can build some legacy u-boot's armbian-next: cli: u-boot alias: don't stop to interactively ask for kernel configuration during u-boot build armbian-next: call-stack-analyze.py: detect missing function_to_file and stop properly (half-finished traces?) armbian-next: json-info: cleanup info/json/csv/opensearch, add logging, add some very basic instructions; add Kibana dashboards & docker-compose to bring it OS+Kibana up armbian-next: shellcheck: update, cleanup script, invent some new severities armbian-next: shellcheck: squash a bunch of 'critical' warnings armbian-next: shellcheck: raise the bar, stop excluding "SC2155 Declare and assign separately to avoid masking return values" armbian-next: squash some shellcheck warnings; don't `local` and assign subshell value in same statement, that masks errors (`declare`/`local` almost-always works) armbian-next: shellcheck: raise the bar, stop excluding "SC2154 is referenced but not assigned" armbian-next: shellcheck: squash more shellcheck warnings; some long-lost variables being used; some unset's that are better reset's, etc armbian-next: `docker-shell`: provide SSH and forward ssh auth socket to `docker-shell` armbian-next: docker: pass `CARD_DEVICE` to Docker via `--device` armbian-next: u-boot: mark bare repo as safe before using it (@TODO `git_ensure_safe_directory()` stuff, again) armbian-next: swap github in as default u-boot mirror; allow `denx` to use upstream's gitlab armbian-next: git ref2info: dereference annotated tags to get "real" commit SHA1; fail if curl failed; validate parse_makefile_version() armbian-next: hash/cache: remove some cruft, some better logging armbian-next: docker: pass down git info via env var, since Docker doesn't get `${SRC}/.git`, yet we need that info in the Docker logs armbian-next: u-boot: fix: check gcc version before trying to downgrade certain errors to warnings [kinetic] un-symlink `cli`/`main` `kinetic`->`jammy` packages; add `systemd-resolved` which was split off from main `systemd` package in Kinetic `risc-v`/`starfive`: new `starfive` family with their (vendor) kernel `risc-v`/`starfive`: use mainline kernel 6.1.y, with StarFive's rebased patches against `v6.1.5` `risc-v`/`starfive`: `CONFIG_MOTORCOMM_PHY=m` for the onboard Ethernet `odroidc2`: u-boot: use minimal patchset for v22.01 u-boot `meson64`: edge/6.2: spi-nor: add support for XT25Q64 in addition to XT25F128B `meson64`: edge/6.2: bump to `6.2-rc5` `meson64`: edge/6.2: rebase onto `v6.2-rc5` `odroidm1`: enable working userland `fw_setenv`, so users can go back to Petitboot & otherwise tweak u-boot env from Armbian `odroidm1`: bump to 6.2-rc3; look ma, no patches. `media`: fixes for bad mbox/unneeded patches `media-edge` and `media-current` - thanks to @schwar3kat `sunxi/sunxi64`: disable some sunxi/sunxi64 "readme" patches that contain other patches -- for discussion `rk322x-box`: fix relative path reference to .bin in patch (a-n changed u-boot path on disk) - for @paolosabatino `rockchip64`: current/5.15: remove IPX revert patch that's already in drivers now `rockchip64`: current/5.15: fix bad unidiff/lack of mbox of wifi-hf-lps170-bl602.patch & makefile odroidm1: edge: bump to `6.2-rc5` `sun50iw9`: half-fixes to get going under armbian-next (@TODO needs review/nextify/confirm busybox is not needed) WiP: bump edge to `v6.2-rc6` for UEFI / meson64 / rk3568-odroid / rockchip-rk3588 `meson64`: edge/6.2: arm64: dts: amlogic: meson-sm1-odroid-hc4: fix active fan thermal trip WiP: `odroidhc4`: u-boot to 23.01; add HC4-SPI target preboot for USB; change HC4-SD target defconfig to new `hc4_sd`, similar to `c4` Revert "Add some Wireless modules to RK3588 legacy kernel (#4759)" Docs: slides (2-slide update 01/Feb/2023) Igor <igor@armbian.com> (2): armbian-next: cli: add CLI alias command `rootfs-cache` for creating rootfs cache armbian-next: rootfs: introduce `ROOTFS_COMPRESSION_RATIO`, default 5 for general use, default 15 for `rootfs` CLI; fix pv | tar bug; remove GPG signing Lane Jennison <lane@lane-fu.com> (1): armbian-next: fix old fuction name refrence cleaning to general_cleaning Richard Neese <r.neese@gmail.com> (1): `risc-v`/`starfive`: switch from `grub` to `extlinux` Tony <tonymckahan@gmail.com> (1): armbian-next: officially support WSL2; pester user for UTF-8 terminal amazingfate <liujianfeng1994@gmail.com> (1): `rockchip64`: update bl31 and ddr blobs of rk3568 [cherry-pick]
rpardini Posted February 8, 2023 Posted February 8, 2023 This week's shortlog. Really short, this time, since most of the artifacts stuff isn't included yet. Ricardo Pardini <ricardo@pardini.net> (19): armbian-next: tmpfs: use `size=99%` for all tmpfs's; (rootfs/WORKDIR/chroot); thanks Igor for suggestion armbian-next: armbian-kernel: default .config options set for all kernels armbian-next: git: backport `safe.directory` method from master (just add `*`, once) -- thanks Igor armbian-next: logging: introduce `SHARE_LOG=yes` to auto-curl the logs to paste armbian-next: logging: introduce `RAW_LOG=yes` to export .tar with raw unprocessed logs (for development) armbian-next: tooling: include ORAS tools in Dockerfile; use them if available instead of downloading armbian-next: tooling: introduce helper/downloader for shellcheck; include in Dockerfile armbian-next: rootfs: include hash of rootfs bash code in the `packages_hash`/`rootfs_cache_id` armbian-next: debs: introduce `shellcheck` for `DEBIAN/postinst` and others, before dpkg build armbian-next: python/pip: include pip pkgs in Dockerfile; use them if available instead of downloading armbian-next: rootfs: fix: too many bash files included in rootfs `B` hash, reduce to only what is used to produce rootfs tarball armbian-next: qemu-uboot-xxx: bump to 23.01; use GitHub source for u-boot armbian-next: binfmts: suppress error message when trying to emulate armhf on arm64 armbian-next: git/ref2info: fixes for using `commit:<sha1>` armbian-next: kernel: pkg: dtb: show 2 levels of dtbs in tree armbian-next: bsp-cli: fix shellcheck warning armbian-next: armbian-kernel: force `CONFIG_LOCALVERSION_AUTO=n` and `DEBUG_INFO=n` Docs: slides (consolidated, 08/Feb/2023) ------------------------ armbian-next END marker ----------------------------- Kreyren <kreyren@fsfe.org> (3): boards/README: Document SKIP_ARMBIAN_REPO `bookworm`: has new/separate repos for non-free-firmware (#4801) [cherry-pick] distro-agnostic: `dropbear-initramfs`: make sure directory exists SteeManMI <barrylind@yahoo.com> (1): `meson64`: `current`: Enable MGLRU on meson64-current [cherry-pick] amazingfate <liujianfeng1994@gmail.com> (1): `rockchip64`: update bl31 and ddr blobs of rk3568 [cherry-pick]
Recommended Posts