-
Notifications
You must be signed in to change notification settings - Fork 14
/
Makefile
95 lines (84 loc) · 4.03 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
include $(TOPDIR)/rules.mk
PKG_NAME:=bismark-mgmt
PKG_VERSION:=v17
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=git://github.com/projectbismark/bismark-management-client.git
PKG_SOURCE_VERSION:=$(PKG_VERSION)
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_PROTO:=git
include $(INCLUDE_DIR)/package.mk
define Package/bismark-mgmt
SECTION:=utils
CATEGORY:=Utilities
TITLE:=Broadband Internet Service benchMARK
URL:=http://projectbismark.net/
MAINTAINER:=Bismark Development List <bismark-devel@projectbismark.net>
DEPENDS:=+netcat +curl +ntpclient +bismark-cron
endef
define Package/bismark-mgmt/description
The bismark-mgmt package makes it possible to administer a bismark
router remotely.
endef
define Build/Compile
endef
define Package/bismark-mgmt/install
$(INSTALL_DIR) $(1)/etc/bismark
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/bismark/authorized_keys $(1)/etc/bismark/authorized_keys
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/bismark/bismark.conf $(1)/etc/bismark/bismark.conf
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/bismark/known_hosts $(1)/etc/bismark/known_hosts
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/bismark/bismark_key $(1)/etc/bismark/bismark_key
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/bismark/bismark_key.pub $(1)/etc/bismark/bismark_key.pub
$(INSTALL_DIR) $(1)/etc/cron.d
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/cron.d/bismark-mgmt $(1)/etc/cron.d/bismark-mgmt
$(INSTALL_DIR) $(1)/etc/ssl/certs
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/ssl/certs/gd_int.crt $(1)/etc/ssl/certs/gd_int.crt
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/ssl/certs/gd_root.crt $(1)/etc/ssl/certs/gd_root.crt
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/ssl/certs/projectbismark_int.crt $(1)/etc/ssl/certs/projectbismark_int.crt
$(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/ssl/certs/projectbismark_root.crt $(1)/etc/ssl/certs/projectbismark_root.crt
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) $(PKG_BUILD_DIR)/etc/init.d/bismark $(1)/etc/init.d/bismark
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/usr/bin/bismark-action $(1)/usr/bin/bismark-action
$(INSTALL_BIN) $(PKG_BUILD_DIR)/usr/bin/bismark-bootstrap $(1)/usr/bin/bismark-bootstrap
$(INSTALL_BIN) $(PKG_BUILD_DIR)/usr/bin/bismark-probe $(1)/usr/bin/bismark-probe
$(INSTALL_BIN) $(PKG_BUILD_DIR)/usr/bin/bismark-rshell $(1)/usr/bin/bismark-rshell
$(INSTALL_BIN) $(PKG_BUILD_DIR)/usr/bin/bismark-scp $(1)/usr/bin/bismark-scp
$(INSTALL_BIN) $(PKG_BUILD_DIR)/usr/bin/bismark-sshd $(1)/usr/bin/bismark-sshd
$(INSTALL_DIR) $(1)/usr/lib/bismark
$(INSTALL_DATA) $(PKG_BUILD_DIR)/usr/lib/bismark/functions.inc.sh $(1)/usr/lib/bismark/functions.inc.sh
# openssl < 1.0.0 (MD5-based subject hash)
ln -sf gd_root.crt $(1)/etc/ssl/certs/219d9499.0
ln -sf gd_int.crt $(1)/etc/ssl/certs/97552d04.0
ln -sf projectbismark_root.crt $(1)/etc/ssl/certs/1b3d9bdf.0
ln -sf projectbismark_int.crt $(1)/etc/ssl/certs/34e84591.0
# openssl >= 1.0.0 (SHA1-based subject hash)
ln -sf gd_root.crt $(1)/etc/ssl/certs/f081611a.0
ln -sf gd_int.crt $(1)/etc/ssl/certs/598630ad.0
ln -sf projectbismark_root.crt $(1)/etc/ssl/certs/275bb920.0
ln -sf projectbismark_int.crt $(1)/etc/ssl/certs/c2ea5431.0
sed -i 's/VERSION=0/VERSION='`head -n 1 $(TOPDIR)/VERSION`'/' $(1)/etc/bismark/bismark.conf
endef
define Package/bismark-mgmt/preinst
#!/bin/sh
# Bismark management pre-install script
if [ -z "$${IPKG_INSTROOT}" ]; then
if [ -e /etc/bismark/crontab ]; then
grep -sFvf /etc/bismark/crontab /etc/crontabs/root | sort -u | crontab -
fi
fi
endef
define Package/bismark-mgmt/postinst
#!/bin/sh
# Bismark management post-install script
cp $${IPKG_INSTROOT}/root/.ssh/known_hosts $${IPKG_INSTROOT}/tmp/known_hosts
sort -u $${IPKG_INSTROOT}/tmp/known_hosts $${IPKG_INSTROOT}/etc/bismark/known_hosts > $${IPKG_INSTROOT}/root/.ssh/known_hosts
if [ -z "$${IPKG_INSTROOT}" ]; then
$${IPKG_INSTROOT}/usr/bin/bismark-bootstrap
fi
endef
define Package/bismark-mgmt/prerm
cp /root/.ssh/known_hosts /tmp/known_hosts
grep -sFv -f /etc/bismark/known_hosts /tmp/known_hosts | sort -u > /root/.ssh/known_hosts
endef
$(eval $(call BuildPackage,bismark-mgmt))