nixpkgs/pkgs/development/tools/analysis/panopticon/default.nix
Daniël de Kok 85f96822a0 treewide: fix cargoSha256/cargoHash
Rust 1.50.0 incorporated a Cargo change (rust-lang/cargo#8937) in
which cargo vendor erroneously changed permissions of vendored
crates. This was fixed in Rust
1.51.0 (rust-lang/cargo#9131). Unfortunately, this means that all
cargoSha256/cargoHashes produced during the Rust 1.50.0 cycle are
potentially broken.

This change updates cargoSha256/cargoHash tree-wide.

Fixes #121994.
2021-05-08 00:36:37 -07:00

50 lines
1.4 KiB
Nix

{ lib, fetchFromGitHub, rustPlatform, qt5, git, cmake
, pkg-config, makeWrapper }:
rustPlatform.buildRustPackage rec {
pname = "panopticon";
version = "unstable-20171202";
src = fetchFromGitHub {
owner = "das-labor";
repo = pname;
rev = "33ffec0d6d379d51b38d6ea00d040f54b1356ae4";
sha256 = "1zv87nqhrzsxx0m891df4vagzssj3kblfv9yp7j96dw0vn9950qa";
};
nativeBuildInputs = [ cmake pkg-config makeWrapper ];
propagatedBuildInputs = with qt5; [
qt5.qtbase
qtdeclarative
qtsvg
qtquickcontrols2
qtgraphicaleffects
git
];
dontWrapQtApps = true;
cargoSha256 = "0vhcb3kw1zgchx3nrk8lyrz8p5071y99vsysxvi71klv7dcvn0am";
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 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 ];
};
}