diff options
author | Dmitry Bogatov <kaction@disroot.org> | 2021-11-01 16:15:50 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-01 21:15:50 +0100 |
commit | f538c07f2ebae64cc05526be65914a8212ab20b2 (patch) | |
tree | 76541bf18909e361505b79fe7b08078b5f83f433 /pkgs | |
parent | 6834ca6639ac0f4d94c5f0af42ccc23021eaadfd (diff) |
datefudge: work correctly even if GNU date is not in PATH (#94045)
* datefudge: work correctly even if GNU date is not in PATH Examples in manual assumes advanced features from date(1) like "last Friday", which only available in GNU coreutils version of date(1) utility. Without this patch, most examples from datefudge(1) manual will fail in busybox environment, which is confusing. * Apply suggestions from code review * Update pkgs/tools/system/datefudge/default.nix Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/tools/system/datefudge/default.nix | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/pkgs/tools/system/datefudge/default.nix b/pkgs/tools/system/datefudge/default.nix index be2ad70498ae7..079b6b6943604 100644 --- a/pkgs/tools/system/datefudge/default.nix +++ b/pkgs/tools/system/datefudge/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchgit, fetchpatch }: +{ stdenv, lib, fetchgit, fetchpatch, makeWrapper, coreutils }: stdenv.mkDerivation rec { pname = "datefudge"; @@ -10,6 +10,10 @@ stdenv.mkDerivation rec { sha256 = "1nh433yx4y4djp0bs6aawqbwk7miq7fsbs9wpjlyh2k9dvil2lrm"; }; + nativeBuildInputs = [ makeWrapper ]; + + buildInputs = [ coreutils ]; + postPatch = '' substituteInPlace Makefile \ --replace "/usr" "/" \ @@ -20,7 +24,10 @@ stdenv.mkDerivation rec { installFlags = [ "DESTDIR=$(out)" ]; - postInstall = "chmod +x $out/lib/datefudge/datefudge.so"; + postInstall = '' + chmod +x $out/lib/datefudge/datefudge.so + wrapProgram $out/bin/datefudge --prefix PATH : ${coreutils}/bin + ''; meta = with lib; { description = "Fake the system date"; |