diff options
Diffstat (limited to 'pkgs/shells')
39 files changed, 345 insertions, 193 deletions
diff --git a/pkgs/shells/bash/5.nix b/pkgs/shells/bash/5.nix index 6b126390c9f..3c4fb83e3e4 100644 --- a/pkgs/shells/bash/5.nix +++ b/pkgs/shells/bash/5.nix @@ -2,7 +2,6 @@ , stdenv , buildPackages , fetchurl -, binutils , bison , util-linux @@ -68,6 +67,12 @@ stdenv.mkDerivation rec { ]; configureFlags = [ + # At least on Linux bash memory allocator has pathological performance + # in scenarios involving use of larger memory: + # https://lists.gnu.org/archive/html/bug-bash/2023-08/msg00052.html + # Various distributions default to system allocator. Let's nixpkgs + # do the same. + "--without-bash-malloc" (if interactive then "--with-installed-readline" else "--disable-readline") ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "bash_cv_job_control_missing=nomissing" @@ -81,7 +86,6 @@ stdenv.mkDerivation rec { "bash_cv_dev_fd=standard" "bash_cv_termcap_lib=libncurses" ] ++ lib.optionals (stdenv.hostPlatform.libc == "musl") [ - "--without-bash-malloc" "--disable-nls" ]; @@ -90,7 +94,7 @@ stdenv.mkDerivation rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ bison ] ++ lib.optional withDocs texinfo - ++ lib.optional stdenv.hostPlatform.isDarwin binutils; + ++ lib.optional stdenv.hostPlatform.isDarwin stdenv.cc.bintools; buildInputs = lib.optional interactive readline; diff --git a/pkgs/shells/bash/nix-bash-completions/default.nix b/pkgs/shells/bash/nix-bash-completions/default.nix index af516a1bcaa..d6cc156cba1 100644 --- a/pkgs/shells/bash/nix-bash-completions/default.nix +++ b/pkgs/shells/bash/nix-bash-completions/default.nix @@ -13,7 +13,10 @@ stdenv.mkDerivation rec { postPatch = '' # Nix 2.4+ provides its own completion for the nix command, see https://github.com/hedning/nix-bash-completions/issues/20 - substituteInPlace _nix --replace 'nix nixos-option' 'nixos-option' + # NixOS provides its own completions for nixos-rebuild now. + substituteInPlace _nix \ + --replace 'nix nixos-option' 'nixos-option' \ + --replace 'nixos-rebuild nixos-install' 'nixos-install' ''; strictDeps = true; diff --git a/pkgs/shells/carapace/default.nix b/pkgs/shells/carapace/default.nix index ee5f254089c..2fef908935c 100644 --- a/pkgs/shells/carapace/default.nix +++ b/pkgs/shells/carapace/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "carapace"; - version = "0.27.0"; + version = "0.28.3"; src = fetchFromGitHub { owner = "rsteube"; repo = "${pname}-bin"; rev = "v${version}"; - hash = "sha256-UcJbWOYkNUJEilJL/LG5o+I1ugqEOEGfs+uvKUMnTMU="; + hash = "sha256-d56tA+tTlnwE9t0toJCCpRwNXGNwNVastdcJPunCO0c="; }; - vendorHash = "sha256-PN8ARsJQqRj333ervoy24PZoWkrCIYiGxOovzEhPNZQ="; + vendorHash = "sha256-jbKF68fPwMigKSoSOP6pJMjn+PW2yeI/oZKv2ytoHuY="; ldflags = [ "-s" diff --git a/pkgs/shells/fish/default.nix b/pkgs/shells/fish/default.nix index 4df95a9ca6f..1fa5b9c6151 100644 --- a/pkgs/shells/fish/default.nix +++ b/pkgs/shells/fish/default.nix @@ -79,7 +79,7 @@ let # note that this is required: # 1. For all shells, not just login shells (mosh needs this as do some other command-line utilities) # 2. Before the shell is initialized, so that config snippets can find the commands they use on the PATH - builtin status --is-login + builtin status is-login or test -z "$__fish_nixos_env_preinit_sourced" -a -z "$ETC_PROFILE_SOURCED" -a -z "$ETC_ZSHENV_SOURCED" ${if fishEnvPreInit != null then '' and begin @@ -298,7 +298,7 @@ let homepage = "https://fishshell.com/"; license = licenses.gpl2; platforms = platforms.unix; - maintainers = with maintainers; [ cole-h winter srapenne ]; + maintainers = with maintainers; [ cole-h winter ]; mainProgram = "fish"; }; diff --git a/pkgs/shells/fish/plugins/bobthefish.nix b/pkgs/shells/fish/plugins/bobthefish.nix index e39f6198534..417ac87257a 100644 --- a/pkgs/shells/fish/plugins/bobthefish.nix +++ b/pkgs/shells/fish/plugins/bobthefish.nix @@ -3,15 +3,15 @@ , fetchFromGitHub , }: -buildFishPlugin rec { +buildFishPlugin { pname = "bobthefish"; - version = "unstable-2022-08-02"; + version = "unstable-2023-06-16"; src = fetchFromGitHub { owner = "oh-my-fish"; repo = "theme-bobthefish"; - rev = "2dcfcab653ae69ae95ab57217fe64c97ae05d8de"; - sha256 = "sha256-jBbm0wTNZ7jSoGFxRkTz96QHpc5ViAw9RGsRBkCQEIU="; + rev = "c2c47dc964a257131b3df2a127c2631b4760f3ec"; + sha256 = "sha256-LB4g+EA3C7OxTuHfcxfgl8IVBe5NufFc+5z9VcS0Bt0="; }; meta = with lib; { diff --git a/pkgs/shells/fish/plugins/bobthefisher.nix b/pkgs/shells/fish/plugins/bobthefisher.nix index 1930890d4de..56d179cd24b 100644 --- a/pkgs/shells/fish/plugins/bobthefisher.nix +++ b/pkgs/shells/fish/plugins/bobthefisher.nix @@ -3,15 +3,15 @@ , fetchFromGitHub , }: -buildFishPlugin rec { +buildFishPlugin { pname = "bobthefisher"; - version = "unstable-2023-03-09"; + version = "unstable-2023-10-25"; src = fetchFromGitHub { owner = "Scrumplex"; repo = "bobthefisher"; - rev = "6528033a2c9ca90611d04b6a4afd2131b9495cdc"; - sha256 = "sha256-UDoSMFKtd6ur10guqJlkpA0YSCBv45FR5QKJqdXZWgw="; + rev = "f4179a14b087c7fbfc2e892da429adad40a39e44"; + sha256 = "sha256-l1DHSZa40BX2/4GCjm5E53UOeFEnMioWbZtCW14WX6k="; }; meta = with lib; { diff --git a/pkgs/shells/fish/plugins/done.nix b/pkgs/shells/fish/plugins/done.nix index ffbd8dfdaa0..1c1f5848aa3 100644 --- a/pkgs/shells/fish/plugins/done.nix +++ b/pkgs/shells/fish/plugins/done.nix @@ -2,13 +2,13 @@ buildFishPlugin rec { pname = "done"; - version = "1.16.5"; + version = "1.19.1"; src = fetchFromGitHub { owner = "franciscolourenco"; repo = "done"; rev = version; - sha256 = "E0wveeDw1VzEH2kzn63q9hy1xkccfxQHBV2gVpu2IdQ="; + hash = "sha256-BGHfwKoMfOZUsa05kEt8W2luc1aC3Su/OyaGmcb4UiI="; }; checkPlugins = [ fishtape ]; @@ -16,10 +16,10 @@ buildFishPlugin rec { fishtape test/done.fish ''; - meta = { + meta = with lib; { description = "Automatically receive notifications when long processes finish"; homepage = "https://github.com/franciscolourenco/done"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ malo ]; + license = licenses.mit; + maintainers = [ maintainers.malo ]; }; } diff --git a/pkgs/shells/fish/plugins/fzf-fish.nix b/pkgs/shells/fish/plugins/fzf-fish.nix index 073ae04952e..52c4725114f 100644 --- a/pkgs/shells/fish/plugins/fzf-fish.nix +++ b/pkgs/shells/fish/plugins/fzf-fish.nix @@ -5,13 +5,13 @@ let in buildFishPlugin rec { pname = "fzf.fish"; - version = "10.0"; + version = "10.1"; src = fetchFromGitHub { owner = "PatrickF1"; repo = "fzf.fish"; rev = "v${version}"; - hash = "sha256-CqRSkwNqI/vdxPKrShBykh+eHQq9QIiItD6jWdZ/DSM="; + hash = "sha256-ivXa1S/HrXFzESsV0d9zIwQiuCOYNpa1tUrvA/b15yY="; }; nativeCheckInputs = [ fzf fd unixtools.script procps ]; diff --git a/pkgs/shells/fish/plugins/github-copilot-cli-fish.nix b/pkgs/shells/fish/plugins/github-copilot-cli-fish.nix index 83192ad092f..14b57b9a62c 100644 --- a/pkgs/shells/fish/plugins/github-copilot-cli-fish.nix +++ b/pkgs/shells/fish/plugins/github-copilot-cli-fish.nix @@ -2,13 +2,13 @@ buildFishPlugin rec { pname = "github-copilot-cli.fish"; - version = "0.1.33"; + version = "0.1.33.1"; src = fetchFromGitHub { owner = "z11i"; repo = pname; rev = version; - hash = "sha256-dhACPlFrw1Z0dW0eA0IMnOelYJc7Fyz2D9u+rL1pyiM="; + hash = "sha256-CFXbeO0euC/UtvQV0KCz4WQfdJgsuXKPM6M9oaw7hvg="; }; meta = with lib; { diff --git a/pkgs/shells/fish/plugins/tide.nix b/pkgs/shells/fish/plugins/tide.nix index 94cbfaa6b8f..39afd487afd 100644 --- a/pkgs/shells/fish/plugins/tide.nix +++ b/pkgs/shells/fish/plugins/tide.nix @@ -4,13 +4,13 @@ # Refer to the following comment to get you setup: https://github.com/NixOS/nixpkgs/pull/201646#issuecomment-1320893716 buildFishPlugin rec { pname = "tide"; - version = "5.6.0"; + version = "6.0.1"; src = fetchFromGitHub { owner = "IlanCosman"; repo = "tide"; rev = "v${version}"; - hash = "sha256-cCI1FDpvajt1vVPUd/WvsjX/6BJm6X1yFPjqohmo1rI="; + hash = "sha256-oLD7gYFCIeIzBeAW1j62z5FnzWAp3xSfxxe7kBtTLgA="; }; #buildFishplugin will only move the .fish files, but tide has a tide configure function diff --git a/pkgs/shells/fish/wrapper.nix b/pkgs/shells/fish/wrapper.nix index 75213809821..62ae03ec9ef 100644 --- a/pkgs/shells/fish/wrapper.nix +++ b/pkgs/shells/fish/wrapper.nix @@ -18,7 +18,7 @@ let name = "wrapfish.aliases.fish"; destination = "/share/fish/vendor_conf.d/aliases.fish"; text = '' - status --is-interactive; and begin + status is-interactive; and begin # Aliases ${aliasesStr} end diff --git a/pkgs/shells/hilbish/default.nix b/pkgs/shells/hilbish/default.nix index e558402543b..f5450e1da5c 100644 --- a/pkgs/shells/hilbish/default.nix +++ b/pkgs/shells/hilbish/default.nix @@ -35,7 +35,7 @@ buildGoModule rec { description = "An interactive Unix-like shell written in Go"; changelog = "https://github.com/Rosettea/Hilbish/releases/tag/v${version}"; homepage = "https://github.com/Rosettea/Hilbish"; - maintainers = with maintainers; [ fortuneteller2k ]; + maintainers = with maintainers; [ moni ]; license = licenses.mit; }; } diff --git a/pkgs/shells/hishtory/default.nix b/pkgs/shells/hishtory/default.nix index 818dd4b1128..1d5256e401a 100644 --- a/pkgs/shells/hishtory/default.nix +++ b/pkgs/shells/hishtory/default.nix @@ -5,16 +5,16 @@ buildGoModule rec { pname = "hishtory"; - version = "0.208"; + version = "0.215"; src = fetchFromGitHub { owner = "ddworken"; repo = pname; rev = "v${version}"; - hash = "sha256-TEto5lLH5nwqJ9PaYKrYCNW4/zrIICANQlGmqwDbOm4="; + hash = "sha256-XDxAzMQjtCfufWnEO5NXP8Zv823a85qYhkZcEZKxIXs="; }; - vendorHash = "sha256-FodgIELV5JbqP3h/mIDDYARZcols9ZEtVREW1853EOI="; + vendorHash = "sha256-aXHqPk8iBMbe0NlsY3ZR7iozBGCAKlOOQ23FAD/5hL8="; ldflags = [ "-X github.com/ddworken/hishtory/client/lib.Version=${version}" ]; diff --git a/pkgs/shells/loksh/default.nix b/pkgs/shells/loksh/default.nix index d646e91e286..39231e6e144 100644 --- a/pkgs/shells/loksh/default.nix +++ b/pkgs/shells/loksh/default.nix @@ -9,14 +9,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "loksh"; - version = "7.3"; + version = "7.4"; src = fetchFromGitHub { owner = "dimkr"; repo = finalAttrs.pname; rev = finalAttrs.version; fetchSubmodules = true; - sha256 = "sha256-djjJH+mknmOfleVJhSkCLqCIaELh2gjZZE/xdNZuPtY="; + sha256 = "sha256-gQK9gq6MsKVyOikOW0sW/SbIM1K/3I8pn58P/SqzKys="; }; nativeBuildInputs = [ diff --git a/pkgs/shells/murex/default.nix b/pkgs/shells/murex/default.nix index aa8ddafd403..81b585b28fd 100644 --- a/pkgs/shells/murex/default.nix +++ b/pkgs/shells/murex/default.nix @@ -5,13 +5,13 @@ buildGoModule rec { pname = "murex"; - version = "5.0.9310"; + version = "5.1.2210"; src = fetchFromGitHub { owner = "lmorg"; repo = pname; rev = "v${version}"; - sha256 = "sha256-gwaNz4OgYs5mAMi/HtLOXoIJA/iHPKX+eiVBP2l2YFU="; + sha256 = "sha256-N0sWTWZJT4hjivTreYfG5VkxiWgTjlH+/9VZD6YKQXY="; }; vendorHash = "sha256-PClKzvpztpry8xsYLfWB/9s/qI5k2m8qHBxkxY0AJqI="; diff --git a/pkgs/shells/nix-your-shell/default.nix b/pkgs/shells/nix-your-shell/default.nix index 87a3c063129..8b2c36daf12 100644 --- a/pkgs/shells/nix-your-shell/default.nix +++ b/pkgs/shells/nix-your-shell/default.nix @@ -17,6 +17,7 @@ rustPlatform.buildRustPackage rec { cargoSha256 = "sha256-4Z/z4VgnJQd8Uc0tMDnx7sChzXtG5ZDL88jTlhPSonM="; meta = with lib; { + mainProgram = "nix-your-shell"; description = "A `nix` and `nix-shell` wrapper for shells other than `bash`"; homepage = "https://github.com/MercuryTechnologies/nix-your-shell"; license = [ licenses.mit ]; diff --git a/pkgs/shells/nushell/default.nix b/pkgs/shells/nushell/default.nix index 34b8f9504f8..6d424d94a46 100644 --- a/pkgs/shells/nushell/default.nix +++ b/pkgs/shells/nushell/default.nix @@ -22,7 +22,7 @@ }: let - version = "0.85.0"; + version = "0.87.0"; in rustPlatform.buildRustPackage { @@ -33,10 +33,10 @@ rustPlatform.buildRustPackage { owner = "nushell"; repo = "nushell"; rev = version; - hash = "sha256-/c3JTgIT+T41D0S7irQ0jq2MDzmx3os4pYpVr10cL3E="; + hash = "sha256-anIkIVRsJW2f2hj/Bz9lcw1vFoWhGHAE/XgIvnxbJg8="; }; - cargoHash = "sha256-lBipwX72j0Af3PCat18s9NIjJiKZFZTcU9Utwt+eQzI="; + cargoHash = "sha256-vwOAYigKItd2T/ze5H26cMfIssoAnt0XFQtfA8exLyM="; nativeBuildInputs = [ pkg-config ] ++ lib.optionals (withDefaultFeatures && stdenv.isLinux) [ python3 ] diff --git a/pkgs/shells/nushell/nu_scripts/default.nix b/pkgs/shells/nushell/nu_scripts/default.nix index 0abe1d4abfe..4b8181e293c 100644 --- a/pkgs/shells/nushell/nu_scripts/default.nix +++ b/pkgs/shells/nushell/nu_scripts/default.nix @@ -6,13 +6,13 @@ stdenvNoCC.mkDerivation rec { pname = "nu_scripts"; - version = "unstable-2023-08-24"; + version = "unstable-2023-10-31"; src = fetchFromGitHub { owner = "nushell"; repo = pname; - rev = "36a45f28a39ee1526a748b53f438a41ae939fc7c"; - hash = "sha256-QhERyWomyOOk9aYRjm69ykzOR3G/uGM/A4Pr9PlB71w="; + rev = "c2bb125a6790bef1e448680e077345c4d10dcb12"; + hash = "sha256-Sug07QTL7fxxQAf9YOprMNEQSDqeXEk7qt1g2dP0Eqk="; }; installPhase = '' diff --git a/pkgs/shells/nushell/plugins/default.nix b/pkgs/shells/nushell/plugins/default.nix index 44b5b05a739..f4571d4da00 100644 --- a/pkgs/shells/nushell/plugins/default.nix +++ b/pkgs/shells/nushell/plugins/default.nix @@ -4,4 +4,6 @@ lib.makeScope newScope (self: with self; { gstat = callPackage ./gstat.nix { inherit Security; }; formats = callPackage ./formats.nix { inherit IOKit Foundation; }; query = callPackage ./query.nix { inherit IOKit CoreFoundation; }; + regex = callPackage ./regex.nix { inherit IOKit; }; + net = callPackage ./net.nix { inherit IOKit CoreFoundation; }; }) diff --git a/pkgs/shells/nushell/plugins/formats.nix b/pkgs/shells/nushell/plugins/formats.nix index 8c511782e3d..15c134018e6 100644 --- a/pkgs/shells/nushell/plugins/formats.nix +++ b/pkgs/shells/nushell/plugins/formats.nix @@ -5,25 +5,32 @@ , pkg-config , IOKit , Foundation +, nix-update-script }: -let +rustPlatform.buildRustPackage rec { pname = "nushell_plugin_formats"; -in -rustPlatform.buildRustPackage { - inherit pname; - version = "0.85.0"; - src = nushell.src; - cargoHash = "sha256-OKtktjBOujvljAX260TbC2sQWZOiGgU+sXsbYRhGPRM="; + inherit (nushell) version src; + cargoHash = "sha256-fpqXXgvTuRnU4NkJ/B4m3VTkeujE7sMWOma4KEvlxYw="; + nativeBuildInputs = [ pkg-config ]; - buildInputs = [ IOKit Foundation ]; + buildInputs = lib.optionals stdenv.isDarwin [ IOKit Foundation ]; cargoBuildFlags = [ "--package nu_plugin_formats" ]; - doCheck = false; + + checkPhase = '' + cargo test --manifest-path crates/nu_plugin_formats/Cargo.toml + ''; + + passthru.updateScript = nix-update-script { + # Skip the version check and only check the hash because we inherit version from nushell. + extraArgs = [ "--version=skip" ]; + }; + meta = with lib; { description = "A formats plugin for Nushell"; - homepage = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_formats"; + homepage = "https://github.com/nushell/nushell/tree/${version}/crates/nu_plugin_formats"; license = licenses.mpl20; - maintainers = with maintainers; [ viraptor ]; + maintainers = with maintainers; [ viraptor aidalgol ]; platforms = with platforms; all; }; } diff --git a/pkgs/shells/nushell/plugins/gstat.nix b/pkgs/shells/nushell/plugins/gstat.nix index f7e912a6fdc..10ab89368a8 100644 --- a/pkgs/shells/nushell/plugins/gstat.nix +++ b/pkgs/shells/nushell/plugins/gstat.nix @@ -5,25 +5,32 @@ , nushell , pkg-config , Security +, nix-update-script }: -let +rustPlatform.buildRustPackage rec { pname = "nushell_plugin_gstat"; -in -rustPlatform.buildRustPackage { - inherit pname; - version = "0.85.0"; - src = nushell.src; - cargoHash = "sha256-Fj70uKYzEKxeZeNrqlwM7ZFJ+K1tz10RqLndrdY40CE="; + inherit (nushell) version src; + cargoHash = "sha256-o/cOHlwo2TBlO+e6DBBKf5x6bgVGozVNMGRb2nCWPT4="; + nativeBuildInputs = [ pkg-config ]; buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ]; cargoBuildFlags = [ "--package nu_plugin_gstat" ]; - doCheck = false; # some tests fail + + checkPhase = '' + cargo test --manifest-path crates/nu_plugin_gstat/Cargo.toml + ''; + + passthru.updateScript = nix-update-script { + # Skip the version check and only check the hash because we inherit version from nushell. + extraArgs = [ "--version=skip" ]; + }; + meta = with lib; { description = "A git status plugin for Nushell"; - homepage = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_gstat"; + homepage = "https://github.com/nushell/nushell/tree/${version}/crates/nu_plugin_gstat"; license = licenses.mpl20; - maintainers = with maintainers; [ mrkkrp ]; + maintainers = with maintainers; [ mrkkrp aidalgol ]; platforms = with platforms; all; }; } diff --git a/pkgs/shells/nushell/plugins/net.nix b/pkgs/shells/nushell/plugins/net.nix new file mode 100644 index 00000000000..031fa30eb61 --- /dev/null +++ b/pkgs/shells/nushell/plugins/net.nix @@ -0,0 +1,41 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, stdenv +, IOKit +, CoreFoundation +, unstableGitUpdater +}: + +rustPlatform.buildRustPackage { + pname = "nu-plugin-net"; + version = "unstable-2023-10-24"; + + src = fetchFromGitHub { + owner = "fennewald"; + repo = "nu_plugin_net"; + rev = "8b63996ea2ff8bf282c9b0f5f6d01960cfe3d074"; + hash = "sha256-QFo2cMI41GDBsuPNay5MyVyY+HdrLjAWedz8kDNA3JY="; + }; + + cargoHash = "sha256-ekfUQOsaWdpDASnRzoYh5Y/p3BnP7rvSYCCWQ6DJDnE="; + + nativeBuildInputs = [ + rustPlatform.bindgenHook + ]; + + buildInputs = lib.optionals stdenv.isDarwin [ + CoreFoundation + IOKit + ]; + + passthru.updateScript = unstableGitUpdater { }; + + meta = with lib; { + description = "A nushell plugin to list system network interfaces"; + homepage = "https://github.com/fennewald/nu_plugin_net"; + license = licenses.mit; + maintainers = with maintainers; [ happysalada ]; + mainProgram = "nu-plugin-net"; + }; +} diff --git a/pkgs/shells/nushell/plugins/query.nix b/pkgs/shells/nushell/plugins/query.nix index 51db91bec26..72094adc2a7 100644 --- a/pkgs/shells/nushell/plugins/query.nix +++ b/pkgs/shells/nushell/plugins/query.nix @@ -9,28 +9,26 @@ rustPlatform.buildRustPackage { pname = "nushell_plugin_query"; - version = "0.85.0"; - - src = nushell.src; - - cargoHash = "sha256-8iUqOdGWm2kDW72ptlCBIqqe4zjckN09MOQD77kCf5Y="; + inherit (nushell) version src; + cargoHash = "sha256-seqr4FZHg/f/8iMwSurJRKr41pUbKKti6H2z/JfYkuU="; buildInputs = lib.optionals stdenv.isDarwin [ IOKit CoreFoundation ]; - cargoBuildFlags = [ "--package nu_plugin_query" ]; - # compilation fails with a missing symbol - doCheck = false; + checkPhase = '' + cargo test --manifest-path crates/nu_plugin_query/Cargo.toml + ''; - passthru = { - updateScript = nix-update-script { }; + passthru.updateScript = nix-update-script { + # Skip the version check and only check the hash because we inherit version from nushell. + extraArgs = [ "--version=skip" ]; }; meta = with lib; { description = "A Nushell plugin to query JSON, XML, and various web data"; - homepage = "https://github.com/nushell/nushell/tree/main/crates/nu_plugin_query"; + homepage = "https://github.com/nushell/nushell/tree/${version}/crates/nu_plugin_query"; license = licenses.mpl20; - maintainers = with maintainers; [ happysalada ]; + maintainers = with maintainers; [ happysalada aidalgol ]; platforms = with platforms; all; }; } diff --git a/pkgs/shells/nushell/plugins/regex.nix b/pkgs/shells/nushell/plugins/regex.nix new file mode 100644 index 00000000000..4689a839025 --- /dev/null +++ b/pkgs/shells/nushell/plugins/regex.nix @@ -0,0 +1,35 @@ +{ stdenv +, lib +, rustPlatform +, fetchFromGitHub +, nix-update-script +, IOKit +}: + +rustPlatform.buildRustPackage { + pname = "nushell_plugin_regex"; + version = "unstable-2023-10-08"; + + src = fetchFromGitHub { + owner = "fdncred"; + repo = "nu_plugin_regex"; + rev = "e1aa88e703f1f632ede685dd733472d34dd0c8e7"; + hash = "sha256-GJgnsaeNDJoJjw8RPw6wpEq1mIult18Eh4frl8Plgxc="; + }; + + cargoHash = "sha256-AACpzSavY6MlYnl1lDYxVlfsEvEpNK0u8SzsoSZbqFc="; + + buildInputs = lib.optionals stdenv.isDarwin [ IOKit ]; + + passthru = { + updateScript = nix-update-script { }; + }; + + meta = with lib; { + description = "A Nushell plugin to parse regular expressions"; + homepage = "https://github.com/fdncred/nu_plugin_regex"; + license = licenses.mit; + maintainers = with maintainers; [ aidalgol ]; + platforms = with platforms; all; + }; +} diff --git a/pkgs/shells/oh/default.nix b/pkgs/shells/oh/default.nix index 10bd86ba059..4504d6c8617 100644 --- a/pkgs/shells/oh/default.nix +++ b/pkgs/shells/oh/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "oh"; - version = "0.8.1"; + version = "0.8.3"; src = fetchFromGitHub { owner = "michaelmacinnis"; repo = pname; rev = "v${version}"; - sha256 = "sha256-DMxC5fv5ZLDv7gMajC/eyJd2YpO+OXFdvwAPYotnczw="; + sha256 = "sha256-ryIh6MRIOVZPm2USpJC69Z/upIXGUHgcd17eZBA9Edc="; }; - vendorHash = "sha256-f4rqXOu6yXUzNsseSaV9pb8c2KXItYOalB5pfH3Acnc="; + vendorHash = "sha256-Qma5Vk0JO/tTrZanvTCE40LmjeCfBup3U3N7gyhfp44="; meta = with lib; { homepage = "https://github.com/michaelmacinnis/oh"; diff --git a/pkgs/shells/oil/default.nix b/pkgs/shells/oil/default.nix index 1fe9fe7f664..fe4c2539684 100644 --- a/pkgs/shells/oil/default.nix +++ b/pkgs/shells/oil/default.nix @@ -7,11 +7,11 @@ let in stdenv.mkDerivation rec { pname = "oil"; - version = "0.17.0"; + version = "0.18.0"; src = fetchurl { url = "https://www.oilshell.org/download/oil-${version}.tar.xz"; - hash = "sha256-H7oWI3+660MhMdDTTPX11/YalnItzhxfdBrtwKR8xrM="; + hash = "sha256-ll4YmmP9A9EpnIyd4Pv8Ot8lrK/grsWzqgn6am9PIRE="; }; postPatch = '' diff --git a/pkgs/shells/powershell/default.nix b/pkgs/shells/powershell/default.nix index 2f7bc15c1b3..58485bc8c9a 100644 --- a/pkgs/shells/powershell/default.nix +++ b/pkgs/shells/powershell/default.nix @@ -1,89 +1,139 @@ -{ stdenv, lib, autoPatchelfHook, fetchurl, libunwind, libuuid, icu, curl -, darwin, makeWrapper, less, openssl, pam, lttng-ust }: - -let archString = if stdenv.isAarch64 then "arm64" - else if stdenv.isx86_64 then "x64" - else throw "unsupported platform"; - platformString = if stdenv.isDarwin then "osx" - else if stdenv.isLinux then "linux" - else throw "unsupported platform"; - platformHash = { - x86_64-darwin = "sha256-FX3OyVzwU+Ms2tgjpZ4dPdjeJx2H5541dQZAjhI3n1U="; - aarch64-darwin = "sha256-Dg7FRF5inRnzP6tjDhIgHTJ1J2EQXnegqimZPK574WQ="; - x86_64-linux = "sha256-6F1VROE6kk+LLEpdwtQ6vkbkZjP4no0TjTnAqurLmXY="; - aarch64-linux = "sha256-NO4E2TOUIYyUFJmi3zKJzOyP0/rTPTZgJZcebVNkSfk="; - }.${stdenv.hostPlatform.system} or (throw "unsupported platform"); - platformLdLibraryPath = if stdenv.isDarwin then "DYLD_FALLBACK_LIBRARY_PATH" - else if stdenv.isLinux then "LD_LIBRARY_PATH" - else throw "unsupported platform"; - libraries = [ libunwind libuuid icu curl openssl ] ++ - (if stdenv.isLinux then [ pam lttng-ust ] else [ darwin.Libsystem ]); +{ 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.3.4"; + version = "7.3.9"; - src = fetchurl { - url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-${platformString}-${archString}.tar.gz"; - hash = platformHash; - }; + src = passthru.sources.${stdenv.hostPlatform.system} + or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); sourceRoot = "."; strictDeps = true; - buildInputs = [ less ] ++ libraries; - nativeBuildInputs = [ makeWrapper ] - ++ lib.optional stdenv.isLinux autoPatchelfHook; - installPhase = - let - ext = stdenv.hostPlatform.extensions.sharedLibrary; - in '' - pslibs=$out/share/powershell - mkdir -p $pslibs + 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 + ]; - cp -r * $pslibs + installPhase = '' + runHook preInstall - # At least the 7.1.4-osx package does not have the executable bit set. - chmod a+x $pslibs/pwsh + 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 && stdenv.isx86_64) '' - patchelf --replace-needed libcrypto${ext}.1.0.0 libcrypto${ext} $pslibs/libmi.so - patchelf --replace-needed libssl${ext}.1.0.0 libssl${ext} $pslibs/libmi.so - '' + lib.optionalString stdenv.isLinux '' - patchelf --replace-needed liblttng-ust${ext}.0 liblttng-ust${ext}.1 $pslibs/libcoreclrtraceptprovider.so - '' + '' + patchelf --replace-needed libcrypto${ext}.1.0.0 libcrypto${ext} $out/share/powershell/libmi.so + patchelf --replace-needed libssl${ext}.1.0.0 libssl${ext} $out/share/powershell/libmi.so - mkdir -p $out/bin + '' + lib.optionalString stdenv.isLinux '' + patchelf --replace-needed liblttng-ust${ext}.0 liblttng-ust${ext}.1 $out/share/powershell/libcoreclrtraceptprovider.so - makeWrapper $pslibs/pwsh $out/bin/pwsh \ - --prefix ${platformLdLibraryPath} : "${lib.makeLibraryPath libraries}" \ - --set TERM xterm --set POWERSHELL_TELEMETRY_OPTOUT 1 --set DOTNET_CLI_TELEMETRY_OPTOUT 1 + '' + '' + runHook postInstall ''; dontStrip = true; - doInstallCheck = true; - installCheckPhase = '' - # May need a writable home, seen on Darwin. - HOME=$TMP $out/bin/pwsh --help > /dev/null - ''; + 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-g63hMkJUIYFpSl9NylCQs0WYdq/8S3UaFVtRjhZOs+s="; + }; + aarch64-linux = fetchurl { + url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-linux-arm64.tar.gz"; + hash = "sha256-zy6VZyXj9TV5QlVFnCgiB6XfIOyS79kPOFhvMRpOrP4="; + }; + x86_64-darwin = fetchurl { + url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-osx-x64.tar.gz"; + hash = "sha256-DI+m3Ik1Zw293H6VR19DNAECBApqdIENlrK2/D/3vNc="; + }; + x86_64-linux = fetchurl { + url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-linux-x64.tar.gz"; + hash = "sha256-eHlh46eV+g3eCiKalVGixwKY9mlk2lXRwUJF6By5lP0="; + }; + }; + 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" "0" "${lib.fakeHash}" --source-key="sources.$platform" + update-source-version "powershell" "$NEW_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://github.com/PowerShell/PowerShell"; + homepage = "https://microsoft.com/PowerShell"; + license = licenses.mit; + mainProgram = "pwsh"; + maintainers = with maintainers; [ wegank ]; + platforms = builtins.attrNames passthru.sources; sourceProvenance = with sourceTypes; [ binaryBytecode binaryNativeCode ]; - maintainers = with maintainers; [ yrashk srgom p3psi ]; - mainProgram = "pwsh"; - platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" "aarch64-darwin" ]; - license = with licenses; [ mit ]; }; - - passthru = { - shellPath = "/bin/pwsh"; - }; - } diff --git a/pkgs/shells/powershell/getHashes.sh b/pkgs/shells/powershell/getHashes.sh deleted file mode 100755 index 785ab264ebc..00000000000 --- a/pkgs/shells/powershell/getHashes.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -i bash -p bash wget coreutils nix -version=$1 - -if [[ -z $version ]] -then - echo "Pass the version to get hashes for as an argument" - exit 1 -fi - -allOutput="" - -dlDest=$(mktemp) - -trap 'rm $dlDest' EXIT - -for plat in osx linux; do - for arch in x64 arm64; do - - URL="https://github.com/PowerShell/PowerShell/releases/download/v$version/powershell-$version-$plat-$arch.tar.gz" - wget $URL -O $dlDest >&2 - - hash=$(nix hash file $dlDest) - - allOutput+=" -variant: $plat $arch -hash: $hash -" - - done -done - -echo "$allOutput" diff --git a/pkgs/shells/zsh/agdsn-zsh-config/default.nix b/pkgs/shells/zsh/agdsn-zsh-config/default.nix index 248cd8e2f0d..6efbb285f29 100644 --- a/pkgs/shells/zsh/agdsn-zsh-config/default.nix +++ b/pkgs/shells/zsh/agdsn-zsh-config/default.nix @@ -2,13 +2,13 @@ stdenvNoCC.mkDerivation rec { pname = "agdsn-zsh-config"; - version = "0.7.1"; + version = "0.8.0"; src = fetchFromGitHub { owner = "agdsn"; repo = "agdsn-zsh-config"; rev = "v${version}"; - sha256 = "sha256-79bD3YQcpNTKYvEoKu22gqOKvNH7eZPGS/iU+/4IbAU="; + sha256 = "sha256-kbpiA+aI3mXQAanmTyZo2rJNOKX77FKjpVsQywyyq90="; }; dontBuild = true; diff --git a/pkgs/shells/zsh/agkozak-zsh-prompt/default.nix b/pkgs/shells/zsh/agkozak-zsh-prompt/default.nix index 5f9573b71aa..fa4d9f4cf47 100644 --- a/pkgs/shells/zsh/agkozak-zsh-prompt/default.nix +++ b/pkgs/shells/zsh/agkozak-zsh-prompt/default.nix @@ -2,13 +2,13 @@ stdenvNoCC.mkDerivation rec { pname = "agkozak-zsh-prompt"; - version = "3.11.1"; + version = "3.11.2"; src = fetchFromGitHub { owner = "agkozak"; repo = "agkozak-zsh-prompt"; rev = "v${version}"; - sha256 = "sha256-TOfAWxw1uIV0hKV9o4EJjOlp+jmGWCONDex86ipegOY="; + sha256 = "sha256-QDUI9EYflITttkX9Khij62ybBMYJwPfayqj+wr495mM="; }; strictDeps = true; diff --git a/pkgs/shells/zsh/antidote/default.nix b/pkgs/shells/zsh/antidote/default.nix index a1bb818f6d8..3506f0853f5 100644 --- a/pkgs/shells/zsh/antidote/default.nix +++ b/pkgs/shells/zsh/antidote/default.nix @@ -1,14 +1,14 @@ { lib, stdenv, fetchFromGitHub }: stdenv.mkDerivation (finalAttrs: { - version = "1.9.1"; + version = "1.9.2"; pname = "antidote"; src = fetchFromGitHub { owner = "mattmc3"; repo = "antidote"; rev = "v${finalAttrs.version}"; - hash = "sha256-wRLMjaBpzttQ6MUgl1AFC2SRlEEwjASdEnguGlP+XgU="; + hash = "sha256-h+Gay1InnOY6tc8Iir5QzCC7FQj9cVWSn5YViEAHraU="; }; dontPatch = true; diff --git a/pkgs/shells/zsh/default.nix b/pkgs/shells/zsh/default.nix index 4a05ee9ead5..5af94223ec8 100644 --- a/pkgs/shells/zsh/default.nix +++ b/pkgs/shells/zsh/default.nix @@ -11,7 +11,9 @@ , ncurses , pcre , pkg-config -, buildPackages }: +, buildPackages +, nixosTests +}: let version = "5.9"; @@ -143,5 +145,8 @@ EOF passthru = { shellPath = "/bin/zsh"; + tests = { + inherit (nixosTests) zsh-history oh-my-zsh; + }; }; } diff --git a/pkgs/shells/zsh/fzf-zsh/default.nix b/pkgs/shells/zsh/fzf-zsh/default.nix index aa5af013e43..40c4edaff86 100644 --- a/pkgs/shells/zsh/fzf-zsh/default.nix +++ b/pkgs/shells/zsh/fzf-zsh/default.nix @@ -32,7 +32,7 @@ stdenv.mkDerivation rec { homepage = "https://github.com/wyntau/fzf-zsh"; description = "wrap fzf to use in oh-my-zsh"; license = licenses.mit; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; platforms = platforms.unix; }; } diff --git a/pkgs/shells/zsh/lambda-mod-zsh-theme/default.nix b/pkgs/shells/zsh/lambda-mod-zsh-theme/default.nix index eae5f77904b..f64f96a60aa 100644 --- a/pkgs/shells/zsh/lambda-mod-zsh-theme/default.nix +++ b/pkgs/shells/zsh/lambda-mod-zsh-theme/default.nix @@ -21,6 +21,6 @@ stdenv.mkDerivation { homepage = "https://github.com/halfo/lambda-mod-zsh-theme/"; license = licenses.mit; platforms = platforms.all; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/shells/zsh/spaceship-prompt/default.nix b/pkgs/shells/zsh/spaceship-prompt/default.nix index 41935f75bdd..5dc50c558ac 100644 --- a/pkgs/shells/zsh/spaceship-prompt/default.nix +++ b/pkgs/shells/zsh/spaceship-prompt/default.nix @@ -2,13 +2,13 @@ stdenvNoCC.mkDerivation rec { pname = "spaceship-prompt"; - version = "4.14.0"; + version = "4.14.1"; src = fetchFromGitHub { owner = "denysdovhan"; repo = pname; rev = "v${version}"; - sha256 = "sha256-aoifMAjJvv1WAlINNkMwCCop6znxyivoD3vQDo/ZbfQ="; + sha256 = "sha256-dl8Ao9Sg+wbFpp6LfWD6isEKou75UzfJkTjZrue4A0A="; }; strictDeps = true; @@ -35,6 +35,6 @@ stdenvNoCC.mkDerivation rec { changelog = "https://github.com/spaceship-prompt/spaceship-prompt/releases/tag/v${version}"; license = licenses.mit; platforms = platforms.unix; - maintainers = with maintainers; [ nyanloutre fortuneteller2k kyleondy ]; + maintainers = with maintainers; [ nyanloutre moni kyleondy ]; }; } diff --git a/pkgs/shells/zsh/zsh-abbr/default.nix b/pkgs/shells/zsh/zsh-abbr/default.nix index 9a8f9f9b559..27b9e02dc93 100644 --- a/pkgs/shells/zsh/zsh-abbr/default.nix +++ b/pkgs/shells/zsh/zsh-abbr/default.nix @@ -5,13 +5,13 @@ }: stdenv.mkDerivation rec { pname = "zsh-abbr"; - version = "5.1.0"; + version = "5.2.0"; src = fetchFromGitHub { owner = "olets"; repo = "zsh-abbr"; rev = "v${version}"; - hash = "sha256-iKL2vn7TmQr78y0Bn02DgNf9DS5jZyh6uK9MzYTFZaA"; + hash = "sha256-MvxJkEbJKMmYRku/RF6ayOb7u7NI4HZehO8ty64jEnE="; }; strictDeps = true; diff --git a/pkgs/shells/zsh/zsh-f-sy-h/default.nix b/pkgs/shells/zsh/zsh-f-sy-h/default.nix new file mode 100644 index 00000000000..0e18eaa9583 --- /dev/null +++ b/pkgs/shells/zsh/zsh-f-sy-h/default.nix @@ -0,0 +1,32 @@ +{ stdenvNoCC, lib, fetchFromGitHub }: + +stdenvNoCC.mkDerivation rec { + pname = "zsh-f-sy-h"; + version = "1.67"; + + src = fetchFromGitHub { + owner = "z-shell"; + repo = "F-Sy-H"; + rev = "v${version}"; + sha256 = "0bcsc4kgda577fs3bnvymmxdz3z5mf19pn8ngfqsklabnf79f5nf"; + }; + + strictDeps = true; + dontConfigure = true; + dontBuild = true; + + installPhase = '' + plugindir="$out/share/zsh/site-functions" + + mkdir -p "$plugindir" + cp -r -- F-Sy-H.plugin.zsh chroma functions share themes "$plugindir"/ + ''; + + meta = with lib; { + description = "Feature-rich Syntax Highlighting for Zsh"; + homepage = "https://github.com/z-shell/F-Sy-H"; + license = licenses.bsd3; + maintainers = with maintainers; [ mrfreezeex ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/shells/zsh/zsh-prezto/default.nix b/pkgs/shells/zsh/zsh-prezto/default.nix index 7c7ba87d848..1565fb8b16f 100644 --- a/pkgs/shells/zsh/zsh-prezto/default.nix +++ b/pkgs/shells/zsh/zsh-prezto/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "zsh-prezto"; - version = "unstable-2023-09-12"; + version = "unstable-2023-11-08"; src = fetchFromGitHub { owner = "sorin-ionescu"; repo = "prezto"; - rev = "5ac930d96be3a51730f7d9d7330f28d9c9c36e0a"; - sha256 = "tyroeGADhBRCQ9/WqNSqMV7kvFUPdC2fcs/B5G5qYhI="; + rev = "f04191aa8ae475cf71f491830d424226d84501c9"; + sha256 = "7cdtDKNyTSUn3Fo6BO3f0SMBgOQs4/5SnHXB7JtAdkA="; fetchSubmodules = true; }; diff --git a/pkgs/shells/zsh/zsh-you-should-use/default.nix b/pkgs/shells/zsh/zsh-you-should-use/default.nix index 95cdb3273c5..b3db825bbba 100644 --- a/pkgs/shells/zsh/zsh-you-should-use/default.nix +++ b/pkgs/shells/zsh/zsh-you-should-use/default.nix @@ -22,6 +22,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/MichaelAquilina/zsh-you-should-use"; license = licenses.gpl3; description = "ZSH plugin that reminds you to use existing aliases for commands you just typed"; - maintainers = with maintainers; [ ma27 ]; + maintainers = with maintainers; [ ]; }; } |