nixpkgs/pkgs/by-name/gn/gnome-nettool/package.nix

88 lines
1.7 KiB
Nix

{
stdenv,
lib,
fetchurl,
fetchpatch,
desktop-file-utils,
itstool,
meson,
ninja,
pkg-config,
python3,
wrapGAppsHook3,
glib,
gtk3,
libgtop,
dnsutils,
iputils,
nmap,
inetutils,
gnome,
}:
stdenv.mkDerivation rec {
pname = "gnome-nettool";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/gnome-nettool/${lib.versions.major version}/gnome-nettool-${version}.tar.xz";
sha256 = "pU8p7vIDiu5pVRyLGcpPdY5eueIJCkvGtWM9/wGIdR8=";
};
patches = [
# Fix build with meson 0.61
# https://gitlab.gnome.org/GNOME/gnome-nettool/-/merge_requests/3
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gnome-nettool/-/commit/1124c3e1fdb8472d30b7636500229aa16cdc1244.patch";
sha256 = "fbpfL8Xb1GsadpQzAdmu8FSPs++bsGCVdcwnzQWttGY=";
})
];
nativeBuildInputs = [
desktop-file-utils
itstool
meson
ninja
pkg-config
python3
wrapGAppsHook3
];
buildInputs = [
glib
gtk3
libgtop
];
postPatch = ''
chmod +x postinstall.py
patchShebangs postinstall.py
'';
preFixup = ''
gappsWrapperArgs+=(
--prefix PATH : "${
lib.makeBinPath [
dnsutils # for dig
iputils # for ping
nmap # for nmap
inetutils # for ping6, traceroute, whois
]
}"
)
'';
passthru = {
updateScript = gnome.updateScript { packageName = "gnome-nettool"; };
};
meta = with lib; {
homepage = "https://gitlab.gnome.org/GNOME/gnome-nettool";
description = "Collection of networking tools";
mainProgram = "gnome-nettool";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}