nixpkgs/pkgs/tools/misc/ethminer/default.nix
Martin Weinelt 7bd65d54f7 treewide: remove nand0p as maintainer
While looking at the sphinx package I noticed it was heavily
undermaintained, which is when we noticed nand0p has been inactive for
roughly 18 months. It is therefore prudent to assume they will not be
maintaining their packages, modules and tests.

- Their last contribution to nixpkgs was in 2019/12
- On 2021/05/08 I wrote them an email to the address listed in the
  maintainer-list, which they didn't reply to.
2021-05-17 01:50:49 +02:00

87 lines
1.7 KiB
Nix

{
lib,
stdenv,
clangStdenv,
fetchFromGitHub,
opencl-headers,
cmake,
jsoncpp,
boost,
makeWrapper,
cudatoolkit,
cudaSupport,
mesa,
ethash,
opencl-info,
ocl-icd,
openssl,
pkg-config,
cli11
}@args:
# Note that this requires clang < 9.0 to build, and currently
# clangStdenv provides clang 7.1 which satisfies the requirement.
let stdenv = if cudaSupport then clangStdenv else args.stdenv;
in stdenv.mkDerivation rec {
pname = "ethminer";
version = "0.19.0";
src =
fetchFromGitHub {
owner = "ethereum-mining";
repo = "ethminer";
rev = "v${version}";
sha256 = "1kyff3vx2r4hjpqah9qk99z6dwz7nsnbnhhl6a76mdhjmgp1q646";
fetchSubmodules = true;
};
# NOTE: dbus is broken
cmakeFlags = [
"-DHUNTER_ENABLED=OFF"
"-DETHASHCUDA=ON"
"-DAPICORE=ON"
"-DETHDBUS=OFF"
"-DCMAKE_BUILD_TYPE=Release"
] ++ lib.optionals (!cudaSupport) [
"-DETHASHCUDA=OFF" # on by default
];
nativeBuildInputs = [
cmake
pkg-config
makeWrapper
];
buildInputs = [
cli11
boost
opencl-headers
mesa
ethash
opencl-info
ocl-icd
openssl
jsoncpp
] ++ lib.optionals cudaSupport [
cudatoolkit
];
preConfigure = ''
sed -i 's/_lib_static//' libpoolprotocols/CMakeLists.txt
'';
postInstall = ''
wrapProgram $out/bin/ethminer --prefix LD_LIBRARY_PATH : /run/opengl-driver/lib
'';
meta = with lib; {
description = "Ethereum miner with OpenCL${lib.optionalString cudaSupport ", CUDA"} and stratum support";
homepage = "https://github.com/ethereum-mining/ethminer";
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ atemu ];
license = licenses.gpl3Only;
broken = cudaSupport;
};
}