74 lines
1.6 KiB
Nix
74 lines
1.6 KiB
Nix
{ lib, stdenv
|
|
, fetchFromGitHub
|
|
, fetchpatch
|
|
, bison
|
|
, pkg-config
|
|
, gettext
|
|
, desktop-file-utils
|
|
, glib
|
|
, gtk2
|
|
, libxml2
|
|
, libbfd
|
|
, zlib
|
|
, binutils
|
|
, gnutls
|
|
, enableGui ? true
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "gtk-gnutella";
|
|
# NOTE: Please remove hardeningDisable on the next release, see:
|
|
# https://sourceforge.net/p/gtk-gnutella/bugs/555/#5c19
|
|
version = "1.2.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "gtk-gnutella";
|
|
repo = "gtk-gnutella";
|
|
rev = "v${version}";
|
|
sha256 = "0j596dpajk68bkry0gmpqawsi61rphfciy4vji1dh890jyhkhdgy";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
bison
|
|
desktop-file-utils
|
|
gettext
|
|
pkg-config
|
|
];
|
|
buildInputs = [
|
|
glib
|
|
gnutls
|
|
libbfd
|
|
libxml2
|
|
zlib
|
|
]
|
|
++
|
|
lib.optionals (enableGui) [ gtk2 ]
|
|
;
|
|
|
|
configureScript = "./build.sh";
|
|
configureFlags = [
|
|
"--configure-only"
|
|
# See https://sourceforge.net/p/gtk-gnutella/bugs/555/
|
|
"--disable-malloc"
|
|
]
|
|
++ lib.optionals (!enableGui) [ "--topless" ]
|
|
;
|
|
|
|
hardeningDisable = [ "bindnow" "fortify" "pic" "relro" ];
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
postInstall = ''
|
|
install -Dm0444 src/${pname}.man $out/share/man/man1/${pname}.1
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "A GTK Gnutella client, optimized for speed and scalability";
|
|
homepage = "http://gtk-gnutella.sourceforge.net/"; # Code: https://github.com/gtk-gnutella/gtk-gnutella
|
|
changelog = "https://raw.githubusercontent.com/gtk-gnutella/gtk-gnutella/v${version}/ChangeLog";
|
|
maintainers = [ maintainers.doronbehar ];
|
|
license = licenses.gpl2Plus;
|
|
platforms = platforms.unix;
|
|
};
|
|
}
|