@@ -1613,6 +1613,9 @@ N: Rahul Jain <rahul.jain@imgtec.com>
F: package/uhttpd/
F: package/ustream-ssl/
+N: Refik Tuzakli <refik.tuzakli@savronik.com.tr>
+F: package/balena/
+
N: Renaud Aubin <root@renaud.io>
F: package/libhttpparser/
@@ -1984,6 +1984,7 @@ menu "System tools"
source "package/atop/Config.in"
source "package/attr/Config.in"
source "package/audit/Config.in"
+ source "package/balena/Config.in"
source "package/bootutils/Config.in"
source "package/cgroupfs-mount/Config.in"
source "package/circus/Config.in"
new file mode 100644
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_BALENA
+ bool "balena"
+ depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS
+ depends on BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS
+ depends on BR2_TOOLCHAIN_HAS_THREADS # lvm2
+ depends on BR2_INIT_SYSTEMD
+ depends on BR2_USE_MMU # lvm2
+ depends on !BR2_STATIC_LIBS # lvm2
+ select BR2_PACKAGE_LVM2
+ select BR2_PACKAGE_LVM2_STANDARD_INSTALL # libdevmapper
+ help
+ Moby-based Container Engine for Embedded, IoT, and Edge uses
+
+ https://github.com/resin-os/balena
+
+comment "balena needs systemd"
+ depends on !BR2_INIT_SYSTEMD
new file mode 100644
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 ae07affea7f50d9754957d972c9957f42938998dffc48cc57fca37e0b187359a
balena-17.06-resin.tar.gz
new file mode 100644
@@ -0,0 +1,51 @@
+################################################################################
+#
+# balena
+#
+################################################################################
+
+BALENA_VERSION = 17.06-resin
+BALENA_COMMIT = 73136d1985f28a34705f537e90636cf208734048
+BALENA_SITE = $(call github,resin-os,balena,$(BALENA_VERSION))
+
+BALENA_LICENSE = Apache-2.0
+BALENA_LICENSE_FILES = LICENSE
+
+BALENA_DEPENDENCIES = host-pkgconf systemd lvm2
+
+BALENA_CONFIGURE_ENV = GOPATH="$(@D)/$(BALENA_WORKSPACE)" \
+ DOCKER_GITCOMMIT=$(BALENA_COMMIT) \
+ DOCKER_BUILDTAGS='exclude_graphdriver_btrfs exclude_graphdirver_zfs
exclude_graphdriver_devicemapper'
+
+BALENA_LDFLAGS += -extldflags '-static'
+
+BALENA_SRC_SUBDIR = github.com/docker/docker
+
+define BALENA_MAKE_DYNBINARY_BALENA
+ cd $(@D) && \
+ $(GO_TARGET_ENV) \
+ $(BALENA_CONFIGURE_ENV) \
+ bash ./hack/make.sh dynbinary-balena
+endef
+
+BALENA_POST_CONFIGURE_HOOKS += BALENA_MAKE_DYNBINARY_BALENA
+
+define BALENA_BUILD_CMDS
+ cd $(@D)/$(BALENA_WORKSPACE)/src/$(BALENA_SRC_SUBDIR)/cmd/mobynit; \
+ GOPATH="$(@D)/$(BALENA_WORKSPACE)" \
+ $(HOST_DIR)/bin/go build -v\
+ $(BALENA_BUILD_OPTS)
+endef
+
+define BALENA_INSTALL_TARGET_CMDS
+ $(INSTALL) -D -m 0755
$(@D)/bundles/17.06.0-dev/dynbinary-balena/balena \
+ $(TARGET_DIR)/usr/bin/balena
+ ln -sf balena $(TARGET_DIR)/usr/bin/balenad
+ ln -sf balena $(TARGET_DIR)/usr/bin/balena-containerd
+ ln -sf balena $(TARGET_DIR)/usr/bin/balena-containerd-shim
+ ln -sf balena $(TARGET_DIR)/usr/bin/balena-containerd-ctr
+ ln -sf balena $(TARGET_DIR)/usr/bin/balena-runc
+ ln -sf balena $(TARGET_DIR)/usr/bin/balena-proxy
+endef