diff --git a/toolboxes/powershell-toolbox/Containerfile.powershell b/toolboxes/powershell-toolbox/Containerfile.powershell new file mode 100644 index 0000000..bf232b3 --- /dev/null +++ b/toolboxes/powershell-toolbox/Containerfile.powershell @@ -0,0 +1,32 @@ +# hadolint ignore=DL3007 +FROM ghcr.io/ublue-os/wolfi-base:latest + +LABEL com.github.containers.toolbox="true" \ + name="powershell-toolbox" \ + usage="This image is meant to be used with the toolbox or distrobox command" \ + description="A container image with integrated Powershell and Microsoft tooling for development environments." + +# COPY ./toolboxes/powershell-toolbox/packages.powershell /tmp +COPY packages.powershell /tmp + +SHELL ["/bin/ash", "-eo", "pipefail", "-c"] + +RUN apk upgrade && \ + grep -v '^#' /tmp/packages.powershell | xargs apk add --no-cache + +ENV POWERSHELL_TELEMETRY_OPTOUT=1 +ENV DOTNET_CLI_TELEMETRY_OPTOUT=1 + +RUN curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin -Channel LTS -InstallDir /usr/share/dotnet \ + && ln -sf /usr/share/dotnet/dotnet /usr/bin/dotnet + +ENV VIRTUAL_ENV=/.venv +RUN python3 -m venv $VIRTUAL_ENV +ENV PATH="$VIRTUAL_ENV/bin:$PATH" + +# hadolint ignore=DL3013 +RUN pip3 install --no-cache-dir --upgrade pip && \ + pip3 install --no-cache-dir --prefer-binary setuptools azure-cli && \ + az config set core.collect_telemetry=no && \ + rm -rf /tmp/* +