summary refs log tree commit diff
path: root/pkgs/shells
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/shells')
-rw-r--r--pkgs/shells/powershell/default.nix48
-rw-r--r--pkgs/shells/tcsh/default.nix11
-rw-r--r--pkgs/shells/xonsh/default.nix4
-rw-r--r--pkgs/shells/zsh/grml-zsh-config/default.nix4
4 files changed, 61 insertions, 6 deletions
diff --git a/pkgs/shells/powershell/default.nix b/pkgs/shells/powershell/default.nix
new file mode 100644
index 000000000000..937494916112
--- /dev/null
+++ b/pkgs/shells/powershell/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchgit, autoPatchelfHook, fetchzip, libunwind, libuuid, icu, curl, cacert,
+  makeWrapper, less, openssl }:
+
+let platformString = if stdenv.isDarwin then "osx"
+                     else if stdenv.isLinux then "linux"
+                     else throw "unsupported platform";
+    platformSha = if stdenv.isDarwin then "1ga4p8xmrxa54v2s6i0q1q7lx2idcmp1jwm0g4jxr54fyn5ay3lf"
+                     else if stdenv.isLinux then "000mmv5iblnmwydfdvg5izli3vpb6l14xy4qy3smcikpf0h87fhl"
+                     else throw "unsupported platform";
+    platformLdLibraryPath = if stdenv.isDarwin then "DYLD_FALLBACK_LIBRARY_PATH"
+                     else if stdenv.isLinux then "LD_LIBRARY_PATH"
+                     else throw "unsupported platform";
+in
+stdenv.mkDerivation rec {
+  name = "powershell-${version}";
+  version = "6.0.2";
+
+  src = fetchzip {
+    url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-${platformString}-x64.tar.gz";
+    sha256 = platformSha;
+    stripRoot = false;
+  };
+
+  buildInputs = [ autoPatchelfHook makeWrapper ];
+  propagatedBuildInputs = [ libunwind libuuid icu curl cacert less openssl ];
+
+  # TODO: remove PAGER after upgrading to v6.1.0-preview.1 or later as it has been addressed in
+  # https://github.com/PowerShell/PowerShell/pull/6144
+  installPhase = ''
+    mkdir -p $out/bin
+    mkdir -p $out/share/powershell
+    cp -r * $out/share/powershell
+    rm $out/share/powershell/DELETE_ME_TO_DISABLE_CONSOLEHOST_TELEMETRY
+    makeWrapper $out/share/powershell/pwsh $out/bin/pwsh --prefix ${platformLdLibraryPath} : "${stdenv.lib.makeLibraryPath [ libunwind libuuid icu openssl curl ]}" \
+                                           --set PAGER ${less}/bin/less --set TERM xterm
+  '';
+
+  dontStrip = true;
+
+  meta = with stdenv.lib; {
+    description = "Cross-platform (Windows, Linux, and macOS) automation and configuration tool/framework";
+    homepage = https://github.com/PowerShell/PowerShell;
+    maintainers = [ maintainers.yrashk ];
+    platforms = platforms.unix;
+    license = with licenses; [ mit ];
+  };
+
+}
diff --git a/pkgs/shells/tcsh/default.nix b/pkgs/shells/tcsh/default.nix
index da76e2c3027a..0f393c11988f 100644
--- a/pkgs/shells/tcsh/default.nix
+++ b/pkgs/shells/tcsh/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl
+{ stdenv, fetchurl, fetchpatch
 , ncurses }:
 
 stdenv.mkDerivation rec {
@@ -16,6 +16,13 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ ncurses ];
 
+  patches = stdenv.lib.optional stdenv.hostPlatform.isMusl
+    (fetchpatch {
+      name = "sysmalloc.patch";
+      url = "https://git.alpinelinux.org/cgit/aports/plain/community/tcsh/001-sysmalloc.patch?id=184585c046cdd56512f1a76e426dd799b368f8cf";
+      sha256 = "1qc6ydxhdfizsbkaxhpn3wib8sfphrw10xnnsxx2prvzg9g2zp67";
+    });
+
   meta = with stdenv.lib;{
     description = "An enhanced version of the Berkeley UNIX C shell (csh)";
     longDescription = ''
@@ -33,7 +40,7 @@ stdenv.mkDerivation rec {
     homepage = http://www.tcsh.org/;
     license = licenses.bsd2;
     maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
   };
 
   passthru = {
diff --git a/pkgs/shells/xonsh/default.nix b/pkgs/shells/xonsh/default.nix
index 93add8a69138..0e4d23ffd5cf 100644
--- a/pkgs/shells/xonsh/default.nix
+++ b/pkgs/shells/xonsh/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   name = "xonsh-${version}";
-  version = "0.6.4";
+  version = "0.6.6";
 
   src = fetchFromGitHub {
     owner = "scopatz";
     repo = "xonsh";
     rev = version;
-    sha256= "16nfvfa9cklm5qb2lrr12z7k4wjb6pbb0y0ma15riqcda56ygmj7";
+    sha256= "09w7656qhqv3al52cl5lgzawvkbkpwjfnxyg0vyx0gbjs1hwiqjj";
   };
 
   LC_ALL = "en_US.UTF-8";
diff --git a/pkgs/shells/zsh/grml-zsh-config/default.nix b/pkgs/shells/zsh/grml-zsh-config/default.nix
index e516393a23ca..1c5535ba1c69 100644
--- a/pkgs/shells/zsh/grml-zsh-config/default.nix
+++ b/pkgs/shells/zsh/grml-zsh-config/default.nix
@@ -5,13 +5,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   name = "grml-zsh-config-${version}";
-  version = "0.14.3";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "grml";
     repo = "grml-etc-core";
     rev = "v${version}";
-    sha256 = "1akx6lwxnbcccddzw41rci8rb9n5vb6q2vpn5qr07f0grchyiifk";
+    sha256 = "0a39m7rlf30r0ja56mmhidqbalck8f5gkmgngcvkxy3n486xxmkm";
   };
 
   buildInputs = [ zsh coreutils txt2tags procps ]