Ricardo Pardini
4a9529dd34
armbian-next: qemu-uboot-arm64 and qemu-uboot-x86 new boards
...
- sharing most UEFI code, will replace the `virtual` one soon
- x86: patch uboot defconfig to use the `q35` machine type, not `i440fx`
- separate x86 bootscript, due to non-uInitrd-ness of it
- hack ramdisk load address both in u-boot source and bootscript
- use 32-bit u-boot, not 64-bit
- grub: introduce `UEFI_GRUB=skip`, does not deploy GRUB (but does the kernel packages, etc)
- auto-enable qcow2 output for these
- works with both distro's and Armbian's kernels
2023-02-18 07:40:33 -03:00
Ricardo Pardini
b951f7b873
armbian-next: u-boot: introduce hook pre_config_uboot_target()
...
- useful for hacking at Python versions and other compilation-time hacks
2023-02-18 07:40:32 -03:00
Ricardo Pardini
42e26e9ade
armbian-next: hostdeps: python2/3: add setuptools (required by some u-boot configs)
2023-02-18 07:40:31 -03:00
Ricardo Pardini
27b8ced02e
armbian-next: qcow2: introduce QCOW2_KEEP_IMG=no, which deletes the original .img after qcow2'ing it
2023-02-18 07:40:30 -03:00
Ricardo Pardini
a752ac8899
armbian-next: REVERT: remove the BUILD_ONLY build-tasks.sh which makes no sense in armbian-next
2023-02-18 07:40:29 -03:00
Ricardo Pardini
64e298f78f
armbian-next: git: add origin remote if it is empty
2023-02-18 07:40:28 -03:00
Ricardo Pardini
68b86a7d32
armbian-next: introduce PREFER_DOCKER, which acts the same as not-being-root: uses docker always
2023-02-18 07:40:27 -03:00
Ricardo Pardini
55feb9d510
armbian-next: image-output-utm core extension: produces qcow2-based UTM ZIP image
...
- `UTM`/`OVF`: discard the original .img after conversion
- UTM 3.x, also for arm64 in addition to x86
2023-02-18 07:40:26 -03:00
Ricardo Pardini
b209d8827e
armbian-next: vmware-vm core extension: enables image-output-ovf and adds some cli and desktop packages to image list
2023-02-18 07:40:25 -03:00
Ricardo Pardini
dfb0988900
armbian-next: grub: fix/hack for grub deploy inside Docker/chroot when /dev/disk/by-uuid is not present; add sanity checks
2023-02-18 07:40:24 -03:00
Ricardo Pardini
0dba98b6e8
armbian-next: aggregation.py and package-lists.sh usage in core grub-* extensions
...
- fix grub-riscv64.sh; this needs merging into grub itself later
2023-02-18 07:40:23 -03:00
Ricardo Pardini
adce39d3b7
armbian-next: aggregation.py rewrite; introduce package-lists.sh; usage in core lib
2023-02-18 07:40:22 -03:00
Ricardo Pardini
996aa14f77
armbian-next: include packages.external and apt sources only in DESKTOP builds (pre-aggregation.py)
...
- cli builds won't have PPAs and other external repos
- packages from such repos should be listed in `packages.external` now, so they're not mismatched
- `PACKAGE_LIST_EXTERNAL` (packages.external) only in DESKTOP builds
- this logic may change later, example:
- we might _also_ want pure-Ubuntu desktops, without external repos
- we might _instead_ want external repos in the cli builds
- this way is easy to change, since everything is kept separate and we can change in a single place.
2023-02-18 07:40:21 -03:00
Ricardo Pardini
578b21922e
armbian-next: call trace analyzer and call-graph generator
2023-02-18 07:40:20 -03:00
Ricardo Pardini
b2d02071bd
armbian-next: better ccache logs/stats/Docker-support/use in u-boot/kernel
...
- introduce `SHOW_CCACHE=yes` for detailed ccache statistics and logging
- fix: kernel build is done under "env -i", so pass CCACHE_DIR down to Make if CCACHE_DIR is set...
- split from kernel.sh, show stats also for u-boot targets; show compile time
- add volume definition (under `${SRC}/cache/ccache`); auto-use that in Docker builds via `CCACHE_DIR`
- better logging for `do_with_ccache_statistics()`
- there's some CCACHE_DIR code from before; unify @TODO
2023-02-18 07:40:19 -03:00
Ricardo Pardini
093336e914
armbian-next: cli: distccd launcher for build farm
...
- relaunched under docker
- possibly much nicer if zeroconf enabled?
- this thing is ignoring signals. can't ctrl-c out of it. why? @TODO
- pt 1, subpt 3: distccd - distcc-pump - avahi
- pt 1, subpt 3: distccd + distcc-pump
- pt 1, subpt 2: distccd + avahi
- pt 1, subpt 1: distccd
2023-02-18 07:40:18 -03:00
Ricardo Pardini
da0b3080a0
armbian-next: distcc: optionally using distcc for kernel build
2023-02-18 07:40:17 -03:00
Ricardo Pardini
81376df4b7
armbian-next: u-boot: use scripts/config instead of seding into the .config (BOOTDELAY, CONFIG_LOGLEVEL=6, etc); v2022.10+ only
2023-02-18 07:40:16 -03:00
Ricardo Pardini
7939257592
armbian-next: git: do not delete working copies on remote origin mismatch; accept empty origins as valid
2023-02-18 07:40:15 -03:00
Ricardo Pardini
cc62d4932a
armbian-next: introduce ARMBIAN_FIRMWARE_GIT_SOURCE and _BRANCH to allow custom firmware repository coordinates
2023-02-18 07:40:14 -03:00
Ricardo Pardini
93f0545519
armbian-next: the great aggregation rewrite: pt 0: SHOW_AGGREGATION debug logging
2023-02-18 07:40:13 -03:00
Ricardo Pardini
9fbbe897cd
armbian-next: docker: disable showing Docker volume usage; fix syntax in test for ARMBIAN_RUNNING_IN_CONTAINER
2023-02-18 07:40:12 -03:00
Ricardo Pardini
b703eb6da3
armbian-next: docker: locale-gen + enable all existing extensions before calculating docker hostdeps
...
- that way all extensions' hostdeps are included in Dockerfile
- also run locale-gen in Dockerfile
2023-02-18 07:40:11 -03:00
Ricardo Pardini
94d451b812
armbian-next: introduce hook post_family_config_branch_<branch>() as convenience after post_family_config() hook
2023-02-18 07:40:10 -03:00
Ricardo Pardini
a9e88f58e5
armbian-next: json-info command, wrapping up the Python tooling; running in Docker; fix config dump
2023-02-18 07:40:09 -03:00
Ricardo Pardini
291b02577a
armbian-next: rename compile_plymouth-theme-armbian() to compile_plymouth_theme_armbian() for consistency
2023-02-18 07:40:08 -03:00
Ricardo Pardini
75de1c2d82
armbian-next: remove usage of REQUIREMENTS_DEFS_ONLY; initialize extensions for requirements cli command & docker pre-game deps
2023-02-18 07:40:07 -03:00
Ricardo Pardini
bc7d388b49
armbian-next: cli: a bit more untangling of re-launching; introduce ARMBIAN_CLI_RELAUNCH_COMMAND and cli_standard_relaunch_docker_or_sudo()
...
- `configdump` cli: force root/docker
2023-02-18 07:40:06 -03:00
Ricardo Pardini
497a3a80ab
armbian-next: cli: de-hardcode build and docker's interdependence, via DOCKER_CLI_CMD
...
- `undecided` now directly sends to `build`, which might send to `docker`, which relaunches `build` in Docker;
- the _sending to Docker_ part probably needs refactor
2023-02-18 07:40:05 -03:00
Ricardo Pardini
d502402c1a
armbian-next: show more complete gcc versions in logs
2023-02-18 07:40:04 -03:00
Ricardo Pardini
329e249df1
armbian-next: avoid git cramps when deciding to init repos
2023-02-18 07:40:03 -03:00
Ricardo Pardini
749fc349ee
armbian-next: better handling for binfmt_misc woes; don't require it when native build & only complain if it really fails
2023-02-18 07:40:02 -03:00
Ricardo Pardini
884276cf7f
armbian-next: correctly test for systemd is-system-running --quiet
2023-02-18 07:40:01 -03:00
Ricardo Pardini
f061c9e83b
armbian-next: docker: correctly show all Armbian Docker volumes; use bind, not volume, for output/debs
2023-02-18 07:40:00 -03:00
Ricardo Pardini
4ea6519be2
armbian-next: don't uuidgen twice for no reason
2023-02-18 07:39:59 -03:00
Ricardo Pardini
606e82bcfc
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
2023-02-18 07:39:58 -03:00
Ricardo Pardini
fc3286a3f9
armbian-next: initial post-kinetic resolved debacle, for now just WARN don't break; missing resolved package in kinetic?
2023-02-18 07:39:57 -03:00
Ricardo Pardini
aaa59261bb
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
2023-02-18 07:39:56 -03:00
Ricardo Pardini
252f96967e
armbian-next: cleanup logging in distro-agnostic.sh; don't use install.log or such
2023-02-18 07:39:55 -03:00
Ricardo Pardini
c4eaf49f3d
armbian-next: cleanup extensions logging, using display_alert new levels extensions (SHOW_EXTENSIONS=yes) and extensionstrace (SHOW_EXTENSIONS_TRACE=yes)
...
- DEBUG_EXTENSION_CALLS is gone. use SHOW_EXTENSIONS instead.
- LOG_ALL_HOOK_TRACES is gone. use SHOW_EXTENSIONS_TRACE instead
- LOG_ENABLE_EXTENSION is gone. use SHOW_DEBUG=yes instead
2023-02-18 07:39:54 -03:00
Ricardo Pardini
72bc1b09d8
armbian-next: docker: don't even try to to prepare Docker, if it's not available
2023-02-18 07:39:53 -03:00
Ricardo Pardini
3e9c123dd8
armbian-next: docker: try support Rancher Desktop (in dockerd mode), experimental.
...
- Changes how Docker Desktop works too, there's a `case` for switching back if needed.
- Now the linux-only CONTAINER_COMPAT hacks are used also for Darwin (`DOCKER_SERVER_REQUIRES_LOOP_HACKS=yes`)
- `/dev/loop*` is spelled out since they don't exist on Darwin (`DOCKER_SERVER_USE_STATIC_LOOPS=yes`)
2023-02-18 07:39:52 -03:00
Ricardo Pardini
3719a059a9
armbian-next: don't force SHOW_LOG=yes during Dockerfile build; we're verbose enough without it
2023-02-18 07:39:51 -03:00
Ricardo Pardini
b3c008b0e0
armbian-next: make sure we've coreutils
2023-02-18 07:39:50 -03:00
Ricardo Pardini
7107368060
armbian-next: make sure we're running on Bash 5.x at least
2023-02-18 07:39:49 -03:00
Ricardo Pardini
19e15b8b35
armbian-next: back to including 'cli' sources/apt sources when building non-desktops (eg, nala etc)
2023-02-18 07:39:48 -03:00
Ricardo Pardini
a612a03678
armbian-next: retry 3 times for loop device's size, then give up; introduce RETRY_RUNS in do_with_retries()
2023-02-18 07:39:47 -03:00
Ricardo Pardini
b9daf6d708
armbian-next: extras/buildpkg.sh code is out [deprecated, later completely dropped]
2023-02-18 07:39:46 -03:00
Ricardo Pardini
a54e7b2fae
armbian-next: add gcc-riscv64-linux-gnu to hostdeps (crossbuild-essential-riscv64 is Ubuntu-only)
2023-02-18 07:39:45 -03:00
Ricardo Pardini
bb0e89f017
armbian-next: always include libc6-amd64-cross in hostdeps; qemu is a dummy package now, remove
2023-02-18 07:39:44 -03:00