ratelimit: add package
authorThibaut VARÈNE <hacks@slashdirt.org>
Sat, 7 Jun 2025 13:19:09 +0000 (15:19 +0200)
committerTianling Shen <cnsztl@gmail.com>
Fri, 4 Jul 2025 18:17:50 +0000 (02:17 +0800)
ratelimit is a stateful ubus interface to the HTB traffic shaper,
enabling per-client bandwidth limits assignment.

Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
net/ratelimit/Makefile [new file with mode: 0644]

diff --git a/net/ratelimit/Makefile b/net/ratelimit/Makefile
new file mode 100644 (file)
index 0000000..b06c1cd
--- /dev/null
@@ -0,0 +1,48 @@
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=ratelimit
+PKG_RELEASE:=1
+
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://github.com/f00b4r0/ratelimit.git
+PKG_SOURCE_DATE:=2025-06-07
+PKG_SOURCE_VERSION:=4ef5917170b544fffcb1f3be92c73331321c7f0c
+PKG_MIRROR_HASH:=95292fa86e2652c5a7665c14ae83806ca8ef9ad3ee1826f5b20663ae8987d59a
+
+PKG_LICENSE:=MIT
+PKG_MAINTAINER:=Thibaut VARÈNE <hacks@slashdirt.org>
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/ratelimit
+  SECTION:=net
+  CATEGORY:=Network
+  TITLE:=client devices ratelimiting daemon
+  DEPENDS:=+tc +kmod-ifb +ucode-mod-log
+  PKGARCH:=all
+endef
+
+define Package/ratelimit/description
+  This daemon provides a stateful interface to the HTB traffic shaper,
+  enabling per-client bandwidth limits assignment.
+endef
+
+define Package/ratelimit/conffiles
+/etc/config/ratelimit
+endef
+
+define Build/Configure
+endef
+
+define Build/Compile
+endef
+
+define Package/ratelimit/install
+       $(INSTALL_DIR) $(1)/usr/sbin $(1)/etc/hotplug.d/iface $(1)/etc/init.d $(1)/etc/config
+       $(INSTALL_DATA) $(PKG_BUILD_DIR)/files/etc/hotplug.d/iface/50-ratelimit $(1)/etc/hotplug.d/iface/50-ratelimit
+       $(INSTALL_CONF) $(PKG_BUILD_DIR)/files/etc/config/ratelimit $(1)/etc/config/ratelimit
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/etc/init.d/ratelimit $(1)/etc/init.d/ratelimit
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/usr/sbin/ratelimit $(1)/usr/sbin/ratelimit
+endef
+
+$(eval $(call BuildPackage,ratelimit))