libeatmydata: fix launcher script - find shell library properly

The new version of the launcher script in version 105 doesn't have the #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.
This commit is contained in:
Echo Nolan 2020-02-22 02:16:29 -08:00
parent ea79a830dc
commit 4e9b94836f
2 changed files with 25 additions and 6 deletions

View File

@ -8,11 +8,10 @@ stdenv.mkDerivation rec {
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 = {

View File

@ -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()
{