privoxy: fix uci configuration parsing after upstream OpenWrt changes
[feed/packages.git] / net / acme / Makefile
1 #
2 # Copyright (C) 2016 Toke Høiland-Jørgensen
3 #
4 # This is free software, licensed under the GNU General Public License v3 or
5 # later.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=acme
11 PKG_VERSION:=2.7.8
12 PKG_RELEASE:=4
13 PKG_LICENSE:=GPLv3
14
15 PKG_SOURCE_PROTO:=git
16 PKG_SOURCE_URL:=https://github.com/Neilpang/acme.sh
17 PKG_SOURCE_VERSION:=521d8c4b1f374c52ab1452d399a4d4910465e9fe
18 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE).tar.xz
19 PKG_MIRROR_HASH:=03e24eb41513b4d28dc42f5ae5c91be0030094149cbdbf9cdf9b6f87db9e36c0
20 PKG_MAINTAINER:=Toke Høiland-Jørgensen <toke@toke.dk>
21
22 LUCI_DIR:=/usr/lib/lua/luci
23
24 include $(INCLUDE_DIR)/package.mk
25
26 define Package/acme
27 SECTION:=net
28 CATEGORY:=Network
29 DEPENDS:=+curl +ca-bundle +openssl-util +netcat
30 TITLE:=ACME (Letsencrypt) client
31 endef
32
33 define Package/acme/description
34 A client for issuing Letsencrypt certificates.
35 endef
36
37 define Package/acme/conffiles
38 /etc/config/acme
39 /etc/acme
40 endef
41
42 define Build/Configure
43 endef
44
45 define Build/Compile
46 endef
47
48 define Package/acme/install
49 $(INSTALL_DIR) $(1)/etc/acme
50 $(INSTALL_DIR) $(1)/etc/config
51 $(INSTALL_CONF) ./files/acme.config $(1)/etc/config/acme
52 $(INSTALL_DIR) $(1)/etc/init.d
53 $(INSTALL_BIN) ./files/acme.init $(1)/etc/init.d/acme
54 $(INSTALL_DIR) $(1)/usr/lib/acme
55 $(INSTALL_BIN) ./files/run.sh $(1)/usr/lib/acme/run-acme
56 $(INSTALL_BIN) $(PKG_BUILD_DIR)/acme.sh $(1)/usr/lib/acme/acme.sh
57 endef
58
59 define Package/acme-dnsapi
60 SECTION:=net
61 CATEGORY:=Network
62 DEPENDS:=+acme
63 TITLE:=DNS API integration for ACME (Letsencrypt) client
64 endef
65
66 define Package/acme-dnsapi/description
67 This package provides DNS API integration for ACME (Letsencrypt) client.
68 endef
69
70 define Package/acme-dnsapi/install
71 $(INSTALL_DIR) $(1)/usr/lib/acme/dnsapi
72 $(INSTALL_DATA) $(PKG_BUILD_DIR)/dnsapi/*.sh $(1)/usr/lib/acme/dnsapi
73 endef
74
75 define Package/luci-app-acme
76 SECTION:=luci
77 CATEGORY:=LuCI
78 TITLE:=ACME package - LuCI interface
79 DEPENDS:= lua luci-base +acme luci-app-uhttpd
80 SUBMENU:=3. Applications
81 endef
82
83 define Package/luci-app-acme/description
84 Control the ACME Letsencrypt certificate interface
85 endef
86
87 define Package/luci-app-acme/install
88 $(INSTALL_DIR) $(1)$(LUCI_DIR)/controller $(1)$(LUCI_DIR)/model/cbi
89 $(INSTALL_DATA) ./files/acme-controller.lua $(1)$(LUCI_DIR)/controller/acme.lua
90 $(INSTALL_DATA) ./files/acme-cbi.lua $(1)$(LUCI_DIR)/model/cbi/acme.lua
91 $(INSTALL_DIR) $(1)/etc/uci-defaults
92 $(INSTALL_BIN) ./files/uci-defaults-acme $(1)/etc/uci-defaults/luci-acme
93 endef
94
95 define Package/luci-app-acme/postinst
96 #!/bin/sh
97 [ -x /etc/uci-defaults/luci-acme ] && /etc/uci-defaults/luci-acme || exit 0
98 endef
99
100 define Package/luci-app-acme/postrm
101 #!/bin/sh
102 which uci > /dev/null || exit 0
103 uci -q get ucitrack.@acme[0] > /dev/null && {
104 uci delete ucitrack.@acme[0]
105 uci commit
106 }
107 exit 0
108 endef
109
110
111 $(eval $(call BuildPackage,acme))
112 $(eval $(call BuildPackage,acme-dnsapi))
113 $(eval $(call BuildPackage,luci-app-acme))