Commit Graph

181 Commits

Author SHA1 Message Date
JohnTheCoolingFan
cf7923c21f Add doas support to is_root_or_sudo_prefix
doas is not compatible with sudo flags. The codebase was checked for
sudo-specific uses of this function, but none were found, all cases were
in the form of `sudo <command>`. Replacing it with `doas <command>`
yields the same result.
2024-05-21 20:27:03 +02:00
JohnTheCoolingFan
67147b88cb Revert "Add doas support to is_root_or_sudo_prefix"
This reverts commit 324647c039.
2024-05-20 15:58:51 +02:00
JohnTheCoolingFan
7da42c8a42 Revert "Added a call to losetup -f"
This reverts commit b3d9a17a57.
2024-05-20 15:58:51 +02:00
JohnTheCoolingFan
b3d9a17a57 Added a call to losetup -f
See https://github.com/armbian/build/issues/6568
2024-05-20 08:51:39 +02:00
JohnTheCoolingFan
324647c039 Add doas support to is_root_or_sudo_prefix
doas is not compatible with sudo flags. The codebase was checked for
sudo-specific uses of this function, but none were found, all cases were
in the form of `sudo <command>`. Replacing it with `doas <command>`
yields the same result.
2024-05-20 08:51:39 +02:00
Igor Pecovnik
f0fcb29465 Create output/info early in host prepare for storing JSON files and remove JSON 2024-05-10 13:24:18 +01:00
Ricardo Pardini
1d819c7b86 prepare-host.sh: deps: add libgnutls28-dev, needed for some u-boot builds 2024-04-29 02:26:38 +08:00
Ricardo Pardini
6a242ab149 prepare-host.sh: deps: Noble dropped python3-distutils; fixes #6527
- keep it for older releases
2024-04-29 02:26:38 +08:00
Ricardo Pardini
981b1939db prepare-host.sh: deps: replace liblz4-tool with lz4
- should fix sid and trixie, which dropped the metapackage
2024-04-29 02:26:38 +08:00
Igor Pecovnik
60250d17af After bumping rk3319-box u-boot to most recent versions, we need pure-python3 library for parsing ELF and DWARF
https://github.com/armbian/build/pull/6509
2024-04-23 01:50:49 +08:00
Ricardo Pardini
cd0820a0d5 prepare-host: add libffi-dev host dependency, needed for Python3 setuptools (when prebuilt wheel not found)
- fixes errors that show up only when building on non-arm64/amd64, when there's no prebuilt wheel (eg on riscv64)
2024-04-07 13:23:34 +02:00
Ricardo Pardini
5b978dc96d lib: drop old boot_logo code; keep png/gif as they're used for plymouth
- origins of what's being dropped: https://github.com/armbian/build/pull/2065
2024-03-06 08:28:31 +01:00
Ricardo Pardini
ceed97c57b prepare-host/host-release: enable noble for building; noble also doesn't have python2 anymore 2024-03-03 16:07:19 +01:00
Ricardo Pardini
b8de0983f0 wsl2: fix: don't pester user for UTF-8 terminal if stdin is not a terminal 2024-03-02 20:48:57 +01:00
Ricardo Pardini
6e0520f3da debootstrap: remove debootstrap from host dependencies 2024-03-02 20:46:58 +01:00
Darsey Litzenberger
ce33bddb58 Make the colorized build output readable on a light background
This fixes the readability of colorized output of compile.sh when
running on a terminal with a light background.  It uses the COLORFGBG
environment variable similarly to how the ip(8) command does.

Signed-off-by: Darsey Litzenberger <dlitz@dlitz.net>
2024-02-09 19:38:03 +01:00
Gunjan Gupta
7b81255a5f Fix compilation within docker-shell 2024-02-01 21:04:23 +05:30
Igor Pecovnik
ca2ecf556e
Revert "Fix armbian-firmware-full package build."
This reverts commit 0396c65c30.
2023-12-17 13:24:45 +01:00
Kevin Schmidt
0396c65c30 Fix armbian-firmware-full package build.
Include symlinks from linux-firmware.
2023-12-17 10:32:42 +01:00
Ricardo Pardini
91a3607c0f wsl2: detect Armbian-built wsl2 kernel as well as Microsoft's default kernel
- previous commit introduces Armbian wsl2 kernels, might as well detect them
2023-11-27 11:14:01 +01:00
Ricardo Pardini
2b6a90484a docker launcher: don't lose track of the wanted host_release when setting using Armbian base image
- host_release (wanted_release_tag) was being re-computed from  DOCKER_ARMBIAN_BASE_IMAGE
- DOCKER_ARMBIAN_BASE_IMAGE might have been changed from "<os>:<release>" if DOCKERFILE_USE_ARMBIAN_IMAGE_AS_BASE != no
- that would cause host_release to be "armbian-ubuntu-lunar-latest", not "lunar"
  - which would cause python2/python2-dev to be installed, which would cause Dockerfile build to fail
2023-10-20 12:06:32 +00:00
Ricardo Pardini
f3c3fe8e82 ubuntu: add mantic (23.10), symlinks to lunar 2023-10-14 09:40:45 +00:00
Ricardo Pardini
5ed338fb60 dpkg-deb: don't use fakeroot, we're already root; don't add fakeroot dep either 2023-10-13 18:04:56 +02:00
Ricardo Pardini
19226a9c27 docker (launcher): fix DOCKER_PASS_GIT=yes to actually work
- it still sucks (very slow) but is a way to get ${SRC}/.git in Docker if needed
  - eg for patching archeology
2023-10-03 14:11:42 +02:00
Ricardo Pardini
cacd3c9b08 docker (launcher): fix un-needed grep escape \: (fixes "grep: warning: stray \ before :" on recent coreutils) 2023-10-03 14:11:42 +02:00
Ricardo Pardini
11df81403d config/lib/exts: run shellfmt
- `bash lib/tools/shellfmt.sh`
- mostly spacing changes that accumulated over time
2023-08-22 14:28:14 +02:00
Gunjan Gupta
1d6a779ed1 Drop HOST OS that doesnot support crust compilation 2023-08-22 13:03:51 +02:00
Ricardo Pardini
64b5220853
debian: add Trixie (Debian 13, testing) csc target & build host (#5621)
- Trixie, like Bookworm and Sid, does not have python2 anymore
2023-08-22 08:14:55 +02:00
WinDos6.22
bd339fca3a
Add new Linux Mint release support in host-release.sh (#5540) 2023-08-21 22:48:52 +12:00
Igor
2a8cb5793f Removing exceptions needed to support riscv64 withing Debian
Signed-off-by: Igor <igor@armbian.com>
2023-08-17 22:09:05 +02:00
Ricardo Pardini
c17a041637 prepare_host: handle PRE_PREPARED_HOST inside prepare_host_init() so WORKDIR etc is always available 2023-08-12 09:58:32 +02:00
Ricardo Pardini
eab306b279 tmpfs: introduce USE_TMPFS=no to disable tmpfs usage for WORKDIR and package-specific working dirs; actually use $temp_dir_id for mktemp; see #5502
- `USE_TMPFS=no` disables usage of generic tmpfs mechanism (still possibly used for rootfs/image building, which is unrelated), for last-resort cases
- use better/more descriptive `temp_dir_id`'s for kernel build than `k` (now `kernel_dest_install_dir`) and `kd` (now `kernel_debs_temp_dir`)
  - specific image/dtb/headers packaging already had decent names, same for other .deb's
- replace `mktemp -d` with `mktemp -d --tmpdir "${temp_dir_id}-XXXXX"` in `prepare_temp_dir_in_workdir_and_schedule_cleanup()`, so we know what's using what in tmpfs
2023-07-24 23:19:15 +02:00
Ricardo Pardini
e6f70a3573 docker: default COLUMNS env var to 160 if unset / not-interactive 2023-07-01 14:55:49 +02:00
Igor
1848366170 Revert "docker: use ${SRC} as DOCKER_ARMBIAN_TARGET_PATH instead of hardcoded /armbian"
This reverts commit 6dd7067c79.
2023-06-13 21:59:44 +02:00
Ricardo Pardini
6dd7067c79 docker: use ${SRC} as DOCKER_ARMBIAN_TARGET_PATH instead of hardcoded /armbian
- this way host-side and Docker-side `SRC` are now the same path
  - messages containing the path to a file will now match across Docker and actual host
2023-06-13 19:32:49 +02:00
Ricardo Pardini
70a64a0415 patching: Patching Summary and Patching Failures tables using Python's Rich
- even Rich'er patch output by colorizing certain strings green/yellow/red
- BASE_GIT_TAG now very sneakily also accepts a branch name
- IMPORTANT: this includes: BREAKING CHANGE: patches failing to apply now break the build. fixes #4958
  - also break on legacy `process_patch_file()` failure, remove `EXIT_PATCHING_ERROR`
2023-06-13 12:29:52 +02:00
Ricardo Pardini
1e3d5c3567 prepare-host: check_host_has_enough_disk_space(): don't check if dir does not exist; fixes #5246 2023-06-02 19:32:40 +02:00
Ricardo Pardini
31131fe14e bsp-cli/BETA: fixes for bsp-cli bootscript hashing; don't normalize bootscript vars; debugging for BETA=yes/no stuff
also:
- get rid of comments and `SUBREVISION` and `RC` variables
- better debugging in calculate_hash_for_variables() do_normalize_src_path=yes/no
- tag a few places where output/debs might wrong in face of BETA=yes/no
2023-05-25 19:30:40 +02:00
Ricardo Pardini
52710b3363 git/docker: bsp-cli: fix BUILD_REPOSITORY_URL and BUILD_REPOSITORY_COMMIT under Docker; fixes AR-1750 2023-05-24 19:20:57 +02:00
Ricardo Pardini
30eb5323f2 prepare-host: refactor disk space check; test "${DEST}" and "${SRC}/cache", no longer "${SRC}" 2023-05-21 16:18:35 +02:00
Ricardo Pardini
234232085d docker: remove dead code 2023-05-16 20:09:47 +02:00
Ricardo Pardini
c351936cb0 binfmts: hide output when loading qemu-arm under aarch64 (some are native, some are emulated, all are good, errors can be ignored) 2023-05-15 17:43:25 +02:00
Ricardo Pardini
f0f9159faa logging: curb CI/GHA special errors for cascading errors during build failure
- otherwise we get 4 errors for each "error" in CI
  - one for the real error
  - one for "wait for cleanups"
  - one for "Docker build failed"
  - one from GHA itself since command failed (we can't get rid of this)
2023-05-15 17:43:25 +02:00
Ricardo Pardini
25929ea6ac apt_purge_unneeded_packages_and_clean_apt_caches(): count files, don't use du: avoid WARNs when not needed; tolerate 1 file
- 'lock' might or not be there, tolerate 1 file (not 0)
2023-05-15 17:43:25 +02:00
Ricardo Pardini
83e35b1473 binfmts: don't raise warning if qemu-arm failed to load under aarch64 (some are native, some are emulated, all are good)
- reported by @igorpecovnik on Discord, during massive CI build, when armhf builds landed on arm64 builders
2023-05-09 10:04:57 +02:00
Ricardo Pardini
8f14f33f78 logging: squash undue warnings rootfs/aptcache
- rootfs is built with BOARD= so just live with it (idea about this warn was that families might hook rootfs build process)
- count, instead of du, apt caches. seems some empty dirs are reported as "1Mb" by du?
2023-05-09 10:04:57 +02:00
Ricardo Pardini
5316c6685b host-utils: more logging for when junk is found in image apt caches 2023-05-09 10:04:57 +02:00
Ricardo Pardini
73e9c89807 docker: fix: always mount .docker/config.json if it exists (in GHA) 2023-05-03 15:09:56 +02:00
Pander
0d72163868 Fixed execution rights docker.sh 2023-04-22 20:08:26 +02:00
Ricardo Pardini
d0716b65c0 docker/sudo: better control/info over CLI relaunch args; introduce CLI relaunch envs
- allow adding re-launch environments by populating `ARMBIAN_CLI_RELAUNCH_PARAMS` dict
- similar to `ARMBIAN_CLI_RELAUNCH_PARAMS`
- rename/consolidate `()`'s output globals:
  - `ARMBIAN_CLI_FINAL_RELAUNCH_ARGS` (rename)
  - `ARMBIAN_CLI_FINAL_RELAUNCH_ENVS` (new)
    - includes `ARMBIAN_HIDE_REPEAT_PARAMS` automatically
- `sudo`: include envs when relaunching, use bash explicitly
- `docker`: better logging
- `docker`: include envs when relaunching via `--env` args
2023-04-21 14:26:33 +02:00