Commit Graph

43 Commits

Author SHA1 Message Date
Igor Pečovnik
4c57347221
Update build targets (#3484)
* Update build targets

Change some beta build targats to sid

* Adjust another few

* Update
2022-02-13 20:28:32 +01:00
Igor Pečovnik
a4ae3a2270
Update targets (#3482) 2022-02-12 23:14:44 +01:00
catalinii
188d6d0a8a
Support edge kernel for Rock 3A and rk35xx (#3371)
* Support edge kernel for Rock 3A and rk35xx

* Removing patch email headers

There is also some script floating around to do this automatically when pooling from patchwork

* Update rk356x-usb2-support.patch

* Remove email headers

* Remove email headers

* Remove email headers

* Update config and change edge branch

* Enable edge beta build

* Refresh the rk35xx patches and update the dts
Remove also previous wireless patches related to IPX removal

* Removing hirsute target

deprecated

Co-authored-by: Catalin Toda <catalinii@yahoo.com>
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-02-01 22:53:43 +01:00
Vyacheslav
fd3e89ff9e
JetHome: add bullseye stable current and beta edge build targets (#3408) 2022-01-17 18:08:06 +01:00
Igor Pečovnik
b5de98aa9b
Actions bugfix (#3397) 2022-01-12 09:33:35 +01:00
Igor Pečovnik
1035905760
Enable generic build targets? (#3381)
* Enable generic build targets

All those targets are WIP, but not having a dedicated maintainer yet. It would probably be good to make images + download pages showing WIP status, asking for maintainers to show up?

* Move targets to nightly

* don't make images

* Add / replace Mate
2022-01-09 10:06:57 +01:00
Werner
9d8a424c03
Cleanup. Remove deprecated build targets (#3148)
* Update targets.conf

* Update targets-desktop-beta.conf

* Update targets-cli-beta.conf

* Update targets.conf

Update targets according ot current status of maintainer list
reduce userspaces to Focal
reduce to xfce default desktop
keep one minimal and one edge to check if they build at least.

* adjust support status according current maintainer sheet

* Readd pbp

* Readd pbp

* Readd C2

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-01-05 17:55:42 +01:00
NexusXe
32dc24466c
Re-enable rock-3a building now that it works (#3373)
Revert a change in bddce2c432 now that rock-3a building succeeds and provides a usable image (#3271)
2021-12-31 05:48:48 -05:00
Vyacheslav
d4a7b7f03e
Move JetHub D1/H1 to supported boards, reenable, add watchdog (#3357)
* JetHome: move JetHub D1/H1 to supported
* JetHome: add watchdog package to base system
* JetHome: reenable beta builds for JetHub D1/H1
2021-12-18 09:28:24 +01:00
Igor Pecovnik
3d563c1e66
Temporally disabling broken nightly image build due to a bug
@adeepn

https://armbian.atlassian.net/browse/AR-1027
2021-12-12 22:35:26 +01:00
Igor Pecovnik
bddce2c432
Two small bug fixes
- disabling samba on desktop builds since it delays 1st login and throws out an error in case we have no network (laptop usage)
- disabling broken build target
2021-12-06 15:55:16 +01:00
Ricardo Pardini
90e0fe0ba2
extensions framework + UEFI aarch64/x86 + rpi4b + core changes/fixes (#3300)
* extensions framework (née "fragments")

- this should actually change nothing at this point, just add capabilities
- the framework is implemented in lib/extensions.sh
- the "if function x exists then call x" replaced with call_extension_method()
  - +inline documentation
  - +compatibility names

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions framework; meta-extensions: auto-docs and sample extension gen

- 2 extensions dealing with extensibility itself
  - detect-unused-extensions: shows which extensions are enabled, but never called.
  - gen-sample-extension-docs: generates a sample empty extension & Markdown documentation for extensions

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* new extension methods and features via config variables in core Armbian

- `SKIP_EXTERNAL_TOOLCHAINS=yes` - does not download or use any linaro toolchains, only build host-installed ones
- `SKIP_BOOTSPLASH=yes` - does not patch kernel for splash file
- `EXTRA_BSP_NAME=xyz` - allows for BSP variants, useful for when extensions modify the BSP
- `EXTRA_ROOTFS_MIB_SIZE=x` - add x mib's to rootfs size, for use with very small images
- `KERNEL_EXTRA_TARGETS` - what extra targets to make kernel for, default to "modules dtbs"
- `BOOTCONFIG=none` - does not build nor install u-boot; also doesn't handle bootscripts et al
- `unset KERNELSOURCE` - does not build nor install kernel, nor build initrd, nor build nor install firmware
- `ARMHF_ARCH=skip` - does not add armhf to apt/dpkg, thus pure arm64
- `SKIP_ARMBIAN_REPO=yes` - results in armbian.list.disabled in the final image
- define `APT_EXTRA_DIST_PARAMS` with apt-cacher-ng options and use it for `PACKAGE_LIST_INSTALL/REMOVE` et al
- initial support for targeting x86/amd64 UEFI and BIOS
    - some do's/don'ts for x86/amd64, like a different `UBUNTU_MIRROR` default
    - GPT/EFI(ESP) partitions (fat, `UEFISIZE=256` to enable, mount `UEFI_MOUNT_POINT=/boot/efi`, first on disk but ends
      up at `$uefipart`=15)
    - GPT/BIOS partitions (fat, `BIOSSIZE=1` to enable, second on disk but ends up at partition 14)
    - `UEFI_FS_LABEL="armbiefi"` - to set the FAT label for the EFI partition, visible in Win/Mac
    - hard-requires gdisk package host-side
- add add_host_dependencies() extension method; fill `EXTRA_BUILD_DEPS="pkg pkg2"` to install to host before toolchains
  download
- add pre_prepare_partitions() extension method, for custom partition size calculations
- add create_partition_table() extension method, used to do full-custom partitioning if `USE_HOOK_FOR_PARTITION=yes`
- add post_create_partitions() extension method, mostly for easy debugging
- add post_write_sdcard() extension method, where you can also set `SKIP_VERIFY=yes` to skip sdcard verification
- add post_install_kernel_debs() extension method.
- multiple fixes to bsp to avoid spurious errors when files are not where it expects
- v4: detect `update-initramfs` failure and abort build with useful message if it does
- v4: show useful stacktrace in `exit_with_error`
  - if `ERROR_DEBUG_SHELL=yes`, drop into a shell before unmounting/deleting everything, so we can inspect what went wrong
- v4: display a message before `apt-get remove PACKAGE_LIST_BOARD_REMOVE` packages, so any errors while removing are easy to understand
- v4: preserve kernel .config's dates when copying

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions framework; refactor tool fetching/building into extensions

- a few examples of core refactoring using extensions
- sunxi-tools extension, enabled by 2 different sunxi family includes ("reuse" example)
- marvel-tools extension, enabled by 2 different mvebu family includes
- rkbin-tools extension, enabled by rockship64_common family include
- amlogic-fip/c2-blobs stuff refactored directly into meson64_common.inc ("single-use" example)
- removed the 'testings' fetch_from_repo completely since not used anywhere.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* .wip's for UEFI arm64 and UEFI/BIOS x86 via new GRUB extension

- v3: added `growroot`-awareness to `armbian-resize-filesystem`
    - the partition-growing part of `armbian-resize-filesystem` does not deal correctly with the UEFI layout
    - `growroot` is installed on UEFI images by default, that handles growing partition during initramfs
    - now `armbian-resize-filesystem` handles `resize2fs` only, and works.
- v4: reworked UEFI board/family/include structure:
    - use Distro's `linux-generic` kernel only for `current`
    - `edge` now builds it's own pure-mainline `5.15.y` kernel, for both x86 and arm64
        - `.config` taken from Ubuntu, probably needs tuning for EXTRAWIFI=yes et al
- v4: introduce `SKIP_KERNEL_SYMLINK=yes`, tested in `builddeb`
    - to avoid symlinking kernel; u-boot likes it, but grub and flash-kernel hates it
- v5: many fixes
- v7: more small fixes.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* .wip for the RaspberryPi 4B via new flash-kernel extension

- this does not build it's own kernel "yet", but uses default linux-raspi kernel from Ubuntu
- flash-kernel is not really a bootloader
    - it just prepares kernel et al a FAT partition for booting by the RPi4b bootloader
    - flash-kernel is standard Debian package, but has only been tested on Ubuntu releases
- it is really only known-working since Hirsute release.
  - Debian's rpi kernel is armhf only, so out of scope here, at least until we add source-built kernels.
- v3: fixed focal rootfs build. untested.
- v3: better variable names, preparing for source-built kernel.
- v5: new edge build with pure mainline kernel.
- v6: many fixes and some hacks for packaging and layout, also firmware (using Ubuntu's)

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* Added first patch to edge x86 related to wifi drivers

* extensions: leave hostapd alone; remove hackish ext; block reentrancy

- package-list-utils does not belong in this PR
- grub or bcm2711 is not the place to remove hostapd
- block recursive enable_extension() calls, for now.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* gen-sample-extension-docs: fix: avoid counter in generated sample

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: dependencies: enable_extension() in extensions with a stack

- and better stacktraces, I hope

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* Remove code from package list since we don't have it in repository
Adjust kernel config to disable driver that needs further polishing.

* Allow amd64 to build the same desktops as aarch64. We only have this limit for armhf, where some desktops don't work

* amd64: allow building amd64 on aarch64 with system toolchain

- conditionally add gcc-x86-64-linux-gnu to hostdeps

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* add libelf-dev directly to hostdeps (and Dockerfile), remove extension

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* packaging: remove SKIP_KERNEL_SYMLINK hack, fix the root cause

- which was the missing $image_name for non-arm64 & non-arm, so: x86 for example

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* grub: really obliterate u-boot stuff from BSP

- for now. soon we'll refactor u-boot so not have to do this

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* flash-kernel: really obliterate u-boot stuff from BSP

- for now. soon we'll refactor u-boot so not have to do this

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: add host_dependencies_ready() hook

- this passes FINAL_HOST_DEPS containing all hostdeps for the run after they're installed

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* Add verification functions for correct selection.

* If UEFI Skip symlink creation

* Do not create dtb package for amd64

* Skip scripts folder cleaning if build process native.

Skip creating  postinst prerm scripts  for headers.

* Skip applying headers-debian-byteshift.patch if build native

* Fix architecture syntax as x86_64

* Revert "amd64: allow building amd64 on aarch64 with system toolchain"

This reverts commit 0c5ee20bb1.

* Compare architectures before starting compilation.



Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* extensions: cleanups after fixes by the-Going

- packaging:
  - there is _no need_ anymore for the symlink hack, CONFIG_EFI or no. But check is great, see below
  - it's not `amd64` that has no DTB's, it's all UEFI, thus: `is_enabled CONFIG_EFI`, thanks!
- Explicitly disallow "reverse cross compile" in amd64.conf.
- whitespace-only-deletions: revert. we shall shellfmt the whole thing one day, but not today.
- fix a few syntax warnings in newly introduced code (floating `$ARCH` vs `"${ARCH}`) - blame shellcheck

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* packaging: fix: turns out a lot of boards have CONFIG_EFI=y, can't use that for dtb/no-dtb decision.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* grub: remove debug

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* firmware: allow installing `armbian-firmware-full`; make it really full

- can now use `BOARD_FIRMWARE_INSTALL="-full"` to install full firmware for the board. enable for UEFI.
- don't rely on KERNELSOURCE for firmware-related decisions. introduce `INSTALL_ARMBIAN_FIRMWARE` which defaults to `yes`
- rpi4b/flash-kernel: disable Armbian firmware; we need linux-firmware-raspi2, which conflicts.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: log to /${LOG_SUBPATH}/ instead of fixed /debug/

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: introduce cleanup_extension_manager() called by build-all-ng's unset_all()

- to reset/unset everything done by the the initializer, so build can run again

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: remove 'global' logging, for use with build_all_ng

- enable_extensions() will have to live on without logging to file. it's just too early.
- now init EXTENSION_MANAGER_TMP_DIR in initialize_extension_manager()
- now init EXTENSION_MANAGER_LOG_FILE in initialize_extension_manager()

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: build-all-ng.sh bugfix due to extension's debug to stdout

- extensions (among other things) can produce output to stdout when activated
- fix: check_hash() produced "idential" (sic, now changed to IDENTICAL) to stdout as a trigger
- debugging output got mixed with "idential", rendering hash cache void for families that used extensions
  - eg: sunxi, others
- fix is to send stdout to the bitbucket when sourcing the board & arch config files
- proper fix would be stop using stdout in this case and use return code for check_hash()
  - one day soon

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* Add CI build targets

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
Co-authored-by: The-going <48602507+The-going@users.noreply.github.com>
2021-12-06 09:49:49 +01:00
Igor Pečovnik
c666d285b4
Adjust build targets (#3262)
* Enable Jammy nigly builds

* Add Jethub H1 and D1 to stable
2021-11-16 19:51:40 +01:00
Igor Pecovnik
c274f40834
Adjust build targets 2021-11-14 22:13:42 +01:00
Igor Pečovnik
c10cf6edb7
Rename Rockpi 3a to wip and enable nightly builds (#3252) 2021-11-14 21:22:02 +01:00
Igor Pecovnik
e4f36d00fd
Temporally disable Helios64 from CI due to broken bootloader 2021-11-12 20:36:06 +01:00
Vyacheslav
3c4b69650e
Add support for JetHome JetHub D1/H1 home automation controllers (#3176)
* JetHome: add basic files for JetHub D1/H1 boards

Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>

* JetHome: add uboot patches

Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>

* JetHome: add kernel patches for JetHub D1/H1 (backport from 5.16-dt kernel)

Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>

* JetHome: add bsp packages for JetHub D1/H1

Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>

* JetHome: add kernel options for hardware JetHub D1/H1

Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>

* JetHome: fix targets-cli-beta.conf for JetHub D1/H1

Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>

* JetHome: add axg uboot creation function for JetHub D1

Signed-off-by: Vyacheslav Bocharov <adeep@lexina.in>
2021-10-19 21:05:36 +02:00
Igor Pečovnik
085fc8ea39
Decreasing number of nightly builds (#3204)
* Decresing number of nightly builds

Lets keep in only a few where its likely to have relevant changes in kernel

* Clean also beta desktop builds
2021-10-18 18:20:51 +02:00
Igor Pečovnik
abbe87a450
Add Radxa Zero initial support (#3128)
* Add support for Radxa Zero

u-boot: new patch based on v2021.04
kernel: use patches sent to kernel list by chewitt

Tested with minimal build and cinnamon desktop:
- SD/eMMC, ok
- USB3, works in USB 2 mode
- HDMI, ok
- WiFi/BT, ok

Signed-off-by: Jack Ma <jack@radxa.com>

* Add build targets

* Cleanup and set min speed to 666000

* Change to WIP target

Support status undetermined

Co-authored-by: Jack Ma <jack@radxa.com>
2021-09-08 17:50:05 +02:00
Igor Pečovnik
86051a8e9d
Add Khadas Vim3 to nightly build target 2021-08-09 17:15:52 +02:00
Igor Pečovnik
18e7bef68e
Adjust build targets (#3002)
* Adjust build targets

* Update targets

* Update build images

- enabling 3d
- adding budgie

* Remove unneded targets

* Update CLI targets

* Spaces
2021-07-17 18:05:31 +02:00
Oleg
041c24a8a7
edit image jetson-nano (#3012) 2021-07-16 11:26:34 +02:00
lanefu
7db55b893c
tinker-2 beta cli 2021-07-15 22:58:23 -04:00
lanefu
8c09e1fa93
khadas support (#2903)
* cleanup add vim3l

* Add Khadas edge config

* Add Khadas edge sources definitions. It boots

* Change configuration to maximised model

* Adjust build configs

* witch to case statement for meson x11 config

* push vim1 naming

* Booting VIM2 with khadas prebuild u-boot

Can load from an empty eMMC, can be installed to eMMC via nand-sata-install

* Add Vim1 and move 1 and 2 to supported. VIM1 is not tested yet.

* Enable full featured desktop with 3D for khadas vim 1 and vim2

* Update meson64_common.inc

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2021-07-05 21:05:43 +02:00
Igor Pečovnik
eaebd3c7ff
Removing a few build targets that are not that urgent (#2961) 2021-07-03 22:36:56 +02:00
Igor Pecovnik
692717102b Revert "Jetson legacy kernel building have issues on Hirsute. Disabling it for now."
This reverts commit 13e3c34523.
2021-06-30 13:55:37 +02:00
Igor Pecovnik
13e3c34523 Jetson legacy kernel building have issues on Hirsute. Disabling it for now. 2021-06-16 08:30:46 +02:00
Igor Pečovnik
d3d4f050e4
Add ZRAM to Jetson Nano legacy (#2899)
* Add ZRAM and few other networking related options to Jetson nano legacy kernel config

* Enable legacy desktop build for jetson-nano

* Enable nightly legacy kernel build

* space
2021-06-16 00:56:56 +02:00
Igor Pecovnik
7d9a5f7eb4 Clenup build targets 2021-06-13 18:15:23 +02:00
Igor Pečovnik
17b3da0a44
Fix mainline kernel boot on Rockpi S (#2823)
https://armbian.atlassian.net/browse/AR-785
2021-06-10 11:58:00 +02:00
Igor Pečovnik
b087cfb6b3
Enable virtual ARM64 nightly builds for qemu (#2875)
* Enable Virtual qemu build targets
* Bugfix - saving build number is being overwritten before saved
* Remove stable builds, not needed
* Update kernel config, enable current instead of edge
2021-06-05 08:49:25 +02:00
Igor Pecovnik
e46a6a5ef6 Typo - fixing wrong board name 2021-05-13 08:46:31 +02:00
Igor Pecovnik
dd12df4cac Add Orangepi R1+ to the build targets 2021-04-15 14:19:01 +00:00
Igor Pečovnik
f0b5264317
Re-create edge branch for imx6 (#2751)
* Re-create edge branch for imx6
* Add build target

Edge was not tested on HW yet.
2021-04-12 23:56:53 +02:00
Igor Pečovnik
b46f603355
Improvements for Jetson Nano (#2752)
* Further improvements

- merge general config options
- add edge branch with 5.11.y
- enabled zram
- verified docker dependencies

* Enabled EDGE CLI target
2021-04-12 22:33:27 +02:00
Igor Pecovnik
269f1344d1 Update CLI beta targets 2021-04-02 07:03:05 +00:00
Igor Pecovnik
76c06deb24 Add sunxi upstream patches and adjust CLI beta target DEV -> EDGE 2021-03-24 20:24:33 +01:00
Igor Pečovnik
0cdffb29b0
Renaming DEV branch to EDGE (#2704)
* Change DEV to EDGE
* Renaming patches dev folder to edge
* Move patches into subdir where they will be archived.
* Relink patch directories properly
2021-03-24 19:01:53 +01:00
Igor Pecovnik
06a864a39c Change CLI nightly targets to DEV(edge to be) kernel 2021-03-15 01:20:46 +00:00
Richard Neese
dbe64f1939
Update targets-cli-beta.conf (#2718)
adding in a focal build for dev work
2021-03-15 00:29:39 +01:00
Igor Pecovnik
11cc8cb5b0 Bugfix on build targets
Multiple building doesn't like targets that have the same name
2021-03-14 15:07:12 +01:00
Igor Pecovnik
3d8e537a48 Enable Odroid HC4 legacy beta target 2021-03-02 23:49:12 +01:00
Igor Pečovnik
3a74abe43d
Merge desktop branch (#2662)
Co-authored-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Co-authored-by: Richard Neese <r.neese@gmail.com>
Co-authored-by: iav <iav@iav.lv>
Co-authored-by: lanefu <lanefu@users.noreply.github.com>
Co-authored-by: Werner <EvilOlaf@users.noreply.github.com>
Co-authored-by: Oleg <balbes-150@yandex.ru>
Co-authored-by: Lane Jennison <lane@lane-fu.com>
Co-authored-by: JMCC <jmcc1@gmx.com>
2021-02-24 18:19:09 +01:00