1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2025-03-06 23:31:34 +00:00

Merge pull request #327424 from d-brasher/init-revolver

This commit is contained in:
Sandro 2024-07-29 01:36:35 +02:00 committed by GitHub
commit 139855af78
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 115 additions and 0 deletions
maintainers
pkgs/by-name/re/revolver

View file

@ -4693,6 +4693,11 @@
githubId = 3179832;
name = "D. Bohdan";
};
d-brasher = {
github = "d-brasher";
githubId = 175485311;
name = "D. Brasher";
};
dbrgn = {
email = "nix@dbrgn.ch";
github = "dbrgn";

View file

@ -0,0 +1,16 @@
Replace call to "revolver" with call to internal function.
Useful when "revolver" is not defined in PATH.
--- a/revolver
+++ b/revolver
@@ -255,9 +255,9 @@
###
function _revolver_demo() {
for style in "${(@k)_revolver_spinners[@]}"; do
- revolver --style $style start $style
+ _revolver --style $style start $style
sleep 2
- revolver stop
+ _revolver stop
done
}

View file

@ -0,0 +1,94 @@
{
lib,
stdenvNoCC,
fetchFromGitHub,
zsh,
installShellFiles,
ncurses,
nix-update-script,
testers,
runCommand,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "revolver";
version = "0.2.4-unstable-2020-09-30";
src = fetchFromGitHub {
owner = "molovo";
repo = "revolver";
rev = "6424e6cb14da38dc5d7760573eb6ecb2438e9661";
hash = "sha256-2onqjtPIsgiEJj00oP5xXGkPZGQpGPVwcBOhmicqKcs=";
};
strictDeps = true;
doInstallCheck = true;
nativeBuildInputs = [ installShellFiles ];
buildInputs = [
zsh
ncurses
];
nativeInstallCheckInputs = [ zsh ];
patches = [ ./no-external-call.patch ];
postPatch = ''
substituteInPlace revolver \
--replace-fail "tput cols" "${ncurses}/bin/tput cols"
'';
installPhase = ''
runHook preInstall
install -D revolver $out/bin/revolver
runHook postInstall
'';
postInstall = ''
installShellCompletion --cmd revolver --zsh revolver.zsh-completion
'';
installCheckPhase = ''
runHook preInstallCheck
PATH=$PATH:$out/bin revolver --help
runHook postInstallCheck
'';
passthru = {
tests = {
demo = runCommand "revolver-demo" { nativeBuildInputs = [ finalAttrs.finalPackage ]; } ''
export HOME="$TEMPDIR"
# Drop stdout, redirect stderr to stdout and check if it's not empty
exec 9>&1
echo "Running revolver demo..."
if [[ $(revolver demo 2>&1 1>/dev/null | tee >(cat - >&9)) ]]; then
exit 1
fi
echo "Demo done!"
mkdir $out
'';
version = testers.testVersion {
package = finalAttrs.finalPackage;
# Wrong '0.2.0' version in the code
version = "0.2.0";
};
};
updateScript = nix-update-script { };
};
meta = {
description = "Progress spinner for ZSH scripts";
homepage = "https://github.com/molovo/revolver";
downloadPage = "https://github.com/molovo/revolver/releases";
license = lib.licenses.mit;
mainProgram = "revolver";
inherit (zsh.meta) platforms;
maintainers = with lib.maintainers; [ d-brasher ];
};
})