diff --git a/pkgs/tools/filesystems/f3/default.nix b/pkgs/tools/filesystems/f3/default.nix index 3559579fe80f..e8d60f835bf0 100644 --- a/pkgs/tools/filesystems/f3/default.nix +++ b/pkgs/tools/filesystems/f3/default.nix @@ -1,13 +1,11 @@ -{ stdenv, fetchFromGitHub -, parted, udev +{ stdenv, lib, fetchFromGitHub +, parted, systemd ? null }: stdenv.mkDerivation rec { pname = "f3"; version = "7.2"; - enableParallelBuilding = true; - src = fetchFromGitHub { owner = "AltraMayor"; repo = pname; @@ -15,24 +13,45 @@ stdenv.mkDerivation rec { sha256 = "1iwdg0r4wkgc8rynmw1qcqz62l0ldgc8lrazq33msxnk5a818jgy"; }; - buildInputs = [ parted udev ]; + postPatch = '' + sed -i 's/-oroot -groot//' Makefile - patchPhase = "sed -i 's/-oroot -groot//' Makefile"; + for f in f3write.h2w log-f3wr; do + substituteInPlace $f \ + --replace '$(dirname $0)' $out/bin + done + ''; - buildFlags = [ "all" # f3read, f3write - "extra" # f3brew, f3fix, f3probe - ]; + buildInputs = [ + parted + ] + ++ lib.optional stdenv.isLinux systemd; - installFlags = [ "PREFIX=$(out)" - "install" - "install-extra" - ]; + enableParallelBuilding = true; - meta = { + buildFlags = [ + "all" # f3read, f3write + ] + ++ lib.optional stdenv.isLinux "extra"; # f3brew, f3fix, f3probe + + installFlags = [ + "PREFIX=${placeholder "out"}" + ]; + + installTargets = [ + "install" + ] + ++ lib.optional stdenv.isLinux "install-extra"; + + postInstall = '' + install -Dm555 -t $out/bin f3write.h2w log-f3wr + install -Dm444 -t $out/share/doc/${pname} LICENSE README.rst + ''; + + meta = with lib; { description = "Fight Flash Fraud"; homepage = "http://oss.digirati.com.br/f3/"; - license = stdenv.lib.licenses.gpl2; - platforms = stdenv.lib.platforms.linux; - maintainers = with stdenv.lib.maintainers; [ makefu ]; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ makefu ]; }; }