Skip to content

Commit

Permalink
libeatmydata: fix launcher script - find shell library properly
Browse files Browse the repository at this point in the history
The new version of the launcher script in version 105 doesn't have the NixOS#8665
bug, but it does try to find the shell library using Debian tools, which
obviously doesn't work on Nix. Removed the now-unneccessary makeWrapper and
patched out the Debian bits.

(cherry picked from commit 4e9b948)
  • Loading branch information
enolan authored and nh2 committed May 5, 2020
1 parent 78332ac commit 77207c1
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 6 deletions.
11 changes: 5 additions & 6 deletions pkgs/development/libraries/libeatmydata/default.nix
Expand Up @@ -2,17 +2,16 @@

stdenv.mkDerivation rec {
name = "libeatmydata-105";

src = fetchurl {
url = "https://www.flamingspork.com/projects/libeatmydata/${name}.tar.gz";
sha256 = "1pd8sc73cgc41ldsvq6g8ics1m5k8gdcb91as9yg8z5jnrld1lmx";
};

buildInputs = [ makeWrapper ];

postInstall = ''
wrapProgram $out/bin/eatmydata \
--prefix PATH : $out/bin
patches = [ ./find-shell-lib.patch ];
patchFlags = "-p0";
postPatch = ''
substituteInPlace eatmydata.in --replace NIX_OUT_DIR $out
'';

meta = {
Expand Down
20 changes: 20 additions & 0 deletions 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()
{

0 comments on commit 77207c1

Please sign in to comment.