- packaging/openwrt/: opkg Makefile, procd init script, uci config - scripts/cross-compile.sh: build for musl targets with size checks - .github/workflows/openwrt.yml: CI cross-compile + 5 MB size gate - docs/openwrt.md: installation and configuration guide - Targets: x86_64-musl, armv7-musleabihf, aarch64-musl - Uses cargo-zigbuild for Docker-free cross-compilation
59 lines
1.7 KiB
Makefile
59 lines
1.7 KiB
Makefile
# OpenWrt package feed Makefile for quicproquo server.
|
|
#
|
|
# Usage:
|
|
# 1. Add this directory as a custom feed in feeds.conf:
|
|
# src-link quicproquo /path/to/quicproquo/packaging/openwrt
|
|
# 2. ./scripts/feeds update quicproquo && ./scripts/feeds install quicproquo
|
|
# 3. make menuconfig (select Network -> quicproquo)
|
|
# 4. make package/quicproquo/compile V=s
|
|
#
|
|
# The binary is pre-built via cross-compilation (see scripts/cross-compile.sh)
|
|
# and the Makefile simply installs it into the ipkg.
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=quicproquo
|
|
PKG_VERSION:=0.1.0
|
|
PKG_RELEASE:=1
|
|
PKG_MAINTAINER:=quicproquo team
|
|
PKG_LICENSE:=MIT
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Package/quicproquo
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
TITLE:=End-to-end encrypted group messenger (server)
|
|
DEPENDS:=+libpthread +librt
|
|
URL:=https://github.com/nicholasgasior/quicproquo
|
|
endef
|
|
|
|
define Package/quicproquo/description
|
|
Production-grade end-to-end encrypted group messenger using QUIC transport,
|
|
MLS (RFC 9420), ML-KEM-768 hybrid post-quantum KEM, and OPAQUE authentication.
|
|
This package installs the qpq-server daemon.
|
|
endef
|
|
|
|
define Package/quicproquo/conffiles
|
|
/etc/config/quicproquo
|
|
endef
|
|
|
|
# Skip standard build — we use pre-compiled static musl binaries.
|
|
define Build/Compile
|
|
endef
|
|
|
|
define Package/quicproquo/install
|
|
$(INSTALL_DIR) $(1)/usr/bin
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/qpq-server $(1)/usr/bin/qpq-server
|
|
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) ./files/quicproquo.init $(1)/etc/init.d/quicproquo
|
|
|
|
$(INSTALL_DIR) $(1)/etc/config
|
|
$(INSTALL_CONF) ./files/quicproquo.uci $(1)/etc/config/quicproquo
|
|
|
|
$(INSTALL_DIR) $(1)/var/lib/quicproquo
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,quicproquo))
|