Commit 8f728739 authored by KSJ2000's avatar KSJ2000
Browse files

unyaffs: init at 0.9

parent 474fcca6
Loading
Loading
Loading
Loading
+45 −0
Original line number Diff line number Diff line
{
  fetchFromGitHub,
  lib,
  stdenv,
  versionCheckHook,
}:

stdenv.mkDerivation (finalAttrs: {
  pname = "unyaffs";
  version = "0.9";

  src = fetchFromGitHub {
    owner = "whataday";
    repo = "unyaffs";
    rev = "${finalAttrs.version}";
    hash = "sha256-FcuPaxq74gVJ6UlOhFPSMtuwUAJVV/sAxAQojhmVXCs=";
  };

  preBuild = ''
    sed -i '54i #if defined(__linux__)' unyaffs.c
    sed -i '55i #include <sys/sysmacros.h>' unyaffs.c
    sed -i '56i #endif' unyaffs.c
  '';

  installPhase = ''
    runHook preInstall

    install -Dm755 unyaffs -t $out/bin

    runHook postInstall
  '';

  nativeInstallCheckInputs = [ versionCheckHook ];
  doInstallCheck = true;
  versionCheckProgramArg = "-V";

  meta = {
    description = "Tool to extract files from a YAFFS2 file system image";
    homepage = "https://github.com/whataday/unyaffs";
    license = lib.licenses.gpl2Only;
    platforms = lib.platforms.unix;
    maintainers = with lib.maintainers; [ KSJ2000 ];
    mainProgram = "unyaffs";
  };
})