mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-06 13:03:34 +00:00
ff1a94e523
The nixpkgs-unstable channel's programs.sqlite was used to identify packages producing exactly one binary, and these automatically added to their package definitions wherever possible.
102 lines
2.3 KiB
Nix
102 lines
2.3 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchFromGitHub
|
|
, meson
|
|
, ninja
|
|
, pkg-config
|
|
, python3
|
|
, qtbase
|
|
, qttools
|
|
, radare2
|
|
, wrapQtAppsHook
|
|
}:
|
|
|
|
let
|
|
pname = "iaito";
|
|
version = "5.8.8";
|
|
|
|
main_src = fetchFromGitHub rec {
|
|
owner = "radareorg";
|
|
repo = pname;
|
|
rev = version;
|
|
hash = "sha256-/sXdp6QpDxltesg5i2CD0K2r18CrbGZmmI7HqULvFfA=";
|
|
name = repo;
|
|
};
|
|
|
|
translations_src = fetchFromGitHub rec {
|
|
owner = "radareorg";
|
|
repo = "iaito-translations";
|
|
rev = "e66b3a962a7fc7dfd730764180011ecffbb206bf";
|
|
hash = "sha256-6NRTZ/ydypsB5TwbivvwOH9TEMAff/LH69hCXTvMPp8=";
|
|
name = repo;
|
|
};
|
|
in
|
|
|
|
stdenv.mkDerivation rec {
|
|
inherit pname version;
|
|
|
|
srcs = [ main_src translations_src ];
|
|
sourceRoot = "${main_src.name}/src";
|
|
|
|
postUnpack = ''
|
|
chmod -R u+w ${translations_src.name}
|
|
'';
|
|
|
|
postPatch = ''
|
|
substituteInPlace common/ResourcePaths.cpp \
|
|
--replace "/app/share/iaito/translations" "$out/share/iaito/translations"
|
|
'';
|
|
|
|
nativeBuildInputs = [
|
|
meson
|
|
ninja
|
|
pkg-config
|
|
python3
|
|
qttools
|
|
wrapQtAppsHook
|
|
];
|
|
|
|
buildInputs = [
|
|
qtbase
|
|
radare2
|
|
];
|
|
|
|
# the radare2 binary package seems to not install all necessary headers.
|
|
env.NIX_CFLAGS_COMPILE = toString [ "-I" "${radare2.src}/shlr/sdb/include/sdb" ];
|
|
|
|
postBuild = ''
|
|
pushd ../../../${translations_src.name}
|
|
make build -j$NIX_BUILD_CORES PREFIX=$out
|
|
popd
|
|
'';
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
install -m755 -Dt $out/bin iaito
|
|
install -m644 -Dt $out/share/metainfo ../org.radare.iaito.appdata.xml
|
|
install -m644 -Dt $out/share/applications ../org.radare.iaito.desktop
|
|
install -m644 -Dt $out/share/pixmaps ../img/org.radare.iaito.svg
|
|
|
|
pushd ../../../${translations_src.name}
|
|
make install -j$NIX_BUILD_CORES PREFIX=$out
|
|
popd
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "An official graphical interface of radare2";
|
|
mainProgram = "iaito";
|
|
longDescription = ''
|
|
iaito is the official graphical interface of radare2. It's the
|
|
continuation of Cutter for radare2 after the Rizin fork.
|
|
'';
|
|
homepage = "https://radare.org/n/iaito.html";
|
|
changelog = "https://github.com/radareorg/iaito/releases/tag/${version}";
|
|
license = licenses.gpl3Plus;
|
|
maintainers = with maintainers; [ azahi ];
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|