profiles 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. #!/usr/bin/env bash
  2. # shellcheck disable=SC2034
  3. # This file contains a set of device profiles for openwrtbuilder
  4. # bash doesn't like nested arrays so we use strings instead
  5. # Packages to install for all profiles
  6. default_packages="\
  7. luci \
  8. luci-ssl \
  9. nano \
  10. htop \
  11. diffutils \
  12. tar \
  13. iperf3 \
  14. bash \
  15. rsync \
  16. luci-app-wireguard \
  17. luci-proto-wireguard \
  18. luci-app-statistics \
  19. luci-app-attendedsysupgrade \
  20. collectd-mod-sensors \
  21. collectd-mod-thermal \
  22. collectd-mod-conntrack \
  23. collectd-mod-cpu"
  24. declare -Ag archer
  25. archer['profile']="tplink_archer-c7-v2"
  26. archer['target']="ath79/generic"
  27. archer['filesystem']="squashfs"
  28. archer['packages']="\
  29. $default_packages \
  30. -dnsmasq \
  31. -odhcpd \
  32. -iptables \
  33. -ath10k-firmware-qca988x-ct \
  34. ath10k-firmware-qca988x-ct-full-htt"
  35. declare -Ag linksys
  36. linksys['profile']="linksys_ea8300"
  37. linksys['target']="ipq40xx/generic"
  38. linksys['filesystem']="squashfs"
  39. linksys['packages']="\
  40. $default_packages \
  41. -dnsmasq \
  42. -odhcpd \
  43. -iptables"
  44. declare -Ag rpi4
  45. rpi4['profile']="rpi-4"
  46. rpi4['target']="bcm27xx/bcm2711"
  47. rpi4['filesystem']="ext4"
  48. rpi4['packages']="\
  49. $default_packages \
  50. kmod-usb-net-asix-ax88179 \
  51. kmod-usb-net-rtl8152 \
  52. luci-app-upnp \
  53. luci-app-wireguard \
  54. luci-app-vpn-policy-routing \
  55. -dnsmasq \
  56. dnsmasq-full \
  57. luci-app-ddns \
  58. luci-app-sqm"
  59. declare -Ag r2s
  60. r2s['profile']="friendlyarm_nanopi-r2s"
  61. r2s['target']="rockchip/armv8"
  62. r2s['filesystem']="ext4"
  63. r2s['packages']="\
  64. $default_packages \
  65. luci-app-upnp \
  66. luci-app-wireguard \
  67. luci-app-vpn-policy-routing \
  68. -dnsmasq \
  69. dnsmasq-full \
  70. luci-app-ddns \
  71. luci-app-sqm \
  72. luci-app-statistics \
  73. collectd-mod-sensors \
  74. collectd-mod-thermal \
  75. collectd-mod-conntrack \
  76. smcroute \
  77. curl \
  78. ethtool"
  79. declare -Ag r4s
  80. r4s['profile']="friendlyarm_nanopi-r4s"
  81. r4s['target']="rockchip/armv8"
  82. r4s['filesystem']="ext4"
  83. r4s['packages']="\
  84. $default_packages \
  85. luci-app-ddns \
  86. irqbalance \
  87. collectd-mod-df \
  88. usbutils \
  89. kmod-usb-storage \
  90. kmod-usb-storage-uas \
  91. kmod-fs-btrfs \
  92. btrfs-progs \
  93. block-mount \
  94. smcroute \
  95. curl \
  96. ethtool \
  97. ca-bundle"
  98. # tailscale
  99. r4s['kopts']="\
  100. CONFIG_KERNEL_BTRFS_FS_POSIX_ACL=y \
  101. CONFIG_BTRFS_PROGS_ZSTD=y \
  102. CONFIG_TARGET_OPTIMIZATION=\"'-O3 -pipe -mcpu=cortex-a72.cortex-a53+crypto+crc'\" \
  103. CONFIG_TARGET_ROOTFS_PARTSIZE=1024"
  104. r4s['files']="\
  105. /mnt/backup"
  106. declare -Ag ax6000_stock
  107. ax6000_stock['profile']="xiaomi_redmi-router-ax6000-stock"
  108. ax6000_stock['target']="mediatek/filogic"
  109. ax6000_stock['release']="snapshot"
  110. ax6000_stock['filesystem']="squashfs"
  111. ax6000_stock['packages']="\
  112. $default_packages \
  113. -dnsmasq \
  114. -odhcpd-ipv6only \
  115. -nftables \
  116. -firewall4 \
  117. -kmod-nft-offload \
  118. collectd-mod-iwinfo"
  119. declare -Ag ax6000_uboot
  120. ax6000_uboot['profile']="xiaomi_redmi-router-ax6000-ubootmod"
  121. ax6000_uboot['target']="mediatek/filogic"
  122. ax6000_uboot['release']="snapshot"
  123. ax6000_uboot['filesystem']="squashfs"
  124. ax6000_uboot['packages']="\
  125. $default_packages \
  126. -dnsmasq \
  127. -odhcpd-ipv6only \
  128. -nftables \
  129. -firewall4 \
  130. -kmod-nft-offload \
  131. collectd-mod-iwinfo"
  132. declare -Ag totolink
  133. totolink['profile']="totolink_x5000r"
  134. totolink['target']="ramips/mt7621"
  135. totolink['filesystem']="squashfs"
  136. totolink['packages']="\
  137. $default_packages \
  138. -dnsmasq \
  139. -odhcpd-ipv6only \
  140. -nftables \
  141. -firewall4 \
  142. -kmod-nft-offload \
  143. collectd-mod-iwinfo"