nixpkgs/pkgs/development/tools/analysis/panopticon/default.nix
Benjamin Hipple eb11feaa0b treewide: change fetchCargoTarball default to opt-out
Changes the default fetcher in the Rust Platform to be the newer
`fetchCargoTarball`, and changes every application using the current default to
instead opt out.

This commit does not change any hashes or cause any rebuilds. Once integrated,
we will start deleting the opt-outs and recomputing hashes.

See #79975 for details.
2020-02-13 22:41:37 -08:00

55 lines
1.5 KiB
Nix

{ stdenv, fetchFromGitHub, rustPlatform, qt5, git, cmake
, pkgconfig, makeWrapper }:
rustPlatform.buildRustPackage rec {
pname = "panopticon";
version = "unstable-20171202";
src = fetchFromGitHub {
owner = "das-labor";
repo = pname;
rev = "33ffec0d6d379d51b38d6ea00d040f54b1356ae4";
sha256 = "1zv87nqhrzsxx0m891df4vagzssj3kblfv9yp7j96dw0vn9950qa";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ makeWrapper ];
propagatedBuildInputs = with qt5; [
qt5.qtbase
qtdeclarative
qtsvg
qtquickcontrols2
qtgraphicaleffects
pkgconfig
git
];
# Delete this on next update; see #79975 for details
legacyCargoFetcher = true;
cargoSha256 = "1fsxd7yzb38h1d52yyz7kj1v0riycjydb1b1bn1zkhgwm5sm2kbs";
doCheck = false;
postInstall = ''
mkdir -p $out/share/${pname} $out/bin
cp -R qml $out/share/${pname}
mv $out/bin/${pname} $out/share/${pname}
chmod +x $out/share/${pname}
makeWrapper $out/share/${pname}/${pname} $out/bin/${pname}
'';
meta = with stdenv.lib; {
description = "A libre cross-platform disassembler";
longDescription = ''
Panopticon is a cross platform disassembler for reverse
engineering written in Rust. It can disassemble AMD64,
x86, AVR and MOS 6502 instruction sets and open ELF files.
Panopticon comes with Qt GUI for browsing and annotating
control flow graphs.
'';
license = with licenses; [ gpl3 ];
maintainers = with maintainers; [ leenaars ];
platforms = platforms.all;
};
}