diff options
Diffstat (limited to 'pkgs/shells/powershell/default.nix')
-rw-r--r-- | pkgs/shells/powershell/default.nix | 134 |
1 files changed, 0 insertions, 134 deletions
diff --git a/pkgs/shells/powershell/default.nix b/pkgs/shells/powershell/default.nix deleted file mode 100644 index c6d123701589..000000000000 --- a/pkgs/shells/powershell/default.nix +++ /dev/null @@ -1,134 +0,0 @@ -{ lib -, stdenv -, fetchurl -, less -, makeWrapper -, autoPatchelfHook -, curl -, icu -, libuuid -, libunwind -, openssl -, darwin -, lttng-ust -, pam -, testers -, powershell -, writeShellScript -, common-updater-scripts -, gnused -, jq -}: - -let - ext = stdenv.hostPlatform.extensions.sharedLibrary; - platformLdLibraryPath = { - darwin = "DYLD_FALLBACK_LIBRARY_PATH"; - linux = "LD_LIBRARY_PATH"; - }.${stdenv.hostPlatform.parsed.kernel.name} or (throw "unsupported platform"); -in -stdenv.mkDerivation rec { - pname = "powershell"; - version = "7.4.5"; - - src = passthru.sources.${stdenv.hostPlatform.system} - or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); - - sourceRoot = "."; - - strictDeps = true; - - nativeBuildInputs = [ - less - makeWrapper - ] ++ lib.optionals stdenv.isLinux [ - autoPatchelfHook - ]; - - buildInputs = [ - curl - icu - libuuid - libunwind - openssl - ] ++ lib.optionals stdenv.isDarwin [ - darwin.Libsystem - ] ++ lib.optionals stdenv.isLinux [ - lttng-ust - pam - ]; - - installPhase = '' - runHook preInstall - - mkdir -p $out/{bin,share/powershell} - cp -R * $out/share/powershell - chmod +x $out/share/powershell/pwsh - makeWrapper $out/share/powershell/pwsh $out/bin/pwsh \ - --prefix ${platformLdLibraryPath} : "${lib.makeLibraryPath buildInputs}" \ - --set TERM xterm \ - --set POWERSHELL_TELEMETRY_OPTOUT 1 \ - --set DOTNET_CLI_TELEMETRY_OPTOUT 1 - - '' + lib.optionalString stdenv.isLinux '' - patchelf --replace-needed liblttng-ust${ext}.0 liblttng-ust${ext}.1 $out/share/powershell/libcoreclrtraceptprovider.so - - '' + '' - runHook postInstall - ''; - - dontStrip = true; - - passthru = { - shellPath = "/bin/pwsh"; - sources = { - aarch64-darwin = fetchurl { - url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-osx-arm64.tar.gz"; - hash = "sha256-pN0wv/jV1luaLO1NF4QRwXI8FzcBev8VCkiMcSs3r1I="; - }; - aarch64-linux = fetchurl { - url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-linux-arm64.tar.gz"; - hash = "sha256-8JaGSezUfVUAzLdmxP9No04NeCVMzpCYx/QtDlSEtRM="; - }; - x86_64-darwin = fetchurl { - url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-osx-x64.tar.gz"; - hash = "sha256-1DE6D4AZBwKz9UIPpLy3a9hlgsF4QoGf2+eYO5SANYA="; - }; - x86_64-linux = fetchurl { - url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-linux-x64.tar.gz"; - hash = "sha256-wjUJzE0Ixiuf9uom9XnuTFD5eKo0JpM0qF7aL+w29Fs="; - }; - }; - tests.version = testers.testVersion { - package = powershell; - command = "HOME=$(mktemp -d) pwsh --version"; - }; - updateScript = writeShellScript "update-powershell" '' - set -o errexit - export PATH="${lib.makeBinPath [ common-updater-scripts curl gnused jq ]}" - NEW_VERSION=$(curl -s https://api.github.com/repos/PowerShell/PowerShell/releases/latest | jq .tag_name --raw-output | sed -e 's/v//') - - if [[ "${version}" = "$NEW_VERSION" ]]; then - echo "The new version same as the old version." - exit 0 - fi - - for platform in ${lib.escapeShellArgs meta.platforms}; do - update-source-version "powershell" "$NEW_VERSION" --ignore-same-version --source-key="sources.$platform" - done - ''; - }; - - meta = with lib; { - description = "Powerful cross-platform (Windows, Linux, and macOS) shell and scripting language based on .NET"; - homepage = "https://microsoft.com/PowerShell"; - license = licenses.mit; - mainProgram = "pwsh"; - maintainers = with maintainers; [ wegank ]; - platforms = builtins.attrNames passthru.sources; - sourceProvenance = with sourceTypes; [ - binaryBytecode - binaryNativeCode - ]; - }; -} |