From 97241cfc25cd1301ddd89b93d67923d161005431 Mon Sep 17 00:00:00 2001 From: Mike Date: Mon, 10 Aug 2026 13:57:55 -0400 Subject: [PATCH] Add: PowerShell v7.6.4 --- .env.example | 1 + Dockerfile | 20 ++++++++++++++++++++ README.md | 1 + 3 files changed, 22 insertions(+) diff --git a/.env.example b/.env.example index 25d9b66..0282ea6 100644 --- a/.env.example +++ b/.env.example @@ -52,4 +52,5 @@ POSTGRESQL_CLIENT_VERSION=18 # Programming languages DOTNET_VERSION=10.0.201 +POWERSHELL_VERSION=v7.6.4 PYTHON_VERSION=3.12 diff --git a/Dockerfile b/Dockerfile index e852434..1ab89e7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -109,6 +109,26 @@ RUN curl -fsSL https://dot.net/v1/dotnet-install.sh -o /tmp/dotnet-install.sh \ ENV DOTNET_CLI_TELEMETRY_OPTOUT=1 ENV DOTNET_NOLOGO=1 +# ----------------------------------------------------------------------------- +# PowerShell +# Cross-platform shell and scripting language built on .NET. +# Installed via Microsoft GitHub releases for exact version pinning. +# PowerShell uses x64/arm64 naming — maps from TARGETARCH with a remap +# for amd64 (PowerShell calls it x64). +# URL: https://github.com/PowerShell/PowerShell +# ----------------------------------------------------------------------------- +ARG POWERSHELL_VERSION=v7.6.4 + +RUN PS_ARCH=$([ "${TARGETARCH}" = "arm64" ] && echo "arm64" || echo "x64") \ + && curl -fsSL \ + "https://github.com/PowerShell/PowerShell/releases/download/${POWERSHELL_VERSION}/powershell-${POWERSHELL_VERSION#v}-linux-${PS_ARCH}.tar.gz" \ + -o /tmp/powershell.tar.gz \ + && mkdir -p /usr/local/pwsh \ + && tar -xzf /tmp/powershell.tar.gz -C /usr/local/pwsh \ + && rm /tmp/powershell.tar.gz \ + && ln -s /usr/local/pwsh/pwsh /usr/local/bin/pwsh \ + && pwsh --version + # ----------------------------------------------------------------------------- # gcloud CLI (Google Cloud SDK) # Installed via Google's versioned archive for exact version pinning. diff --git a/README.md b/README.md index 77c4dd3..fd27f5e 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,7 @@ with Docker and VS Code — no local setup required. | [Ansible](https://www.ansible.com) | See [Dockerfile](./Dockerfile) | Configuration management and automation | | [.NET SDK](https://dotnet.microsoft.com) | See [Dockerfile](./Dockerfile) | .NET development | | [Python](https://www.python.org) | See [Dockerfile](./Dockerfile) | Scripting and development | +| [PowerShell](https://github.com/PowerShell/PowerShell) | See [Dockerfile](./Dockerfile) | Cross-platform shell and scripting | | [Azure CLI](https://learn.microsoft.com/en-us/cli/azure/) | See [Dockerfile](./Dockerfile) | Azure resource management | | [gcloud CLI](https://cloud.google.com/sdk/gcloud) | See [Dockerfile](./Dockerfile) | Google Cloud resource management | | [GitHub CLI](https://cli.github.com) | See [Dockerfile](./Dockerfile) | GitHub workflow management |