[packages] add leafnode nntp proxy (#4889)
authorJo-Philipp Wich <jow@openwrt.org>
Thu, 9 Apr 2009 14:00:11 +0000 (14:00 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Thu, 9 Apr 2009 14:00:11 +0000 (14:00 +0000)
SVN-Revision: 15170

net/leafnode/Makefile [new file with mode: 0644]
net/leafnode/files/news [new file with mode: 0644]
net/leafnode/files/nntp [new file with mode: 0644]

diff --git a/net/leafnode/Makefile b/net/leafnode/Makefile
new file mode 100644 (file)
index 0000000..6d240b4
--- /dev/null
@@ -0,0 +1,94 @@
+# 
+# Copyright (C) 2009 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+# $Id$
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=leafnode
+PKG_VERSION:=1.11.6
+PKG_RELEASE:=1
+PKG_CAT:=bzcat
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=http://www.dt.e-technik.uni-dortmund.de/~ma/leafnode/
+PKG_MD5SUM:=5a083968dbacc3d6f6d1013241c23e39
+
+include $(INCLUDE_DIR)/package.mk
+
+CONFIGURE_ARGS+=--sysconfdir=/etc/leafnode
+CONFIGURE_VARS+=LIBS=-Wl,-rpath-link=$(STAGING_DIR)/usr/lib
+
+EXTRA_CFLAGS+=-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include
+
+EXTRA_LDFLAGS+=-Wl,-rpath-link=$(STAGING_DIR)/usr/lib
+
+define Package/leafnode
+  SUBMENU:=NNTP
+  SECTION:=net
+  CATEGORY:=Network
+  DEPENDS:=+libpcre +xinetd
+  TITLE:=Leafnode store-and-forward NNTP proxy
+  URL:=http://leafnode.sourceforge.net
+endef
+
+define Package/leafnode/description
+       This package contains the "leafnode", "fetchnews" and
+       "texpire" programs and the necessary configuration files
+       for the leafnode proxy
+endef
+
+define Package/leafnode-extra
+  SUBMENU:=NNTP
+  SECTION:=net
+  CATEGORY:=Network
+  DEPENDS:=leafnode
+  TITLE:=Leafnode extra programs 
+  URL:=http://leafnode.sourceforge.net
+endef
+
+define Package/leafnode-extra/description
+       This package contains the more rarely used "checkgroups",
+       "applyfilter" and "leafnode-version" programs from the
+       leafnode suite
+endef
+
+define Package/leafnode/conffiles
+/etc/leafnode/config.example
+/etc/xinetd.d/nntp
+/etc/crontabs/news
+endef
+
+define Package/leafnode/postinst
+#!/bin/sh
+grep -q '^nntp[[:space:]]*119/tcp' $${IPKG_INSTROOT}/etc/services 2>/dev/null
+[ $$? -ne 0 ] && echo "nntp 119/tcp  # USENET News Transfer Protocol" >>$${IPKG_INSTROOT}/etc/services || exit 0
+grep -q '^news:' $${IPKG_INSTROOT}/etc/services 2>/dev/null
+[ $$? -ne 0 ] && echo "news:*:31:31:news:/var/spool/news:/bin/true"  >>$${IPKG_INSTROOT}/etc/passwd || echo "news:x:31:" >>$${IPKG_INSTROOT}/etc/group || exit 0
+endef
+
+define Package/leafnode/install
+       $(INSTALL_DIR) $(1)/usr/sbin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/leafnode $(1)/usr/sbin/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/fetchnews $(1)/usr/sbin/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/texpire $(1)/usr/sbin/
+       $(INSTALL_DIR) $(1)/etc/leafnode
+       $(INSTALL_DATA) $(PKG_BUILD_DIR)/config.example $(1)/etc/leafnode
+       $(INSTALL_DIR) $(1)/etc/xinetd.d
+       $(INSTALL_DATA) ./files/nntp $(1)/etc/xinetd.d
+       $(INSTALL_DIR) $(1)/etc/crontabs
+       $(INSTALL_DATA) ./files/news $(1)/etc/crontabs
+endef
+
+define Package/leafnode-extra/install
+       $(INSTALL_DIR) $(1)/usr/sbin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/checkgroups $(1)/usr/sbin/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/applyfilter $(1)/usr/sbin/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/leafnode-version $(1)/usr/sbin/
+endef
+
+$(eval $(call BuildPackage,leafnode))
+$(eval $(call BuildPackage,leafnode-extra))
diff --git a/net/leafnode/files/news b/net/leafnode/files/news
new file mode 100644 (file)
index 0000000..7e1fd79
--- /dev/null
@@ -0,0 +1,2 @@
+45 * * * * fetchnews
+15 3 * * * texpire
diff --git a/net/leafnode/files/nntp b/net/leafnode/files/nntp
new file mode 100644 (file)
index 0000000..7f0c4bd
--- /dev/null
@@ -0,0 +1,10 @@
+service nntp
+{
+       disable = no
+       flags = REUSE
+       socket_type = stream
+       wait = no
+       user = news
+       server = /usr/sbin/leafnode
+       log_on_failure += USERID
+}