nixpkgs/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
Doron Behar 8ace65ff3d
treewide: use finalAttrs in all packages I maintain (#255902)
* mpd-touch-screen-gui: use finalAttrs in mkDerivation; reformat

* musescore: use finalAttrs in mkDerivation

* syncthingtray: use stdenv.mkDerivation with a function; reformat

* ocrfeeder: use finalAttrs in mkDerivation; reformat

* castget: use finalAttrs in mkDerivation

* gnome-network-displays: use finalAttrs in mkDerivation

* mailreaders: use finalAttrs in mkDerivation

* mswatch: use finalAttrs in mkDerivation

* uhd: use finalAttrs in mkDerivation

* maxima: use finalAttrs in mkDerivation

* qalculate-gtk: use finalAttrs in mkDerivation

* qalculate-qt: use finalAttrs in mkDerivation

* wxmaxima: use finalAttrs in mkDerivation

* lammps: use finalAttrs in mkDerivation

* mlterm: use finalAttrs in mkDerivation

* video-trimmer: use finalAttrs in mkDerivation

* nerdfonts: use finalAttrs in mkDerivation

* gnomeExtensions.easyScreenCast: use finalAttrs in mkDerivation

* octave: use finalAttrs in mkDerivation; reformat

* comedilib: use finalAttrs in mkDerivation

* cpp-utilities: use finalAttrs in mkDerivation

* libsForQt5.kpeoplevcard: use finalAttrs in mkDerivation; reformat

* liberio: use finalAttrs in mkDerivation

* libqalculate: use finalAttrs in mkDerivation; reformat

* libwtk-sdl2: use finalAttrs in mkDerivation

* libsForQt5.pulseaudio-qt: use finalAttrs in mkDerivation; reformat

* qrupdate: use finalAttrs in mkDerivation; reformat

* libsForQt5.qtforkawesome: use finalAttrs in mkDerivation; reformat

* libsForQt5.qtutilities: use finalAttrs in mkDerivation; reformat

* sqlitecpp: use finalAttrs in mkDerivation; reformat

* tweeny: use finalAttrs in mkDerivation

* volk: use finalAttrs in mkDerivation

* wiringpi: use finalAttrs in mkDerivation

* snzip: use finalAttrs in mkDerivation; reformat

* bpm-tools: use finalAttrs in mkDerivation; reformat

* sacd: use finalAttrs in mkDerivation

* gtk-gnutella: use finalAttrs in mkDerivation; reformat

* sile: use finalAttrs in mkDerivation

* pplatex: use finalAttrs in mkDerivation; reformat
2023-09-21 11:31:17 +03:00

68 lines
1.4 KiB
Nix

{ lib
, stdenv
, fetchFromGitHub
, bison
, desktop-file-utils
, gettext
, pkg-config
, glib
, gtk2
, libxml2
, libbfd
, zlib
, gnutls
, enableGui ? true
}:
stdenv.mkDerivation (finalAttrs: {
pname = "gtk-gnutella";
version = "1.2.2";
src = fetchFromGitHub {
owner = "gtk-gnutella";
repo = "gtk-gnutella";
rev = "v${finalAttrs.version}";
sha256 = "sha256-LbSUdU+a9G8qL7gCZVJQ6UQMATpOMtktY6FeOkUuaYI=";
};
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"
];
enableParallelBuilding = true;
postInstall = ''
install -Dm0444 src/gtk-gnutella.man $out/share/man/man1/gtk-gnutella.1
'';
meta = with lib; {
description = "A GTK Gnutella client, optimized for speed and scalability";
homepage = "https://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;
};
})