diff --git a/src/share/rsdk/build/mod/packages/categories/core.libjsonnet b/src/share/rsdk/build/mod/packages/categories/core.libjsonnet index 5d38e591..1ebb8c92 100644 --- a/src/share/rsdk/build/mod/packages/categories/core.libjsonnet +++ b/src/share/rsdk/build/mod/packages/categories/core.libjsonnet @@ -1,5 +1,7 @@ local distro_check = import "../../../../configs/distro_check.libjsonnet"; local product_firmware_type = import "../../../../configs/product_firmware_type.libjsonnet"; +local product_soc = import "../../../../configs/product_soc.libjsonnet"; +local soc_install_recommends = import "../../../../configs/soc_install_recommends.libjsonnet"; function(suite, product, @@ -123,7 +125,7 @@ else apt-get full-upgrade -oDPkg::Chroot-Directory="$1" -y \ -oDpkg::Options::=--force-confnew --allow-downgrades ||| % { - recommends: (if distro_check(suite) == "debian" && vendor_packages + recommends: (if soc_install_recommends(product_soc(product), suite) && vendor_packages then "--install-recommends" else diff --git a/src/share/rsdk/build/mod/packages/categories/desktop.libjsonnet b/src/share/rsdk/build/mod/packages/categories/desktop.libjsonnet index 02598948..31b5c438 100644 --- a/src/share/rsdk/build/mod/packages/categories/desktop.libjsonnet +++ b/src/share/rsdk/build/mod/packages/categories/desktop.libjsonnet @@ -22,6 +22,7 @@ function(suite, "breeze-cursor-theme", "clinfo", "cups", + "desktop-base", "firefox-esr", "fonts-noto-cjk", "fprintd", @@ -83,15 +84,6 @@ else [ "xiccd", ] -) + - -(if suite != "noble" -then - [ - "desktop-base", - ] -else - [] -), +) }, } diff --git a/src/share/rsdk/build/mod/packages/kde.libjsonnet b/src/share/rsdk/build/mod/packages/kde.libjsonnet index 0d9f0e2d..4948353e 100644 --- a/src/share/rsdk/build/mod/packages/kde.libjsonnet +++ b/src/share/rsdk/build/mod/packages/kde.libjsonnet @@ -49,24 +49,11 @@ function(suite, "sddm-theme-breeze", "sonnet-plugins", "systemsettings", + "task-kde-desktop", "yakuake", "xdg-desktop-portal-kde", ] + -(if distro_check(suite) == "debian" -then - [ - "task-kde-desktop", - ] -else if distro_check(suite) == "ubuntu" -then - [ - "kubuntu-desktop", - ] -else - [] -) + - (if suite != "focal" then [ diff --git a/src/share/rsdk/configs/soc_family_list.libjsonnet b/src/share/rsdk/configs/soc_family_list.libjsonnet new file mode 100644 index 00000000..52e3903f --- /dev/null +++ b/src/share/rsdk/configs/soc_family_list.libjsonnet @@ -0,0 +1,13 @@ +local soc_list = import "socs.json"; + +function(soc) + local matching_families = [ + family + for family in soc_list + if std.member(family.soc_list, soc) + ]; + + if std.length(matching_families) > 0 then + matching_families[0] + else + {} diff --git a/src/share/rsdk/configs/soc_install_recommends.libjsonnet b/src/share/rsdk/configs/soc_install_recommends.libjsonnet new file mode 100644 index 00000000..af14fff9 --- /dev/null +++ b/src/share/rsdk/configs/soc_install_recommends.libjsonnet @@ -0,0 +1,8 @@ +local soc_family_list = import "soc_family_list.libjsonnet"; +local soc_list = import "socs.json"; + +function(soc, suite) + local family = soc_family_list(soc); + + std.objectHas(family, "soc_install_recommends") && + std.member(family.soc_install_recommends, suite) diff --git a/src/share/rsdk/configs/socs.json b/src/share/rsdk/configs/socs.json index d719964c..f6604dbb 100644 --- a/src/share/rsdk/configs/socs.json +++ b/src/share/rsdk/configs/socs.json @@ -3,6 +3,9 @@ "soc_family": "amlogic", "partition_table_type": "mbr", "firmware_type": "u-boot", + "soc_install_recommends": [ + "bookworm" + ], "soc_list": [ "a311d", "s905y2" @@ -13,6 +16,10 @@ "soc_family": "rockchip", "partition_table_type": "gpt", "firmware_type": "u-boot", + "soc_install_recommends": [ + "bookworm", + "bullseye" + ], "soc_list": [ "rk3308", "rk3308bs", @@ -51,6 +58,9 @@ "soc_family": "cix", "partition_table_type": "gpt", "firmware_type": "edk2", + "soc_install_recommends": [ + "bookworm" + ], "soc_list": [ "cd8180" ], @@ -62,6 +72,9 @@ "soc_family": "allwinner", "partition_table_type": "gpt", "firmware_type": "u-boot", + "soc_install_recommends": [ + "bullseye" + ], "soc_list": [ "a527", "a733" @@ -75,6 +88,9 @@ "soc_family": "qualcomm", "partition_table_type": "gpt", "firmware_type": "edk2", + "soc_install_recommends": [ + "noble" + ], "soc_list": [ "qcs6490" ],