@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
set -e
# wrapper around "docker build" that creates a temporary directory and copies files into it first so that arbitrary host directories can be copied into containers without bind mounts, but accepts a Dockerfile on stdin
@@ -30,4 +30,4 @@ fi
cp -RL "$dir" "$tmp/dir"
-command docker build -t "$imageTag" "$tmp" > /dev/null
+error="$(command docker build -t "$imageTag" "$tmp" 2>&1)" || { echo "$error" >&2; exit 1; }
@@ -4,8 +4,6 @@
(+ 2 2)
(print))
-(import subprocess sys)
-(subprocess.check_call [sys.executable "-m" "pip" "install" "-q" "sh==1.14.2"])
(import platform)
(comment Windows is not supported by sh (sad day))
IFS=$'\n'
@@ -28,8 +28,11 @@ fi
export PIP_DISABLE_PIP_VERSION_CHECK=1
# or that a new version will no longer work with this python version
export PIP_NO_PYTHON_VERSION_WARNING=1
+# ensure pip does not complain about running about root
+export PIP_ROOT_USER_ACTION=ignore
+
# https://pypi.org/project/hy/#history
# https://pypi.org/project/hyrule/#history
-pip install -q 'hy==0.24.0' 'hyrule==0.2'
+pip install -q 'hy==0.24.0' 'hyrule==0.2' 'sh==1.14.2' > /dev/null
hy ./container.hy
@@ -1,5 +1,5 @@
import subprocess, sys
-subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'requests'])
+subprocess.check_call([sys.executable, '-m', 'pip', 'install', '--root-user-action', 'ignore', 'requests'])
import requests
r = requests.get('https://google.com')