#!/usr/bin/env bash # Device profiles for openwrtbuilder # shellcheck disable=SC2034 # Default (but optional) packages (precede with "-" to exclude) default_packages=(nano htop diffutils tar iperf3 zsh rsync curl tcpdump openssh-sftp-server luci luci-ssl luci-proto-wireguard luci-app-statistics collectd-mod-sensors collectd-mod-thermal collectd-mod-conntrack collectd-mod-cpu ) # Default (but optional) kernel configs default_configs=( ) # Current devices declare -Ag r4s=( [mode]="source" [device]="friendlyarm_nanopi-r4s" [target]="rockchip/armv8" [filesystem]="ext4" [packages]="${default_packages[*]} \ luci-app-ddns luci-app-sqm \ adblock luci-app-adblock \ collectd-mod-df usbutils kmod-usb-storage kmod-usb-storage-uas \ kmod-fs-btrfs btrfs-progs block-mount smcroute avahi-daemon \ ethtool ca-bundle tailscale" [config]="${default_configs[*]} \ CONFIG_KERNEL_BTRFS_FS_POSIX_ACL=y CONFIG_BTRFS_PROGS_ZSTD=y \ CONFIG_TARGET_ROOTFS_PARTSIZE=512 CONFIG_TARGET_KERNEL_PARTSIZE=32" [files]="/mnt/backup" # For 24.10 branch (Linux 6.6) # [cherrypicks]="https://github.com/wurzerj/openwrt.git:59d6e31 \ # https://github.com/wurzerj/openwrt.git:bb251b8" # fix inconsistent reboot ) declare -Ag ax6000=( [mode]="imagebuilder" [device]="xiaomi_redmi-router-ax6000-stock" [target]="mediatek/filogic" [release]="snapshot" [filesystem]="squashfs" [packages]="${default_packages[*]} \ -dnsmasq -odhcpd-ipv6only -nftables -firewall4 tailscale" ) declare -Ag ax6000_uboot=( [mode]="imagebuilder" [device]="xiaomi_redmi-router-ax6000-ubootmod" [target]="mediatek/filogic" [release]="snapshot" [filesystem]="squashfs" [packages]="${default_packages[*]} \ -dnsmasq -odhcpd-ipv6only -nftables -firewall4" ) declare -Ag n5100=( [device]="generic" [target]="x86/64" [filesystem]="squashfs" [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 cryptsetup kmod-crypto-xts smcroute \ avahi-daemon ethtool ca-bundle smartmontools intel-microcode \ lm-sensors samba4-server luci-app-samba4 tailscale shadow-useradd" [config]="${default_configs[*]} \ CONFIG_KERNEL_BTRFS_FS_POSIX_ACL=y CONFIG_BTRFS_PROGS_ZSTD=y \ CONFIG_TARGET_ROOTFS_PARTSIZE=512 CONFIG_TARGET_KERNEL_PARTSIZE=32" # [files]="/mnt/backup" ) declare -Ag w1700k=( [mode]="source" [device]="gemtek_w1700k" [target]="airoha/an7581" [filesystem]="squashfs" [release]="snapshot" [packages]="${default_packages[*]} \ luci-app-ddns luci-app-sqm \ adblock luci-app-adblock \ smcroute avahi-daemon \ lm-sensors samba4-server luci-app-samba4 tailscale shadow-useradd \ ethtool ca-bundle tailscale" [cherrypicks]="\ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:8d449e968cfaa774ab7a219b3a5ab4251b2f9352 \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:3033241393ef6eb562539c6a3ccb9d3cf1a25d05 \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:79a21e0986a9efe6de3a07394a71ac15a2107b16 \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:2f8a1cbf901df0d325dfe112fdfe8013a72c8305 \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:71b09bc5852797cdbf7cb3b56a7d8fcd9d4ca9db \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:fe0135f0b7037a9cc1985d5937dd24cb99bfccb1 \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:cdb937180fb971fe702078f0e0fef63f2fcce337 \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:6dc847c802b9dc597fc2c64711ca85499f128d1d \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:b6e6cf911915dd987eecde908a2013419565cff4 \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:708089948949e66f5234249fc631e0453b58942e \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:9841a707a577385498591bcfb56b836176325c2f \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:8446ec6431a3247683a27070d3c69f2789b52c70 \ https://github.com/OpenWRT-fanboy/OpenW1700k.git@lumos:05380e2ef5fb96c171da23453ba32aa349a4b126" ) declare -Ag rpi4=( [device]="rpi-4" [target]="bcm27xx/bcm2711" [filesystem]="ext4" [packages]="${default_packages[*]} \ luci-app-upnp luci-app-pbr -dnsmasq dnsmasq-full luci-app-ddns luci-app-sqm \ kmod-usb-net-asix-ax88179 kmod-usb-net-rtl8152" ) declare -Ag r4s_stock=( [device]="friendlyarm_nanopi-r4s" [target]="rockchip/armv8" [filesystem]="ext4" [release]="snapshot" ) declare -Ag totolink=( [device]="totolink_x5000r" [target]="ramips/mt7621" [filesystem]="squashfs" [packages]="${default_packages[*]} \ -dnsmasq -odhcpd-ipv6only -nftables -firewall4 \ -kmod-nft-offload collectd-mod-iwinfo" ) declare -Ag archer=( [device]="tplink_archer-c7-v2" [target]="ath79/generic" [filesystem]="squashfs" [packages]="${default_packages[*]} -dnsmasq -odhcpd -iptables \ -ath10k-firmware-qca988x-ct ath10k-firmware-qca988x-ct-full-htt" ) declare -Ag linksys=( [device]="linksys_ea8300" [target]="ipq40xx/generic" [filesystem]="squashfs" [packages]="${default_packages[*]} \ -dnsmasq -odhcpd -iptables" ) declare -Ag r2s=( [device]="friendlyarm_nanopi-r2s" [target]="rockchip/armv8" [filesystem]="ext4" [packages]="${default_packages[*]} \ luci-app-upnp 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=( [device]="friendlyarm_nanopi-r2s" [target]="rockchip/armv8" [filesystem]="ext4" [packages]="${default_packages[*]} \ luci-app-upnp luci-app-pbr luci-app-ddns \ luci-app-statistics collectd-mod-sensors collectd-mod-thermal \ collectd-mod-conntrack curl ethtool travelmate" )