diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libeatmydata')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libeatmydata/default.nix | 41 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libeatmydata/find-shell-lib.patch | 20 |
2 files changed, 61 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libeatmydata/default.nix b/nixpkgs/pkgs/development/libraries/libeatmydata/default.nix new file mode 100644 index 000000000000..70fab2da5688 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libeatmydata/default.nix @@ -0,0 +1,41 @@ +{ lib, stdenv, fetchFromGitHub, autoreconfHook, strace, which }: + +stdenv.mkDerivation rec { + pname = "libeatmydata"; + version = "105"; + + src = fetchFromGitHub { + owner = "stewartsmith"; + repo = pname; + rev = "${pname}-${version}"; + sha256 = "0sx803h46i81h67xbpd3c7ky0nhaw4gij214nsx4lqig70223v9r"; + }; + + patches = [ ./find-shell-lib.patch ]; + + patchFlags = "-p0"; + + postPatch = '' + substituteInPlace eatmydata.in \ + --replace NIX_OUT_DIR $out + + patchShebangs . + ''; + + nativeBuildInputs = [ + autoreconfHook + ] ++ lib.optionals doCheck [ strace which ]; + + # while we can *build* in parallel, the tests also run in parallel which does + # not work with v105. Later versions (unreleased) have a fix for that. The + # problem is that on hydra we cannot use strace, so the tests don't run there. + enableParallelBuilding = true; + doCheck = false; + + meta = with lib; { + description = "Small LD_PRELOAD library to disable fsync and friends"; + homepage = "https://www.flamingspork.com/projects/libeatmydata/"; + license = licenses.gpl3Plus; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/libeatmydata/find-shell-lib.patch b/nixpkgs/pkgs/development/libraries/libeatmydata/find-shell-lib.patch new file mode 100644 index 000000000000..a6320edda29d --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libeatmydata/find-shell-lib.patch @@ -0,0 +1,20 @@ +--- eatmydata.in 2020-02-01 18:10:59.618679823 -0800 ++++ eatmydata.in.new 2020-02-01 18:08:25.092620247 -0800 +@@ -15,15 +15,8 @@ + # You should have received a copy of the GNU General Public License + # along with this program. If not, see <http://www.gnu.org/licenses/>. + +-export `dpkg-architecture|grep DEB_BUILD_MULTIARCH` +- +-shlib="/usr/lib/$DEB_BUILD_MULTIARCH/eatmydata.sh" +-if [ -f "$shlib" ]; then +- . "$shlib" +-else +- echo "Unable to locate eatmydata shell library, it was not enabled" >&2 +- exec "$@" +-fi ++shlib="NIX_OUT_DIR/libexec/eatmydata.sh" ++. "$shlib" + + usage() + { |