Commit Graph

219 Commits

Author SHA1 Message Date
Nikita Maslo
1e7ef9d064
fix(rootfs): unset GIT_FIXED_WORKDIR after debootstrap/mmdebstrap clone (#9132)
* fix(rootfs): pass GIT_FIXED_WORKDIR inline to fetch_from_repo

Instead of using 'export GIT_FIXED_WORKDIR' and then 'unset' after,
pass the variable inline to the fetch_from_repo call. This ensures
the variable only exists in the context of that specific command
and doesn't leak into subsequent calls.

This follows the same pattern used in uboot-git.sh and kernel-git.sh.
---------

Co-authored-by: Viacheslav Bocharov <adeep@lexina.in>
2025-12-27 08:15:36 +03: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
Rolf Leggewie
9f08183a9f lib / rootfs-create: make rm command more robust
this fixes the issue raised in armbian/apa#32
2025-12-13 11:57:01 +08:00
Rolf Leggewie
f9cf9ae2ca lib / distro-agnostic.sh: drop chmod on /bin/ping
we are way past buster now (if ever this was needed to begin with)
2025-12-07 08:53:57 +01:00
Igor Pecovnik
39d6bc8148 Powere management - make it conditional, enable on UEFI targets, else disabled 2025-11-18 12:01:25 +01:00
Tom Urlings
abcb6c947b Enable bootscript templating
- Enable bootscript templating using `envsubst`.
- Add generic bootscript.
- Fix: `test` does not support `==`, but deceptively returns `true` in case you use it.
- De-duplicate kernel commandline console options.
2025-11-17 10:15:23 +01:00
Igor Pecovnik
06dbd0074c Add Ubuntu 25.10 / 26.04 questing and resolute as csc build target, demote Bookworm to csc 2025-11-15 23:09:24 +01:00
Igor Pecovnik
758c57bafe Framework: copy user provided first boot config at build time 2025-11-12 17:38:51 +01:00
Igor Pecovnik
8b8b0263b2 Disable sleep functionality on systemd level
This should prevent boards going to sleep as resume mainly don't work
2025-11-10 11:47:00 +01:00
tabrisnet
e4c5ae4f1a
framework mmdebstrap, fetch_distro_keyring - use cached keyring pkgs from armbian.github.io (#8881)
followup to #8785, armbian/armbian.github.io#82 & armbian/armbian.github.io#85
Pull the latest keyring pkgs from armbian's github mirror
2025-11-06 12:18:10 -05:00
tabris
cfed1b4357 framework mmdebstrap fetch_distro_keyring - ignore dpkg-deb/tar non-essential errors 2025-11-05 21:57:19 +01:00
tabris
69caf3ba22 build framework mmdebstrap - use MANAGE_ACNG for downloading the keyring pkgs 2025-11-03 18:12:03 +01:00
tabris
373ec28e79 build framework mmdebstrap - fetch the newest keyring pkgs 2025-11-03 18:12:03 +01:00
tabris
77ee624aad build framework mmdebstrap - fix hashing of LEGACY_DEBOOTSTRAP 2025-11-03 18:12:03 +01:00
tabris
fef862f774 build framework mmdebstrap - LEGACY_DEBOOTSTRAP
allow old debootstrap to be used instead.
2025-11-03 18:12:03 +01:00
tabris
94866e81a3 build framework - mmdebstrap minimal conversion 2025-11-03 18:12:03 +01:00
Tim Surber
bf79329821 add Debian Forky as target 2025-10-27 11:33:08 +01:00
tabris
42c52e34f4 build framework - MANAGE_ACNG - allow switch to be empty 2025-10-24 07:55:58 +02:00
tabris
9d57032b89 build framework - MANAGE_ACNG, allow to specify your own mirror/URL 2025-10-23 22:07:04 +02:00
Werner
851683566d
don't fail distro agnostic sshd adjustments when config is not found (#8729)
* don't fail ssh distro agnostic when openssh is not used

* addressing rabbit nit-pick

reasonable

* fix wording

Co-authored-by: tabrisnet <96966042+tabrisnet@users.noreply.github.com>

---------

Co-authored-by: tabrisnet <96966042+tabrisnet@users.noreply.github.com>
2025-10-09 14:45:44 +02:00
Jianfeng Liu
0439d3ed70 install pahole before linux-headers for better dkms 2025-08-04 17:34:24 +08:00
Jianfeng Liu
fb363e8829 add initial loong64 support 2025-08-04 17:34:24 +08:00
Igor Pecovnik
4ae394cc4d Debian oldstable: drop security and backport repository from packages lists
It does not exists for Bullseye nor Buster, which are both anyway deprecated, but we have a user reqests.
2025-07-30 15:49:42 +02:00
Igor Pecovnik
cbeb0992b4 Bullseye: drop backport repository as it doesn't exists anymore 2025-07-28 17:17:58 +02:00
Jianfeng Liu
3a9babee14 deploy missing qemu binary when adding repo key 2025-07-11 16:59:45 +02:00
Rolf Leggewie
9144aaf91b lib / distro-specific.sh: add --batch and --yes switches to gpg call
suggestion from coderabbit and indeed it sounds like a good, robust idea
2025-07-10 20:40:37 +08:00
Rolf Leggewie
9fe445b44d Revert "rootfs: allow APA to handle GPG keys when it is active during the build"
This reverts commit 034e9253cd.
2025-07-10 20:40:37 +08:00
Rolf Leggewie
034e9253cd rootfs: allow APA to handle GPG keys when it is active during the build
this is a small first step to mainlining APA into core and let it handle
some packaging and distribution logic
2025-06-23 20:36:23 +02:00
Werner
15407330c6
Preparation for http proxy caching (#8281)
* 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
2025-06-13 10:31:24 +02:00
Igor Pecovnik
aa5526a918 Signing key: keep a link to previous location
armbian-config still uses old location and as we don't control keys via package, we need to apply this workaround for newly created images
2025-06-09 09:33:46 +02:00
Rolf Leggewie
81d65b09b9 lib distro-specific.sh: move armbian GPG to more common location 2025-05-30 04:06:39 +08:00
Igor Velkov
5815951516 Work if no customize-image.sh file present 2025-05-27 15:43:00 +02:00
Igor Pecovnik
3199178c70 Multiple sources fix: after changing to deb822 we forgot on leftovers
- deboostrap still uses old ways and we need to remove this file
- when displaying the content of sources, we need to look correct file
2025-03-05 10:40:48 +01:00
Igor Pecovnik
b47d408ff7 After changing apt lists methodology, we need to rebuild rootfs cache 2025-02-24 12:43:04 +01:00
Blieque Mariguan
8e75c8ebd1 feat: Use deb822 APT sources
- Replace `armbian.list` with `armbian.sources`. This holds the same
  information in a newer format, deb822.
- Replace HTTP with HTTPS for Armbian repositories.
2025-02-24 09:23:11 +01:00
Blieque Mariguan
3743daffa2 feat: Use deb822 APT source for armbian-config
- 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
2025-02-04 18:49:52 +01:00
Igor Pecovnik
1477b478c5 Add upstream release as csc target: Ubuntu plucky 25.04 2025-01-23 18:30:49 +01:00
Igor
4e33412ec2
Refactor armbian-config into install as external package (#7716)
* 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
2025-01-20 14:23:28 +01:00
Ricardo Pardini
c469eeba7a hooks: introduce post_armbian_repo_customize_image and post_repo_customize_image
- `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
2025-01-19 20:21:11 +01:00
marcone
5ccc94dd56 fix typo 2025-01-04 15:36:06 +01:00
Ricardo Pardini
b0303e5edc rootfs: fix: don't try to use chroot binaries after qemu was undeployed
- `"${cache_fname}.list"` and `"${cache_fname}.hash_text"` were very old and unused anyway
2025-01-02 13:46:03 +01:00
Ricardo Pardini
6755e9190a don't ship qemu binary in rootfs cache + armhf image/rootfs building on non-armhf-capable-arm64 hosts (Apple M1+)
- refactor `prepare_host_binfmt_qemu()` out of `prepare_host_noninteractive()` and into `rootfs/qemu-static.sh`
  - further split into more functions and return early to avoid deep nesting
  - implement force import and load of qemu-arm for non-armhf capable arm64 hosts (incl magic numbers)
- enhance `deploy_qemu_binary_to_chroot()` & `undeploy_qemu_binary_from_chroot()`;
  - add 2nd param "caller" for better logging/tracking
  - does sanity-check and preserve existing binary if it exists
- explicitly deploy/undeploy for the 3 cases:
  - image: moved undeploy from `post_debootstrap_tweaks()` into image build proper for consistency
  - rootfs: was leaving trash behind (since post_debootstrap_tweaks never ran for rootfs), now properly undeploys
  - initrd: was already fine, just added caller info
- added `arch-test` host dependency
  - ensure `arch-test ${ARCH}` works during prepare-host
- > tl,dr: "can build 32-bit armv7 armhf using Apple silicon; can use rootfs cache cross-arch reliably"
2024-12-31 11:52:12 +01:00
M.Schmidt
6607728e24 improve(lvm,cryptroot): export private key with a structurally equal naming scheme; cleanup 2024-12-13 10:01:19 +01:00
M.Schmidt
590b75fd6f improve(lvm+cryptroot extensions): enable possibility for LVM on LUKS 2024-12-13 10:01:19 +01:00
Igor Pecovnik
4187ab3c51 Adjust deprecated key management support
Workaround for older builds were tied to version of apt, but this doesn't work anymore.
2024-12-13 09:40:56 +01:00
Ricardo Pardini
6d9a06bf72 shellfmt: lib/functions; no changes 2024-11-25 11:32:28 +01:00
Igor
6148907595
Improvements and bug fixes to Armbian user-space services (#6840)
* Add a list of BASH shell aliases and merge them with ohmyZSH aliases
* Add command armbian-upgrade to the BSP which executes update + upgrade
* Display armbian-upgrade only if there are upgrades
* Generate empty folder where will store data. This doesn't exists at early start
* Move armbian-install to /usr/bin and autoexecute sudo
2024-11-18 19:12:52 +01:00
Werner
0afd94a84b
Deprecated WIREGUARD once and for all (#7452)
* remove wireguard

* remove wireguard

* remove wireguard

* Update armsom-sige1.csc

* Update hinlink-hnas.csc

* Update hinlink-h28k.csc

* Update hinlink-h66k.csc

* Update mangopi-m28k.csc

* Update hinlink-h68k.csc
2024-11-09 21:02:50 +01:00
Igor Pecovnik
48228f1e49 Userspace: Switch armbian-config to new generation. It has very small footprint, thus it will be installed by default 2024-11-05 16:35:36 +01:00
user
502e139598 New option: CRYPTROOT_MAPPER. Make ROOT_MAPPER name for CRYPTROOT changable. 2024-11-05 16:35:02 +01:00