diff --git a/Makefile b/Makefile index 97b719c..9d2be7b 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,6 @@ MAINTAINER?==@eater.me +# Docker executable to use (default: docker, but img may be used) +DOCKER_EXEC?=docker # Name of image IMAGE?=d.xr.to/base # Arch to be used @@ -83,6 +85,11 @@ endif # Create lsb_release file cp files/lsb_release $(BUILDDIR)/bin/lsb_release chmod +x $(BUILDDIR)/bin/lsb_release + # Create xbps helpers + cp files/xbps-remote $(BUILDDIR)/bin/xbps-remote + chmod +x $(BUILDDIR)/bin/xbps-remote + cp files/xbps-local $(BUILDDIR)/bin/xbps-local + chmod +x $(BUILDDIR)/bin/xbps-local # Create passwd, shadow and group file cp files/passwd $(BUILDDIR)/etc/passwd cp files/group $(BUILDDIR)/etc/group @@ -90,7 +97,7 @@ endif install: build # Import directory as tar (owned by root) into docker - tar --owner 0 --group 0 -pC $(BUILDDIR) -c . | docker import -m '$(IMAGE) initialization from chroot' -c 'LABEL maintainer="$(MAINTAINER)"' - $(IMAGE) + tar --owner 0 --group 0 -pC $(BUILDDIR) -c . | $(DOCKER_EXEC) import -m '$(IMAGE) initialization from chroot' -c 'LABEL maintainer="$(MAINTAINER)"' - $(IMAGE) clean: # Remove build directory diff --git a/build-tagged.sh b/build-tagged.sh index 16457ba..214612f 100755 --- a/build-tagged.sh +++ b/build-tagged.sh @@ -1,8 +1,12 @@ #!/usr/bin/env bash +DOCKER_EXEC="${DOCKER_EXEC:-docker}"; IMAGE="${1:-d.xr.to/base}"; MAINTAINER="${2:-=@eater.me}"; +build_dir="$(dirname "$0")/build" +test -d "${build_dir}" && rm -rf "${build_dir}"; + for toolbox in "none" "toybox" "busybox" "default"; do - make IMAGE="${IMAGE}:${toolbox}" TOOLBOX="${toolbox}"; + make IMAGE="${IMAGE}:${toolbox}" TOOLBOX="${toolbox}" DOCKER_EXEC="${DOCKER_EXEC}" all > "${toolbox}.log"; done -docker tag "${IMAGE}:toybox" "${IMAGE}:latest"; -make IMAGE="${IMAGE}:glibc" TOOLBOX="toybox" ARCH="x86_64" +$DOCKER_EXEC tag "${IMAGE}:toybox" "${IMAGE}:latest"; +make IMAGE="${IMAGE}:glibc" TOOLBOX="toybox" ARCH="x86_64" DOCKER_EXEC="${DOCKER_EXEC}" all > "glibc.log"; diff --git a/files/xbps-local b/files/xbps-local new file mode 100755 index 0000000..1798704 --- /dev/null +++ b/files/xbps-local @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +xbps-install -yR /tmp/xbps "$@" && xbps-remove -Oo && rm -rf /var/cache/xbps/* /tmp/xbps diff --git a/files/xbps-remote b/files/xbps-remote new file mode 100755 index 0000000..f4fa4cb --- /dev/null +++ b/files/xbps-remote @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +xbps-install -Sy "$@" && xbps-remove -Oo && rm -rf /var/cache/xbps/* /tmp/xbps