Merge branch 'master' into v22.11

This commit is contained in:
Igor
2022-11-30 11:32:44 +01:00
83 changed files with 5114 additions and 736 deletions

View File

@@ -138,5 +138,5 @@ For discussions around issues/bugs and features, you can use the [GitHub issues]
* [Become a new board maintainer](https://docs.armbian.com/Board_Maintainers_Procedures_and_Guidelines/)
* [Apply for one of the position](https://forum.armbian.com/staffapplications/)
* [Help us covering costs](https://forum.armbian.com/subscriptions/)
* [Help community memebers in the Forum](https://forum.armbian.com/)
* [Help community members in the Forum](https://forum.armbian.com/)
* [Check forum announcements section for any requests for help from the community](https://forum.armbian.com/forum/37-announcements/)

View File

@@ -6,3 +6,5 @@ KERNEL_TARGET="current,edge"
DEFAULT_CONSOLE="serial"
MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima hantro_vpu panfrost"
HAS_VIDEO_OUTPUT="no"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"

View File

@@ -9,3 +9,5 @@ MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima"
SERIALCON="ttyS2:1500000,ttyGS0"
HAS_VIDEO_OUTPUT="no"
BOOT_FDT_FILE="rockchip/rk3328-nanopi-neo3-rev02.dtb"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"

View File

@@ -1,5 +1,5 @@
# Rockchip RK3328 quad core 1GB 2 x GBE USB2 SPI
BOARD_NAME="OPi R1 Plus LTS"
BOARD_NAME="Orange Pi R1 Plus LTS"
BOARDFAMILY="rockchip64"
BOOTCONFIG="orangepi_r1_plus_lts_rk3328_defconfig"
KERNEL_TARGET="current,edge"

View File

@@ -1,5 +1,5 @@
# Rockchip RK3288 quad core 2GB RAM SoC GBE WiFi eMMC
BOARD_NAME="Tinkerboard"
BOARD_NAME="Tinker Board"
BOARDFAMILY="rockchip"
BOOTCONFIG="tinker-rk3288_defconfig"
MODULES_LEGACY="hci_uart rfcomm hidp 8723bs"

View File

@@ -1 +0,0 @@
deb [signed-by=/usr/share/keyrings/zfs.gpg] https://ppa.launchpadcontent.net/jonathonf/zfs/ubuntu/ focal main

View File

@@ -1 +0,0 @@
deb [signed-by=/usr/share/keyrings/zfs.gpg] https://ppa.launchpadcontent.net/jonathonf/zfs/ubuntu/ jammy main

View File

@@ -1 +0,0 @@
../../../../jammy/main/sources/apt/zfs.gpg

View File

@@ -1 +0,0 @@
deb [signed-by=/usr/share/keyrings/zfs.gpg] https://ppa.launchpadcontent.net/jonathonf/zfs/ubuntu/ jammy main

View File

@@ -4,5 +4,3 @@ purple-discord
purple-lurch
purple-mm-sms
purple-rocketchat
telegram-purple
telegram-desktop

View File

@@ -95,7 +95,7 @@ CONFIG_HAVE_EBPF_JIT=y
#
# BPF subsystem
#
# CONFIG_BPF_SYSCALL is not set
CONFIG_BPF_SYSCALL=y
# CONFIG_BPF_JIT is not set
# end of BPF subsystem

View File

@@ -96,7 +96,7 @@ CONFIG_HAVE_EBPF_JIT=y
#
# BPF subsystem
#
# CONFIG_BPF_SYSCALL is not set
CONFIG_BPF_SYSCALL=y
# CONFIG_BPF_JIT is not set
# end of BPF subsystem

View File

@@ -18,12 +18,12 @@ case $BRANCH in
current)
KERNEL_VERSION_LEVEL="5.15"
KERNELSWITCHOBJ="tag=v5.15.79"
KERNELSWITCHOBJ="tag=v5.15.80"
;;
edge)
KERNEL_VERSION_LEVEL=${KERNEL_VERSION_LEVEL:-6.0}
KERNELSWITCHOBJ=${KERNELSWITCHOBJ:-'tag=v6.0.9'}
KERNELSWITCHOBJ=${KERNELSWITCHOBJ:-'tag=v6.0.10'}
;;
esac

View File

@@ -18,11 +18,11 @@ case $BRANCH in
;;
current)
KERNEL_VERSION_LEVEL="5.15"
KERNELSWITCHOBJ="tag=v5.15.79"
KERNELSWITCHOBJ="tag=v5.15.80"
;;
edge)
KERNEL_VERSION_LEVEL=${KERNEL_VERSION_LEVEL:-6.0}
KERNELSWITCHOBJ=${KERNELSWITCHOBJ:-'tag=v6.0.9'}
KERNELSWITCHOBJ=${KERNELSWITCHOBJ:-'tag=v6.0.10'}
;;
esac

View File

@@ -51,6 +51,8 @@ uefi-riscv64 current kinetic cli
uefi-riscv64 edge kinetic cli beta yes
# OneCloud kernel only
# kernel only
onecloud current jammy cli beta no
onecloud edge jammy cli beta no
odroidxu4 edge jammy cli beta no
helios4 edge jammy cli beta no

View File

@@ -80,6 +80,8 @@ espressobin edge jammy minimal s
# Helios4
helios4 current bullseye cli stable adv
helios4 current jammy cli stable adv
helios4 current bullseye minimal stable yes
helios4 current jammy minimal stable yes
#
helios4 edge jammy cli stable no
@@ -87,16 +89,22 @@ helios4 edge jammy cli s
# Clearfog Base
clearfogbase current bullseye cli stable adv
clearfogbase current jammy cli stable adv
clearfogbase current bullseye minimal stable yes
clearfogbase current jammy minimal stable yes
# Clearfog Pro
clearfogpro current bullseye cli stable adv
clearfogpro current jammy cli stable adv
clearfogpro current bullseye minimal stable yes
clearfogpro current jammy minimal stable yes
# Khadas Vim1
khadas-vim1 current jammy cli stable adv
khadas-vim1 current bullseye cli stable yes
khadas-vim1 current jammy minimal stable yes
khadas-vim1 current bullseye minimal stable yes
#
khadas-vim1 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
khadas-vim1 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -106,6 +114,8 @@ khadas-vim1 current jammy desktop s
# Khadas Vim2
khadas-vim2 current jammy cli stable adv
khadas-vim2 current bullseye cli stable yes
khadas-vim2 current jammy minimal stable yes
khadas-vim2 current bullseye minimal stable yes
#
khadas-vim2 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
khadas-vim2 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -115,6 +125,8 @@ khadas-vim2 current jammy desktop s
# Khadas Vim3l
khadas-vim3l current jammy cli stable adv
khadas-vim3l current bullseye cli stable yes
khadas-vim3l current jammy minimal stable yes
khadas-vim3l current bullseye minimal stable yes
#
khadas-vim3l current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
khadas-vim3l current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -124,6 +136,8 @@ khadas-vim3l current jammy desktop s
# Khadas Vim3
khadas-vim3 current jammy cli stable adv
khadas-vim3 current bullseye cli stable yes
khadas-vim3 current jammy minimal stable yes
khadas-vim3 current bullseye minimal stable yes
#
khadas-vim3 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
khadas-vim3 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -133,6 +147,8 @@ khadas-vim3 current jammy desktop s
# Khadas Edge V
khadas-edge current jammy cli stable adv
khadas-edge current bullseye cli stable yes
khadas-edge current jammy minimal stable yes
khadas-edge current bullseye minimal stable yes
#
khadas-edge current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
khadas-edge current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -142,6 +158,8 @@ khadas-edge current jammy desktop s
# La frite
lafrite current jammy cli stable adv
lafrite current bullseye cli stable yes
lafrite current jammy minimal stable yes
lafrite current bullseye minimal stable yes
#
lafrite current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
lafrite current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -151,6 +169,8 @@ lafrite current jammy desktop s
# Lepotato
lepotato current jammy cli stable adv
lepotato current bullseye cli stable yes
lepotato current jammy minimal stable yes
lepotato current bullseye minimal stable yes
#
lepotato current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
lepotato current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -160,6 +180,8 @@ lepotato current jammy desktop s
# Olimex Lime2
lime2 current bullseye cli stable yes
lime2 current jammy cli stable adv
lime2 current bullseye minimal stable yes
lime2 current jammy minimal stable yes
#
lime2 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -167,6 +189,8 @@ lime2 current jammy desktop s
# Olimex Lime A64
lime-a64 current jammy cli stable adv
lime-a64 current bullseye cli stable yes
lime-a64 current jammy minimal stable yes
lime-a64 current bullseye minimal stable yes
#
lime-a64 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
lime-a64 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -176,6 +200,8 @@ lime-a64 current jammy desktop s
# NanoPC T4
nanopct4 current jammy cli stable adv
nanopct4 current bullseye cli stable yes
nanopct4 current jammy minimal stable yes
nanopct4 current bullseye minimal stable yes
#
nanopct4 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
nanopct4 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -372,7 +398,7 @@ orangepi4 current bullseye minimal s
orangepi4 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
orangepi4 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
orangepi4 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
#
# Orangepi 4 LTS
@@ -384,7 +410,6 @@ orangepi4-lts current bullseye minimal s
orangepi4-lts current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
orangepi4-lts current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
orangepi4-lts current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
#
# Orangepi R1
@@ -393,20 +418,26 @@ orangepi-r1 current bullseye cli s
orangepi-r1 current jammy minimal stable yes
orangepi-r1 current bullseye minimal stable yes
# orangepi R1+
orangepi-r1plus current jammy cli stable adv
orangepi-r1plus current bullseye cli stable adv
orangepi-r1plus current jammy minimal stable yes
orangepi-r1plus current bullseye minimal stable yes
# Orangepi R1+ LTS
orangepi-r1plus-lts current bullseye cli stable adv
orangepi-r1plus-lts current jammy cli stable adv
orangepi-r1plus-lts current bullseye minimal stable yes
orangepi-r1plus-lts current jammy minimal stable yes
# orangepilite
orangepilite current bullseye cli stable yes
orangepilite current jammy cli stable adv
orangepilite current bullseye minimal stable yes
orangepilite current jammy minimal stable yes
#
orangepilite current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -414,6 +445,8 @@ orangepilite current jammy desktop s
# orangepilite2
orangepilite2 current bullseye cli stable yes
orangepilite2 current jammy cli stable adv
orangepilite2 current bullseye minimal stable yes
orangepilite2 current jammy minimal stable yes
#
orangepilite2 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -421,6 +454,8 @@ orangepilite2 current jammy desktop s
# orangepioneplus
orangepioneplus current bullseye cli stable yes
orangepioneplus current jammy cli stable adv
orangepioneplus current bullseye minimal stable yes
orangepioneplus current jammy minimal stable yes
#
orangepioneplus current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -428,6 +463,8 @@ orangepioneplus current jammy desktop s
# orangepione
orangepione current bullseye cli stable yes
orangepione current jammy cli stable adv
orangepione current bullseye minimal stable yes
orangepione current jammy minimal stable yes
#
orangepione current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -435,6 +472,8 @@ orangepione current jammy desktop s
# orangepipc
orangepipc current bullseye cli stable yes
orangepipc current jammy cli stable adv
orangepipc current bullseye minimal stable yes
orangepipc current jammy minimal stable yes
#
orangepipc current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -442,6 +481,8 @@ orangepipc current jammy desktop s
# orangepipc2
orangepipc2 current jammy cli stable adv
orangepipc2 current bullseye cli stable yes
orangepipc2 current jammy minimal stable yes
orangepipc2 current bullseye minimal stable yes
#
orangepipc2 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
orangepipc2 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -452,6 +493,8 @@ orangepipc2 current jammy desktop s
# orangepipcplus
orangepipcplus current bullseye cli stable yes
orangepipcplus current jammy cli stable adv
orangepipcplus current bullseye minimal stable yes
orangepipcplus current jammy minimal stable yes
#
orangepipcplus current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -459,6 +502,8 @@ orangepipcplus current jammy desktop s
# orangepiplus
orangepiplus current bullseye cli stable yes
orangepiplus current jammy cli stable adv
orangepiplus current bullseye minimal stable yes
orangepiplus current jammy minimal stable yes
#
orangepiplus current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -604,9 +649,9 @@ rock64 current bullseye cli s
rock64 current jammy minimal stable yes
rock64 current bullseye minimal stable yes
#
rock64 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
rock64 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
rock64 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
rock64 current jammy desktop stable yes gnome config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
rock64 current jammy desktop stable yes cinnamon config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
rock64 current jammy desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
# Rock-3a
@@ -623,6 +668,8 @@ rock-3a edge jammy desktop s
# Rockpi 4a
rockpi-4a current jammy cli stable adv
rockpi-4a current bullseye cli stable yes
rockpi-4a current jammy minimal stable yes
rockpi-4a current bullseye minimal stable yes
#
rockpi-4a current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
rockpi-4a current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -632,6 +679,8 @@ rockpi-4a current jammy desktop s
# Rockpi 4b
rockpi-4b current jammy cli stable adv
rockpi-4b current bullseye cli stable yes
rockpi-4b current jammy minimal stable yes
rockpi-4b current bullseye minimal stable yes
#
rockpi-4b current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
rockpi-4b current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -641,6 +690,8 @@ rockpi-4b current jammy desktop s
# Rockpi 4c
rockpi-4c current jammy cli stable adv
rockpi-4c current bullseye cli stable yes
rockpi-4c current jammy minimal stable yes
rockpi-4c current bullseye minimal stable yes
#
rockpi-4c current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
rockpi-4c current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -668,8 +719,8 @@ rockpi-s edge bullseye minimal s
# Tinkerboard
tinkerboard current bullseye cli stable yes
tinkerboard current jammy cli stable adv
tinkerboard current jammy minimal stable yes
tinkerboard current bullseye minimal stable yes
tinkerboard current jammy minimal stable yes
#
tinkerboard current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
#
@@ -679,6 +730,8 @@ tinkerboard edge bullseye cli s
# Tritium H3
tritium-h3 current bullseye cli stable yes
tritium-h3 current jammy cli stable adv
tritium-h3 current bullseye minimal stable yes
tritium-h3 current jammy minimal stable yes
#
tritium-h3 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -686,6 +739,8 @@ tritium-h3 current jammy desktop s
# Tritium H5
tritium-h5 current jammy cli stable adv
tritium-h5 current bullseye cli stable yes
tritium-h5 current jammy minimal stable yes
tritium-h5 current bullseye minimal stable yes
#
tritium-h5 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
tritium-h5 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -693,28 +748,28 @@ tritium-h5 current jammy desktop s
# Firefly-rk3399
firefly-rk3399 current jammy cli stable adv
firefly-rk3399 current jammy cli stable yes
firefly-rk3399 current bullseye cli stable yes
#
firefly-rk3399 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
firefly-rk3399 current bullseye desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
firefly-rk3399 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
firefly-rk3399 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
# Station M1
station-m1 current jammy cli stable adv
station-m1 current jammy cli stable yes
station-m1 current bullseye cli stable yes
#
station-m1 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-m1 current bullseye desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-m1 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-m1 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
# Station P1
station-p1 current jammy cli stable adv
station-p1 current jammy cli stable yes
station-p1 current bullseye cli stable yes
#
station-p1 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-p1 current bullseye desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-p1 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-p1 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -723,12 +778,12 @@ station-p1 current jammy desktop s
station-m2 legacy bullseye cli stable yes
station-m2 legacy jammy cli stable yes
station-m2 legacy bullseye desktop stable yes xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-m2 legacy jammy desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-m2 legacy jammy desktop stable yes xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
#
station-m2 current jammy cli stable yes
station-m2 current bullseye cli stable yes
#
station-m2 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-m2 current bullseye desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-m2 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-m2 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
@@ -744,14 +799,14 @@ station-m3 legacy jammy desktop s
station-p2 legacy bullseye cli stable yes
station-p2 legacy jammy cli stable yes
station-p2 legacy bullseye desktop stable yes xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-p2 legacy jammy desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-p2 legacy jammy desktop stable yes xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
#
station-p2 current jammy cli stable adv
station-p2 current jammy cli stable yes
station-p2 current bullseye cli stable yes
#
station-p2 current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-p2 current bullseye desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-p2 current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-p2 current jammy desktop stable yes xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
station-p2 current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
# xt-q8l-v10
@@ -784,12 +839,12 @@ jethubj100 edge jammy cli s
jetson-nano legacy jammy desktop stable yes xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
jetson-nano legacy bullseye desktop stable yes xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
#
jetson-nano current jammy cli stable adv
jetson-nano current jammy cli stable yes
jetson-nano current bullseye cli stable yes
#
jetson-nano current jammy desktop stable yes gnome config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
jetson-nano current jammy desktop stable yes cinnamon config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
jetson-nano current jammy desktop stable adv xfce config_base 3dsupport,browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
jetson-nano current bullseye desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
jetson-nano current jammy desktop stable yes cinnamon config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
jetson-nano current jammy desktop stable adv xfce config_base browsers,chat,desktop_tools,editors,email,internet,multimedia,office,programming,remote_desktop
# Raspberry Pi4

View File

@@ -1,17 +1,30 @@
# Read build script documentation https://docs.armbian.com/Developer-Guide_Build-Options/
# for detailed explanation of these options and for additional options not listed here
KERNEL_ONLY="" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt
KERNEL_CONFIGURE="" # leave empty to select each time, set to "yes" or "no" to skip dialog prompt
CLEAN_LEVEL="make,debs,oldcache" # comma-separated list of clean targets: "make" = make clean for selected kernel and u-boot,
# "debs" = delete packages in "./output/debs" for current branch and family,
# "alldebs" = delete all packages in "./output/debs", "images" = delete "./output/images",
# "cache" = delete "./output/cache", "sources" = delete "./sources"
# "oldcache" = remove old cached rootfs except for the newest 8 files
KERNEL_ONLY="" # This key will not be used in the future.
REPOSITORY_INSTALL="" # comma-separated list of core modules which will be installed from repository
# "u-boot", "kernel", "bsp", "armbian-config", "armbian-firmware"
# leave empty to build from sources or use local cache
# BUILD_ONLY is a list of tasks to build separated by a space or comma or both.
# List only what needs to be done. If empty, collect everything including the image.
# Valid task names: u-boot, kernel, armbian-config, armbian-zsh,
# plymouth-theme-armbian, armbian-firmware, armbian-bsp, chroot, bootstrap
BUILD_ONLY=""
# leave empty to select each time, set to "yes" or "no" to skip dialog prompt
KERNEL_CONFIGURE=""
# CLEAN_LEVEL - comma-separated list of clean targets:
# "make" = make clean for selected kernel and u-boot,
# "debs" = delete packages in "./output/debs" for current branch and family,
# "alldebs" = delete all packages in "./output/debs",
# "images" = delete "./output/images",
# "cache" = delete "./output/cache", "sources" = delete "./sources"
# "oldcache" = remove old cached rootfs except for the newest 8 files
CLEAN_LEVEL="make,debs,oldcache"
# comma-separated list of packages which will be installed from repository
# "u-boot", "kernel", "bsp", "armbian-config", "armbian-firmware"
# leave empty to build from sources or use local cache
REPOSITORY_INSTALL=""
DEST_LANG="en_US.UTF-8" # sl_SI.UTF-8, en_US.UTF-8

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
## Configuration
export LOG_ALL_HOOK_TRACES=no # Should we log all hook function traces to stdout? (no, or level: wrn info)

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# This runs *after* user_config. Don't change anything not coming from other variables or meant to be configured by the user.
function extension_prepare_config__prepare_flash_kernel() {
# Configuration defaults, or lack thereof.

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
## Hooks
function extension_metadata_ready__499_display_docs_generation_start_info() {
display_alert "Generating hook documentation and sample extension"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# This runs *after* user_config. Don't change anything not coming from other variables or meant to be configured by the user.
function extension_prepare_config__prepare_grub-riscv64() {
display_alert "Prepare config" "${EXTENSION}" "info"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# This runs *after* user_config. Don't change anything not coming from other variables or meant to be configured by the user.
function extension_prepare_config__prepare_grub-sbc-media() {
display_alert "Prepare config" "${EXTENSION}" "info"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# This runs *after* user_config. Don't change anything not coming from other variables or meant to be configured by the user.
function extension_prepare_config__prepare_flash_kernel() {
# Extension configuration defaults.

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
function fetch_sources_tools__marvell_tools() {
fetch_from_repo "https://github.com/MarvellEmbeddedProcessors/A3700-utils-marvell" "marvell-tools" "branch:master"
fetch_from_repo "https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git" "marvell-ddr" "branch:master"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
function pre_install_kernel_debs__build_nvidia_kernel_module() {
export INSTALL_HEADERS="yes"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
function fetch_sources_tools__rkbin_tools() {
fetch_from_repo "https://github.com/armbian/rkbin" "rkbin-tools" "branch:master"
}

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
function fetch_sources_tools__sunxi_tools() {
fetch_from_repo "https://github.com/linux-sunxi/sunxi-tools" "sunxi-tools" "branch:master"
}

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# global variables managing the state of the extension manager. treat as private.
declare -A extension_function_info # maps a function name to a string with KEY=VALUEs information about the defining extension
declare -i initialize_extension_manager_counter=0 # how many times has the extension manager initialized?

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
create_board_package() {
display_alert "Creating board support package for CLI" "$CHOSEN_ROOTFS" "info"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
create_desktop_package() {
echo "Showing PACKAGE_LIST_DESKTOP before postprocessing" >> "${DEST}"/${LOG_SUBPATH}/output.log

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# copy_all_packages_files_for <folder> to package
#
copy_all_packages_files_for() {

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
function cli_entrypoint() {
if [[ "${ARMBIAN_ENABLE_CALL_TRACING}" == "yes" ]]; then
set -T # inherit return/debug traps
@@ -105,7 +106,7 @@ function cli_entrypoint() {
prepare_and_config_main_build_single
if [[ -z $1 ]]; then
do_default
build_main
else
eval "$@"
fi

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# Add the variables needed at the beginning of the path
check_args() {

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
compile_atf() {
if [[ $CLEAN_LEVEL == *make* ]]; then
display_alert "Cleaning" "$ATFSOURCEDIR" "info"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
compile_firmware() {
display_alert "Merging and packaging linux firmware" "@host" "info"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
create_linux-source_package() {
ts=$(date +%s)
local sources_pkg_dir tmp_src_dir

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
compile_kernel() {
if [[ $CLEAN_LEVEL == *make* ]]; then
display_alert "Cleaning" "$LINUXSOURCEDIR" "info"

View File

@@ -0,0 +1,534 @@
#!/bin/bash
driver_rtl8152_rtl8153()
{
# Updated USB network drivers for RTL8152/RTL8153 based dongles that also support 2.5Gbs variants
if linux-version compare "${version}" ge 5.4 && linux-version compare "${version}" le 5.12 && [ $LINUXFAMILY != mvebu64 ] && [ $LINUXFAMILY != rk322x ] && [ $LINUXFAMILY != odroidxu4 ] && [ $EXTRAWIFI == yes ]; then
# attach to specifics tag or branch
local rtl8152ver="branch:master"
display_alert "Adding" "Drivers for 2.5Gb RTL8152/RTL8153 USB dongles ${rtl8152ver}" "info"
fetch_from_repo "$GITHUB_SOURCE/igorpecovnik/realtek-r8152-linux" "rtl8152" "${rtl8152ver}" "yes"
cp -R "${SRC}/cache/sources/rtl8152/${rtl8152ver#*:}"/{r8152.c,compatibility.h} \
"$kerneldir/drivers/net/usb/"
fi
}
driver_rtl8189ES()
{
# Wireless drivers for Realtek 8189ES chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8189esver="branch:master"
display_alert "Adding" "Wireless drivers for Realtek 8189ES chipsets ${rtl8189esver}" "info"
fetch_from_repo "$GITHUB_SOURCE/jwrdegoede/rtl8189ES_linux" "rtl8189es" "${rtl8189esver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8189es"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8189es/"
cp -R "${SRC}/cache/sources/rtl8189es/${rtl8189esver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8189es"
# Makefile
cp "${SRC}/cache/sources/rtl8189es/${rtl8189esver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8189es/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8189es/${rtl8189esver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8189es/${rtl8189esver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8189es/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8189ES) += rtl8189es/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8189es\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
}
driver_rtl8189FS()
{
# Wireless drivers for Realtek 8189FS chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8189fsver="branch:rtl8189fs"
display_alert "Adding" "Wireless drivers for Realtek 8189FS chipsets ${rtl8189fsver}" "info"
fetch_from_repo "$GITHUB_SOURCE/jwrdegoede/rtl8189ES_linux" "rtl8189fs" "${rtl8189fsver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8189fs"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8189fs/"
cp -R "${SRC}/cache/sources/rtl8189fs/${rtl8189fsver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8189fs"
# Makefile
cp "${SRC}/cache/sources/rtl8189fs/${rtl8189fsver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8189fs/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8189fs/${rtl8189fsver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8189fs/${rtl8189fsver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8189fs/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8189FS) += rtl8189fs/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8189fs\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
}
driver_rtl8192EU()
{
# Wireless drivers for Realtek 8192EU chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8192euver="branch:realtek-4.4.x"
display_alert "Adding" "Wireless drivers for Realtek 8192EU chipsets ${rtl8192euver}" "info"
fetch_from_repo "$GITHUB_SOURCE/Mange/rtl8192eu-linux-driver" "rtl8192eu" "${rtl8192euver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8192eu"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8192eu/"
cp -R "${SRC}/cache/sources/rtl8192eu/${rtl8192euver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8192eu"
# Makefile
cp "${SRC}/cache/sources/rtl8192eu/${rtl8192euver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8192eu/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8192eu/${rtl8192euver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8192eu/${rtl8192euver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8192eu/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8192EU) += rtl8192eu/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8192eu\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
}
driver_rtl8811_rtl8812_rtl8814_rtl8821()
{
# Wireless drivers for Realtek 8811, 8812, 8814 and 8821 chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8812auver="commit:41532e3b16dcf27f06e6fe5a26314f3aa24d4f87"
display_alert "Adding" "Wireless drivers for Realtek 8811, 8812, 8814 and 8821 chipsets ${rtl8812auver}" "info"
fetch_from_repo "$GITHUB_SOURCE/aircrack-ng/rtl8812au" "rtl8812au" "${rtl8812auver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8812au"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8812au/"
cp -R "${SRC}/cache/sources/rtl8812au/${rtl8812auver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8812au"
# Makefile
cp "${SRC}/cache/sources/rtl8812au/${rtl8812auver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8812au/Makefile"
# Kconfig
cp "${SRC}/cache/sources/rtl8812au/${rtl8812auver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8812au/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_88XXAU) += rtl8812au/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8812au\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
# add support for 5.19.2
process_patch_file "${SRC}/patch/misc/wireless-rtl8812au-5.19.2.patch" "applying"
fi
}
driver_xradio_xr819()
{
# Wireless drivers for Xradio XR819 chipsets
if linux-version compare "${version}" ge 4.19 && linux-version compare "${version}" le 5.19 &&
[[ "$LINUXFAMILY" == sunxi* ]] && [[ "$EXTRAWIFI" == yes ]]; then
display_alert "Adding" "Wireless drivers for Xradio XR819 chipsets" "info"
fetch_from_repo "$GITHUB_SOURCE/dbeinder/xradio" "xradio" "branch:karabek_rebase" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/xradio"
mkdir -p "$kerneldir/drivers/net/wireless/xradio/"
cp "${SRC}"/cache/sources/xradio/karabek_rebase/*.{h,c} \
"$kerneldir/drivers/net/wireless/xradio/"
# Makefile
cp "${SRC}/cache/sources/xradio/karabek_rebase/Makefile" \
"$kerneldir/drivers/net/wireless/xradio/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/xradio/karabek_rebase/Kconfig"
cp "${SRC}/cache/sources/xradio/karabek_rebase/Kconfig" \
"$kerneldir/drivers/net/wireless/xradio/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_WLAN_VENDOR_XRADIO) += xradio/" \
>> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/xradio\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
# add support for K5.13+
process_patch_file "${SRC}/patch/misc/wireless-xradio-5.13.patch" "applying"
# add support for aarch64
if [[ $ARCH == arm64 ]]; then
process_patch_file "${SRC}/patch/misc/wireless-xradio-aarch64.patch" "applying"
fi
fi
}
driver_rtl8811CU_rtl8821C()
{
# Wireless drivers for Realtek RTL8811CU and RTL8821C chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8811cuver="commit:8c2226a74ae718439d56248bd2e44ccf717086d5"
display_alert "Adding" "Wireless drivers for Realtek RTL8811CU and RTL8821C chipsets ${rtl8811cuver}" "info"
fetch_from_repo "$GITHUB_SOURCE/brektrou/rtl8821CU" "rtl8811cu" "${rtl8811cuver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8811cu"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8811cu/"
cp -R "${SRC}/cache/sources/rtl8811cu/${rtl8811cuver#*:}"/{core,hal,include,os_dep,platform,rtl8821c.mk} \
"$kerneldir/drivers/net/wireless/rtl8811cu"
# Makefile
cp "${SRC}/cache/sources/rtl8811cu/${rtl8811cuver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8811cu/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8811cu/${rtl8811cuver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8811cu/${rtl8811cuver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8811cu/Kconfig"
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
"$kerneldir/drivers/net/wireless/rtl8811cu/Makefile"
# Address ARM related bug $GITHUB_SOURCE/aircrack-ng/rtl8812au/issues/233
sed -i "s/^CONFIG_MP_VHT_HW_TX_MODE.*/CONFIG_MP_VHT_HW_TX_MODE = n/" \
"$kerneldir/drivers/net/wireless/rtl8811cu/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8821CU) += rtl8811cu/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8811cu\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
# add support for 5.18.y
process_patch_file "${SRC}/patch/misc/wireless-rtl8821cu.patch" "applying"
# add support for 5.19.2
process_patch_file "${SRC}/patch/misc/wireless-rtl8811cu-5.19.2.patch" "applying"
fi
}
driver_rtl8188EU_rtl8188ETV()
{
# Wireless drivers for Realtek 8188EU 8188EUS and 8188ETV chipsets
if linux-version compare "${version}" ge 3.14 &&
linux-version compare "${version}" lt 5.15 &&
[ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8188euver="branch:v5.7.6.1"
display_alert "Adding" "Wireless drivers for Realtek 8188EU 8188EUS and 8188ETV chipsets ${rtl8188euver}" "info"
fetch_from_repo "$GITHUB_SOURCE/aircrack-ng/rtl8188eus" "rtl8188eu" "${rtl8188euver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8188eu"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8188eu/"
cp -R "${SRC}/cache/sources/rtl8188eu/${rtl8188euver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8188eu"
# Makefile
cp "${SRC}/cache/sources/rtl8188eu/${rtl8188euver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8188eu/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8188eu/${rtl8188euver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8188eu/${rtl8188euver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8188eu/Kconfig"
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
"$kerneldir/drivers/net/wireless/rtl8188eu/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8188EU) += rtl8188eu/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8188eu\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
process_patch_file "${SRC}/patch/misc/wireless-rtl8188eu.patch" "applying"
# add support for K5.12+
process_patch_file "${SRC}/patch/misc/wireless-realtek-8188eu-5.12.patch" "applying"
fi
}
driver_rtl88x2bu()
{
# Wireless drivers for Realtek 88x2bu chipsets
if linux-version compare "${version}" ge 5.0 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl88x2buver="commit:00f51d93fe8309b0e23782ad621a038c98c7f031"
display_alert "Adding" "Wireless drivers for Realtek 88x2bu chipsets ${rtl88x2buver}" "info"
fetch_from_repo "$GITHUB_SOURCE/cilynx/rtl88x2bu" "rtl88x2bu" "${rtl88x2buver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl88x2bu"
mkdir -p "$kerneldir/drivers/net/wireless/rtl88x2bu/"
cp -R "${SRC}/cache/sources/rtl88x2bu/${rtl88x2buver#*:}"/{core,hal,include,os_dep,platform,halmac.mk,rtl8822b.mk} \
"$kerneldir/drivers/net/wireless/rtl88x2bu"
# Makefile
cp "${SRC}/cache/sources/rtl88x2bu/${rtl88x2buver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl88x2bu/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl88x2bu/${rtl88x2buver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl88x2bu/${rtl88x2buver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl88x2bu/Kconfig"
# Adjust path
sed -i 's/include $(src)\/rtl8822b.mk /include $(TopDIR)\/drivers\/net\/wireless\/rtl88x2bu\/rtl8822b.mk/' \
"$kerneldir/drivers/net/wireless/rtl88x2bu/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8822BU) += rtl88x2bu/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl88x2bu\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
}
driver_rtl88x2cs()
{
# Wireless drivers for Realtek 88x2cs chipsets
if linux-version compare "${version}" ge 5.9 && [ "$EXTRAWIFI" == yes ] ; then
# attach to specifics tag or branch
local rtl88x2csver="branch:tune_for_jethub"
display_alert "Adding" "Wireless drivers for Realtek 88x2cs chipsets ${rtl88x2csver}" "info"
fetch_from_repo "$GITHUB_SOURCE/jethome-ru/rtl88x2cs" "rtl88x2cs" "${rtl88x2csver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl88x2cs"
mkdir -p "$kerneldir/drivers/net/wireless/rtl88x2cs/"
cp -R "${SRC}/cache/sources/rtl88x2cs/${rtl88x2csver#*:}"/{core,hal,include,os_dep,platform,halmac.mk,ifcfg-wlan0,rtl8822c.mk,runwpa,wlan0dhcp} \
"$kerneldir/drivers/net/wireless/rtl88x2cs"
# Makefile
cp "${SRC}/cache/sources/rtl88x2cs/${rtl88x2csver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl88x2cs/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl88x2cs/${rtl88x2csver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl88x2cs/${rtl88x2csver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl88x2cs/Kconfig"
# Adjust path
sed -i 's/include $(src)\/rtl8822c.mk/include $(TopDIR)\/drivers\/net\/wireless\/rtl88x2cs\/rtl8822c.mk/' \
"$kerneldir/drivers/net/wireless/rtl88x2cs/Makefile"
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
"$kerneldir/drivers/net/wireless/rtl88x2cs/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8822CS) += rtl88x2cs/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl88x2cs\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
}
#_bt for blueteeth
driver_rtl8822cs_bt()
{
# Bluetooth support for Realtek 8822CS (hci_ver 0x8) chipsets
# For sunxi, these two patches are applied in a series.
if linux-version compare "${version}" ge 5.11 && [[ "$LINUXFAMILY" != sunxi* ]]; then
display_alert "Adding" "Bluetooth support for Realtek 8822CS (hci_ver 0x8) chipsets" "info"
process_patch_file "${SRC}/patch/misc/bluetooth-rtl8822cs-hci_ver-0x8.patch" "applying"
process_patch_file "${SRC}/patch/misc/Bluetooth-hci_h5-Add-power-reset-via-gpio-in-h5_btrt.patch" "applying"
fi
}
driver_rtl8723DS()
{
# Wireless drivers for Realtek 8723DS chipsets
if linux-version compare "${version}" ge 5.0 && [[ "$EXTRAWIFI" == yes ]]; then
# attach to specifics tag or branch
local rtl8723dsver="branch:master"
display_alert "Adding" "Wireless drivers for Realtek 8723DS chipsets ${rtl8723dsver}" "info"
fetch_from_repo "$GITHUB_SOURCE/lwfinger/rtl8723ds" "rtl8723ds" "${rtl8723dsver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8723ds"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8723ds/"
cp -R "${SRC}/cache/sources/rtl8723ds/${rtl8723dsver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8723ds"
# Makefile
cp "${SRC}/cache/sources/rtl8723ds/${rtl8723dsver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8723ds/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8723ds/${rtl8723dsver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8723ds/${rtl8723dsver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8723ds/Kconfig"
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
"$kerneldir/drivers/net/wireless/rtl8723ds/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8723DS) += rtl8723ds/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8723ds\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
}
driver_rtl8723DU()
{
# Wireless drivers for Realtek 8723DU chipsets
if linux-version compare $version ge 5.0 && [ "$EXTRAWIFI" == yes ]; then
local rtl8723duver="branch:master"
display_alert "Adding" "Wireless drivers for Realtek 8723DU chipsets ${rtl8723duver}" "info"
fetch_from_repo "$GITHUB_SOURCE/lwfinger/rtl8723du" "rtl8723du" "${rtl8723duver}" "yes"
cd "$kerneldir" || exit
rm -rf $kerneldir/drivers/net/wireless/rtl8723du
mkdir -p $kerneldir/drivers/net/wireless/rtl8723du/
cp -R ${SRC}/cache/sources/rtl8723du/${rtl8723duver#*:}/{core,hal,include,os_dep,platform} \
$kerneldir/drivers/net/wireless/rtl8723du
# Makefile
cp ${SRC}/cache/sources/rtl8723du/${rtl8723duver#*:}/Makefile \
$kerneldir/drivers/net/wireless/rtl8723du/Makefile
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
$kerneldir/drivers/net/wireless/rtl8723du/Makefile
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8723DU) += rtl8723du/" >> $kerneldir/drivers/net/wireless/Makefile
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8723du\/Kconfig"' \
$kerneldir/drivers/net/wireless/Kconfig
process_patch_file "${SRC}/patch/misc/wireless-rtl8723du-5.19.2.patch" "applying"
fi
}
driver_rtl8822BS()
{
# Wireless drivers for Realtek 8822BS chipsets
if linux-version compare "${version}" ge 4.4 && linux-version compare "${version}" le 5.16 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
display_alert "Adding" "Wireless drivers for Realtek 8822BS chipsets ${rtl8822bsver}" "info"
local rtl8822bsver="branch:local_rtl8822bs"
fetch_from_repo "$GITHUB_SOURCE/150balbes/wifi" "rtl8822bs" "${rtl8822bsver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8822bs"
mkdir -p $kerneldir/drivers/net/wireless/rtl8822bs/
cp -R "${SRC}/cache/sources/rtl8822bs/${rtl8822bsver#*:}"/{core,hal,include,os_dep,platform,bluetooth,getAP,rtl8822b.mk} \
$kerneldir/drivers/net/wireless/rtl8822bs
# Makefile
cp "${SRC}/cache/sources/rtl8822bs/${rtl8822bsver#*:}/Makefile" \
$kerneldir/drivers/net/wireless/rtl8822bs/Makefile
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8822bs/${rtl8822bsver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8822bs/${rtl8822bsver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8822bs/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8822BS) += rtl8822bs/" >> $kerneldir/drivers/net/wireless/Makefile
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8822bs\/Kconfig"' \
$kerneldir/drivers/net/wireless/Kconfig
fi
}
patch_drivers_network()
{
display_alert "Patching network related drivers"
driver_rtl8152_rtl8153
driver_rtl8189ES
driver_rtl8189FS
driver_rtl8192EU
driver_rtl8811_rtl8812_rtl8814_rtl8821
driver_xradio_xr819
driver_rtl8811CU_rtl8821C
driver_rtl8188EU_rtl8188ETV
driver_rtl88x2bu
driver_rtl88x2cs
driver_rtl8822cs_bt
driver_rtl8723DS
driver_rtl8723DU
driver_rtl8822BS
display_alert "Network related drivers patched" "" "info"
}

View File

@@ -1,4 +1,7 @@
#!/usr/bin/env bash
compilation_prepare() {
source ${SRC}/lib/functions/compilation/patch/drivers_network.sh
# Packaging patch for modern kernels should be one for all.
# Currently we have it per kernel family since we can't have one
@@ -234,461 +237,8 @@ compilation_prepare() {
"$kerneldir/scripts/package/builddeb"
fi
# Updated USB network drivers for RTL8152/RTL8153 based dongles that also support 2.5Gbs variants
if linux-version compare "${version}" ge 5.4 && linux-version compare "${version}" le 5.12 && [ $LINUXFAMILY != mvebu64 ] && [ $LINUXFAMILY != rk322x ] && [ $LINUXFAMILY != odroidxu4 ] && [ $EXTRAWIFI == yes ]; then
# attach to specifics tag or branch
local rtl8152ver="branch:master"
display_alert "Adding" "Drivers for 2.5Gb RTL8152/RTL8153 USB dongles ${rtl8152ver}" "info"
fetch_from_repo "$GITHUB_SOURCE/igorpecovnik/realtek-r8152-linux" "rtl8152" "${rtl8152ver}" "yes"
cp -R "${SRC}/cache/sources/rtl8152/${rtl8152ver#*:}"/{r8152.c,compatibility.h} \
"$kerneldir/drivers/net/usb/"
fi
# Wireless drivers for Realtek 8189ES chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8189esver="branch:master"
display_alert "Adding" "Wireless drivers for Realtek 8189ES chipsets ${rtl8189esver}" "info"
fetch_from_repo "$GITHUB_SOURCE/jwrdegoede/rtl8189ES_linux" "rtl8189es" "${rtl8189esver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8189es"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8189es/"
cp -R "${SRC}/cache/sources/rtl8189es/${rtl8189esver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8189es"
# Makefile
cp "${SRC}/cache/sources/rtl8189es/${rtl8189esver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8189es/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8189es/${rtl8189esver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8189es/${rtl8189esver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8189es/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8189ES) += rtl8189es/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8189es\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
# Wireless drivers for Realtek 8189FS chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8189fsver="branch:rtl8189fs"
display_alert "Adding" "Wireless drivers for Realtek 8189FS chipsets ${rtl8189fsver}" "info"
fetch_from_repo "$GITHUB_SOURCE/jwrdegoede/rtl8189ES_linux" "rtl8189fs" "${rtl8189fsver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8189fs"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8189fs/"
cp -R "${SRC}/cache/sources/rtl8189fs/${rtl8189fsver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8189fs"
# Makefile
cp "${SRC}/cache/sources/rtl8189fs/${rtl8189fsver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8189fs/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8189fs/${rtl8189fsver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8189fs/${rtl8189fsver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8189fs/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8189FS) += rtl8189fs/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8189fs\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
# Wireless drivers for Realtek 8192EU chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8192euver="branch:realtek-4.4.x"
display_alert "Adding" "Wireless drivers for Realtek 8192EU chipsets ${rtl8192euver}" "info"
fetch_from_repo "$GITHUB_SOURCE/Mange/rtl8192eu-linux-driver" "rtl8192eu" "${rtl8192euver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8192eu"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8192eu/"
cp -R "${SRC}/cache/sources/rtl8192eu/${rtl8192euver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8192eu"
# Makefile
cp "${SRC}/cache/sources/rtl8192eu/${rtl8192euver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8192eu/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8192eu/${rtl8192euver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8192eu/${rtl8192euver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8192eu/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8192EU) += rtl8192eu/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8192eu\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
# Wireless drivers for Realtek 8811, 8812, 8814 and 8821 chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8812auver="commit:41532e3b16dcf27f06e6fe5a26314f3aa24d4f87"
display_alert "Adding" "Wireless drivers for Realtek 8811, 8812, 8814 and 8821 chipsets ${rtl8812auver}" "info"
fetch_from_repo "$GITHUB_SOURCE/aircrack-ng/rtl8812au" "rtl8812au" "${rtl8812auver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8812au"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8812au/"
cp -R "${SRC}/cache/sources/rtl8812au/${rtl8812auver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8812au"
# Makefile
cp "${SRC}/cache/sources/rtl8812au/${rtl8812auver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8812au/Makefile"
# Kconfig
cp "${SRC}/cache/sources/rtl8812au/${rtl8812auver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8812au/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_88XXAU) += rtl8812au/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8812au\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
# add support for 5.19.2
process_patch_file "${SRC}/patch/misc/wireless-rtl8812au-5.19.2.patch" "applying"
fi
# Wireless drivers for Xradio XR819 chipsets
if linux-version compare "${version}" ge 4.19 && linux-version compare "${version}" le 5.19 &&
[[ "$LINUXFAMILY" == sunxi* ]] && [[ "$EXTRAWIFI" == yes ]]; then
display_alert "Adding" "Wireless drivers for Xradio XR819 chipsets" "info"
fetch_from_repo "$GITHUB_SOURCE/dbeinder/xradio" "xradio" "branch:karabek_rebase" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/xradio"
mkdir -p "$kerneldir/drivers/net/wireless/xradio/"
cp "${SRC}"/cache/sources/xradio/karabek_rebase/*.{h,c} \
"$kerneldir/drivers/net/wireless/xradio/"
# Makefile
cp "${SRC}/cache/sources/xradio/karabek_rebase/Makefile" \
"$kerneldir/drivers/net/wireless/xradio/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/xradio/karabek_rebase/Kconfig"
cp "${SRC}/cache/sources/xradio/karabek_rebase/Kconfig" \
"$kerneldir/drivers/net/wireless/xradio/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_WLAN_VENDOR_XRADIO) += xradio/" \
>> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/xradio\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
# add support for K5.13+
process_patch_file "${SRC}/patch/misc/wireless-xradio-5.13.patch" "applying"
# add support for aarch64
if [[ $ARCH == arm64 ]]; then
process_patch_file "${SRC}/patch/misc/wireless-xradio-aarch64.patch" "applying"
fi
fi
# Wireless drivers for Realtek RTL8811CU and RTL8821C chipsets
if linux-version compare "${version}" ge 3.14 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8811cuver="commit:8c2226a74ae718439d56248bd2e44ccf717086d5"
display_alert "Adding" "Wireless drivers for Realtek RTL8811CU and RTL8821C chipsets ${rtl8811cuver}" "info"
fetch_from_repo "$GITHUB_SOURCE/brektrou/rtl8821CU" "rtl8811cu" "${rtl8811cuver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8811cu"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8811cu/"
cp -R "${SRC}/cache/sources/rtl8811cu/${rtl8811cuver#*:}"/{core,hal,include,os_dep,platform,rtl8821c.mk} \
"$kerneldir/drivers/net/wireless/rtl8811cu"
# Makefile
cp "${SRC}/cache/sources/rtl8811cu/${rtl8811cuver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8811cu/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8811cu/${rtl8811cuver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8811cu/${rtl8811cuver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8811cu/Kconfig"
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
"$kerneldir/drivers/net/wireless/rtl8811cu/Makefile"
# Address ARM related bug $GITHUB_SOURCE/aircrack-ng/rtl8812au/issues/233
sed -i "s/^CONFIG_MP_VHT_HW_TX_MODE.*/CONFIG_MP_VHT_HW_TX_MODE = n/" \
"$kerneldir/drivers/net/wireless/rtl8811cu/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8821CU) += rtl8811cu/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8811cu\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
# add support for 5.18.y
process_patch_file "${SRC}/patch/misc/wireless-rtl8821cu.patch" "applying"
# add support for 5.19.2
process_patch_file "${SRC}/patch/misc/wireless-rtl8811cu-5.19.2.patch" "applying"
fi
# Wireless drivers for Realtek 8188EU 8188EUS and 8188ETV chipsets
if linux-version compare "${version}" ge 3.14 &&
linux-version compare "${version}" lt 5.15 &&
[ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl8188euver="branch:v5.7.6.1"
display_alert "Adding" "Wireless drivers for Realtek 8188EU 8188EUS and 8188ETV chipsets ${rtl8188euver}" "info"
fetch_from_repo "$GITHUB_SOURCE/aircrack-ng/rtl8188eus" "rtl8188eu" "${rtl8188euver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8188eu"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8188eu/"
cp -R "${SRC}/cache/sources/rtl8188eu/${rtl8188euver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8188eu"
# Makefile
cp "${SRC}/cache/sources/rtl8188eu/${rtl8188euver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8188eu/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8188eu/${rtl8188euver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8188eu/${rtl8188euver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8188eu/Kconfig"
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
"$kerneldir/drivers/net/wireless/rtl8188eu/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8188EU) += rtl8188eu/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8188eu\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
process_patch_file "${SRC}/patch/misc/wireless-rtl8188eu.patch" "applying"
# add support for K5.12+
process_patch_file "${SRC}/patch/misc/wireless-realtek-8188eu-5.12.patch" "applying"
fi
# Wireless drivers for Realtek 88x2bu chipsets
if linux-version compare "${version}" ge 5.0 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
local rtl88x2buver="commit:00f51d93fe8309b0e23782ad621a038c98c7f031"
display_alert "Adding" "Wireless drivers for Realtek 88x2bu chipsets ${rtl88x2buver}" "info"
fetch_from_repo "$GITHUB_SOURCE/cilynx/rtl88x2bu" "rtl88x2bu" "${rtl88x2buver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl88x2bu"
mkdir -p "$kerneldir/drivers/net/wireless/rtl88x2bu/"
cp -R "${SRC}/cache/sources/rtl88x2bu/${rtl88x2buver#*:}"/{core,hal,include,os_dep,platform,halmac.mk,rtl8822b.mk} \
"$kerneldir/drivers/net/wireless/rtl88x2bu"
# Makefile
cp "${SRC}/cache/sources/rtl88x2bu/${rtl88x2buver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl88x2bu/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl88x2bu/${rtl88x2buver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl88x2bu/${rtl88x2buver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl88x2bu/Kconfig"
# Adjust path
sed -i 's/include $(src)\/rtl8822b.mk /include $(TopDIR)\/drivers\/net\/wireless\/rtl88x2bu\/rtl8822b.mk/' \
"$kerneldir/drivers/net/wireless/rtl88x2bu/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8822BU) += rtl88x2bu/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl88x2bu\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
# Wireless drivers for Realtek 88x2cs chipsets
if linux-version compare "${version}" ge 5.9 && [ "$EXTRAWIFI" == yes ] ; then
# attach to specifics tag or branch
local rtl88x2csver="branch:tune_for_jethub"
display_alert "Adding" "Wireless drivers for Realtek 88x2cs chipsets ${rtl88x2csver}" "info"
fetch_from_repo "$GITHUB_SOURCE/jethome-ru/rtl88x2cs" "rtl88x2cs" "${rtl88x2csver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl88x2cs"
mkdir -p "$kerneldir/drivers/net/wireless/rtl88x2cs/"
cp -R "${SRC}/cache/sources/rtl88x2cs/${rtl88x2csver#*:}"/{core,hal,include,os_dep,platform,halmac.mk,ifcfg-wlan0,rtl8822c.mk,runwpa,wlan0dhcp} \
"$kerneldir/drivers/net/wireless/rtl88x2cs"
# Makefile
cp "${SRC}/cache/sources/rtl88x2cs/${rtl88x2csver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl88x2cs/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl88x2cs/${rtl88x2csver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl88x2cs/${rtl88x2csver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl88x2cs/Kconfig"
# Adjust path
sed -i 's/include $(src)\/rtl8822c.mk/include $(TopDIR)\/drivers\/net\/wireless\/rtl88x2cs\/rtl8822c.mk/' \
"$kerneldir/drivers/net/wireless/rtl88x2cs/Makefile"
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
"$kerneldir/drivers/net/wireless/rtl88x2cs/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8822CS) += rtl88x2cs/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl88x2cs\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
# Bluetooth support for Realtek 8822CS (hci_ver 0x8) chipsets
# For sunxi, these two patches are applied in a series.
if linux-version compare "${version}" ge 5.11 && [[ "$LINUXFAMILY" != sunxi* ]]; then
display_alert "Adding" "Bluetooth support for Realtek 8822CS (hci_ver 0x8) chipsets" "info"
process_patch_file "${SRC}/patch/misc/bluetooth-rtl8822cs-hci_ver-0x8.patch" "applying"
process_patch_file "${SRC}/patch/misc/Bluetooth-hci_h5-Add-power-reset-via-gpio-in-h5_btrt.patch" "applying"
fi
# Wireless drivers for Realtek 8723DS chipsets
if linux-version compare "${version}" ge 5.0 && [[ "$EXTRAWIFI" == yes ]]; then
# attach to specifics tag or branch
local rtl8723dsver="branch:master"
display_alert "Adding" "Wireless drivers for Realtek 8723DS chipsets ${rtl8723dsver}" "info"
fetch_from_repo "$GITHUB_SOURCE/lwfinger/rtl8723ds" "rtl8723ds" "${rtl8723dsver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8723ds"
mkdir -p "$kerneldir/drivers/net/wireless/rtl8723ds/"
cp -R "${SRC}/cache/sources/rtl8723ds/${rtl8723dsver#*:}"/{core,hal,include,os_dep,platform} \
"$kerneldir/drivers/net/wireless/rtl8723ds"
# Makefile
cp "${SRC}/cache/sources/rtl8723ds/${rtl8723dsver#*:}/Makefile" \
"$kerneldir/drivers/net/wireless/rtl8723ds/Makefile"
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8723ds/${rtl8723dsver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8723ds/${rtl8723dsver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8723ds/Kconfig"
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
"$kerneldir/drivers/net/wireless/rtl8723ds/Makefile"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8723DS) += rtl8723ds/" >> "$kerneldir/drivers/net/wireless/Makefile"
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8723ds\/Kconfig"' \
"$kerneldir/drivers/net/wireless/Kconfig"
fi
# Wireless drivers for Realtek 8723DU chipsets
if linux-version compare $version ge 5.0 && [ "$EXTRAWIFI" == yes ]; then
local rtl8723duver="branch:master"
display_alert "Adding" "Wireless drivers for Realtek 8723DU chipsets ${rtl8723duver}" "info"
fetch_from_repo "$GITHUB_SOURCE/lwfinger/rtl8723du" "rtl8723du" "${rtl8723duver}" "yes"
cd "$kerneldir" || exit
rm -rf $kerneldir/drivers/net/wireless/rtl8723du
mkdir -p $kerneldir/drivers/net/wireless/rtl8723du/
cp -R ${SRC}/cache/sources/rtl8723du/${rtl8723duver#*:}/{core,hal,include,os_dep,platform} \
$kerneldir/drivers/net/wireless/rtl8723du
# Makefile
cp ${SRC}/cache/sources/rtl8723du/${rtl8723duver#*:}/Makefile \
$kerneldir/drivers/net/wireless/rtl8723du/Makefile
# Disable debug
sed -i "s/^CONFIG_RTW_DEBUG.*/CONFIG_RTW_DEBUG = n/" \
$kerneldir/drivers/net/wireless/rtl8723du/Makefile
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8723DU) += rtl8723du/" >> $kerneldir/drivers/net/wireless/Makefile
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8723du\/Kconfig"' \
$kerneldir/drivers/net/wireless/Kconfig
process_patch_file "${SRC}/patch/misc/wireless-rtl8723du-5.19.2.patch" "applying"
fi
# Wireless drivers for Realtek 8822BS chipsets
if linux-version compare "${version}" ge 4.4 && linux-version compare "${version}" le 5.16 && [ "$EXTRAWIFI" == yes ]; then
# attach to specifics tag or branch
display_alert "Adding" "Wireless drivers for Realtek 8822BS chipsets ${rtl8822bsver}" "info"
local rtl8822bsver="branch:local_rtl8822bs"
fetch_from_repo "$GITHUB_SOURCE/150balbes/wifi" "rtl8822bs" "${rtl8822bsver}" "yes"
cd "$kerneldir" || exit
rm -rf "$kerneldir/drivers/net/wireless/rtl8822bs"
mkdir -p $kerneldir/drivers/net/wireless/rtl8822bs/
cp -R "${SRC}/cache/sources/rtl8822bs/${rtl8822bsver#*:}"/{core,hal,include,os_dep,platform,bluetooth,getAP,rtl8822b.mk} \
$kerneldir/drivers/net/wireless/rtl8822bs
# Makefile
cp "${SRC}/cache/sources/rtl8822bs/${rtl8822bsver#*:}/Makefile" \
$kerneldir/drivers/net/wireless/rtl8822bs/Makefile
# Kconfig
sed -i 's/---help---/help/g' "${SRC}/cache/sources/rtl8822bs/${rtl8822bsver#*:}/Kconfig"
cp "${SRC}/cache/sources/rtl8822bs/${rtl8822bsver#*:}/Kconfig" \
"$kerneldir/drivers/net/wireless/rtl8822bs/Kconfig"
# Add to section Makefile
echo "obj-\$(CONFIG_RTL8822BS) += rtl8822bs/" >> $kerneldir/drivers/net/wireless/Makefile
sed -i '/source "drivers\/net\/wireless\/ti\/Kconfig"/a source "drivers\/net\/wireless\/rtl8822bs\/Kconfig"' \
$kerneldir/drivers/net/wireless/Kconfig
fi
patch_drivers_network
# Exfat driver

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# advanced_patch <dest> <family> <board> <target> <branch> <description>
#
# parameters:

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
compile_uboot() {
# not optimal, but extra cleaning before overlayfs_wrapper should keep sources directory clean
if [[ $CLEAN_LEVEL == *make* ]]; then

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
grab_version() {
local ver=()
ver[0]=$(grep "^VERSION" "${1}"/Makefile | head -1 | awk '{print $(NF)}' | grep -oE '^[[:digit:]]+')

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# Expected variables
# - aggregated_content
# - potential_paths

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
desktop_element_available_for_arch() {
local desktop_element_path="${1}"
local targeted_arch="${2}"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
function interactive_config_prepare_terminal() {
if [[ -z $ROOT_FS_CREATE_ONLY ]]; then
# override stty size
@@ -12,7 +13,7 @@ function interactive_config_prepare_terminal() {
}
function interactive_config_ask_kernel() {
interactive_config_ask_kernel_only
# interactive_config_ask_kernel_only
interactive_config_ask_kernel_configure
}
@@ -151,7 +152,7 @@ function interactive_config_ask_branch() {
}
function interactive_config_ask_release() {
if [[ $KERNEL_ONLY != yes && -z $RELEASE ]]; then
if [[ -z "$RELEASE" ]]; then
options=()
@@ -169,7 +170,7 @@ function interactive_config_ask_desktop_build() {
# don't show desktop option if we choose minimal build
if [[ $HAS_VIDEO_OUTPUT == no || $BUILD_MINIMAL == yes ]]; then
BUILD_DESKTOP=no
elif [[ $KERNEL_ONLY != yes && -z $BUILD_DESKTOP ]]; then
elif [[ -z "$BUILD_DESKTOP" ]]; then
# read distribution support status which is written to the armbian-release file
set_distribution_status
@@ -190,7 +191,7 @@ function interactive_config_ask_desktop_build() {
}
function interactive_config_ask_standard_or_minimal() {
if [[ $KERNEL_ONLY != yes && $BUILD_DESKTOP == no && -z $BUILD_MINIMAL ]]; then
if [[ $BUILD_DESKTOP == no && -z $BUILD_MINIMAL ]]; then
options=()
options+=("no" "Standard image with console interface")

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# Myy : Menu configuration for choosing desktop configurations
show_menu() {
provided_title=$1

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# create_chroot <target_dir> <release> <arch>
#
create_chroot() {

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# Installing debian packages or package files in the armbian build system.
# The function accepts four optional parameters:
# autoupdate - If the installation list is not empty then update first.

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# mount_chroot <target>
#
# helper to reduce code duplication

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
function get_urls() {
local catalog=$1
local filename=$2

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
#
# This function retries Git operations to avoid failure in case remote is borked
# If the git team needs to call a remote server, use this function.

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
adding_packages() {
# add deb files to repository if they are not already there

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# prepare_host_basic
#
# * installs only basic packages

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# wait_for_package_manager
#
# * installation will break if we try to install when package manager is running

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# prepare_host
#
# * checks and installs necessary packages
@@ -237,7 +238,7 @@ prepare_host() {
fi # check offline
# enable arm binary format so that the cross-architecture chroot environment will work
if [[ $KERNEL_ONLY != yes ]]; then
if build_task_is_enabled "bootstrap"; then
modprobe -q binfmt_misc
mountpoint -q /proc/sys/fs/binfmt_misc/ || mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc
if [[ "$(arch)" != "aarch64" ]]; then

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
#--------------------------------------------------------------------------------------------------------------------------------
# fingerprint_image <out_txt_file> [image_filename]
# Saving build summary to the image

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# update_initramfs
#
# this should be invoked as late as possible for any modifications by

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# check_loop_device <device_node>
#
check_loop_device() {

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# prepare_partitions
#
# creates image file, partitions and fs

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# create_image
#
# finishes creation of image from cached rootfs

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
#--------------------------------------------------------------------------------------------------------------------------------
# Let's have unique way of displaying alerts
#--------------------------------------------------------------------------------------------------------------------------------

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
run_on_sdcard() {
# Lack of quotes allows for redirections and pipes easily.

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# exit_with_error <message> <highlight>
#
# a way to terminate build process

View File

@@ -0,0 +1,329 @@
#!/usr/bin/env bash
###############################################################################
#
# build_task_is_enabled()
#
# $1: _taskNameToCheck - a single task name to check for BUILD_ONLY enablement
# return:
# 0 - if BUILD_ONLY is empty or if the task name is listed by BUILD_ONLY
# 1 - otherwise
#
build_task_is_enabled() {
# remove all "
local _taskNameToCheck=${1//\"/}
local _buildOnly=${BUILD_ONLY//\"/}
# An empty _buildOnly allows any taskname
[[ -z $_buildOnly ]] && return 0
_buildOnly=${_buildOnly//,/ }
for _buildOnlyTaskName in ${_buildOnly}; do
[[ "$_taskNameToCheck" == "$_buildOnlyTaskName" ]] && return 0
done
return 1
}
###############################################################################
#
# build_validate_buildOnly()
#
# This function validates the list of task names defined by global
# variable BUIDL_ONLY versus the locally defined constant
# list __all_valid_buildOnly.
#
# In case of future extensions, please maintain the list of valid task names
# only here.
#
build_validate_buildOnly() {
# constant list of all valid BUILD_ONLY task names - can be :comma: or :space: separated
local _all_valid_buildOnly="u-boot kernel armbian-config armbian-zsh plymouth-theme-armbian armbian-firmware armbian-bsp chroot bootstrap"
# remove all "
local _buildOnly=${BUILD_ONLY//\"/}
# relace all :comma: by :space:
_all_valid_buildOnly=${_all_valid_buildOnly//,/ }
_buildOnly=${_buildOnly//,/ }
[[ -z $_buildOnly ]] && return
local _invalidTaskNames=""
for _taskName in ${_buildOnly}; do
local _isFound=0
for _supportedTaskName in ${_all_valid_buildOnly}; do
[[ "$_taskName" == "$_supportedTaskName" ]] && _isFound=1 && break
done
if [[ $_isFound == 0 ]]; then
[[ -z $_invalidTaskNames ]] && _invalidTaskNames="${_taskName}" || _invalidTaskNames="${_invalidTaskNames} ${_taskName}"
fi
done
if [[ -n $_invalidTaskNames ]]; then
display_alert "BUILD_ONLY has invalid task name(s):" "${_invalidTaskNames}" "err"
display_alert "Use BUILD_ONLY valid task names only:" "${_all_valid_buildOnly}" "ext"
display_alert "Process aborted" "" "info"
exit 1
fi
}
###############################################################################
#
# backward_compatibility_build_only()
#
# This function propagates the deprecated KERNEL_ONLY configuration
# to the appropriate content of the BUILD_ONLY configuration.
# It exists for backward compatibility only.
#
backward_compatibility_build_only() {
local _kernel_buildOnly="u-boot,kernel,armbian-config,armbian-zsh,plymouth-theme-armbian,armbian-firmware,armbian-bsp"
# These checks are necessary for backward compatibility with logic
# https://github.com/armbian/scripts/tree/master /.github/workflows scripts.
# They need to be removed when the need disappears there.
[[ -n $KERNEL_ONLY ]] && {
display_alert "The KERNEL_ONLY key is no longer used." "KERNEL_ONLY=$KERNEL_ONLY" "wrn"
if [ "$KERNEL_ONLY" == "no" ]; then
display_alert "Use an empty BUILD_ONLY variable instead" "" "info"
[[ -n "${BUILD_ONLY}" ]] && {
display_alert "A contradiction. BUILD_ONLY contains a goal. Fix it." "${BUILD_ONLY}" "wrn"
BUILD_ONLY=""
display_alert "Enforced BUILD_ONLY to an empty string." "" "info"
}
elif [ "$KERNEL_ONLY" == "yes" ]; then
display_alert "Instead, use BUILD_ONLY to select the build target." "$_kernel_buildOnly" "wrn"
BUILD_ONLY="$_kernel_buildOnly"
display_alert "BUILD_ONLY enforced to:" "${BUILD_ONLY}" "info"
fi
}
# Validate BUILD_ONLY for valid build task names
build_validate_buildOnly
}
build_get_boot_sources() {
if [[ -n $BOOTSOURCE ]]; then
fetch_from_repo "$BOOTSOURCE" "$BOOTDIR" "$BOOTBRANCH" "yes"
fi
if [[ -n $ATFSOURCE ]]; then
fetch_from_repo "$ATFSOURCE" "$ATFDIR" "$ATFBRANCH" "yes"
fi
}
build_get_kernel_sources() {
if [[ -n $KERNELSOURCE ]]; then
if $(declare -f var_origin_kernel > /dev/null); then
unset LINUXSOURCEDIR
LINUXSOURCEDIR="linux-mainline/$KERNEL_VERSION_LEVEL"
VAR_SHALLOW_ORIGINAL=var_origin_kernel
waiter_local_git "url=$KERNELSOURCE $KERNELSOURCENAME $KERNELBRANCH dir=$LINUXSOURCEDIR $KERNELSWITCHOBJ"
unset VAR_SHALLOW_ORIGINAL
else
fetch_from_repo "$KERNELSOURCE" "$KERNELDIR" "$KERNELBRANCH" "yes"
fi
fi
}
build_uboot() {
# Don't build at all if the BOOTCONFIG is 'none'.
[[ "${BOOTCONFIG}" != "none" ]] && {
# Compile u-boot if packed .deb does not exist or use the one from repository
if [[ ! -f "${DEB_STORAGE}"/${CHOSEN_UBOOT}_${REVISION}_${ARCH}.deb ]]; then
if [[ -n "${ATFSOURCE}" && "${REPOSITORY_INSTALL}" != *u-boot* ]]; then
compile_atf
fi
[[ "${REPOSITORY_INSTALL}" != *u-boot* ]] && compile_uboot
fi
}
}
build_kernel() {
# Compile kernel if packed .deb does not exist or use the one from repository
if [[ ! -f ${DEB_STORAGE}/${CHOSEN_KERNEL}_${REVISION}_${ARCH}.deb ]]; then
KDEB_CHANGELOG_DIST=$RELEASE
[[ -n $KERNELSOURCE ]] && [[ "${REPOSITORY_INSTALL}" != *kernel* ]] && compile_kernel
fi
}
build_armbian-config() {
# Compile armbian-config if packed .deb does not exist or use the one from repository
if [[ ! -f ${DEB_STORAGE}/armbian-config_${REVISION}_all.deb ]]; then
[[ "${REPOSITORY_INSTALL}" != *armbian-config* ]] && compile_armbian-config
fi
}
build_armbian-zsh() {
# Compile armbian-zsh if packed .deb does not exist or use the one from repository
if [[ ! -f ${DEB_STORAGE}/armbian-zsh_${REVISION}_all.deb ]]; then
[[ "${REPOSITORY_INSTALL}" != *armbian-zsh* ]] && compile_armbian-zsh
fi
}
build_plymouth-theme-armbian() {
# Compile plymouth-theme-armbian if packed .deb does not exist or use the one from repository
if [[ ! -f ${DEB_STORAGE}/plymouth-theme-armbian_${REVISION}_all.deb ]]; then
[[ "${REPOSITORY_INSTALL}" != *plymouth-theme-armbian* ]] && compile_plymouth-theme-armbian
fi
}
build_armbian-firmware() {
# Compile armbian-firmware if packed .deb does not exist or use the one from repository
if ! ls "${DEB_STORAGE}/armbian-firmware_${REVISION}_all.deb" 1> /dev/null 2>&1 || ! ls "${DEB_STORAGE}/armbian-firmware-full_${REVISION}_all.deb" 1> /dev/null 2>&1; then
if [[ "${REPOSITORY_INSTALL}" != *armbian-firmware* ]]; then
[[ "${INSTALL_ARMBIAN_FIRMWARE:-yes}" == "yes" ]] && { # Build firmware by default.
FULL=""
REPLACE="-full"
compile_firmware
FULL="-full"
REPLACE=""
compile_firmware
}
fi
fi
}
build_armbian-bsp() {
# create board support package
[[ -n "${RELEASE}" && ! -f "${DEB_STORAGE}/${BSP_CLI_PACKAGE_FULLNAME}.deb" && "${REPOSITORY_INSTALL}" != *armbian-bsp-cli* ]] && create_board_package
# create desktop package
[[ -n "${RELEASE}" && "${DESKTOP_ENVIRONMENT}" && ! -f "${DEB_STORAGE}/$RELEASE/${CHOSEN_DESKTOP}_${REVISION}_all.deb" && "${REPOSITORY_INSTALL}" != *armbian-desktop* ]] && create_desktop_package
[[ -n "${RELEASE}" && "${DESKTOP_ENVIRONMENT}" && ! -f "${DEB_STORAGE}/${RELEASE}/${BSP_DESKTOP_PACKAGE_FULLNAME}.deb" && "${REPOSITORY_INSTALL}" != *armbian-bsp-desktop* ]] && create_bsp_desktop_package
}
build_chroot() {
# build additional packages
[[ $EXTERNAL_NEW == compile ]] && chroot_build_packages
}
build_bootstrap() {
# These two keys are necessary for backward compatibility with logic
# https://github.com/armbian/scripts/tree/master/.github/workflows scripts.
# They need to be removed when the need disappears there.
if [[ $KERNEL_ONLY != yes ]]; then
[[ $BSP_BUILD != yes ]] && debootstrap_ng
fi
}
#################################################################################################################################
#
# build_main()
#
# Builds all artifacts or the filtered ones only based on BUILD_ONLY.
# Ensures that any build pre-requisite is met.
#
# BUILD_ONLY: optional comma separated list of artifacts to build only.
# If this list is empty or not set, then all build tasks will be performed.
# The following build task names are supported for filtering build tasks:
# u-boot, kernel, armbian-config, armbian-zsh, plymouth-theme-armbian, armbian-firmware, armbian-bsp, chroot, bootstrap
#
# Note: The list of all valid BUILD_ONLY task names is to be maintained
# in function build_validate_buildOnly() above as local variable _all_valid_buildOnly.
#
build_main() {
start=$(date +%s)
# Check and install dependencies, directory structure and settings
# The OFFLINE_WORK variable inside the function
prepare_host
[[ "${JUST_INIT}" == "yes" ]] && exit 0
[[ $CLEAN_LEVEL == *sources* ]] && cleaning "sources"
# fetch_from_repo <url> <dir> <ref> <subdir_flag>
# ignore updates help on building all images - for internal purposes
if [[ $IGNORE_UPDATES != yes ]]; then
build_task_is_enabled "u-boot" && build_get_boot_sources
build_task_is_enabled "kernel" && build_get_kernel_sources
call_extension_method "fetch_sources_tools" <<- 'FETCH_SOURCES_TOOLS'
*fetch host-side sources needed for tools and build*
Run early to fetch_from_repo or otherwise obtain sources for needed tools.
FETCH_SOURCES_TOOLS
call_extension_method "build_host_tools" <<- 'BUILD_HOST_TOOLS'
*build needed tools for the build, host-side*
After sources are fetched, build host-side tools needed for the build.
BUILD_HOST_TOOLS
for option in $(tr ',' ' ' <<< "$CLEAN_LEVEL"); do
[[ $option != sources ]] && cleaning "$option"
done
fi
build_task_is_enabled "u-boot" && build_uboot
build_task_is_enabled "kernel" && build_kernel
build_task_is_enabled "armbian-config" && build_armbian-config
build_task_is_enabled "armbian-zsh" && build_armbian-zsh
build_task_is_enabled "plymouth-theme-armbian" && build_plymouth-theme-armbian
build_task_is_enabled "armbian-firmware" && build_armbian-firmware
overlayfs_wrapper "cleanup"
build_task_is_enabled "armbian-bsp" && build_armbian-bsp
# skip image creation if exists. useful for CI when making a lot of images
if [ "$IMAGE_PRESENT" == yes ] && ls "${FINALDEST}/${VENDOR}_${REVISION}_${BOARD^}_${RELEASE}_${BRANCH}_${VER/-$LINUXFAMILY/}${DESKTOP_ENVIRONMENT:+_$DESKTOP_ENVIRONMENT}"*.xz 1> /dev/null 2>&1; then
display_alert "Skipping image creation" "image already made - IMAGE_PRESENT is set" "wrn"
exit
fi
build_task_is_enabled "chroot" && build_chroot
build_task_is_enabled "bootstrap" && build_bootstrap
display_alert "Build done" "@host" "info"
display_alert "Target directory" "${DEB_STORAGE}/" "info"
build_task_is_enabled "u-boot" && display_alert "U-Boot file name" "${CHOSEN_UBOOT}_${REVISION}_${ARCH}.deb" "info"
build_task_is_enabled "kernel" && display_alert "Kernel file name" "${CHOSEN_KERNEL}_${REVISION}_${ARCH}.deb" "info"
call_extension_method "run_after_build" << 'RUN_AFTER_BUILD'
*hook for function to run after build, i.e. to change owner of `$SRC`*
Really one of the last hooks ever called. The build has ended. Congratulations.
- *NOTE:* this will run only if there were no errors during build process.
RUN_AFTER_BUILD
end=$(date +%s)
runtime_secs=$((end - start))
display_alert "Runtime" "$(printf "%d:%02d min" $((runtime_secs / 60)) $((runtime_secs % 60)))" "info"
# Make it easy to repeat build by displaying build options used
[ "$(systemd-detect-virt)" == 'docker' ] && BUILD_CONFIG='docker'
display_alert "Repeat Build Options" "./compile.sh ${BUILD_CONFIG} BOARD=${BOARD} BRANCH=${BRANCH} \
$([[ -n $RELEASE ]] && echo "RELEASE=${RELEASE} ")\
$([[ -n $BUILD_MINIMAL ]] && echo "BUILD_MINIMAL=${BUILD_MINIMAL} ")\
$([[ -n $BUILD_DESKTOP ]] && echo "BUILD_DESKTOP=${BUILD_DESKTOP} ")\
$([[ -n $BUILD_ONLY ]] && echo "BUILD_ONLY=${BUILD_ONLY} ")\
$([[ -n $KERNEL_ONLY ]] && echo "KERNEL_ONLY=${KERNEL_ONLY} ")\
$([[ -n $KERNEL_CONFIGURE ]] && echo "KERNEL_CONFIGURE=${KERNEL_CONFIGURE} ")\
$([[ -n $DESKTOP_ENVIRONMENT ]] && echo "DESKTOP_ENVIRONMENT=${DESKTOP_ENVIRONMENT} ")\
$([[ -n $DESKTOP_ENVIRONMENT_CONFIG_NAME ]] && echo "DESKTOP_ENVIRONMENT_CONFIG_NAME=${DESKTOP_ENVIRONMENT_CONFIG_NAME} ")\
$([[ -n $DESKTOP_APPGROUPS_SELECTED ]] && echo "DESKTOP_APPGROUPS_SELECTED=\"${DESKTOP_APPGROUPS_SELECTED}\" ")\
$([[ -n $DESKTOP_APT_FLAGS_SELECTED ]] && echo "DESKTOP_APT_FLAGS_SELECTED=\"${DESKTOP_APT_FLAGS_SELECTED}\" ")\
$([[ -n $COMPRESS_OUTPUTIMAGE ]] && echo "COMPRESS_OUTPUTIMAGE=${COMPRESS_OUTPUTIMAGE} ")\
" "ext"
}
################################################################
#
# do_default()
#
# @DEPRECATED - use build_main() instead.
# This function is still there for backward compatibility only.
#
do_default() {
build_main
}

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
DISTRIBUTIONS_DESC_DIR="config/distributions"
function prepare_and_config_main_build_single() {
@@ -86,6 +87,8 @@ function prepare_and_config_main_build_single() {
# if KERNEL_ONLY, KERNEL_CONFIGURE, BOARD, BRANCH or RELEASE are not set, display selection menu
backward_compatibility_build_only
interactive_config_ask_kernel
interactive_config_ask_board_list
@@ -110,11 +113,14 @@ function prepare_and_config_main_build_single() {
interactive_config_ask_branch
interactive_config_ask_release
build_task_is_enabled "bootstrap" && {
interactive_config_ask_desktop_build
interactive_config_ask_release
interactive_config_ask_standard_or_minimal
interactive_config_ask_desktop_build
interactive_config_ask_standard_or_minimal
}
#prevent conflicting setup
if [[ $BUILD_DESKTOP == "yes" ]]; then

View File

@@ -1,160 +0,0 @@
do_default() {
start=$(date +%s)
# Check and install dependencies, directory structure and settings
# The OFFLINE_WORK variable inside the function
prepare_host
[[ "${JUST_INIT}" == "yes" ]] && exit 0
[[ $CLEAN_LEVEL == *sources* ]] && cleaning "sources"
# fetch_from_repo <url> <dir> <ref> <subdir_flag>
# ignore updates help on building all images - for internal purposes
if [[ $IGNORE_UPDATES != yes ]]; then
display_alert "Downloading sources" "" "info"
[[ -n $BOOTSOURCE ]] && fetch_from_repo "$BOOTSOURCE" "$BOOTDIR" "$BOOTBRANCH" "yes"
[[ -n $ATFSOURCE ]] && fetch_from_repo "$ATFSOURCE" "$ATFDIR" "$ATFBRANCH" "yes"
if [[ -n $KERNELSOURCE ]]; then
if $(declare -f var_origin_kernel > /dev/null); then
unset LINUXSOURCEDIR
LINUXSOURCEDIR="linux-mainline/$KERNEL_VERSION_LEVEL"
VAR_SHALLOW_ORIGINAL=var_origin_kernel
waiter_local_git "url=$KERNELSOURCE $KERNELSOURCENAME $KERNELBRANCH dir=$LINUXSOURCEDIR $KERNELSWITCHOBJ"
unset VAR_SHALLOW_ORIGINAL
else
fetch_from_repo "$KERNELSOURCE" "$KERNELDIR" "$KERNELBRANCH" "yes"
fi
fi
call_extension_method "fetch_sources_tools" <<- 'FETCH_SOURCES_TOOLS'
*fetch host-side sources needed for tools and build*
Run early to fetch_from_repo or otherwise obtain sources for needed tools.
FETCH_SOURCES_TOOLS
call_extension_method "build_host_tools" <<- 'BUILD_HOST_TOOLS'
*build needed tools for the build, host-side*
After sources are fetched, build host-side tools needed for the build.
BUILD_HOST_TOOLS
for option in $(tr ',' ' ' <<< "$CLEAN_LEVEL"); do
[[ $option != sources ]] && cleaning "$option"
done
fi
# Don't build at all if the BOOTCONFIG is 'none'.
[[ "${BOOTCONFIG}" != "none" ]] && {
# Compile u-boot if packed .deb does not exist or use the one from repository
if [[ ! -f "${DEB_STORAGE}"/${CHOSEN_UBOOT}_${REVISION}_${ARCH}.deb ]]; then
if [[ -n "${ATFSOURCE}" && "${REPOSITORY_INSTALL}" != *u-boot* ]]; then
compile_atf
fi
[[ "${REPOSITORY_INSTALL}" != *u-boot* ]] && compile_uboot
fi
}
# Compile kernel if packed .deb does not exist or use the one from repository
if [[ ! -f ${DEB_STORAGE}/${CHOSEN_KERNEL}_${REVISION}_${ARCH}.deb ]]; then
KDEB_CHANGELOG_DIST=$RELEASE
[[ -n $KERNELSOURCE ]] && [[ "${REPOSITORY_INSTALL}" != *kernel* ]] && compile_kernel
fi
# Compile armbian-config if packed .deb does not exist or use the one from repository
if [[ ! -f ${DEB_STORAGE}/armbian-config_${REVISION}_all.deb ]]; then
[[ "${REPOSITORY_INSTALL}" != *armbian-config* ]] && compile_armbian-config
fi
# Compile armbian-zsh if packed .deb does not exist or use the one from repository
if [[ ! -f ${DEB_STORAGE}/armbian-zsh_${REVISION}_all.deb ]]; then
[[ "${REPOSITORY_INSTALL}" != *armbian-zsh* ]] && compile_armbian-zsh
fi
# Compile plymouth-theme-armbian if packed .deb does not exist or use the one from repository
if [[ ! -f ${DEB_STORAGE}/plymouth-theme-armbian_${REVISION}_all.deb ]]; then
[[ "${REPOSITORY_INSTALL}" != *plymouth-theme-armbian* ]] && compile_plymouth-theme-armbian
fi
# Compile armbian-firmware if packed .deb does not exist or use the one from repository
if ! ls "${DEB_STORAGE}/armbian-firmware_${REVISION}_all.deb" 1> /dev/null 2>&1 || ! ls "${DEB_STORAGE}/armbian-firmware-full_${REVISION}_all.deb" 1> /dev/null 2>&1; then
if [[ "${REPOSITORY_INSTALL}" != *armbian-firmware* ]]; then
[[ "${INSTALL_ARMBIAN_FIRMWARE:-yes}" == "yes" ]] && { # Build firmware by default.
FULL=""
REPLACE="-full"
compile_firmware
FULL="-full"
REPLACE=""
compile_firmware
}
fi
fi
overlayfs_wrapper "cleanup"
# create board support package
[[ -n "${RELEASE}" && ! -f "${DEB_STORAGE}/${BSP_CLI_PACKAGE_FULLNAME}.deb" && "${REPOSITORY_INSTALL}" != *armbian-bsp-cli* ]] && create_board_package
# create desktop package
[[ -n "${RELEASE}" && "${DESKTOP_ENVIRONMENT}" && ! -f "${DEB_STORAGE}/$RELEASE/${CHOSEN_DESKTOP}_${REVISION}_all.deb" && "${REPOSITORY_INSTALL}" != *armbian-desktop* ]] && create_desktop_package
[[ -n "${RELEASE}" && "${DESKTOP_ENVIRONMENT}" && ! -f "${DEB_STORAGE}/${RELEASE}/${BSP_DESKTOP_PACKAGE_FULLNAME}.deb" && "${REPOSITORY_INSTALL}" != *armbian-bsp-desktop* ]] && create_bsp_desktop_package
# skip image creation if exists. useful for CI when making a lot of images
if [ "$IMAGE_PRESENT" == yes ] && ls "${FINALDEST}/${VENDOR}_${REVISION}_${BOARD^}_${RELEASE}_${BRANCH}_${VER/-$LINUXFAMILY/}${DESKTOP_ENVIRONMENT:+_$DESKTOP_ENVIRONMENT}"*.xz 1> /dev/null 2>&1; then
display_alert "Skipping image creation" "image already made - IMAGE_PRESENT is set" "wrn"
exit
fi
# build additional packages
[[ $EXTERNAL_NEW == compile ]] && chroot_build_packages
if [[ $KERNEL_ONLY != yes ]]; then
[[ $BSP_BUILD != yes ]] && debootstrap_ng
else
display_alert "Kernel build done" "@host" "info"
display_alert "Target directory" "${DEB_STORAGE}/" "info"
display_alert "File name" "${CHOSEN_KERNEL}_${REVISION}_${ARCH}.deb" "info"
fi
call_extension_method "run_after_build" << 'RUN_AFTER_BUILD'
*hook for function to run after build, i.e. to change owner of `$SRC`*
Really one of the last hooks ever called. The build has ended. Congratulations.
- *NOTE:* this will run only if there were no errors during build process.
RUN_AFTER_BUILD
end=$(date +%s)
runtime=$(((end - start) / 60))
display_alert "Runtime" "$runtime min" "info"
# Make it easy to repeat build by displaying build options used
[ "$(systemd-detect-virt)" == 'docker' ] && BUILD_CONFIG='docker'
display_alert "Repeat Build Options" "./compile.sh ${BUILD_CONFIG} BOARD=${BOARD} BRANCH=${BRANCH} \
$([[ -n $RELEASE ]] && echo "RELEASE=${RELEASE} ")\
$([[ -n $BUILD_MINIMAL ]] && echo "BUILD_MINIMAL=${BUILD_MINIMAL} ")\
$([[ -n $BUILD_DESKTOP ]] && echo "BUILD_DESKTOP=${BUILD_DESKTOP} ")\
$([[ -n $KERNEL_ONLY ]] && echo "KERNEL_ONLY=${KERNEL_ONLY} ")\
$([[ -n $KERNEL_CONFIGURE ]] && echo "KERNEL_CONFIGURE=${KERNEL_CONFIGURE} ")\
$([[ -n $DESKTOP_ENVIRONMENT ]] && echo "DESKTOP_ENVIRONMENT=${DESKTOP_ENVIRONMENT} ")\
$([[ -n $DESKTOP_ENVIRONMENT_CONFIG_NAME ]] && echo "DESKTOP_ENVIRONMENT_CONFIG_NAME=${DESKTOP_ENVIRONMENT_CONFIG_NAME} ")\
$([[ -n $DESKTOP_APPGROUPS_SELECTED ]] && echo "DESKTOP_APPGROUPS_SELECTED=\"${DESKTOP_APPGROUPS_SELECTED}\" ")\
$([[ -n $DESKTOP_APT_FLAGS_SELECTED ]] && echo "DESKTOP_APT_FLAGS_SELECTED=\"${DESKTOP_APT_FLAGS_SELECTED}\" ")\
$([[ -n $COMPRESS_OUTPUTIMAGE ]] && echo "COMPRESS_OUTPUTIMAGE=${COMPRESS_OUTPUTIMAGE} ")\
" "ext"
}

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# unmount_on_exit
#
unmount_on_exit() {

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
install_deb_chroot() {
local package=$1

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
install_ppa_prerequisites() {
# Myy : So... The whole idea is that, a good bunch of external sources

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
#--------------------------------------------------------------------------------------------------------------------------------
# Create kernel boot logo from packages/blobs/splash/logo.png and packages/blobs/splash/spinner.gif (animated)
# and place to the file /lib/firmware/bootsplash

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
# get_package_list_hash
#
# returns md5 hash for current package list and rootfs cache version

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
customize_image() {
# for users that need to prepare files at host

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
install_common() {
display_alert "Applying common tweaks" "" "info"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
install_distribution_specific() {
display_alert "Applying distribution specific tweaks for" "$RELEASE" "info"

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
post_debootstrap_tweaks() {
# remove service start blockers and QEMU binary

View File

@@ -1,3 +1,4 @@
#!/usr/bin/env bash
desktop_postinstall() {
# disable display manager for the first run

View File

@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
while read -r file; do
# shellcheck source=/dev/null

View File

@@ -1,5 +1,5 @@
LABEL Armbian
LINUX /Image
LINUX /uImage
INITRD /uInitrd
#FDT /dtb/amlogic/meson-gxbb-p200.dtb

View File

@@ -3,7 +3,8 @@
fields=0 48 17 18 38 39 40 2 46 47 49 1
sort_key=1
sort_direction=1
hide_threads=0
tree_sort_key=0
tree_sort_direction=1
hide_kernel_threads=1
hide_userland_threads=0
shadow_other_users=0
@@ -12,29 +13,27 @@ show_program_path=1
highlight_base_name=0
highlight_megabytes=1
highlight_threads=1
tree_view=0
highlight_changes=0
highlight_changes_delay_secs=5
find_comm_in_cmdline=1
strip_exe_from_cmdline=1
show_merged_command=0
tree_view=1
tree_view_always_by_pid=0
header_margin=1
detailed_cpu_time=0
cpu_count_from_zero=0
cpu_count_from_one=1
show_cpu_usage=1
show_cpu_frequency=0
show_cpu_temperature=0
degree_fahrenheit=0
update_process_names=0
account_guest_in_cpu_meter=0
color_scheme=0
enable_mouse=1
delay=15
left_meters=AllCPUs Memory Swap CpuFreq CpuTemp
left_meter_modes=1 1 1 2 2
right_meters=OSversion Hostname Tasks LoadAverage Uptime
right_meter_modes=2 2 2 2 2
# SBC hardware and Kernel specific path.
# Editable manually.
BoardName=
CpuFreq_handler=
CpuTemp_handler=
CpuVCore_l_handler=
CpuVCore_b_handler=
GpuVCore_handler=
GpuTemp_handler=
# Wlan / Eth alias
eth0_alias=
eth1_alias=
wlan0_alias=
wlan1_alias=
left_meters=AllCPUs2 Blank Memory Zram Swap
left_meter_modes=1 2 1 1 1
right_meters=Hostname Tasks LoadAverage DiskIO NetworkIO Uptime Systemd
right_meter_modes=2 2 2 2 2 2 2
hide_function_bar=0

View File

@@ -7,6 +7,7 @@
# warranty of any kind, whether express or implied.
# read distribution status
# shellcheck source=/dev/null
[[ -f /etc/lsb-release ]] && . /etc/lsb-release
[[ -f /etc/os-release ]] && . /etc/os-release
[[ -z "$DISTRIB_CODENAME" ]] && DISTRIB_CODENAME="${VERSION_CODENAME}"
@@ -72,7 +73,7 @@ read_password()
set_shell()
{
optionsAudits=($(grep "zsh\|/bash" /etc/shells | sed 's/\/bin\///g' | sed 's/\/usr//g' | uniq))
readarray -t optionsAudits <<<"$(grep "zsh\|/bash" /etc/shells | sed 's/\/bin\///g' | sed 's/\/usr//g' | uniq)"
USER_SHELL="bash"
if [[ "${#optionsAudits[@]}" -gt 1 ]]; then
@@ -82,9 +83,9 @@ set_shell()
echo -e "\nChoose default system command shell:\n"
for o in "${optionsAudits[@]}"; do
echo "$i) $o"
let i++
(( i++ )) || true
done
read -n1 -s reply
read -r -n1 -s reply
case $reply in
"1"|"${optionsAudits[0]}") USER_SHELL="${optionsAudits[0]}"; break;;
"2"|"${optionsAudits[1]}") USER_SHELL="${optionsAudits[1]}"; break;;
@@ -92,9 +93,9 @@ set_shell()
esac
done
fi
SHELL_PATH=$(grep /$USER_SHELL$ /etc/shells | tail -1)
SHELL_PATH=$(grep "/$USER_SHELL$" /etc/shells | tail -1)
chsh -s $(grep -iF "/$USER_SHELL" /etc/shells | tail -1)
chsh -s "$(grep -iF "/$USER_SHELL" /etc/shells | tail -1)"
echo -e "\nShell: \x1B[92m${USER_SHELL^^}\x1B[0m"
# change shell for future users
@@ -107,10 +108,10 @@ set_timezone_and_locales()
{
# Grab this machine's public IP address
PUBLIC_IP=`curl --max-time 5 -s https://ipinfo.io/ip`
PUBLIC_IP=$(curl --max-time 5 -s https://ipinfo.io/ip)
# Check if we have wireless adaptor
WIFI_DEVICE=$(LC_ALL=C nmcli dev status | grep " wifi " 2>/dev/null)
WIFI_DEVICE=$(LC_ALL=C nmcli dev status | grep " wifi " 2>/dev/null)
if [ -z "$PUBLIC_IP" ]; then
@@ -118,9 +119,13 @@ set_timezone_and_locales()
if [[ -n "$WIFI_DEVICE" ]]; then
echo -e "Internet connection was \x1B[91mnot detected\x1B[0m."
echo ""
read -n1 -s -r -p "Connect via wireless? [Y/n] " response
echo ""
if [[ "${response}" =~ ^(Y|y|"")$ ]]; then
unset response
while [[ ! "${response}" =~ ^(Y|y|N|n)$ ]]; do
read -n1 -s -r -p "Connect via wireless? [Y/n] " response
response=${response:-Y}
echo "$response"
done
if [[ "${response}" =~ ^(Y|y)$ ]]; then
nmtui-connect
fi
echo ""
@@ -128,27 +133,27 @@ set_timezone_and_locales()
fi
# Grab IP once again if not found
[[ -z "$PUBLIC_IP" && -n "$WIFI_DEVICE" ]] && PUBLIC_IP=`curl --max-time 5 -s https://ipinfo.io/ip`
[[ -z "$PUBLIC_IP" && -n "$WIFI_DEVICE" ]] && PUBLIC_IP=$(curl --max-time 5 -s https://ipinfo.io/ip)
# Call the geolocation API and capture the output
RES=$(
curl --max-time 5 -s http://ipwhois.app/json/${PUBLIC_IP} | \
curl --max-time 5 -s "http://ipwhois.app/json/${PUBLIC_IP}" | \
jq '.timezone, .country, .country_code' | \
while read -r TIMEZONE; do
read -r COUNTRY
echo "${TIMEZONE},${COUNTRY},${COUNTRYCODE}" | tr --delete \"
echo "${TIMEZONE},${COUNTRY},${COUNTRYCODE}" | tr --delete '"\n'
done
)
TZDATA=$(echo ${RES} | cut -d"," -f1)
STATE=$(echo ${RES} | cut -d"," -f2)
CCODE=$(echo ${RES} | cut -d"," -f3 | xargs)
TZDATA=$(echo "${RES}" | cut -d"," -f1)
CCODE=$(echo "${RES}" | cut -d"," -f3 | xargs)
echo -e "Detected timezone: \x1B[92m$TZDATA\x1B[0m"
echo ""
unset response
while [[ ! "${response}" =~ ^(Y|y|N|n)$ ]]; do
read -n1 -s -r -p "Set user language based on your location? [Y/n] " response
echo ""
response=${response:-Y}
echo "$response"
done
# change it only if we have a match and if we agree
if [[ "${response}" =~ ^(N|n)$ ]]; then
@@ -161,7 +166,7 @@ set_timezone_and_locales()
[[ -z "$LOCALES" ]] && LOCALES=$(grep territory /usr/share/i18n/locales/* | grep _"$CCODE" | cut -d ":" -f 1 | cut -d "/" -f 6 | \
xargs -I{} grep {} /usr/share/i18n/SUPPORTED | cut -d " " -f 1)
options=(`echo ${LOCALES}`);
readarray -t options <<<"${LOCALES}"
# when having more locales, prompt for choosing one
if [[ "${#options[@]}" -gt 1 ]]; then
@@ -171,12 +176,12 @@ set_timezone_and_locales()
PS3='Please enter your choice:'
select opt in "${options[@]}"
do
if [[ " ${options[@]} " =~ " ${opt} " ]]; then
if [[ " ${options[*]} " == *" ${opt} "* ]]; then
LOCALES=${opt}
break
fi
done
fi
fi
if [[ "${LOCALES}" != *Skip* ]]; then
@@ -195,12 +200,16 @@ set_timezone_and_locales()
locale-gen "${LOCALES}" > /dev/null 2>&1
# setting detected locales only for user
echo "export LC_ALL=$LOCALES" >> /home/"$RealUserName"/.bashrc
echo "export LANG=$LOCALES" >> /home/"$RealUserName"/.bashrc
echo "export LANGUAGE=$LOCALES" >> /home/"$RealUserName"/.bashrc
echo "export LC_ALL=$LOCALES" >> /home/"$RealUserName"/.xsessionrc
echo "export LANG=$LOCALES" >> /home/"$RealUserName"/.xsessionrc
echo "export LANGUAGE=$LOCALES" >> /home/"$RealUserName"/.xsessionrc
{
echo "export LC_ALL=$LOCALES"
echo "export LANG=$LOCALES"
echo "export LANGUAGE=$LOCALES"
} >> /home/"$RealUserName"/.bashrc
{
echo "export LC_ALL=$LOCALES"
echo "export LANG=$LOCALES"
echo "export LANGUAGE=$LOCALES"
} >> /home/"$RealUserName"/.xsessionrc
fi
}
@@ -235,12 +244,12 @@ add_profile_sync_settings()
add_user()
{
read -t 0 temp
read -r -t 0 _
REPEATS=3
while [ -f "/root/.not_logged_in_yet" ]; do
echo -e "\nPlease provide a username (eg. your first name): \c"
read -e username
if ! grep '^[a-zA-Z]*$' <<< $username > /dev/null ; then
read -r -e username
if ! grep '^[a-zA-Z]*$' <<< "$username" > /dev/null ; then
echo -e "\n\x1B[91mError\x1B[0m: illegal characters in username"
return
fi
@@ -265,7 +274,7 @@ add_user()
echo -e "\n\e[0;31mWarning:\x1B[0m Weak password, $okay \b!"
fi
echo -e ""
read -e -p "Please provide your real name: " -i "${RealUserName^}" RealName
read -r -e -p "Please provide your real name: " -i "${RealUserName^}" RealName
adduser --quiet --disabled-password --home /home/"$RealUserName" --gecos "$RealName" "$RealUserName"
(echo "$first_input";echo "$second_input";) | passwd "$RealUserName" >/dev/null 2>&1
@@ -283,8 +292,7 @@ add_user()
rm -f /root/.not_logged_in_yet
chmod +x /etc/update-motd.d/*
# set up profile sync daemon on desktop systems
command -v psd >/dev/null 2>&1
if [ $? -eq 0 ]; then
if command -v psd >/dev/null 2>&1; then
echo -e "${RealUserName} ALL=(ALL) NOPASSWD: /usr/bin/psd-overlay-helper" >> /etc/sudoers
touch /home/"${RealUserName}"/.activate_psd
chown "$RealUserName":"$RealUserName" /home/"${RealUserName}"/.activate_psd
@@ -314,7 +322,7 @@ if [[ -f /root/.not_logged_in_yet && -n $(tty) ]]; then
systemctl is-system-running --wait >/dev/null
# enable hiDPI support
if [[ "$(cat /sys/class/graphics/fb0/virtual_size 2>/dev/null | cut -d, -f1)" -gt 1920 ]]; then
if [[ "$(cut -d, -f1 < /sys/class/graphics/fb0/virtual_size 2> /dev/null)" -gt 1920 ]]; then
# lightdm
[[ -f /etc/lightdm/slick-greeter.conf ]] && echo "enable-hidpi = on" >> /etc/lightdm/slick-greeter.conf
# xfce
@@ -349,8 +357,8 @@ if [[ -f /root/.not_logged_in_yet && -n $(tty) ]]; then
okay="$(awk -F': ' '{ print $2}' <<<"$result")"
if [[ "$okay" != "OK" ]]; then
echo -e "\n\e[0;31mWarning:\x1B[0m Weak password, $okay \b!"
(echo "$first_input";echo "$second_input";) | passwd root >/dev/null 2>&1
fi
(echo "$first_input";echo "$second_input";) | passwd root >/dev/null 2>&1
break
elif [[ -n $password ]]; then
echo -e "Rejected - \e[0;31mpasswords do not match.\x1B[0m Try again [${REPEATS}]."
@@ -435,9 +443,9 @@ if [[ -f /root/.not_logged_in_yet && -n $(tty) ]]; then
[[ -x $(command -v mate-wm) ]] && sed -i "s/user-session.*/user-session=mate/" /etc/lightdm/lightdm.conf.d/11-armbian.conf
[[ -x $(command -v mate-wm) ]] && sed -i "s/user-session.*/user-session=mate/" /etc/lightdm/lightdm.conf.d/22-armbian-autologin.conf
# select plasma wayland session
[[ -x $(command -v plasmashell) ]] && sed -i "s/user-session.*/user-session=plasmawayland/" /etc/lightdm/lightdm.conf.d/11-armbian.conf
[[ -x $(command -v plasmashell) ]] && sed -i "s/user-session.*/user-session=plasmawayland/" /etc/lightdm/lightdm.conf.d/22-armbian-autologin.conf
# select plasma wayland session
[[ -x $(command -v plasmashell) ]] && sed -i "s/user-session.*/user-session=plasmawayland/" /etc/lightdm/lightdm.conf.d/11-armbian.conf
[[ -x $(command -v plasmashell) ]] && sed -i "s/user-session.*/user-session=plasmawayland/" /etc/lightdm/lightdm.conf.d/22-armbian-autologin.conf
ln -sf /lib/systemd/system/lightdm.service /etc/systemd/system/display-manager.service
@@ -445,7 +453,7 @@ if [[ -f /root/.not_logged_in_yet && -n $(tty) ]]; then
# Let the user reboot now otherwise start desktop environment
printf "\n\n\e[0;91mWarning: a reboot is needed to finish resizing the filesystem \x1B[0m \n"
printf "\e[0;91mPlease reboot the system now \x1B[0m \n\n"
elif [ -z "$ConfigureDisplay" ] || [ "$ConfigureDisplay" = "n" ] || [ "$ConfigureDisplay" = "N" ]; then
else
echo -e "\n\e[1m\e[39mNow starting desktop environment...\x1B[0m\n"
sleep 1
service lightdm start 2>/dev/null
@@ -456,7 +464,7 @@ if [[ -f /root/.not_logged_in_yet && -n $(tty) ]]; then
systemctl start armbian-disable-autologin.timer
fi
# logout if logged at console
[[ -n $(who -la | grep root | grep tty1) ]] && exit 1
who -la | grep root | grep -q tty1 && exit 1
fi
elif [ -n "$desktop_gdm3" ] && [ -n "$RealName" ] ; then
@@ -477,7 +485,7 @@ if [[ -f /root/.not_logged_in_yet && -n $(tty) ]]; then
printf "\n\n\e[0;91mWarning: a reboot is needed to finish resizing the filesystem \x1B[0m \n"
printf "\e[0;91mPlease reboot the system now \x1B[0m \n\n"
elif [ -z "$ConfigureDisplay" ] || [ "$ConfigureDisplay" = "n" ] || [ "$ConfigureDisplay" = "N" ]; then
else
echo -e "\n\e[1m\e[39mNow starting desktop environment...\x1B[0m\n"
sleep 1
@@ -488,7 +496,7 @@ if [[ -f /root/.not_logged_in_yet && -n $(tty) ]]; then
(sleep 20; sed -i "s/AutomaticLoginEnable.*/AutomaticLoginEnable = false/" /etc/gdm3/custom.conf) &
fi
# logout if logged at console
[[ -n $(who -la | grep root | grep tty1) ]] && exit 1
who -la | grep root | grep -q tty1 && exit 1
fi

File diff suppressed because it is too large Load Diff