diff --git a/pkgs/applications/misc/oil/default.nix b/pkgs/applications/misc/oil/default.nix new file mode 100644 index 000000000000..173cea2ee1cb --- /dev/null +++ b/pkgs/applications/misc/oil/default.nix @@ -0,0 +1,45 @@ +{ stdenvNoCC, lib, fetchFromGitHub, jq, gawk, peco, makeWrapper }: + +stdenvNoCC.mkDerivation rec { + pname = "oil-buku"; + version = "0.3.2"; + + src = fetchFromGitHub { + owner = "AndreiUlmeyda"; + repo = "oil"; + rev = version; + sha256 = "12g0fd7h11hh94b2pyg3pqwbf8bc7gcnrnm1qqbf18s6z02b6ixr"; + }; + + postPatch = '' + substituteInPlace src/oil --replace \ + "LIBDIR=/usr/local/lib/oil" "LIBDIR=${placeholder "out"}/lib" + + substituteInPlace Makefile --replace \ + "LIBDIR ?= /usr/local/lib/oil" "LIBDIR ?= ${placeholder "out"}/lib" \ + + substituteInPlace Makefile --replace \ + "BINDIR ?= /usr/local/bin" "BINDIR ?= ${placeholder "out"}/bin" + + substituteInPlace src/json-to-line.jq --replace \ + "/usr/bin/env -S jq" "${jq}/bin/jq" + + substituteInPlace src/format-columns.awk --replace \ + "/usr/bin/env -S awk" "${gawk}/bin/awk" + ''; + + nativeBuildInputs = [ makeWrapper ]; + + postFixup = '' + wrapProgram $out/bin/oil \ + --prefix PATH : ${lib.makeBinPath [ peco ]} + ''; + + meta = with lib; { + description = "Search-as-you-type cli frontend for the buku bookmarks manager using peco"; + homepage = "https://github.com/AndreiUlmeyda/oil"; + license = licenses.gpl3Only; + platforms = platforms.unix; + maintainers = with maintainers; [ atila ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d37a6e8efb03..4dae24b3270b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3580,6 +3580,8 @@ with pkgs; odafileconverter = libsForQt5.callPackage ../applications/graphics/odafileconverter {}; + oil-buku = callPackage ../applications/misc/oil { }; + ossutil = callPackage ../tools/admin/ossutil {}; pastel = callPackage ../applications/misc/pastel {