Commit Graph

196 Commits

Author SHA1 Message Date
tabris
fc9c989904 framework - extension_hook_opt_out 2026-01-08 12:07:56 +01:00
cantalupo555
504ccc45d2 fix: replace comm with grep to support uutils coreutils
Ubuntu 25.04+ replaced GNU coreutils with uutils coreutils, a Rust-based
reimplementation of Unix core utilities. These are different projects
with the same package name:

- GNU coreutils 9.x (C) - Ubuntu ≤24.04
- uutils coreutils 0.x (Rust) - Ubuntu ≥25.04

The uutils comm doesn't recognize sort output as sorted, causing
"comm: file is not in sorted order" errors.

Replace comm patterns with:
- grep -vxFf for set difference (lines in B but not in A)
- sort | uniq -d for finding duplicates

These alternatives don't depend on comm, ensuring compatibility
with both GNU and uutils coreutils.
2026-01-02 21:52:32 +01:00
Igor Pecovnik
4d60ce08f2 chore: update copyright years to 2026
Update all copyright notices in shell scripts from 2025 to 2026.

## Changes

- **Igor Pecovnik**: 2013-2025 → 2013-2026 (129 files)
- **Ricardo Pardini**: 2023-2025 → 2023-2026, 2020-2025 → 2020-2026 (5 files)

## Additional Improvements

Also updated the backtitle in `lib/functions/configuration/interactive.sh`:
- Changed title from "Armbian building script" to "Armbian Linux build framework"
- Removed docs link for cleaner display
- Uses dynamic year calculation with separate declaration (fixes shellcheck SC2155)
2025-12-25 12:03:34 +01:00
Viacheslav Bocharov
492b96aeeb fix(apt-utils): add fallback for Ubuntu LTS releases without -updates suffix in JSON
Problem: armbian-base-files artifact for jammy fails to build because
apt_find_upstream_package_version_and_download_url() looks for 'jammy-updates'
in https://github.armbian.com/base-files.json, but only 'jammy' key exists.

Root cause:
- For Ubuntu LTS (focal, jammy), code sets package_download_release to '${RELEASE}-updates'
- JSON file from github.armbian.com only has base release keys (jammy, noble, etc)
- jq query returns null for 'jammy-updates'
- Artifact excluded from build matrix after 10 retries

Solution: Add fallback logic
- First try with '-updates' suffix (jammy-updates)
- If not found and release ends with '-updates', retry with base release (jammy)
- This allows using base release data when -updates is not available

Impact:
- Fixes jammy base-files artifact build
- Allows jammy images to build (they depend on this artifact)
- Maintains preference for -updates when available
- No impact on other releases (Debian, non-LTS Ubuntu)
2025-12-22 21:26:37 +01:00
github-actions[bot]
7828271e27
tools: Bump BATCAT_VERSION from 0.26.0 to 0.26.1 (#9083)
Co-authored-by: igorpecovnik <6281704+igorpecovnik@users.noreply.github.com>
2025-12-17 18:34:07 +02:00
Igor Pecovnik
b1ee4a5252 Fixing updating submodule 2025-11-18 13:08:18 +01:00
igorpecovnik
d30f8d02ce tools: Bump BATCAT_VERSION from 0.25.0 to 0.26.0 2025-11-16 10:04:35 +01:00
tabris
76403b4d3f build machinery - replace wget with curl cuz reasons 2025-10-17 19:33:20 +02:00
Igor Pecovnik
68a98a6f7f ORAS tools parameter deprecation: since v1.3 verbosity is by default 2025-09-28 06:43:30 +02:00
diverger
fc3cc6b6e3 fix(build): eliminate the error message when no extension found in a folder in building
In the building when there is not any extensions with given pattern exist, 'enable_extensions_with_hostdeps_builtin_and_user()' will throw errors such as: 'Error 123 occurred in SUBSHELL SUBSHELL at /<some-path>/lib/functions/general/extensions.sh:582'. The changes will eliminate the error message and add prints to show the current searched folder and extensions count found in the folder.

Signed-off-by: diverger <diverger@live.cn>
2025-09-21 19:45:13 +02:00
igorpecovnik
d0343953a0 tools: Bump ORAS_VERSION from 1.2.3 to 1.3.0 2025-09-16 07:18:17 +02:00
Jianfeng Liu
ed561311a3 kenrel makefile: use Makefile url from ghproxy github repo for mainline kernel if GITHUB_MIRROR is set to ghproxy 2025-09-11 11:17:55 +08:00
The-going
5fd4306699 main-config: Add gitverse repo for kernel source 2025-08-26 04:56:04 +08:00
The-going
f57e935603 MAINLINE_GOOGLE_MIRROR: fix to https://kernel.googlesource.com/*/linux-stable.git 2025-08-26 04:56:04 +08:00
EvilOlaf
33d4b2c13b add recursion when umounting /sys 2025-08-16 17:44:15 +02:00
igorpecovnik
e6448a22e3 tools: Bump SHELLCHECK_VERSION from 0.10.0 to 0.11.0 2025-08-16 21:15:44 +08:00
Jianfeng Liu
fb363e8829 add initial loong64 support 2025-08-04 17:34:24 +08:00
Ricardo Pardini
10570df804 extensions: introduce enable_extensions_with_hostdeps_builtin_and_user()
- this is an alternative to `enable_all_extensions_builtin_and_user()`
- this one greps the files for the hooks we're interested in
2025-05-29 17:58:28 +02:00
igorpecovnik
384daea694 tools: Bump ORAS_VERSION from 1.2.2 to 1.2.3 2025-05-16 19:00:58 +02:00
Igor Pecovnik
5216e732cd Revert "add in cache to the image, allowing caching in customize image step"
This reverts commit 9eaa276457.
2025-05-15 16:43:51 +02:00
Ben Hoff
9eaa276457 add in cache to the image, allowing caching in customize image step 2025-05-14 17:19:23 +02:00
Franklyn Tackitt
58a3d74eec fix: update jq in apt-utils to use filter arguments
This fixes the issue where jq sometimes fails to compile the filter when parsing
base-files.json
2025-04-19 07:56:05 +02:00
Igor Pecovnik
4530b26278 Revert "Stop altering global git config file and set safe per cloned repository"
This reverts commit ccde662ccb.
2025-03-16 17:26:49 +01:00
Igor Pecovnik
ccde662ccb Stop altering global git config file and set safe per cloned repository 2025-03-16 11:53:56 +01:00
Ricardo Pardini
370f85b067 python3: do not rely on hostdeps python3-pip nor python3-dev; deploy pip via get-pip.py
- 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
2025-02-24 09:21:53 +01:00
github-actions[bot]
7ea4cb3b8d
tools: Bump BATCAT_VERSION from 0.24.0 to 0.25.0 (#7706) 2025-01-21 13:28:56 +01:00
igorpecovnik
1557c9fcf0 tools: Bump ORAS_VERSION from 1.2.1 to 1.2.2 2025-01-21 13:28:08 +01:00
Ricardo Pardini
f21e700dc6 git: squash spurious warning when checking safe.directory 2025-01-21 13:25:36 +01:00
igorpecovnik
b1232edaa2 tools: Bump ORAS_VERSION from 1.2.0 to 1.2.1 2024-12-31 11:52:48 +01:00
amazingfate
b11a6fd872 apt-utils: fix hard-coded GHPROXY_ADDRESS 2024-12-18 21:03:51 +01:00
Ricardo Pardini
6d9a06bf72 shellfmt: lib/functions; no changes 2024-11-25 11:32:28 +01:00
Igor Pecovnik
0b656192a9 Switch to action artifacts that was moved to .org 2024-11-20 15:22:21 +08:00
amazingfate
e1815dfeb7 apt-utils.sh: get base-files package version from GHA 2024-11-20 15:22:21 +08:00
IsMrX
dfe8fc39e8 Enable oras pull to use system proxy 2024-09-13 22:02:17 +02:00
Ricardo Pardini
e4032228dd oci-oras: fix for ORAS > 1.x, as it now requires HOME to be set (fixes download-artifact)
- it hasn't HOME when run under the matrix-prepare multiprocess launcher, so use TMPDIR
- fixes https://github.com/armbian/build/pull/6964
2024-07-21 10:24:23 +02:00
igorpecovnik
e5fe080b0a tools: Bump BATCAT_VERSION from 0.23.0 to 0.24.0 2024-07-20 09:15:13 +02:00
igorpecovnik
f1e63eb8df tools: Bump ORAS_VERSION from 0.16.0 to 1.2.0 2024-07-20 09:14:56 +02:00
igorpecovnik
984050a2df tools: Bump SHELLCHECK_VERSION from 0.9.0 to 0.10.0 2024-07-20 09:14:06 +02:00
Viacheslav Bocharov
d73c4cefab Fix check CI && GITHUB_ACTIONS for GITHUB_OUTPUT to only GITHUB_ACTIONS
Signed-off-by: Viacheslav Bocharov <adeep@lexina.in>
2024-07-04 21:35:26 +02:00
Igor Pecovnik
f4555df0ba Revert "git: git_ensure_safe_directory(): use env vars instead of changing config"
This reverts commit 11245601d0.
2024-07-03 17:31:05 +02:00
Ricardo Pardini
11245601d0 git: git_ensure_safe_directory(): use env vars instead of changing config 2024-07-03 06:49:56 +02:00
Gunjan Gupta
cea2fc5b46 Lets not spam users with error message on fresh checkout 2024-06-27 23:14:15 +02:00
ColorfulRhino
9ff35b77b9 cli: python-tools: Add toolchain to PATH to fix building wheels 2024-06-25 18:11:43 +02:00
ColorfulRhino
7aadb808e1 cli: python-tools: Use requirements.txt file for Pip dependencies
This makes dependencies easier to track and opens up the possibility for Dependabot to update them.
2024-06-25 07:06:21 +02:00
ColorfulRhino
de81f10b0d cli: Add command "dts-check"
Validates the dts/dtb file for the selected board and outputs the validation logs to the user.
This can be used when adding a new board, developing or improving a dts file. Should lead to higher quality device trees and patches overall, if used.
Will show warnings/errors if patches patch in some functionalities to a devicetree file without patching in the dt-bindings .yaml at the same time.
2024-06-25 07:06:21 +02:00
ColorfulRhino
663530dcf6 python-tools: Bump pip dependencies to their latest versions
No new major versions
2024-06-25 07:06:21 +02:00
Igor Pecovnik
75ce67f329 Run shellfmt to complete code 2024-06-22 19:22:24 +02:00
ColorfulRhino
497c6dce0e extension: net: Refactor, fix and improve network extensions
- Rename extensions with "net-*" prefix
- Put the extensions into their own folder
- Split off time sync packages into their own extensions to be able to be used separately
- Put their config files into directories instead of using inline `cat <<- EOF >`
- Move some other NetworkManager related stuff into the extension
- Remove unneeded steps
- Install iproute2 by default on all images (for the `ip` command)
2024-06-20 19:59:52 +02:00
Gunjan Gupta
1f22aa4977 limit git-sources.json file generation to specific commands 2024-05-21 20:26:33 +02:00
Gunjan Gupta
7dabd9300d Add ability to freeze git resources 2024-05-10 13:24:18 +01:00