From 98bb827799a3a61f7b4ccc09b9849eaf579312d5 Mon Sep 17 00:00:00 2001 From: Andrew Fontaine Date: Mon, 1 Jun 2020 17:11:51 -0400 Subject: [PATCH] runit: Add Darwin Compatibility Not much modification is required to build and run runit on MacOS, all that was needed was to follow runit's instructions [0] with some guidance from homebrew's formula. [1] 0: http://smarden.org/runit/install.html 1: https://github.com/Homebrew/homebrew-core/blob/1cf1e61/Formula/runit.rb --- pkgs/tools/system/runit/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/system/runit/default.nix b/pkgs/tools/system/runit/default.nix index a4319fd57496..acca0acf3ef9 100644 --- a/pkgs/tools/system/runit/default.nix +++ b/pkgs/tools/system/runit/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl +{ stdenv, fetchurl, darwin # Build runit-init as a static binary , static ? false @@ -23,7 +23,8 @@ stdenv.mkDerivation rec { doCheck = true; - buildInputs = stdenv.lib.optionals static [ stdenv.cc.libc stdenv.cc.libc.static ]; + buildInputs = stdenv.lib.optionals static [ stdenv.cc.libc stdenv.cc.libc.static ] ++ + stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.libs.utmp; postPatch = '' sed -i "s,\(#define RUNIT\) .*,\1 \"$out/bin/runit\"," src/runit.h @@ -39,7 +40,7 @@ stdenv.mkDerivation rec { # Both of these are originally hard-coded to gcc echo ${stdenv.cc.targetPrefix}cc > conf-cc - echo ${stdenv.cc.targetPrefix}cc > conf-ld + echo ${stdenv.cc.targetPrefix}cc ${stdenv.lib.optionalString stdenv.isDarwin "-Xlinker -x "}> conf-ld ''; installPhase = '' @@ -55,6 +56,6 @@ stdenv.mkDerivation rec { license = licenses.bsd3; homepage = "http://smarden.org/runit"; maintainers = with maintainers; [ joachifm ]; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; }; }