uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead

https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948
this can do it nicely.

Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
Anton Arapov 2021-04-03 12:58:10 +02:00 committed by Alan Daniels
commit 56de2bcd43
30691 changed files with 3076956 additions and 0 deletions

View file

@ -0,0 +1,32 @@
{ stdenvNoCC, lib, fetchFromGitHub }:
stdenvNoCC.mkDerivation rec {
pname = "agkozak-zsh-prompt";
version = "3.11.1";
src = fetchFromGitHub {
owner = "agkozak";
repo = "agkozak-zsh-prompt";
rev = "v${version}";
sha256 = "sha256-TOfAWxw1uIV0hKV9o4EJjOlp+jmGWCONDex86ipegOY=";
};
strictDeps = true;
dontConfigure = true;
dontBuild = true;
installPhase = ''
plugindir="$out/share/zsh/site-functions"
mkdir -p "$plugindir"
cp -r -- lib/*.zsh agkozak-zsh-prompt.plugin.zsh prompt_agkozak-zsh-prompt_setup "$plugindir"/
'';
meta = with lib; {
description = "A fast, asynchronous Zsh prompt";
homepage = "https://github.com/agkozak/agkozak-zsh-prompt";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ ambroisie ];
};
}

View file

@ -0,0 +1,26 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "antibody";
version = "6.1.1";
src = fetchFromGitHub {
owner = "getantibody";
repo = "antibody";
rev = "v${version}";
sha256 = "0icag53svzdm7yvzp855fp0f7q0g0jkfmjaa1sj6mmb01c1xgzi1";
};
vendorSha256 = "0z8fma3v2dph8nv3q4lmv43s6p5sc338xb7kcmnpwcc0iw7b4vyj";
doCheck = false;
ldflags = [ "-s" "-w" "-X main.version=${version}" ];
meta = with lib; {
description = "The fastest shell plugin manager";
homepage = "https://github.com/getantibody/antibody";
license = licenses.mit;
maintainers = with maintainers; [ Br1ght0ne ];
};
}

View file

@ -0,0 +1,26 @@
{ lib, stdenv, fetchurl }:
stdenv.mkDerivation rec {
version = "2.2.3";
pname = "antigen";
src = fetchurl {
url = "https://github.com/zsh-users/antigen/releases/download/v${version}/antigen.zsh";
sha256 = "1bmp3qf14509swpxin4j9f98n05pdilzapjm0jdzbv0dy3hn20ix";
};
strictDeps = true;
dontUnpack = true;
installPhase = ''
outdir=$out/share/antigen
mkdir -p $outdir
cp $src $outdir/antigen.zsh
'';
meta = {
description = "The plugin manager for zsh";
homepage = "https://antigen.sharats.me/";
license = lib.licenses.mit;
};
}

109
pkgs/shells/zsh/default.nix Normal file
View file

@ -0,0 +1,109 @@
{ lib
, stdenv
, fetchurl
, fetchpatch
, autoreconfHook
, yodl
, perl
, groff
, util-linux
, texinfo
, ncurses
, pcre
, buildPackages }:
let
version = "5.9";
in
stdenv.mkDerivation {
pname = "zsh";
inherit version;
src = fetchurl {
url = "mirror://sourceforge/zsh/zsh-${version}.tar.xz";
sha256 = "sha256-m40ezt1bXoH78ZGOh2dSp92UjgXBoNuhCrhjhC1FrNU=";
};
patches = [
# fix location of timezone data for TZ= completion
./tz_completion.patch
];
strictDeps = true;
nativeBuildInputs = [ autoreconfHook perl groff texinfo pcre]
++ lib.optionals stdenv.isLinux [ util-linux yodl ];
buildInputs = [ ncurses pcre ];
configureFlags = [
"--enable-maildir-support"
"--enable-multibyte"
"--with-tcsetpgrp"
"--enable-pcre"
"--enable-zprofile=${placeholder "out"}/etc/zprofile"
"--disable-site-fndir"
];
# the zsh/zpty module is not available on hydra
# so skip groups Y Z
checkFlags = map (T: "TESTNUM=${T}") (lib.stringToCharacters "ABCDEVW");
# XXX: think/discuss about this, also with respect to nixos vs nix-on-X
postInstall = lib.optionalString stdenv.isLinux ''
make install.info install.html
'' + ''
mkdir -p $out/etc/
cat > $out/etc/zprofile <<EOF
if test -e /etc/NIXOS; then
if test -r /etc/zprofile; then
. /etc/zprofile
else
emulate bash
alias shopt=false
. /etc/profile
unalias shopt
emulate zsh
fi
if test -r /etc/zprofile.local; then
. /etc/zprofile.local
fi
else
# on non-nixos we just source the global /etc/zprofile as if we did
# not use the configure flag
if test -r /etc/zprofile; then
. /etc/zprofile
fi
fi
EOF
${if stdenv.hostPlatform == stdenv.buildPlatform then ''
$out/bin/zsh -c "zcompile $out/etc/zprofile"
'' else ''
${lib.getBin buildPackages.zsh}/bin/zsh -c "zcompile $out/etc/zprofile"
''}
mv $out/etc/zprofile $out/etc/zprofile_zwc_is_used
rm $out/bin/zsh-${version}
'';
# XXX: patch zsh to take zwc if newer _or equal_
meta = {
description = "The Z shell";
longDescription = ''
Zsh is a UNIX command interpreter (shell) usable as an interactive login
shell and as a shell script command processor. Of the standard shells,
zsh most closely resembles ksh but includes many enhancements. Zsh has
command line editing, builtin spelling correction, programmable command
completion, shell functions (with autoloading), a history mechanism, and
a host of other features.
'';
license = "MIT-like";
homepage = "https://www.zsh.org/";
maintainers = with lib.maintainers; [ pSub artturin ];
platforms = lib.platforms.unix;
};
passthru = {
shellPath = "/bin/zsh";
};
}

View file

@ -0,0 +1,38 @@
{ lib, stdenv, fetchFromGitHub, fzf }:
stdenv.mkDerivation rec {
pname = "fzf-zsh-unstable";
version = "2019-09-09";
src = fetchFromGitHub {
owner = "Wyntau";
repo = "fzf-zsh";
rev = "829d7e40cc437dce8a6e234e259bbd4065e87124";
sha256 = "1irjmxhcg1fm4g8p3psjqk7sz5qhj5kw73pyhv91njvpdhn9l26z";
};
strictDeps = true;
postPatch = ''
substituteInPlace fzf-zsh.plugin.zsh \
--replace \
'fzf_path="$( cd "$fzf_zsh_path/../fzf/" && pwd )"' \
"fzf_path=${fzf}" \
--replace \
'$fzf_path/shell' \
'${fzf}/share/fzf'
'';
dontBuild = true;
installPhase = ''
install -Dm0644 fzf-zsh.plugin.zsh $out/share/zsh/plugins/fzf-zsh/fzf-zsh.plugin.zsh
'';
meta = with lib; {
homepage = "https://github.com/wyntau/fzf-zsh";
description = "wrap fzf to use in oh-my-zsh";
license = licenses.mit;
maintainers = with maintainers; [ ma27 ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,37 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "gradle-completion";
version = "1.4.1";
src = fetchFromGitHub {
owner = "gradle";
repo = "gradle-completion";
rev = "v${version}";
sha256 = "15b0692i3h8h7b95465b2aw9qf5qjmjag5n62347l8yl7zbhv3l2";
};
strictDeps = true;
# we just move two files into $out,
# this shouldn't bother Hydra.
preferLocalBuild = true;
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out
install -Dm0644 ./_gradle $out/share/zsh/site-functions/_gradle
install -Dm0644 ./gradle-completion.bash $out/share/bash-completion/completions/gradle
runHook postInstall
'';
meta = with lib; {
description = "Gradle tab completion for bash and zsh";
homepage = "https://github.com/gradle/gradle-completion";
license = licenses.mit;
maintainers = with maintainers; [ ];
};
}

View file

@ -0,0 +1,43 @@
{ stdenv, fetchFromGitHub, lib
, zsh, coreutils, inetutils, procps, txt2tags }:
with lib;
stdenv.mkDerivation rec {
pname = "grml-zsh-config";
version = "0.19.2";
src = fetchFromGitHub {
owner = "grml";
repo = "grml-etc-core";
rev = "v${version}";
sha256 = "sha256-9BknWrYgLv9xx9TlVAJxRzVUmbz5v6f7swPDsE4P6WY=";
};
strictDeps = true;
nativeBuildInputs = [ txt2tags ];
buildInputs = [ zsh coreutils procps ]
++ optional stdenv.isLinux inetutils;
buildPhase = ''
cd doc
make
cd ..
'';
installPhase = ''
install -D -m644 etc/zsh/keephack $out/etc/zsh/keephack
install -D -m644 etc/zsh/zshrc $out/etc/zsh/zshrc
install -D -m644 doc/grmlzshrc.5 $out/share/man/man5/grmlzshrc.5
ln -s grmlzshrc.5.gz $out/share/man/man5/grml-zsh-config.5.gz
'';
meta = with lib; {
description = "grml's zsh setup";
homepage = "https://grml.org/zsh/";
license = licenses.gpl2;
platforms = platforms.unix;
maintainers = with maintainers; [ msteen rvolosatovs ];
};
}

View file

@ -0,0 +1,26 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation {
pname = "lambda-mod-zsh-theme-unstable";
version = "2020-10-03";
src = fetchFromGitHub {
owner = "halfo";
repo = "lambda-mod-zsh-theme";
rev = "78347ea9709935f265e558b6345919d12323fbff";
sha256 = "0fvxnvgbcvwii7ghvpj5l43frllq71wwjvfg7cqfmic727z001dh";
};
strictDeps = true;
installPhase = ''
install -Dm0644 lambda-mod.zsh-theme $out/share/zsh/themes/lambda-mod.zsh-theme
'';
meta = with lib; {
description = "A ZSH theme optimized for people who use Git & Unicode-compatible fonts and terminals";
homepage = "https://github.com/halfo/lambda-mod-zsh-theme/";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ ma27 ];
};
}

View file

@ -0,0 +1,29 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "nix-zsh-completions";
version = "0.4.4";
src = fetchFromGitHub {
owner = "spwhitt";
repo = "nix-zsh-completions";
rev = version;
sha256 = "1n9whlys95k4wc57cnz3n07p7zpkv796qkmn68a50ygkx6h3afqf";
};
strictDeps = true;
installPhase = ''
mkdir -p $out/share/zsh/{site-functions,plugins/nix}
cp _* $out/share/zsh/site-functions
cp *.zsh $out/share/zsh/plugins/nix
'';
meta = with lib; {
homepage = "https://github.com/spwhitt/nix-zsh-completions";
description = "ZSH completions for Nix, NixOS, and NixOps";
priority = 6; # prevent collisions with nix 2.4's built-in completions
license = licenses.bsd3;
platforms = platforms.all;
maintainers = with maintainers; [ spwhitt olejorgenb hedning ma27 ];
};
}

View file

@ -0,0 +1,127 @@
# This script was inspired by the ArchLinux User Repository package:
#
# https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=oh-my-zsh-git
{ lib, stdenv, fetchFromGitHub, nixosTests, writeScript, common-updater-scripts
, git, nix, nixfmt, jq, coreutils, gnused, curl, cacert, bash }:
stdenv.mkDerivation rec {
version = "2022-06-06";
pname = "oh-my-zsh";
rev = "d41ca84af1271e8bfbe26f581cebe3b86521d0db";
src = fetchFromGitHub {
inherit rev;
owner = "ohmyzsh";
repo = "ohmyzsh";
sha256 = "87jAe5cEPj6e1raovj8sD4LZB1sfrSZkCleW8of2HP8=";
};
strictDeps = true;
buildInputs = [ bash ];
installPhase = ''
runHook preInstall
outdir=$out/share/oh-my-zsh
template=templates/zshrc.zsh-template
mkdir -p $outdir
cp -r * $outdir
cd $outdir
rm LICENSE.txt
rm -rf .git*
chmod -R +w templates
# Change the path to oh-my-zsh dir and disable auto-updating.
sed -i -e "s#ZSH=\$HOME/.oh-my-zsh#ZSH=$outdir#" \
-e 's/\# \(DISABLE_AUTO_UPDATE="true"\)/\1/' \
$template
chmod +w oh-my-zsh.sh
# Both functions expect oh-my-zsh to be in ~/.oh-my-zsh and try to
# modify the directory.
cat >> oh-my-zsh.sh <<- EOF
# Undefine functions that don't work on Nix.
unfunction uninstall_oh_my_zsh
unfunction upgrade_oh_my_zsh
EOF
# Look for .zsh_variables, .zsh_aliases, and .zsh_funcs, and source
# them, if found.
cat >> $template <<- EOF
# Load the variables.
if [ -f ~/.zsh_variables ]; then
. ~/.zsh_variables
fi
# Load the functions.
if [ -f ~/.zsh_funcs ]; then
. ~/.zsh_funcs
fi
# Load the aliases.
if [ -f ~/.zsh_aliases ]; then
. ~/.zsh_aliases
fi
EOF
runHook postInstall
'';
passthru = {
tests = { inherit (nixosTests) oh-my-zsh; };
updateScript = writeScript "update.sh" ''
#!${stdenv.shell}
set -o errexit
PATH=${
lib.makeBinPath [
common-updater-scripts
curl
cacert
git
nixfmt
nix
jq
coreutils
gnused
]
}
oldVersion="$(nix-instantiate --eval -E "with import ./. {}; lib.getVersion oh-my-zsh" | tr -d '"')"
latestSha="$(curl -L -s https://api.github.com/repos/ohmyzsh/ohmyzsh/commits\?sha\=master\&since\=$oldVersion | jq -r '.[0].sha')"
if [ ! "null" = "$latestSha" ]; then
nixpkgs="$(git rev-parse --show-toplevel)"
default_nix="$nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix"
latestDate="$(curl -L -s https://api.github.com/repos/ohmyzsh/ohmyzsh/commits/$latestSha | jq '.commit.committer.date' | sed 's|"\(.*\)T.*|\1|g')"
update-source-version oh-my-zsh "$latestSha" --version-key=rev
update-source-version oh-my-zsh "$latestDate" --ignore-same-hash
nixfmt "$default_nix"
else
echo "${pname} is already up-to-date"
fi
'';
};
meta = with lib; {
description = "A framework for managing your zsh configuration";
longDescription = ''
Oh My Zsh is a framework for managing your zsh configuration.
To copy the Oh My Zsh configuration file to your home directory, run
the following command:
$ cp -v $(nix-env -q --out-path oh-my-zsh | cut -d' ' -f3)/share/oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
'';
homepage = "https://ohmyz.sh/";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ nequissimus ];
};
}

View file

@ -0,0 +1,31 @@
{ lib, stdenv, fetchFromGitHub }:
with lib;
stdenv.mkDerivation rec {
pname = "pure-prompt";
version = "1.20.1";
src = fetchFromGitHub {
owner = "sindresorhus";
repo = "pure";
rev = "v${version}";
sha256 = "sha256-iuLi0o++e0PqK81AKWfIbCV0CTIxq2Oki6U2oEYsr68=";
};
strictDeps = true;
installPhase = ''
OUTDIR="$out/share/zsh/site-functions"
mkdir -p "$OUTDIR"
cp pure.zsh "$OUTDIR/prompt_pure_setup"
cp async.zsh "$OUTDIR/async"
'';
meta = {
description = "Pretty, minimal and fast ZSH prompt";
homepage = "https://github.com/sindresorhus/pure";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ pacien pablovsky ];
};
}

View file

@ -0,0 +1,39 @@
{ lib, stdenvNoCC, fetchFromGitHub }:
stdenvNoCC.mkDerivation rec {
pname = "spaceship-prompt";
version = "3.16.4";
src = fetchFromGitHub {
owner = "denysdovhan";
repo = pname;
rev = "v${version}";
sha256 = "sha256-4G1+K6ENLwChtivR7Ura0vl6Ph9Wae3SOXCW1pNbgHI=";
};
strictDeps = true;
dontBuild = true;
installPhase = ''
install -Dm644 LICENSE.md "$out/share/licenses/spaceship-prompt/LICENSE"
install -Dm644 README.md "$out/share/doc/spaceship-prompt/README.md"
find docs -type f -exec install -Dm644 {} "$out/share/doc/spaceship-prompt/{}" \;
find lib -type f -exec install -Dm644 {} "$out/lib/spaceship-prompt/{}" \;
find scripts -type f -exec install -Dm644 {} "$out/lib/spaceship-prompt/{}" \;
find sections -type f -exec install -Dm644 {} "$out/lib/spaceship-prompt/{}" \;
install -Dm644 spaceship.zsh "$out/lib/spaceship-prompt/spaceship.zsh"
install -d "$out/share/zsh/themes/"
ln -s "$out/lib/spaceship-prompt/spaceship.zsh" "$out/share/zsh/themes/spaceship.zsh-theme"
install -d "$out/share/zsh/site-functions/"
ln -s "$out/lib/spaceship-prompt/spaceship.zsh" "$out/share/zsh/site-functions/prompt_spaceship_setup"
'';
meta = with lib; {
description = "Zsh prompt for Astronauts";
homepage = "https://github.com/denysdovhan/spaceship-prompt/";
changelog = "https://github.com/spaceship-prompt/spaceship-prompt/releases/tag/v${version}";
license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ nyanloutre fortuneteller2k ];
};
}

View file

@ -0,0 +1,14 @@
On NixOS, timezone data is located at /etc/zoneinfo
diff --git a/Completion/Unix/Type/_time_zone b/Completion/Unix/Type/_time_zone
index cd924bbc7..5d683291b 100644
--- a/Completion/Unix/Type/_time_zone
+++ b/Completion/Unix/Type/_time_zone
@@ -3,7 +3,7 @@
local expl
if (( ! $+_zoneinfo_dirs )); then
- _zoneinfo_dirs=( /usr/{share,lib,share/lib}/{zoneinfo*,locale/TZ}(/) )
+ _zoneinfo_dirs=( /etc/zoneinfo /usr/{share,lib,share/lib}/{zoneinfo*,locale/TZ}(/) )
fi
_wanted time-zones expl 'time zone' _files -W _zoneinfo_dirs "$@" -

View file

@ -0,0 +1,43 @@
{ stdenvNoCC, lib, fetchFromGitHub, installShellFiles }:
stdenvNoCC.mkDerivation rec {
pname = "zinit";
version = "3.7";
src = fetchFromGitHub {
owner = "zdharma-continuum";
repo = pname;
rev = "v${version}";
hash = "sha256-B+cTGz+U8MR22l6xXdRAAjDr+ulCk+CJ9GllFMK0axE=";
};
# adapted from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zsh-zplugin-git
dontBuild = true;
strictDeps = true;
nativeBuildInputs = [ installShellFiles ];
installPhase = ''
outdir="$out/share/$pname"
cd "$src"
# Zplugin's source files
install -dm0755 "$outdir"
# Installing also backward compatibility layer
install -m0644 z{plugin,init}{,-side,-install,-autoload}.zsh "$outdir"
install -m0755 git-process-output.zsh "$outdir"
# Zplugin autocompletion
installShellCompletion --zsh _zinit
#TODO:Zplugin-module files
# find zmodules/ -type d -exec install -dm 755 "{}" "$outdir/{}" \;
# find zmodules/ -type f -exec install -m 744 "{}" "$outdir/{}" \;
'';
#TODO:doc output
meta = with lib; {
homepage = "https://github.com/zdharma-continuum/zinit";
description = "Flexible zsh plugin manager";
license = licenses.mit;
maintainers = with maintainers; [ pasqui23 sei40kr ];
};
}

View file

@ -0,0 +1,32 @@
{ stdenv, lib, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "zplug";
version = "2.4.2";
src = fetchFromGitHub {
owner = "zplug";
repo = pname;
rev = version;
sha256 = "0hci1pbs3k5icwfyfw5pzcgigbh9vavprxxvakg1xm19n8zb61b3";
};
strictDeps = true;
dontConfigure = true;
dontBuild = true;
dontPatch = true;
installPhase = ''
mkdir -p $out
cp -r $src/* $out/
'';
meta = with lib; {
description = "A next-generation plugin manager for zsh";
homepage = "https://github.com/zplug/zplug";
license = licenses.mit;
maintainers = [ maintainers.s1341 ];
mainProgram = "zplug-env";
platforms = platforms.all;
};
}

View file

@ -0,0 +1,28 @@
{ lib, stdenvNoCC, fetchFromGitHub }:
stdenvNoCC.mkDerivation rec {
pname = "zsh-autocomplete";
version = "22.01.21";
src = fetchFromGitHub {
owner = "marlonrichert";
repo = "zsh-autocomplete";
rev = version;
sha256 = "sha256-+UziTYsjgpiumSulrLojuqHtDrgvuG91+XNiaMD7wIs=";
};
strictDeps = true;
installPhase = ''
install -D zsh-autocomplete.plugin.zsh $out/share/zsh-autocomplete/zsh-autocomplete.plugin.zsh
cp -R scripts $out/share/zsh-autocomplete/scripts
cp -R functions $out/share/zsh-autocomplete/functions
'';
meta = with lib; {
description = "Real-time type-ahead completion for Zsh. Asynchronous find-as-you-type autocompletion";
homepage = "https://github.com/marlonrichert/zsh-autocomplete/";
license = licenses.mit;
platforms = platforms.unix;
maintainers = [ maintainers.leona ];
};
}

View file

@ -0,0 +1,27 @@
{ stdenv, lib, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "zsh-autopair";
version = "1.0";
src = fetchFromGitHub {
owner = "hlissner";
repo = "zsh-autopair";
rev = "v${version}";
sha256 = "1h0vm2dgrmb8i2pvsgis3lshc5b0ad846836m62y8h3rdb3zmpy1";
};
strictDeps = true;
installPhase = ''
install -D autopair.zsh $out/share/zsh/${pname}/autopair.zsh
'';
meta = with lib; {
homepage = "https://github.com/hlissner/zsh-autopair";
description = "A plugin that auto-closes, deletes and skips over matching delimiters in zsh intelligently";
license = licenses.mit;
maintainers = with maintainers; [ _0qq ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,31 @@
{ lib, stdenv, fetchFromGitHub, zsh }:
# To make use of this derivation, use the `programs.zsh.autosuggestions.enable` option
stdenv.mkDerivation rec {
pname = "zsh-autosuggestions";
version = "0.7.0";
src = fetchFromGitHub {
owner = "zsh-users";
repo = "zsh-autosuggestions";
rev = "v${version}";
sha256 = "1g3pij5qn2j7v7jjac2a63lxd97mcsgw6xq6k5p7835q9fjiid98";
};
strictDeps = true;
buildInputs = [ zsh ];
installPhase = ''
install -D zsh-autosuggestions.zsh \
$out/share/zsh-autosuggestions/zsh-autosuggestions.zsh
'';
meta = with lib; {
description = "Fish shell autosuggestions for Zsh";
homepage = "https://github.com/zsh-users/zsh-autosuggestions";
license = licenses.mit;
platforms = platforms.unix;
maintainers = [ maintainers.loskutov ];
};
}

View file

@ -0,0 +1,32 @@
{ lib, stdenv, fetchFromGitHub}:
stdenv.mkDerivation rec {
pname = "zsh-bd";
version = "2018-07-04";
src = fetchFromGitHub {
owner = "Tarrasch";
repo = pname;
rev = "d4a55e661b4c9ef6ae4568c6abeff48bdf1b1af7";
sha256 = "020f8nq86g96cps64hwrskppbh2dapfw2m9np1qbs5pgh16z4fcb";
};
strictDeps = true;
dontBuild = true;
installPhase = ''
mkdir -p $out/share/zsh-bd
cp {.,$out/share/zsh-bd}/bd.zsh
cd $out/share/zsh-bd
ln -s bd{,.plugin}.zsh
'';
meta = {
description = "Jump back to a specific directory, without doing `cd ../../..` ";
homepage = "https://github.com/Tarrasch/zsh-bd";
license = lib.licenses.free;
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.olejorgenb ];
};
}

View file

@ -0,0 +1,26 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "zsh-better-npm-completion";
version = "unstable-2019-11-19";
src = fetchFromGitHub {
owner = "lukechilds";
repo = "zsh-better-npm-completion";
rev = "0a7cf042415324ec38a186fdcbc9af163f0d7e69";
sha256 = "16z7k5n1rcl9i61lrm7i5dsqsmhvdp1y4y5ii6hv2xpp470addgy";
};
strictDeps = true;
installPhase = ''
install -Dm 0644 zsh-better-npm-completion.plugin.zsh $out/share/zsh-better-npm-completion
'';
meta = with lib; {
description = "Better completion for npm";
homepage = "https://github.com/lukechilds/zsh-better-npm-completion";
license = licenses.mit;
platforms = platforms.unix;
maintainers = [ maintainers.gerschtli ];
};
}

View file

@ -0,0 +1,40 @@
_cb-yank() {
AA=$(clippaste 2>/dev/null) && CUTBUFFER="$AA"
zle yank
}
_cb-kill-line() {
zle kill-line
printf "%s" "$CUTBUFFER" | clipcopy 2>/dev/null
}
_cb-kill-whole-line() {
zle kill-whole-line
printf "%s" "$CUTBUFFER" | clipcopy 2>/dev/null
}
_cb-kill-word() {
zle kill-word
printf "%s" "$CUTBUFFER" | clipcopy 2>/dev/null
}
_cb-backward-kill-word() {
zle backward-kill-word
printf "%s" "$CUTBUFFER" | clipcopy 2>/dev/null
}
_cb-copy-region-as-kill() {
## https://unix.stackexchange.com/questions/19947/
zle copy-region-as-kill
zle set-mark-command -n -1
printf "%s" "$CUTBUFFER" | clipcopy 2>/dev/null
}
zle -N _cb-yank
zle -N _cb-kill-line
zle -N _cb-kill-whole-line
zle -N _cb-kill-word
zle -N _cb-backward-kill-word
zle -N _cb-copy-region-as-kill
bindkey '^y' _cb-yank
bindkey '^k' _cb-kill-line
bindkey '^u' _cb-kill-whole-line
bindkey '\ed' _cb-kill-word
bindkey '\e^?' _cb-backward-kill-word
bindkey '\ew' _cb-copy-region-as-kill

View file

@ -0,0 +1,28 @@
{ stdenv, lib }:
stdenv.mkDerivation rec {
pname = "zsh-clipboard";
version = "1.0";
src = ./.;
strictDeps = true;
dontBuild = true;
installPhase = ''
install -D -m0444 -t $out/share/zsh/plugins/clipboard ./clipboard.plugin.zsh
'';
meta = with lib; {
description = "Ohmyzsh plugin that integrates kill-ring with system clipboard";
longDescription = ''
Ohmyzsh plugin that integrates kill-ring with system clipboard.
Key bindings for C-y, C-k, C-u, M-d, M-backspace and M-w are rebound.
Behaviour of these keys should not be changed.
'';
license = licenses.mit;
maintainers = with maintainers; [ bb2020 ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,35 @@
{ lib, stdenv, fetchFromGitHub }:
# To make use of this plugin, need to add
# programs.zsh.interactiveShellInit = ''
# source ${pkgs.zsh-command-time}/share/zsh/plugins/command-time/command-time.plugin.zsh
# ZSH_COMMAND_TIME_COLOR="yellow"
# ZSH_COMMAND_TIME_MIN_SECONDS=3
# ZSH_COMMAND_TIME_ECHO=1
# '';
stdenv.mkDerivation {
version = "2018-04-30";
pname = "zsh-command-time";
src = fetchFromGitHub {
owner = "popstas";
repo = "zsh-command-time";
rev = "afb4a4c9ae7ce64ca9d4f334a79a25e46daad0aa";
sha256 = "1bvyjgz6bhgg1nwr56r50p6fblgah6yiql55pgm5abnn2h876fjq";
};
strictDeps = true;
dontUnpack = true;
installPhase = ''
install -Dm0444 $src/command-time.plugin.zsh --target-directory=$out/share/zsh/plugins/command-time
'';
meta = with lib; {
description = "Plugin that output time: xx after long commands";
homepage = "https://github.com/popstas/zsh-command-time";
license = licenses.mit;
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,27 @@
{ lib, stdenv, fetchFromGitHub}:
stdenv.mkDerivation rec {
pname = "zsh-completions";
version = "0.33.0";
src = fetchFromGitHub {
owner = "zsh-users";
repo = pname;
rev = version;
sha256 = "0vs14n29wvkai84fvz3dz2kqznwsq2i5fzbwpv8nsfk1126ql13i";
};
strictDeps = true;
installPhase= ''
install -D --target-directory=$out/share/zsh/site-functions src/*
'';
meta = {
description = "Additional completion definitions for zsh";
homepage = "https://github.com/zsh-users/zsh-completions";
license = lib.licenses.free;
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.olejorgenb ];
};
}

View file

@ -0,0 +1,35 @@
{ lib, stdenv, fetchFromGitHub, perl }:
stdenv.mkDerivation rec {
pname = "deer";
version = "1.4";
src = fetchFromGitHub {
owner = "Vifon";
repo = "deer";
rev = "v${version}";
sha256 = "1xnbnbi0zk2xsyn8dqsmyxqlfnl36pb1wwibnlp0dxixw6sfymyl";
};
strictDeps = true;
prePatch = ''
substituteInPlace deer \
--replace " perl " " ${perl}/bin/perl "
'';
patches = [ ./realpath.patch ];
installPhase = ''
mkdir -p $out/share/zsh/site-functions/
cp deer $out/share/zsh/site-functions/
'';
meta = with lib; {
description = "Ranger-like file navigation for zsh";
homepage = "https://github.com/Vifon/deer";
license = licenses.gpl3Plus;
maintainers = [ maintainers.vyp ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,28 @@
From ceadb2f11119143af4f590ea6b05a531483219b5 Mon Sep 17 00:00:00 2001
From: xd1le <elisp.vim@gmail.com>
Date: Wed, 30 Aug 2017 17:27:20 +1000
Subject: [PATCH] use realpath instead of python to calculate relative path
---
deer | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/deer b/deer
index 3d89dea..804a871 100644
--- a/deer
+++ b/deer
@@ -259,10 +259,7 @@ deer-get-relative()
{
local TMP
TMP=${1:-${DEER_DIRNAME%/}/$DEER_BASENAME[$DEER_DIRNAME]}
- TMP="`python -c '
-import sys, os
-print(os.path.relpath(sys.argv[1], sys.argv[2]))
-' $TMP ${DEER_STARTDIR:-$PWD}`"
+ TMP="`realpath --relative-to=${DEER_STARTDIR:-$PWD} $TMP`"
print -R $TMP:q
}
--
2.14.1

View file

@ -0,0 +1,31 @@
{ stdenvNoCC, lib, fetchFromGitHub }:
stdenvNoCC.mkDerivation rec {
pname = "zsh-fast-syntax-highlighting";
version = "1.55";
src = fetchFromGitHub {
owner = "zdharma-continuum";
repo = "fast-syntax-highlighting";
rev = "v${version}";
sha256 = "0h7f27gz586xxw7cc0wyiv3bx0x3qih2wwh05ad85bh2h834ar8d";
};
strictDeps = true;
dontConfigure = true;
dontBuild = true;
installPhase = ''
plugindir="$out/share/zsh/site-functions"
mkdir -p "$plugindir"
cp -r -- {,_,-,.}fast-* *chroma themes "$plugindir"/
'';
meta = with lib; {
description = "Syntax-highlighting for Zshell";
homepage = "https://github.com/zdharma-continuum/fast-syntax-highlighting";
license = licenses.bsd3;
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,46 @@
{ stdenv, lib, fetchFromGitHub, ncurses }:
let
INSTALL_PATH="${placeholder "out"}/share/fzf-tab";
in stdenv.mkDerivation rec {
pname = "zsh-fzf-tab";
version = "unstable-2022-04-15";
src = fetchFromGitHub {
owner = "Aloxaf";
repo = "fzf-tab";
rev = "7e0eee64df6c7c81a57792674646b5feaf89f263";
sha256 = "sha256-ixUnuNtxxmiigeVjzuV5uG6rIBPY/1vdBZF2/Qv0Trs=";
};
strictDeps = true;
buildInputs = [ ncurses ];
postConfigure = ''
pushd modules
./configure --disable-gdbm --without-tcsetpgrp
popd
'';
postBuild = ''
pushd modules
make -j$NIX_BUILD_CORES
popd
'';
installPhase = ''
mkdir -p ${INSTALL_PATH}
cp -r lib ${INSTALL_PATH}/lib
install -D fzf-tab.zsh ${INSTALL_PATH}/fzf-tab.zsh
install -D fzf-tab.plugin.zsh ${INSTALL_PATH}/fzf-tab.plugin.zsh
install -D modules/Src/aloxaf/fzftab.so ${INSTALL_PATH}/modules/Src/aloxaf/fzftab.so
'';
meta = with lib; {
homepage = "https://github.com/Aloxaf/fzf-tab";
description = "Replace zsh's default completion selection menu with fzf!";
license = licenses.mit;
maintainers = with maintainers; [ vonfry ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,70 @@
# zsh-git-prompt -- Informative git prompt for zsh
#
# Usage: to enable this plugin for all users, you could
# add it to configuration.nix like this:
#
# programs.zsh.interactiveShellInit = ''
# source ${pkgs.zsh-git-prompt}/share/zsh-git-prompt/zshrc.sh
# '';
#
# Or you can install it globally but only enable it in individual
# users' ~/.zshrc files:
#
# source /run/current-system/sw/share/zsh-git-prompt/zshrc.sh
#
# Or if installed locally:
#
# source ~/.nix-profile/share/zsh-git-prompt/zshrc.sh
#
# Either way, you then have to set a prompt that incorporates
# git_super_status, for example:
#
# PROMPT='%B%m%~%b$(git_super_status) %# '
#
# More details are in share/doc/zsh-git-prompt/README.md, once
# installed.
#
{ fetchFromGitHub
, python2
, git
, lib
, haskellPackages
}:
haskellPackages.callPackage
({ mkDerivation, base, HUnit, parsec, process, QuickCheck }:
mkDerivation rec {
pname = "zsh-git-prompt";
version = "0.4z"; # While we await a real 0.5 release.
src = fetchFromGitHub {
owner = "starcraftman";
repo = "zsh-git-prompt";
rev = "11b83ba3b85d14c66cf2ab79faefab6d838da28e";
sha256 = "04aylsjfb03ckw219plkzpyiq4j9g66bjxa5pa56h1p7df6pjssb";
};
prePatch = ''
substituteInPlace zshrc.sh \
--replace ':-"python"' ':-"haskell"' \
--replace 'python ' '${python2.interpreter} ' \
--replace 'git ' '${git}/bin/git '
'';
preCompileBuildDriver = "cd src";
postInstall = ''
cd ..
gpshare=$out/share/${pname}
gpdoc=$out/share/doc/${pname}
mkdir -p $gpshare/src $gpdoc
cp README.md $gpdoc
cp zshrc.sh gitstatus.py $gpshare
mv $out/bin $gpshare/src/.bin
'';
isLibrary = false;
isExecutable = true;
libraryHaskellDepends = [ base parsec process QuickCheck ];
executableHaskellDepends = libraryHaskellDepends;
testHaskellDepends = [HUnit] ++ libraryHaskellDepends;
homepage = "https://github.com/olivierverdier/zsh-git-prompt#readme";
description = "Informative git prompt for zsh";
license = lib.licenses.mit;
maintainers = [lib.maintainers.league];
}) {}

View file

@ -0,0 +1,31 @@
{ stdenvNoCC, lib, fetchFromGitHub }:
stdenvNoCC.mkDerivation rec {
pname = "zsh-history-search-multi-word";
version = "unstable-2021-11-13";
src = fetchFromGitHub {
owner = "zdharma-continuum";
repo = "history-search-multi-word";
rev = "5b44d8cea12351d91fbdc3697916556f59f14b8c";
sha256 = "11r2mmy6bg3b6pf6qc0ml3idh333cj8yz754hrvd1sc4ipfkkqh7";
};
strictDeps = true;
dontConfigure = true;
dontBuild = true;
installPhase = ''
plugindir="$out/share/zsh/${pname}"
mkdir -p "$plugindir"
cp -r -- history-* hsmw-* "$plugindir"/
'';
meta = with lib; {
description = "Multi-word, syntax highlighted history searching for Zsh";
homepage = "https://github.com/zdharma-continuum/history-search-multi-word";
license = with licenses; [ gpl3 mit ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,27 @@
{ stdenv, lib, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "zsh-history-substring-search";
version = "1.0.2";
src = fetchFromGitHub {
owner = "zsh-users";
repo = "zsh-history-substring-search";
rev = "v${version}";
sha256 = "0y8va5kc2ram38hbk2cibkk64ffrabfv1sh4xm7pjspsba9n5p1y";
};
strictDeps = true;
installPhase = ''
install -D zsh-history-substring-search.zsh \
"$out/share/zsh-history-substring-search/zsh-history-substring-search.zsh"
'';
meta = with lib; {
description = "Fish shell history-substring-search for Zsh";
homepage = "https://github.com/zsh-users/zsh-history-substring-search";
license = licenses.bsd3;
maintainers = with maintainers; [ qyliss ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,38 @@
{ lib, fetchFromGitHub, buildGoModule, installShellFiles, nixosTests }:
buildGoModule rec {
pname = "zsh-history";
version = "2019-12-10";
src = fetchFromGitHub {
owner = "b4b4r07";
repo = "history";
rev = "8da016bd91b0c2eb53c9980f00eee6abdbb097e2";
sha256 = "13n643ik1zjvpk8h9458yd9ffahhbdnigmbrbmpn7b7g23wqqsi3";
};
nativeBuildInputs = [ installShellFiles ];
vendorSha256 = "1863ad97y82fx0an1ysalkxnqjz3zfz228wag9a92wdssl1vwzws";
doCheck = false;
postInstall = ''
install -d $out/share
cp -r "$NIX_BUILD_TOP/source/misc/"* "$out/share"
installShellCompletion --zsh --name _history $out/share/zsh/completions/_history
'';
meta = with lib; {
description = "A CLI to provide enhanced history for your ZSH shell";
homepage = "https://github.com/b4b4r07/history";
license = licenses.mit;
maintainers = with maintainers; [ ];
mainProgram = "history";
platforms = platforms.unix;
};
passthru.tests = {
zsh-history-shell-integration = nixosTests.zsh-history;
};
}

View file

@ -0,0 +1,31 @@
{ lib, stdenv, fetchFromGitHub, bash }:
# To make use of this derivation, use
# `programs.zsh.interactiveShellInit = "source ${pkgs.zsh-nix-shell}/share/zsh-nix-shell/nix-shell.plugin.zsh";`
stdenv.mkDerivation rec {
pname = "zsh-nix-shell";
version = "0.4.0";
src = fetchFromGitHub {
owner = "chisui";
repo = "zsh-nix-shell";
rev = "v${version}";
sha256 = "sha256-719lVo6p55G1tt3+6nMhZ904nyvlq0Q5exb0il36/Aw=";
};
strictDeps = true;
buildInputs = [ bash ];
installPhase = ''
install -D nix-shell.plugin.zsh --target-directory=$out/share/zsh-nix-shell
install -D scripts/* --target-directory=$out/share/zsh-nix-shell/scripts
'';
meta = with lib; {
description = "zsh plugin that lets you use zsh in nix-shell shell";
homepage = src.meta.homepage;
license = licenses.bsd3;
platforms = platforms.unix;
maintainers = with maintainers; [ aw ];
};
}

View file

@ -0,0 +1,56 @@
{ lib, stdenv, fetchFromGitHub, substituteAll, pkgs, bash }:
# To make use of this derivation, use
# `programs.zsh.promptInit = "source ${pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k/powerlevel10k.zsh-theme";`
let
# match gitstatus version with given `gitstatus_version`:
# https://github.com/romkatv/powerlevel10k/blob/master/gitstatus/build.info
gitstatus = pkgs.gitstatus.overrideAttrs (oldAtttrs: rec {
version = "1.5.3";
src = fetchFromGitHub {
owner = "romkatv";
repo = "gitstatus";
rev = "v${version}";
sha256 = "17giwdjrsmr71xskxxf506n8kaab8zx77fv267fx37ifi57nffk5";
};
});
in
stdenv.mkDerivation rec {
pname = "powerlevel10k";
version = "1.16.1";
src = fetchFromGitHub {
owner = "romkatv";
repo = "powerlevel10k";
rev = "v${version}";
sha256 = "0fkfh8j7rd8mkpgz6nsx4v7665d375266shl1aasdad8blgqmf0c";
};
strictDeps = true;
buildInputs = [ bash ];
patches = [
(substituteAll {
src = ./gitstatusd.patch;
gitstatusdPath = "${gitstatus}/bin/gitstatusd";
})
];
installPhase = ''
install -D powerlevel10k.zsh-theme --target-directory=$out/share/zsh-powerlevel10k
install -D config/* --target-directory=$out/share/zsh-powerlevel10k/config
install -D internal/* --target-directory=$out/share/zsh-powerlevel10k/internal
cp -R gitstatus $out/share/zsh-powerlevel10k/gitstatus
'';
meta = {
description = "A fast reimplementation of Powerlevel9k ZSH theme";
homepage = "https://github.com/romkatv/powerlevel10k";
license = lib.licenses.mit;
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.hexa ];
};
}

View file

@ -0,0 +1,13 @@
diff --git a/gitstatus/gitstatus.plugin.zsh b/gitstatus/gitstatus.plugin.zsh
index b469072..eb1e3be 100644
--- a/gitstatus/gitstatus.plugin.zsh
+++ b/gitstatus/gitstatus.plugin.zsh
@@ -44,6 +44,8 @@
[[ -o 'interactive' ]] || 'return'
+GITSTATUS_DAEMON=@gitstatusdPath@
+
# Temporarily change options.
'builtin' 'local' '-a' '_gitstatus_opts'
[[ ! -o 'aliases' ]] || _gitstatus_opts+=('aliases')

View file

@ -0,0 +1,30 @@
{ lib, stdenv, fetchFromGitHub }:
# To make use of this derivation, use
# `programs.zsh.promptInit = "source ${pkgs.zsh-powerlevel9k}/share/zsh-powerlevel9k/powerlevel9k.zsh-theme";`
stdenv.mkDerivation {
pname = "powerlevel9k";
version = "2017-11-10";
src = fetchFromGitHub {
owner = "bhilburn";
repo = "powerlevel9k";
rev = "87acc51acab3ed4fd33cda2386abed6f98c80720";
sha256 = "0v1dqg9hvycdkcvklg2njff97xwr8rah0nyldv4xm39r77f4yfvq";
};
strictDeps = true;
installPhase= ''
install -D powerlevel9k.zsh-theme --target-directory=$out/share/zsh-powerlevel9k
install -D functions/* --target-directory=$out/share/zsh-powerlevel9k/functions
'';
meta = {
description = "A beautiful theme for zsh";
homepage = "https://github.com/bhilburn/powerlevel9k";
license = lib.licenses.mit;
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.pierrechevalier83 ];
};
}

View file

@ -0,0 +1,42 @@
{ lib, stdenv, fetchFromGitHub, unstableGitUpdater, bash }:
stdenv.mkDerivation rec {
pname = "zsh-prezto";
version = "unstable-2022-04-05";
src = fetchFromGitHub {
owner = "sorin-ionescu";
repo = "prezto";
rev = "2c663313168490d28f607738e962aa45ada0e26b";
sha256 = "05n2801xqdxc5nx0709mak1pr73l7aq5azd9adm0ym7si3vl59sj";
fetchSubmodules = true;
};
strictDeps = true;
buildInputs = [ bash ];
postPatch = ''
# make zshrc aware of where zsh-prezto is installed
sed -i -e "s|\''${ZDOTDIR:\-\$HOME}/.zprezto/|$out/share/zsh-prezto/|g" runcoms/zshrc
'';
installPhase = ''
mkdir -p $out/share/zsh-prezto
cp -R ./ $out/share/zsh-prezto
'';
passthru.updateScript = unstableGitUpdater {};
meta = with lib; {
description = "The configuration framework for Zsh";
longDescription = ''
Prezto is the configuration framework for Zsh; it enriches
the command line interface environment with sane defaults,
aliases, functions, auto completion, and prompt themes.
'';
homepage = "https://github.com/sorin-ionescu/prezto";
license = licenses.mit;
maintainers = with maintainers; [ holymonson ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,28 @@
{ lib, stdenv, fetchFromGitHub, zsh }:
# To make use of this derivation, use the `programs.zsh.enableSyntaxHighlighting` option
stdenv.mkDerivation rec {
version = "0.7.1";
pname = "zsh-syntax-highlighting";
src = fetchFromGitHub {
owner = "zsh-users";
repo = "zsh-syntax-highlighting";
rev = version;
sha256 = "03r6hpb5fy4yaakqm3lbf4xcvd408r44jgpv4lnzl9asp4sb9qc0";
};
strictDeps = true;
buildInputs = [ zsh ];
installFlags = [ "PREFIX=$(out)" ];
meta = with lib; {
description = "Fish shell like syntax highlighting for Zsh";
homepage = "https://github.com/zsh-users/zsh-syntax-highlighting";
license = licenses.bsd3;
platforms = platforms.unix;
maintainers = [ maintainers.loskutov ];
};
}

View file

@ -0,0 +1,26 @@
{ stdenv, lib, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "zsh-system-clipboard";
version = "0.7.0";
src = fetchFromGitHub {
owner = "kutsan";
repo = "zsh-system-clipboard";
rev = "v${version}";
sha256 = "09lqav1mz5zajklr3xa0iaivhpykv3azkjb7yj9wyp0hq3vymp8i";
};
strictDeps = true;
installPhase = ''
install -D zsh-system-clipboard.zsh $out/share/zsh/${pname}/zsh-system-clipboard.zsh
'';
meta = with lib; {
homepage = "https://github.com/kutsan/zsh-system-clipboard";
description = "A plugin that adds key bindings support for ZLE (Zsh Line Editor) clipboard operations for vi emulation keymaps";
license = licenses.gpl3Only;
maintainers = with maintainers; [ _0qq ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,28 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "zsh-vi-mode";
version = "0.8.5";
src = fetchFromGitHub {
owner = "jeffreytse";
repo = pname;
rev = "v${version}";
sha256 = "EOYqHh0rcgoi26eopm6FTl81ehak5kXMmzNcnJDH8/E=";
};
strictDeps = true;
dontBuild = true;
installPhase = ''
mkdir -p $out/share/${pname}
cp *.zsh $out/share/${pname}/
'';
meta = with lib; {
homepage = "https://github.com/jeffreytse/zsh-vi-mode";
license = licenses.mit;
description = "A better and friendly vi(vim) mode plugin for ZSH.";
maintainers = with maintainers; [ kyleondy ];
};
}

View file

@ -0,0 +1,27 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "zsh-you-should-use";
version = "1.7.3";
src = fetchFromGitHub {
owner = "MichaelAquilina";
repo = pname;
rev = version;
sha256 = "1dz48rd66priqhxx7byndqhbmlwxi1nfw8ik25k0z5k7k754brgy";
};
strictDeps = true;
dontBuild = true;
installPhase = ''
install -D you-should-use.plugin.zsh $out/share/zsh/plugins/you-should-use/you-should-use.plugin.zsh
'';
meta = with lib; {
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 ];
};
}

View file

@ -0,0 +1,29 @@
{ lib, stdenvNoCC, fetchFromGitHub }:
stdenvNoCC.mkDerivation rec {
pname = "zsh-z";
version = "unstable-2021-02-15";
src = fetchFromGitHub {
owner = "agkozak";
repo = pname;
rev = "595c883abec4682929ffe05eb2d088dd18e97557";
sha256 = "sha256-HnwUWqzwavh/Qox+siOe5lwTp7PBdiYx+9M0NMNFx00=";
};
strictDeps = true;
dontBuild = true;
installPhase = ''
mkdir -p $out/share/zsh-z
cp _zshz zsh-z.plugin.zsh $out/share/zsh-z
'';
meta = with lib; {
description = "Jump quickly to directories that you have visited frequently in the past, or recently";
homepage = "https://github.com/agkozak/zsh-z";
license = licenses.mit;
platforms = platforms.unix;
maintainers = [ maintainers.evalexpr ];
};
}