123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247 |
- #!/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-statistics \
- luci-app-attendedsysupgrade \
- collectd-mod-sensors \
- collectd-mod-thermal \
- collectd-mod-conntrack \
- collectd-mod-cpu"
- #################
- # Current devices
- #################
- # Main router
- declare -Ag r4s
- r4s['device']="friendlyarm_nanopi-r4s"
- r4s['target']="rockchip/armv8"
- r4s['filesystem']="ext4"
- r4s['packages']="\
- $default_packages \
- luci-app-wireguard \
- luci-proto-wireguard \
- luci-app-ddns \
- irqbalance \
- collectd-mod-df \
- usbutils \
- kmod-usb-storage \
- kmod-usb-storage-uas \
- kmod-fs-btrfs \
- btrfs-progs \
- block-mount \
- smcroute \
- avahi-daemon \
- curl \
- ethtool \
- ca-bundle \
- -libustream-wolfssl"
- # The following are source mode only
- r4s['kopts']="\
- CONFIG_KERNEL_BTRFS_FS_POSIX_ACL=y \
- CONFIG_BTRFS_PROGS_ZSTD=y \
- CONFIG_TARGET_ROOTFS_PARTSIZE=512 \
- CONFIG_TARGET_KERNEL_PARTSIZE=32"
- r4s['files']="\
- /mnt/backup"
- # WDS mesh nodes
- declare -Ag ax6000
- ax6000['device']="xiaomi_redmi-router-ax6000-stock"
- ax6000['target']="mediatek/filogic"
- ax6000['release']="snapshot"
- ax6000['filesystem']="squashfs"
- ax6000['packages']="\
- $default_packages \
- -dnsmasq \
- -odhcpd-ipv6only \
- -nftables \
- -firewall4"
- # for 802.11s
- # mesh11sd \
- # -wpad-basic-mbedtls \
- # wpad-mesh-mbedtls"
- # WDS mesh nodes
- declare -Ag ax6000_ap
- ax6000_ap['device']="xiaomi_redmi-router-ax6000-stock"
- ax6000_ap['target']="mediatek/filogic"
- ax6000_ap['release']="snapshot"
- ax6000_ap['filesystem']="squashfs"
- ax6000_ap['packages']="\
- $default_packages \
- avahi-daemon \
- smcroute \
- ca-bundle"
- # For converted uboots
- # declare -Ag ax6000_uboot
- # ax6000_uboot['device']="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"
- # Remote NAS
- declare -Ag n5100
- n5100['device']="generic"
- n5100['target']="x86/64"
- n5100['filesystem']="ext4"
- n5100['packages']="\
- $default_packages \
- luci-app-wireguard \
- luci-proto-wireguard \
- luci-app-ddns \
- irqbalance \
- collectd-mod-df \
- usbutils \
- kmod-usb-storage \
- kmod-usb-storage-uas \
- kmod-fs-btrfs \
- btrfs-progs \
- block-mount \
- smcroute \
- avahi-daemon \
- curl \
- ethtool \
- ca-bundle \
- smartmontools \
- intel-microcode \
- lm-sensors \
- samba4-server \
- luci-app-samba4 \
- tailscale \
- shadow-useradd"
- # The following are source mode only
- n5100['kopts']="\
- CONFIG_KERNEL_BTRFS_FS_POSIX_ACL=y \
- CONFIG_BTRFS_PROGS_ZSTD=y \
- CONFIG_TARGET_ROOTFS_PARTSIZE=512 \
- CONFIG_TARGET_KERNEL_PARTSIZE=32"
- n5100['files']="\
- /mnt/backup"
- # Dusty drawer
- declare -Ag rpi4
- rpi4['device']="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"
- #################
- # Stock builds
- #################
- declare -Ag r4s_stock
- r4s_stock['device']="friendlyarm_nanopi-r4s"
- r4s_stock['target']="rockchip/armv8"
- r4s_stock['filesystem']="ext4"
- r4s_stock['release']="snapshot"
- #################
- # Old devices
- #################
- declare -Ag totolink
- totolink['device']="totolink_x5000r"
- totolink['target']="ramips/mt7621"
- totolink['filesystem']="squashfs"
- totolink['packages']="\
- $default_packages \
- -dnsmasq \
- -odhcpd-ipv6only \
- -nftables \
- -firewall4 \
- -kmod-nft-offload \
- collectd-mod-iwinfo"
- declare -Ag archer
- archer['device']="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['device']="linksys_ea8300"
- linksys['target']="ipq40xx/generic"
- linksys['filesystem']="squashfs"
- linksys['packages']="\
- $default_packages \
- -dnsmasq \
- -odhcpd \
- -iptables"
- declare -Ag r2s
- r2s['device']="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['device']="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"
|