summary refs log tree commit diff
path: root/pkgs/applications/misc/xmrig/default.nix
diff options
context:
space:
mode:
authorWeijia Wang <9713184+wegank@users.noreply.github.com>2023-02-09 06:51:55 +0100
committerWeijia Wang <9713184+wegank@users.noreply.github.com>2023-02-09 06:51:55 +0100
commit4c4184ef92a17f0f946b4d2b96a400f4a70e0655 (patch)
tree6de98b036be090c55e2b1636cb15793e1bf1bd58 /pkgs/applications/misc/xmrig/default.nix
parent59ec2e613fed0886e1e2ddbc50cf083686a0004c (diff)
downloadnixpkgs-4c4184ef92a17f0f946b4d2b96a400f4a70e0655.tar
nixpkgs-4c4184ef92a17f0f946b4d2b96a400f4a70e0655.tar.gz
nixpkgs-4c4184ef92a17f0f946b4d2b96a400f4a70e0655.tar.bz2
nixpkgs-4c4184ef92a17f0f946b4d2b96a400f4a70e0655.tar.lz
nixpkgs-4c4184ef92a17f0f946b4d2b96a400f4a70e0655.tar.xz
nixpkgs-4c4184ef92a17f0f946b4d2b96a400f4a70e0655.tar.zst
nixpkgs-4c4184ef92a17f0f946b4d2b96a400f4a70e0655.zip
xmrig: add darwin support
Diffstat (limited to 'pkgs/applications/misc/xmrig/default.nix')
-rw-r--r--pkgs/applications/misc/xmrig/default.nix49
1 files changed, 40 insertions, 9 deletions
diff --git a/pkgs/applications/misc/xmrig/default.nix b/pkgs/applications/misc/xmrig/default.nix
index 4917fe7ab54..05f5b313902 100644
--- a/pkgs/applications/misc/xmrig/default.nix
+++ b/pkgs/applications/misc/xmrig/default.nix
@@ -1,7 +1,18 @@
-{ stdenv, lib, fetchFromGitHub, cmake, libuv, libmicrohttpd, openssl, hwloc
+{ stdenv
+, lib
+, fetchFromGitHub
+, cmake
+, libuv
+, libmicrohttpd
+, openssl
+, hwloc
 , donateLevel ? 0
+, darwin
 }:
 
+let
+  inherit (darwin.apple_sdk_11_0.frameworks) Carbon CoreServices OpenCL;
+in
 stdenv.mkDerivation rec {
   pname = "xmrig";
   version = "6.19.0";
@@ -10,29 +21,49 @@ stdenv.mkDerivation rec {
     owner = "xmrig";
     repo = "xmrig";
     rev = "v${version}";
-    sha256 = "sha256-pMI5SqAa9jauwWvc3JpyWQa+pQvntbTrta1p0qjBaoM=";
+    hash = "sha256-pMI5SqAa9jauwWvc3JpyWQa+pQvntbTrta1p0qjBaoM=";
   };
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ libuv libmicrohttpd openssl hwloc ];
+  patches = [
+    ./donate-level.patch
+  ];
 
-  inherit donateLevel;
-
-  patches = [ ./donate-level.patch ];
   postPatch = ''
     substituteAllInPlace src/donate.h
+    substituteInPlace cmake/OpenSSL.cmake \
+      --replace "set(OPENSSL_USE_STATIC_LIBS TRUE)" "set(OPENSSL_USE_STATIC_LIBS FALSE)"
   '';
 
+  nativeBuildInputs = [
+    cmake
+  ];
+
+  buildInputs = [
+    libuv
+    libmicrohttpd
+    openssl
+    hwloc
+  ] ++ lib.optionals stdenv.isDarwin [
+    Carbon
+    CoreServices
+    OpenCL
+  ];
+
+  inherit donateLevel;
+
   installPhase = ''
+    runHook preInstall
+
     install -vD xmrig $out/bin/xmrig
+
+    runHook postInstall
   '';
 
   meta = with lib; {
-    broken = stdenv.isDarwin;
     description = "Monero (XMR) CPU miner";
     homepage = "https://github.com/xmrig/xmrig";
     license = licenses.gpl3Plus;
-    platforms   = [ "x86_64-linux" "x86_64-darwin" ];
+    platforms = platforms.unix;
     maintainers = with maintainers; [ kim0 ];
   };
 }