nixpkgs/pkgs/by-name/be/bee/package.nix

57 lines
1.6 KiB
Nix

{ lib
, fetchFromGitHub
, buildGoModule
}:
buildGoModule rec {
pname = "bee";
version = "2.0.0";
src = fetchFromGitHub {
owner = "ethersphere";
repo = "bee";
rev = "v${version}";
sha256 = "sha256-gZDmFufk/zBftQe7Ju4rDpZqw0hm2nf9YQg1Oa8540s=";
};
vendorHash = "sha256-GpazHMQ8xZ6P7mADvsG3bXxDxEWnCJRIsBwDnL/McZA=";
subPackages = [ "cmd/bee" ];
ldflags = [
"-s"
"-w"
"-X github.com/ethersphere/bee/v2.version=${version}"
"-X github.com/ethersphere/bee/v2/pkg/api.Version=5.2.0"
"-X github.com/ethersphere/bee/v2/pkg/api.DebugVersion=4.1.1"
"-X github.com/ethersphere/bee/v2/pkg/p2p/libp2p.reachabilityOverridePublic=false"
"-X github.com/ethersphere/bee/v2/pkg/postage/listener.batchFactorOverridePublic=5"
];
CGO_ENABLED = 0;
postInstall = ''
mkdir -p $out/lib/systemd/system
cp packaging/bee.service $out/lib/systemd/system/
cp packaging/bee-get-addr $out/bin/
chmod +x $out/bin/bee-get-addr
patchShebangs $out/bin/
'';
meta = with lib; {
homepage = "https://github.com/ethersphere/bee";
description = "Ethereum Swarm Bee";
longDescription = ''
A decentralised storage and communication system for a sovereign digital society.
Swarm is a system of peer-to-peer networked nodes that create a decentralised storage
and communication service. The system is economically self-sustaining due to a built-in
incentive system enforced through smart contracts on the Ethereum blockchain.
Bee is a Swarm node implementation, written in Go.
'';
license = with licenses; [ bsd3 ];
maintainers = with maintainers; [ ];
};
}