Unverified Commit 9318b67c authored by Aleksana's avatar Aleksana Committed by GitHub
Browse files

unyaffs: init at 0.9 (#348979)

parents a8e99948 8f728739
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -11926,6 +11926,12 @@
    github = "krzaczek";
    githubId = 5773701;
  };
  KSJ2000 = {
    email = "katsho123@outlook.com";
    name = "KSJ2000";
    github = "KSJ2000";
    githubId = 184105270;
  };
  ktf = {
    email = "giulio.eulisse@cern.ch";
    github = "ktf";
+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";
  };
})