#!/usr/bin/env bash # shellcheck disable=SC2034 # This file contains a set of device profiles for openwrtbuilder # bash doesn't like nested arrays so we use strings instead # Packages to install for all profiles default_packages="\ luci \ luci-ssl \ nano \ htop \ diffutils \ tar \ iperf3 \ bash \ rsync \ luci-app-wireguard \ luci-proto-wireguard \ luci-app-statistics \ luci-app-attendedsysupgrade \ collectd-mod-sensors \ collectd-mod-thermal \ collectd-mod-conntrack \ collectd-mod-cpu" declare -Ag archer archer['profile']="tplink_archer-c7-v2" archer['target']="ath79/generic" archer['filesystem']="squashfs" archer['packages']="\ $default_packages \ -dnsmasq \ -odhcpd \ -iptables \ -ath10k-firmware-qca988x-ct \ ath10k-firmware-qca988x-ct-full-htt" declare -Ag linksys linksys['profile']="linksys_ea8300" linksys['target']="ipq40xx/generic" linksys['filesystem']="squashfs" linksys['packages']="\ $default_packages \ -dnsmasq \ -odhcpd \ -iptables" declare -Ag rpi4 rpi4['profile']="rpi-4" rpi4['target']="bcm27xx/bcm2711" rpi4['filesystem']="ext4" rpi4['packages']="\ $default_packages \ kmod-usb-net-asix-ax88179 \ kmod-usb-net-rtl8152 \ luci-app-upnp \ luci-app-wireguard \ luci-app-pbr \ -dnsmasq \ dnsmasq-full \ luci-app-ddns \ luci-app-sqm" declare -Ag r2s r2s['profile']="friendlyarm_nanopi-r2s" r2s['target']="rockchip/armv8" r2s['filesystem']="ext4" r2s['packages']="\ $default_packages \ luci-app-upnp \ luci-app-wireguard \ luci-app-pbr \ -dnsmasq \ dnsmasq-full \ luci-app-ddns \ luci-app-sqm \ luci-app-statistics \ collectd-mod-sensors \ collectd-mod-thermal \ collectd-mod-conntrack \ smcroute \ curl \ ethtool" declare -Ag r2s_tr r2s_tr['profile']="friendlyarm_nanopi-r2s" r2s_tr['target']="rockchip/armv8" r2s_tr['filesystem']="ext4" r2s_tr['packages']="\ $default_packages \ luci-app-upnp \ luci-app-wireguard \ luci-app-pbr \ luci-app-ddns \ luci-app-statistics \ collectd-mod-sensors \ collectd-mod-thermal \ collectd-mod-conntrack \ curl \ ethtool \ travelmate" declare -Ag r4s r4s['profile']="friendlyarm_nanopi-r4s" r4s['target']="rockchip/armv8" r4s['filesystem']="ext4" r4s['packages']="\ $default_packages \ luci-app-ddns \ irqbalance \ collectd-mod-df \ usbutils \ kmod-usb-storage \ kmod-usb-storage-uas \ kmod-fs-btrfs \ btrfs-progs \ block-mount \ smcroute \ curl \ ethtool \ ca-bundle" r4s['kopts']="\ CONFIG_KERNEL_BTRFS_FS_POSIX_ACL=y \ CONFIG_BTRFS_PROGS_ZSTD=y \ CONFIG_TARGET_ROOTFS_PARTSIZE=1024" r4s['nested_kopts']="CONFIG_TARGET_OPTIMIZATION=\"-O3 -pipe -mcpu=cortex-a72.cortex-a53+crypto+crc\"" r4s['files']="\ /mnt/backup" declare -Ag r4s_stock r4s_stock['profile']="friendlyarm_nanopi-r4s" r4s_stock['target']="rockchip/armv8" r4s_stock['filesystem']="ext4" r4s_stock['release']="snapshot" # r4s_stock['packages']="\ # $default_packages \ # luci-app-ddns \ # irqbalance \ # collectd-mod-df \ # usbutils \ # kmod-usb-storage \ # kmod-usb-storage-uas \ # kmod-fs-btrfs \ # btrfs-progs \ # block-mount \ # smcroute \ # curl \ # ethtool \ # ca-bundle" # r4s_stock['kopts']="\ # CONFIG_KERNEL_BTRFS_FS_POSIX_ACL=y \ # CONFIG_BTRFS_PROGS_ZSTD=y \ # CONFIG_TARGET_ROOTFS_PARTSIZE=1024" # r4s_stock['nested_kopts']="CONFIG_TARGET_OPTIMIZATION=\"-O3 -pipe -mcpu=cortex-a72.cortex-a53+crypto+crc\"" # r4s_stock['files']="\ # /mnt/backup" declare -Ag ax6000_stock ax6000_stock['profile']="xiaomi_redmi-router-ax6000-stock" ax6000_stock['target']="mediatek/filogic" ax6000_stock['release']="snapshot" ax6000_stock['filesystem']="squashfs" ax6000_stock['packages']="\ $default_packages \ -dnsmasq \ -odhcpd-ipv6only \ -nftables \ -firewall4 \ -kmod-nft-offload \ collectd-mod-iwinfo" declare -Ag ax6000_uboot ax6000_uboot['profile']="xiaomi_redmi-router-ax6000-ubootmod" ax6000_uboot['target']="mediatek/filogic" ax6000_uboot['release']="snapshot" ax6000_uboot['filesystem']="squashfs" ax6000_uboot['packages']="\ $default_packages \ -dnsmasq \ -odhcpd-ipv6only \ -nftables \ -firewall4 \ -kmod-nft-offload \ collectd-mod-iwinfo" declare -Ag totolink totolink['profile']="totolink_x5000r" totolink['target']="ramips/mt7621" totolink['filesystem']="squashfs" totolink['packages']="\ $default_packages \ -dnsmasq \ -odhcpd-ipv6only \ -nftables \ -firewall4 \ -kmod-nft-offload \ collectd-mod-iwinfo"