Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / by-name / un / unimap / package.nix
blob7563c1f50535ea27cbcd902cecb6fd700f73469d
1 { lib
2 , rustPlatform
3 , fetchFromGitHub
4 , installShellFiles
5 , makeBinaryWrapper
6 , stdenv
7 , pkg-config
8 , openssl
9 , nmap
12 rustPlatform.buildRustPackage rec {
13   pname = "unimap";
14   version = "0.6.0";
16   src = fetchFromGitHub {
17     owner = "Edu4rdSHL";
18     repo = "unimap";
19     rev = version;
20     hash = "sha256-7UbzE5VXycjo7KNpPe2oqwyZDT4Vk8rQZ6HXT1q9Cw4=";
21   };
23   cargoLock = {
24     lockFile = ./Cargo.lock;
25     outputHashes = {
26       "trust-dns-proto-0.20.4" = "sha256-+oAjyyTXbKir8e5kn8CUmQy5qmzQ47ryvBBdZtzj1TY=";
27     };
28   };
30   nativeBuildInputs = [
31     installShellFiles
32     makeBinaryWrapper
33   ] ++ lib.optionals (stdenv.hostPlatform.isAarch && stdenv.isLinux) [
34     pkg-config
35   ];
37   # only depends on openssl on aarch/arm linux
38   buildInputs = lib.optionals (stdenv.hostPlatform.isAarch && stdenv.isLinux) [
39     openssl
40   ];
42   env = lib.optionalAttrs (stdenv.hostPlatform.isAarch && stdenv.isLinux) {
43     OPENSSL_NO_VENDOR = true;
44   };
46   postInstall = ''
47     installManPage unimap.1
48     wrapProgram $out/bin/unimap \
49       --prefix PATH : ${lib.makeBinPath [ nmap ]}
50   '';
52   meta = with lib; {
53     description = "Scan only once by IP address and reduce scan times with Nmap for large amounts of data";
54     homepage = "https://github.com/Edu4rdSHL/unimap";
55     changelog = "https://github.com/Edu4rdSHL/unimap/releases/tag/${src.rev}";
56     license = licenses.gpl3Plus;
57     maintainers = with maintainers; [ figsoda ];
58     mainProgram = "unimap";
59   };