1 include $(TOPDIR
)/rules.mk
8 PKG_SOURCE_URL
=https
://git.torproject.org
/pluggable-transports
/snowflake.git
9 PKG_SOURCE_VERSION
:=v
$(PKG_VERSION
)
10 PKG_MIRROR_HASH
:=7f36f48ab07ac9a3944202613b024072f3ad0ad55b495fde611ee30223410fdf
12 PKG_LICENSE
:=BSD-3-Clause
13 PKG_LICENSE_FILES
:=LICENSE
14 PKG_MAINTAINER
:=Daniel Golle
<daniel@makrotopia.org
>, Nick Hainke
<vincent@systemli.org
>
16 PKG_BUILD_DEPENDS
:=golang
/host
18 PKG_BUILD_FLAGS
:=no-mips16
20 GO_PKG
:=git.torproject.org
/pluggable-transports
/snowflake.git
/v2
22 include $(INCLUDE_DIR
)/package.mk
23 include ..
/..
/lang
/golang
/golang-package.mk
25 define Package
/snowflake
/Default
27 URL
:=https
://snowflake.torproject.org
/
28 DEPENDS
:=$(GO_ARCH_DEPENDS
)
31 USERID
:=snowflake
:snowflake
34 define Package
/snowflake-broker
35 $(call Package
/snowflake
/Default
)
39 define Package
/snowflake-client
40 $(call Package
/snowflake
/Default
)
44 define Package
/snowflake-distinctcounter
45 $(call Package
/snowflake
/Default
)
46 TITLE
+= Distinct Counter
49 define Package
/snowflake-probetest
50 $(call Package
/snowflake
/Default
)
54 define Package
/snowflake-proxy
55 $(call Package
/snowflake
/Default
)
59 define Package
/snowflake-server
60 $(call Package
/snowflake
/Default
)
64 define Package
/snowflake
/description
/Default
65 Snowflake is a system that allows people from
all over the world to
66 access censored websites and applications. Similar to how VPNs assist
67 users in getting around Internet censorship
, Snowflake helps you avoid
68 being noticed by Internet censors by making your Internet activity appear
69 as though you
're using the Internet for a regular video or voice call.
72 define Package/snowflake-broker/description
73 $(call Package/snowflake/description/Default)
75 This package provides the Snowflake broker service.
78 define Package/snowflake-client/description
79 $(call Package/snowflake/description/Default)
81 This package contains the Snowflake client which provides the bridge to TOR.
84 define Package/snowflake-distinctcounter/description
85 $(call Package/snowflake/description/Default)
87 This package provides the Snowflake distinct counter service.
90 define Package/snowflake-probetest/description
91 $(call Package/snowflake/description/Default)
93 This package provides the Snowflake probe test.
96 define Package/snowflake-proxy/description
97 $(call Package/snowflake/description/Default)
99 This package provides the standalone Snowflake proxy.
102 define Package/snowflake-server/description
103 $(call Package/snowflake/description/Default)
105 This package provides the Snowflake server.
108 define Package/snowflake-broker/install
109 $(INSTALL_DIR) $(1)/usr/bin
110 $(INSTALL_BIN) $(GO_PKG_BUILD_BIN_DIR)/broker $(1)/usr/bin/snowflake-broker
113 define Package/snowflake-client/install
114 $(INSTALL_DIR) $(1)/usr/bin
115 $(INSTALL_BIN) $(GO_PKG_BUILD_BIN_DIR)/client $(1)/usr/bin/snowflake-client
118 define Package/snowflake-distinctcounter/install
119 $(INSTALL_DIR) $(1)/usr/bin
120 $(INSTALL_BIN) $(GO_PKG_BUILD_BIN_DIR)/distinctcounter $(1)/usr/bin/snowflake-distinctcounter
123 define Package/snowflake-probetest/install
124 $(INSTALL_DIR) $(1)/usr/bin
125 $(INSTALL_BIN) $(GO_PKG_BUILD_BIN_DIR)/probetest $(1)/usr/bin/snowflake-probetest
128 define Package/snowflake-proxy/install
129 $(INSTALL_DIR) $(1)/usr/bin $(1)/etc/init.d
130 $(INSTALL_BIN) $(GO_PKG_BUILD_BIN_DIR)/proxy $(1)/usr/bin/snowflake-proxy
131 $(INSTALL_BIN) ./files/snowflake-proxy.init $(1)/etc/init.d/snowflake-proxy
134 define Package/snowflake-server/install
135 $(INSTALL_DIR) $(1)/usr/bin
136 $(INSTALL_BIN) $(GO_PKG_BUILD_BIN_DIR)/server $(1)/usr/bin/snowflake-server
139 $(eval $(call BuildPackage,snowflake-broker))
140 $(eval $(call BuildPackage,snowflake-client))
141 $(eval $(call BuildPackage,snowflake-distinctcounter))
142 $(eval $(call BuildPackage,snowflake-probetest))
143 $(eval $(call BuildPackage,snowflake-proxy))
144 $(eval $(call BuildPackage,snowflake-server))