summary refs log tree commit diff
path: root/pkgs/shells/powershell/default.nix
diff options
context:
space:
mode:
authorJonathan Ringer <jonringer117@gmail.com>2020-04-30 14:47:54 -0700
committerJon <jonringer@users.noreply.github.com>2020-05-04 09:25:36 -0700
commit5959a5b70b80b054250a9aadf4db87a225f3b961 (patch)
treed96b034b5dacdef24712a6ce08b442ed0cab1b16 /pkgs/shells/powershell/default.nix
parentb5bd353ec160eb88c510feef1ba9d4674192ee66 (diff)
downloadnixpkgs-5959a5b70b80b054250a9aadf4db87a225f3b961.tar
nixpkgs-5959a5b70b80b054250a9aadf4db87a225f3b961.tar.gz
nixpkgs-5959a5b70b80b054250a9aadf4db87a225f3b961.tar.bz2
nixpkgs-5959a5b70b80b054250a9aadf4db87a225f3b961.tar.lz
nixpkgs-5959a5b70b80b054250a9aadf4db87a225f3b961.tar.xz
nixpkgs-5959a5b70b80b054250a9aadf4db87a225f3b961.tar.zst
nixpkgs-5959a5b70b80b054250a9aadf4db87a225f3b961.zip
powershell: enable darwin install
Diffstat (limited to 'pkgs/shells/powershell/default.nix')
-rw-r--r--pkgs/shells/powershell/default.nix29
1 files changed, 20 insertions, 9 deletions
diff --git a/pkgs/shells/powershell/default.nix b/pkgs/shells/powershell/default.nix
index 24859ef0c90..a5c22d125af 100644
--- a/pkgs/shells/powershell/default.nix
+++ b/pkgs/shells/powershell/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, autoPatchelfHook, fetchzip, libunwind, libuuid, icu, curl
+{ stdenv, lib, autoPatchelfHook, fetchzip, libunwind, libuuid, icu, curl
 , darwin, makeWrapper, less, openssl_1_1, pam, lttng-ust }:
 
 let platformString = if stdenv.isDarwin then "osx"
@@ -26,19 +26,25 @@ stdenv.mkDerivation rec {
   buildInputs = [ less ] ++ libraries;
   nativeBuildInputs = [ autoPatchelfHook makeWrapper ];
 
-  installPhase = ''
+  installPhase =
+  let
+    ext = stdenv.hostPlatform.extensions.sharedLibrary;
+  in ''
     pslibs=$out/share/powershell
     mkdir -p $pslibs
 
     cp -r * $pslibs
 
-	  rm $pslibs/libcrypto.so.1.0.0
-	  rm $pslibs/libssl.so.1.0.0
+    rm -f $pslibs/libcrypto${ext}.1.0.0
+    rm -f $pslibs/libssl${ext}.1.0.0
 
-	  patchelf --replace-needed libcrypto.so.1.0.0 libcrypto.so.1.1 $pslibs/libmi.so
-	  patchelf --replace-needed libssl.so.1.0.0 libssl.so.1.1 $pslibs/libmi.so
-	
-	  mkdir -p $out/bin
+    ls $pslibs
+  '' + lib.optionalString (!stdenv.isDarwin) ''
+    patchelf --replace-needed libcrypto${ext}.1.0.0 libcrypto${ext}.1.1 $pslibs/libmi.so
+    patchelf --replace-needed libssl${ext}.1.0.0 libssl${ext}.1.1 $pslibs/libmi.so
+  '' + ''
+
+    mkdir -p $out/bin
 
     makeWrapper $pslibs/pwsh $out/bin/pwsh \
       --prefix ${platformLdLibraryPath} : "${stdenv.lib.makeLibraryPath libraries}" \
@@ -47,7 +53,12 @@ stdenv.mkDerivation rec {
 
   dontStrip = true;
 
-  meta = with stdenv.lib; {
+  doInstallCheck = true;
+  installCheck = ''
+    $out/bin/pwsh --help > /dev/null
+  '';
+
+  meta = with lib; {
     description = "Powerful cross-platform (Windows, Linux, and macOS) shell and scripting language based on .NET";
     homepage = "https://github.com/PowerShell/PowerShell";
     maintainers = with maintainers; [ yrashk srgom ];