From 05d2db449848898a91c829501acc58e23173ae98 Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Tue, 6 Jun 2023 09:19:44 +0200 Subject: [PATCH] ondir: init at 0.2.3 --- pkgs/tools/misc/ondir/default.nix | 44 +++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 46 insertions(+) create mode 100644 pkgs/tools/misc/ondir/default.nix diff --git a/pkgs/tools/misc/ondir/default.nix b/pkgs/tools/misc/ondir/default.nix new file mode 100644 index 00000000000..2e8605c33ab --- /dev/null +++ b/pkgs/tools/misc/ondir/default.nix @@ -0,0 +1,44 @@ +{ + lib, + stdenv, + fetchFromGitHub, +}: + +stdenv.mkDerivation { + pname = "ondir"; + version = "0.2.3"; + + src = fetchFromGitHub { + owner = "alecthomas"; + repo = "ondir"; + rev = "cb2f9f8b21e336165fc0a310d677fda75c8e8513"; + hash = "sha256-XTZKFIzJ3xL8ae3zG8nsMhGWvpvRUAQ2b6q/Q1QvGd0="; + }; + + installPhase = '' + runHook preInstall + + make DESTDIR="$out" PREFIX= install + cp scripts.* $out + + runHook postInstall + ''; + + meta = with lib; { + description = "a small program to automate tasks specific to certain directories"; + longDescription = '' + It works by executing scripts in directories when you enter and leave them. + This is done by overriding the shell builtins cd, pushd, and popd, + which is a manual action. + The user is required to add a snippet to their shell initialisation file like .bashrc or .profile. + + Which commands are executed on directory entry and leave is done + in predefined locations with a .ondirrc file. + + See man ondir for more information + ''; + homepage = "https://github.com/alecthomas/ondir/"; + license = licenses.gpl2Only; + maintainers = [ maintainers.michaelCTS ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 01aa8b59017..b52355520bc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5687,6 +5687,8 @@ with pkgs; oil-buku = callPackage ../applications/misc/oil-buku { }; + ondir = callPackage ../tools/misc/ondir { }; + osdlyrics = callPackage ../applications/audio/osdlyrics { }; ossutil = callPackage ../tools/admin/ossutil { };